diff --git a/include/kernel-version.mk b/include/kernel-version.mk index 72e22865b4..237d0ff65f 100644 --- a/include/kernel-version.mk +++ b/include/kernel-version.mk @@ -8,11 +8,11 @@ endif LINUX_VERSION-4.14 = .173 LINUX_VERSION-4.19 = .110 -LINUX_VERSION-5.4 = .25 +LINUX_VERSION-5.4 = .28 LINUX_KERNEL_HASH-4.14.173 = a282ad7a445dcfc7ff8939d18d55ee09e59f96d2aa96d05583483f155f1db74f LINUX_KERNEL_HASH-4.19.110 = ca113d2c4a061cbb6efaab60290b10dda0298e3249ff1d0c2327eb3d827c6b96 -LINUX_KERNEL_HASH-5.4.25 = c0ed974b088d84847aeca0ab99943918c472739db4480b263e75e8c19a025e25 +LINUX_KERNEL_HASH-5.4.28 = c863cc1346348f9a40083b4bc0d34375117b1c401af920994d42e855653ef7a4 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1))))))) diff --git a/package/boot/uboot-sunxi/Makefile b/package/boot/uboot-sunxi/Makefile index eef4c56f53..e7823e6f05 100644 --- a/package/boot/uboot-sunxi/Makefile +++ b/package/boot/uboot-sunxi/Makefile @@ -9,9 +9,9 @@ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/kernel.mk -PKG_VERSION:=2019.01 +PKG_VERSION:=2020.01 -PKG_HASH:=50bd7e5a466ab828914d080d5f6a432345b500e8fba1ad3b7b61e95e60d51c22 +PKG_HASH:=aa453c603208b1b27bd03525775a7f79b443adec577fdc6e8f06974025a135f1 PKG_MAINTAINER:=Zoltan HERPAI @@ -25,6 +25,22 @@ define U-Boot/Default HIDDEN:=1 endef +define U-Boot/a64-olinuxino + BUILD_SUBTARGET:=cortexa53 + NAME:=Olimex A64-OLinuXino + BUILD_DEVICES:=olimex_a64-olinuxino + DEPENDS:=+PACKAGE_u-boot-olimex_a64-olinuxino:arm-trusted-firmware-sunxi + UENV:=a64 +endef + +define U-Boot/a64-olinuxino-emmc + BUILD_SUBTARGET:=cortexa53 + NAME:=Olimex A64-OLinuXino eMMC + BUILD_DEVICES:=olimex_a64-olinuxino-emmc + DEPENDS:=+PACKAGE_u-boot-olimex_a64-olinuxino-emmc:arm-trusted-firmware-sunxi + UENV:=a64 +endef + define U-Boot/A10-OLinuXino-Lime BUILD_SUBTARGET:=cortexa8 NAME:=A10 OLinuXino LIME @@ -222,9 +238,9 @@ define U-Boot/pine64_plus UENV:=a64 endef -define U-Boot/Sinovoip_BPI_M2_Plus +define U-Boot/bananapi_m2_plus_h3 BUILD_SUBTARGET:=cortexa7 - NAME:=Bananapi M2 Plus + NAME:=Bananapi M2 Plus H3 BUILD_DEVICES:=sinovoip_bananapi-m2-plus endef @@ -253,20 +269,24 @@ define U-Boot/orangepi_pc2 UENV:=a64 endef -define U-Boot/Sinovoip_BPI_M2_Ultra +define U-Boot/Bananapi_M2_Ultra BUILD_SUBTARGET:=cortexa7 NAME:=Bananapi M2 Ultra BUILD_DEVICES:=lemaker_bananapi-m2-ultra endef UBOOT_TARGETS := \ + a64-olinuxino \ + a64-olinuxino-emmc \ A10-OLinuXino-Lime \ A13-OLinuXino \ A20-OLinuXino-Lime \ A20-OLinuXino-Lime2 \ A20-OLinuXino-Lime2-eMMC \ A20-OLinuXino_MICRO \ + bananapi_m2_plus_h3 \ Bananapi \ + Bananapi_M2_Ultra \ Bananapro \ Cubieboard \ Cubieboard2 \ @@ -293,8 +313,6 @@ UBOOT_TARGETS := \ orangepi_pc2 \ pangolin \ pine64_plus \ - Sinovoip_BPI_M2_Plus \ - Sinovoip_BPI_M2_Ultra \ sopine_baseboard \ orangepi_zero_plus diff --git a/package/boot/uboot-sunxi/patches/003-add-theobroma-a31-pangolin.patch b/package/boot/uboot-sunxi/patches/003-add-theobroma-a31-pangolin.patch index 899bcb1299..518f882d20 100644 --- a/package/boot/uboot-sunxi/patches/003-add-theobroma-a31-pangolin.patch +++ b/package/boot/uboot-sunxi/patches/003-add-theobroma-a31-pangolin.patch @@ -1,6 +1,6 @@ --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile -@@ -313,6 +313,7 @@ dtb-$(CONFIG_MACH_SUN6I) += \ +@@ -446,6 +446,7 @@ dtb-$(CONFIG_MACH_SUN6I) += \ sun6i-a31-m9.dtb \ sun6i-a31-mele-a1000g-quad.dtb \ sun6i-a31-mixtile-loftq.dtb \ @@ -358,7 +358,7 @@ +CONFIG_SUNXI_SPI=y --- a/arch/arm/mach-sunxi/Kconfig +++ b/arch/arm/mach-sunxi/Kconfig -@@ -875,6 +875,14 @@ config VIDEO_LCD_PANEL_I2C_SCL +@@ -895,6 +895,14 @@ config VIDEO_LCD_PANEL_I2C_SCL Set the SCL pin for the LCD i2c interface. This takes a string in the format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H. diff --git a/package/boot/uboot-sunxi/patches/062-A20-improve-gmac-upload.patch b/package/boot/uboot-sunxi/patches/062-A20-improve-gmac-upload.patch index a1caf18a18..13a703f307 100644 --- a/package/boot/uboot-sunxi/patches/062-A20-improve-gmac-upload.patch +++ b/package/boot/uboot-sunxi/patches/062-A20-improve-gmac-upload.patch @@ -2,7 +2,7 @@ --- a/configs/A20-OLinuXino-Lime2_defconfig +++ b/configs/A20-OLinuXino-Lime2_defconfig -@@ -25,6 +25,7 @@ CONFIG_ETH_DESIGNWARE=y +@@ -26,6 +26,7 @@ CONFIG_ETH_DESIGNWARE=y CONFIG_RGMII=y CONFIG_MII=y CONFIG_SUN7I_GMAC=y diff --git a/package/boot/uboot-sunxi/patches/063-fix-lime2-revK-add-micrel-PHY.patch b/package/boot/uboot-sunxi/patches/063-fix-lime2-revK-add-micrel-PHY.patch index 9ea0642537..d553634556 100644 --- a/package/boot/uboot-sunxi/patches/063-fix-lime2-revK-add-micrel-PHY.patch +++ b/package/boot/uboot-sunxi/patches/063-fix-lime2-revK-add-micrel-PHY.patch @@ -1,17 +1,17 @@ --- a/configs/A20-OLinuXino-Lime2-eMMC_defconfig +++ b/configs/A20-OLinuXino-Lime2-eMMC_defconfig -@@ -8,6 +8,8 @@ CONFIG_MMC_SUNXI_SLOT_EXTRA=2 +@@ -9,6 +9,8 @@ CONFIG_MMC_SUNXI_SLOT_EXTRA=2 CONFIG_USB0_VBUS_PIN="PC17" CONFIG_USB0_VBUS_DET="PH5" CONFIG_I2C1_ENABLE=y +CONFIG_PHY_MICREL=y +CONFIG_PHY_MICREL_KSZ90X1=y CONFIG_SATAPWR="PC3" + CONFIG_SPL_SPI_SUNXI=y CONFIG_AHCI=y - CONFIG_NR_DRAM_BANKS=1 --- a/configs/A20-OLinuXino-Lime2_defconfig +++ b/configs/A20-OLinuXino-Lime2_defconfig -@@ -7,6 +7,8 @@ CONFIG_MMC0_CD_PIN="PH1" +@@ -8,6 +8,8 @@ CONFIG_MMC0_CD_PIN="PH1" CONFIG_USB0_VBUS_PIN="PC17" CONFIG_USB0_VBUS_DET="PH5" CONFIG_I2C1_ENABLE=y @@ -19,10 +19,10 @@ +CONFIG_PHY_MICREL_KSZ90X1=y CONFIG_SATAPWR="PC3" CONFIG_AHCI=y - CONFIG_NR_DRAM_BANKS=1 + # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set --- a/drivers/net/phy/micrel_ksz90x1.c +++ b/drivers/net/phy/micrel_ksz90x1.c -@@ -13,6 +13,8 @@ +@@ -14,6 +14,8 @@ #include #include #include @@ -31,7 +31,7 @@ /* * KSZ9021 - KSZ9031 common -@@ -329,6 +331,10 @@ static int ksz9031_phy_extwrite(struct p +@@ -344,6 +346,10 @@ static int ksz9031_phy_extwrite(struct p static int ksz9031_config(struct phy_device *phydev) { int ret; diff --git a/package/boot/uboot-sunxi/patches/091-sun6i-sync-PLL1-multdiv-with-Boot1.patch b/package/boot/uboot-sunxi/patches/091-sun6i-sync-PLL1-multdiv-with-Boot1.patch index bcf2faa186..f2a2b5e48f 100644 --- a/package/boot/uboot-sunxi/patches/091-sun6i-sync-PLL1-multdiv-with-Boot1.patch +++ b/package/boot/uboot-sunxi/patches/091-sun6i-sync-PLL1-multdiv-with-Boot1.patch @@ -28,5 +28,5 @@ More specifically, the following settings are now used: + k = 4; + m = 2; } else if (clk > 768000000) { - k = 3; + k = 4; m = 2; diff --git a/package/boot/uboot-sunxi/patches/100-sun6i-alternate-on-UART2.patch b/package/boot/uboot-sunxi/patches/100-sun6i-alternate-on-UART2.patch index 8bab220518..a7afa51304 100644 --- a/package/boot/uboot-sunxi/patches/100-sun6i-alternate-on-UART2.patch +++ b/package/boot/uboot-sunxi/patches/100-sun6i-alternate-on-UART2.patch @@ -6,7 +6,7 @@ Subject: sun6i: define alternate-function for UART2 on GPG --- a/arch/arm/include/asm/arch-sunxi/gpio.h +++ b/arch/arm/include/asm/arch-sunxi/gpio.h -@@ -186,6 +186,7 @@ enum sunxi_gpio_number { +@@ -190,6 +190,7 @@ enum sunxi_gpio_number { #define SUN6I_GPG_SDC1 2 #define SUN8I_GPG_SDC1 2 #define SUN6I_GPG_TWI3 2 diff --git a/package/boot/uboot-sunxi/patches/101-sun6i-support-console-on-UART2.patch b/package/boot/uboot-sunxi/patches/101-sun6i-support-console-on-UART2.patch index b922690845..823c156809 100644 --- a/package/boot/uboot-sunxi/patches/101-sun6i-support-console-on-UART2.patch +++ b/package/boot/uboot-sunxi/patches/101-sun6i-support-console-on-UART2.patch @@ -6,7 +6,7 @@ Subject: ARM: sun6i: Support console on UART2 (GPG6/GPG7) --- a/arch/arm/mach-sunxi/board.c +++ b/arch/arm/mach-sunxi/board.c -@@ -127,6 +127,10 @@ static int gpio_init(void) +@@ -129,6 +129,10 @@ static int gpio_init(void) sunxi_gpio_set_cfgpin(SUNXI_GPG(3), SUN5I_GPG_UART1); sunxi_gpio_set_cfgpin(SUNXI_GPG(4), SUN5I_GPG_UART1); sunxi_gpio_set_pull(SUNXI_GPG(4), SUNXI_GPIO_PULL_UP); @@ -19,7 +19,7 @@ Subject: ARM: sun6i: Support console on UART2 (GPG6/GPG7) sunxi_gpio_set_cfgpin(SUNXI_GPB(1), SUN8I_GPB_UART2); --- a/include/configs/sunxi-common.h +++ b/include/configs/sunxi-common.h -@@ -258,6 +258,8 @@ extern int soft_i2c_gpio_scl; +@@ -244,6 +244,8 @@ extern int soft_i2c_gpio_scl; #endif #elif CONFIG_CONS_INDEX == 2 && defined(CONFIG_MACH_SUN5I) #define OF_STDOUT_PATH "/soc@01c00000/serial@01c28400:115200" diff --git a/package/boot/uboot-sunxi/patches/102-sunxi-make_CONS_INDEX-configurable.patch b/package/boot/uboot-sunxi/patches/102-sunxi-make_CONS_INDEX-configurable.patch index 4e35d582fa..b8c1253dcd 100644 --- a/package/boot/uboot-sunxi/patches/102-sunxi-make_CONS_INDEX-configurable.patch +++ b/package/boot/uboot-sunxi/patches/102-sunxi-make_CONS_INDEX-configurable.patch @@ -6,7 +6,7 @@ Subject: ARM: sunxi: Make CONS_INDEX configurable --- a/arch/arm/mach-sunxi/Kconfig +++ b/arch/arm/mach-sunxi/Kconfig -@@ -538,6 +538,14 @@ config SYS_BOARD +@@ -558,6 +558,14 @@ config SYS_BOARD config SYS_SOC default "sunxi" diff --git a/package/boot/uboot-sunxi/patches/200-mkimage-check-environment-for-dtc-binary-location.patch b/package/boot/uboot-sunxi/patches/200-mkimage-check-environment-for-dtc-binary-location.patch index 12f47259c3..fe8eac7848 100644 --- a/package/boot/uboot-sunxi/patches/200-mkimage-check-environment-for-dtc-binary-location.patch +++ b/package/boot/uboot-sunxi/patches/200-mkimage-check-environment-for-dtc-binary-location.patch @@ -17,7 +17,7 @@ Cc: Simon Glass --- a/tools/fit_image.c +++ b/tools/fit_image.c -@@ -656,9 +656,14 @@ static int fit_handle_file(struct image_ +@@ -662,9 +662,14 @@ static int fit_handle_file(struct image_ } *cmd = '\0'; } else if (params->datafile) { diff --git a/package/boot/uboot-sunxi/patches/210-sunxi-deactivate-binman.patch b/package/boot/uboot-sunxi/patches/210-sunxi-deactivate-binman.patch index d86097858a..c6be836915 100644 --- a/package/boot/uboot-sunxi/patches/210-sunxi-deactivate-binman.patch +++ b/package/boot/uboot-sunxi/patches/210-sunxi-deactivate-binman.patch @@ -12,7 +12,7 @@ old way of generating images. --- a/Makefile +++ b/Makefile -@@ -1344,8 +1344,10 @@ endif +@@ -1525,8 +1525,10 @@ endif ifneq ($(CONFIG_ARCH_SUNXI),) ifeq ($(CONFIG_ARM64),) @@ -27,7 +27,7 @@ old way of generating images. $(call if_changed,cat) --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig -@@ -842,7 +842,6 @@ config ARCH_SOCFPGA +@@ -945,7 +945,6 @@ config ARCH_SOCFPGA config ARCH_SUNXI bool "Support sunxi (Allwinner) SoCs" diff --git a/package/boot/uboot-sunxi/patches/221-compatible-old-dtc.patch b/package/boot/uboot-sunxi/patches/221-compatible-old-dtc.patch deleted file mode 100644 index 4056d98008..0000000000 --- a/package/boot/uboot-sunxi/patches/221-compatible-old-dtc.patch +++ /dev/null @@ -1,52 +0,0 @@ -Revert the commit c0e032e0090d65 ("scripts/dtc: Update to upstream -version v1.4.3") -OpenWrt uses the dtc from the kernel also in u-boot, but when we compile -against kernel 4.9 we run into some errors because it is too old now. -Add the options only when they are supported to make it compatible with -dtc from kernel 4.9. - ---- a/scripts/Kbuild.include -+++ b/scripts/Kbuild.include -@@ -173,6 +173,11 @@ ld-version = $(shell $(LD) --version | $ - # Usage: $(call ld-ifversion, -ge, 22252, y) - ld-ifversion = $(shell [ $(ld-version) $(1) $(2) ] && echo $(3) || echo $(4)) - -+# dtc-option -+# Usage: DTC_FLAGS += $(call dtc-option,-Wno-unit_address_vs_reg) -+dtc-option = $(call try-run,\ -+ echo '/dts-v1/; / {};' | $(DTC) $(1),$(1),$(2)) -+ - ###### - - ### ---- a/scripts/Makefile.extrawarn -+++ b/scripts/Makefile.extrawarn -@@ -56,8 +56,8 @@ endif - - KBUILD_CFLAGS += $(warning) - --dtc-warning-2 += -Wnode_name_chars_strict --dtc-warning-2 += -Wproperty_name_chars_strict -+dtc-warning-2 += $(call dtc-option,-Wnode_name_chars_strict) -+dtc-warning-2 += $(call dtc-option,-Wproperty_name_chars_strict) - - dtc-warning := $(dtc-warning-$(findstring 1, $(KBUILD_ENABLE_EXTRA_GCC_CHECKS))) - dtc-warning += $(dtc-warning-$(findstring 2, $(KBUILD_ENABLE_EXTRA_GCC_CHECKS))) -@@ -68,11 +68,11 @@ DTC_FLAGS += $(dtc-warning) - else - - # Disable noisy checks by default --DTC_FLAGS += -Wno-unit_address_vs_reg --DTC_FLAGS += -Wno-simple_bus_reg --DTC_FLAGS += -Wno-unit_address_format --DTC_FLAGS += -Wno-pci_bridge --DTC_FLAGS += -Wno-pci_device_bus_num --DTC_FLAGS += -Wno-pci_device_reg -+DTC_FLAGS += $(call dtc-option,-Wno-unit_address_vs_reg) -+DTC_FLAGS += $(call dtc-option,-Wno-simple_bus_reg) -+DTC_FLAGS += $(call dtc-option,-Wno-unit_address_format) -+DTC_FLAGS += $(call dtc-option,-Wno-pci_bridge) -+DTC_FLAGS += $(call dtc-option,-Wno-pci_device_bus_num) -+DTC_FLAGS += $(call dtc-option,-Wno-pci_device_reg) - - endif diff --git a/package/boot/uboot-sunxi/patches/230-disable-axp209-on-a13-olinuxino.diff b/package/boot/uboot-sunxi/patches/230-disable-axp209-on-a13-olinuxino.diff index 9ce6adeb35..ce5ea8f01c 100644 --- a/package/boot/uboot-sunxi/patches/230-disable-axp209-on-a13-olinuxino.diff +++ b/package/boot/uboot-sunxi/patches/230-disable-axp209-on-a13-olinuxino.diff @@ -1,6 +1,6 @@ --- a/configs/A13-OLinuXino_defconfig +++ b/configs/A13-OLinuXino_defconfig -@@ -7,7 +7,6 @@ CONFIG_DRAM_EMR1=0 +@@ -8,7 +8,6 @@ CONFIG_DRAM_EMR1=0 CONFIG_MMC0_CD_PIN="PG0" CONFIG_USB0_VBUS_DET="PG1" CONFIG_USB1_VBUS_PIN="PG11" @@ -8,12 +8,12 @@ # CONFIG_VIDEO_HDMI is not set CONFIG_VIDEO_VGA_VIA_LCD=y CONFIG_VIDEO_VGA_VIA_LCD_FORCE_SYNC_ACTIVE_HIGH=y -@@ -24,7 +23,7 @@ CONFIG_CMD_USB_MASS_STORAGE=y - CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-olinuxino" +@@ -25,7 +24,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-ol + CONFIG_SYS_RELOC_GD_ENV_ADDR=y CONFIG_DFU_RAM=y CONFIG_FASTBOOT_CMD_OEM_FORMAT=y -CONFIG_AXP_ALDO3_VOLT=3300 +CONFIG_SUNXI_NO_PMIC=y CONFIG_CONS_INDEX=2 CONFIG_USB_EHCI_HCD=y - CONFIG_USB_MUSB_GADGET=y + CONFIG_USB_OHCI_HCD=y diff --git a/package/boot/uboot-sunxi/patches/240-sun50i-h5-Orange-Pi-Zero-Plus-Fix-SdCard-detection.patch b/package/boot/uboot-sunxi/patches/240-sun50i-h5-Orange-Pi-Zero-Plus-Fix-SdCard-detection.patch deleted file mode 100644 index 2feab76754..0000000000 --- a/package/boot/uboot-sunxi/patches/240-sun50i-h5-Orange-Pi-Zero-Plus-Fix-SdCard-detection.patch +++ /dev/null @@ -1,28 +0,0 @@ -From ad320d4d6ad03af5ff730546113d53a47ef6a22e Mon Sep 17 00:00:00 2001 -From: Hauke Mehrtens -Date: Sun, 13 Jan 2019 17:05:09 +0100 -Subject: [PATCH] sun50i: h5: Orange Pi Zero Plus: Fix SdCard detection - -The Detection pin is at PF6 and not at PH13 like defined before. I -checked the schematics and now I am am not seeing this error message any -more: -Loading Environment from FAT... Card did not respond to voltage select! - -Fixes: 76d69eb01de ("sun50i: h5: Add initial Orange Pi Zero Plus support") -Signed-off-by: Hauke Mehrtens ---- - configs/orangepi_zero_plus_defconfig | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - ---- a/configs/orangepi_zero_plus_defconfig -+++ b/configs/orangepi_zero_plus_defconfig -@@ -4,8 +4,7 @@ CONFIG_SPL=y - CONFIG_MACH_SUN50I_H5=y - CONFIG_DRAM_CLK=624 - CONFIG_DRAM_ZQ=3881977 --CONFIG_MMC0_CD_PIN="PH13" --CONFIG_MMC_SUNXI_SLOT_EXTRA=2 -+CONFIG_MMC0_CD_PIN="PF6" - CONFIG_NR_DRAM_BANKS=1 - # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set - # CONFIG_CMD_FLASH is not set diff --git a/package/boot/uboot-sunxi/patches/250-Sinovoip-BPI-M2-Ultra-defconfig.patch b/package/boot/uboot-sunxi/patches/250-Sinovoip-BPI-M2-Ultra-defconfig.patch deleted file mode 100644 index 94606aa846..0000000000 --- a/package/boot/uboot-sunxi/patches/250-Sinovoip-BPI-M2-Ultra-defconfig.patch +++ /dev/null @@ -1,25 +0,0 @@ ---- /dev/null -+++ b/configs/Sinovoip_BPI_M2_Ultra_defconfig -@@ -0,0 +1,22 @@ -+CONFIG_ARM=y -+CONFIG_ARCH_SUNXI=y -+CONFIG_SPL=y -+CONFIG_MACH_SUN8I_R40=y -+CONFIG_DRAM_CLK=576 -+CONFIG_DRAM_ZQ=3881979 -+CONFIG_MACPWR="PA17" -+CONFIG_MMC0_CD_PIN="PH13" -+CONFIG_MMC_SUNXI_SLOT_EXTRA=2 -+CONFIG_AHCI=y -+CONFIG_NR_DRAM_BANKS=1 -+# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -+CONFIG_SPL_I2C_SUPPORT=y -+# CONFIG_CMD_FLASH is not set -+CONFIG_DEFAULT_DEVICE_TREE="sun8i-r40-bananapi-m2-ultra" -+CONFIG_SCSI_AHCI=y -+CONFIG_RGMII=y -+CONFIG_SUN8I_EMAC=y -+CONFIG_AXP_DLDO4_VOLT=2500 -+CONFIG_AXP_ELDO3_VOLT=1200 -+CONFIG_SCSI=y -+CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y diff --git a/package/boot/uboot-sunxi/patches/260-configs-a64-olinuxino-emmc-add-eMMC-boot-part-config.patch b/package/boot/uboot-sunxi/patches/260-configs-a64-olinuxino-emmc-add-eMMC-boot-part-config.patch new file mode 100644 index 0000000000..a448b8319f --- /dev/null +++ b/package/boot/uboot-sunxi/patches/260-configs-a64-olinuxino-emmc-add-eMMC-boot-part-config.patch @@ -0,0 +1,29 @@ +From 7fa26c287b225c5e42be6d1a81d45592ec45bd9c Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Petr=20=C5=A0tetiar?= +Date: Wed, 18 Mar 2020 12:59:01 +0100 +Subject: [PATCH] configs: a64-olinuxino-emmc: add eMMC boot part config + commands +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +mmc bootbus and partconf commands are needed in order to be able to +configure booting from separate boot0/boot1 eMMC partitions. + +Signed-off-by: Petr Štetiar +--- + configs/a64-olinuxino-emmc_defconfig | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/configs/a64-olinuxino-emmc_defconfig b/configs/a64-olinuxino-emmc_defconfig +index 8443a6dae9e3..9a96a964b1dc 100644 +--- a/configs/a64-olinuxino-emmc_defconfig ++++ b/configs/a64-olinuxino-emmc_defconfig +@@ -12,6 +12,7 @@ CONFIG_USE_PREBOOT=y + CONFIG_DEFAULT_DEVICE_TREE="sun50i-a64-olinuxino-emmc" + CONFIG_SYS_RELOC_GD_ENV_ADDR=y + CONFIG_SUN8I_EMAC=y ++CONFIG_SUPPORT_EMMC_BOOT=y + CONFIG_USB_EHCI_HCD=y + CONFIG_USB_OHCI_HCD=y + CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y diff --git a/package/boot/uboot-sunxi/uEnv-a64.txt b/package/boot/uboot-sunxi/uEnv-a64.txt index 7a717fdc0f..a47ebda613 100644 --- a/package/boot/uboot-sunxi/uEnv-a64.txt +++ b/package/boot/uboot-sunxi/uEnv-a64.txt @@ -1,5 +1,7 @@ -setenv loadkernel fatload mmc 0 \$kernel_addr_r uImage -setenv loaddtb fatload mmc 0 \$fdt_addr_r dtb -setenv bootargs console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait earlycon=uart,mmio32,0x01c28000 +setenv mmc_rootpart 2 +part uuid mmc ${mmc_bootdev}:${mmc_rootpart} uuid +setenv loadkernel fatload mmc \$mmc_bootdev \$kernel_addr_r uImage +setenv loaddtb fatload mmc \$mmc_bootdev \$fdt_addr_r dtb +setenv bootargs console=ttyS0,115200 earlyprintk root=PARTUUID=${uuid} rootwait earlycon=uart,mmio32,0x01c28000 setenv uenvcmd run loadkernel \&\& run loaddtb \&\& booti \$kernel_addr_r - \$fdt_addr_r run uenvcmd diff --git a/package/firmware/linux-firmware/realtek.mk b/package/firmware/linux-firmware/realtek.mk index 87a11c0779..b0f6ff7f35 100644 --- a/package/firmware/linux-firmware/realtek.mk +++ b/package/firmware/linux-firmware/realtek.mk @@ -79,6 +79,13 @@ define Package/rtl8723bu-firmware/install endef $(eval $(call BuildPackage,rtl8723bu-firmware)) +Package/rtl8723bs-firmware = $(call Package/firmware-default,RealTek RTL8723BS firmware) +define Package/rtl8723bs-firmware/install + $(INSTALL_DIR) $(1)/lib/firmware/rtlwifi + $(INSTALL_DATA) $(PKG_BUILD_DIR)/rtlwifi/rtl8723bs*.bin $(1)/lib/firmware/rtlwifi +endef +$(eval $(call BuildPackage,rtl8723bs-firmware)) + Package/rtl8821ae-firmware = $(call Package/firmware-default,RealTek RTL8821AE firmware) define Package/rtl8821ae-firmware/install $(INSTALL_DIR) $(1)/lib/firmware/rtlwifi diff --git a/package/kernel/linux/modules/hwmon.mk b/package/kernel/linux/modules/hwmon.mk index 1f4e4558a9..2552a32a56 100644 --- a/package/kernel/linux/modules/hwmon.mk +++ b/package/kernel/linux/modules/hwmon.mk @@ -107,6 +107,21 @@ endef $(eval $(call KernelPackage,hwmon-gpiofan)) +define KernelPackage/hwmon-f71882fg + TITLE:=F71882FG compatible monitoring support + KCONFIG:=CONFIG_SENSORS_F71882FG + FILES:=$(LINUX_DIR)/drivers/hwmon/f71882fg.ko + AUTOLOAD:=$(call AutoProbe,f71882fg) + $(call AddDepends/hwmon,@TARGET_x86) +endef + +define KernelPackage/hwmon-f71882fg/description + Kernel module for hardware monitoring via many Fintek Super-IO chips. +endef + +$(eval $(call KernelPackage,hwmon-f71882fg)) + + define KernelPackage/hwmon-ina209 TITLE:=INA209 monitoring support KCONFIG:=CONFIG_SENSORS_INA209 diff --git a/package/kernel/linux/modules/other.mk b/package/kernel/linux/modules/other.mk index f1a70bf069..43709228f9 100644 --- a/package/kernel/linux/modules/other.mk +++ b/package/kernel/linux/modules/other.mk @@ -214,6 +214,22 @@ endef $(eval $(call KernelPackage,gpio-dev)) +define KernelPackage/gpio-f7188x + SUBMENU:=$(OTHER_MENU) + TITLE:=Fintek F718xx/F818xx GPIO Support + DEPENDS:=@GPIO_SUPPORT @TARGET_x86 + KCONFIG:=CONFIG_GPIO_F7188X + FILES:=$(LINUX_DIR)/drivers/gpio/gpio-f7188x.ko + AUTOLOAD:=$(call AutoProbe,gpio-f7188x) +endef + +define KernelPackage/gpio-f7188x/description + Kernel module for the GPIOs found on many Fintek Super-IO chips. +endef + +$(eval $(call KernelPackage,gpio-f7188x)) + + define KernelPackage/gpio-mcp23s08 SUBMENU:=$(OTHER_MENU) TITLE:=Microchip MCP23xxx I/O expander @@ -1228,3 +1244,19 @@ define KernelPackage/it87-wdt/description endef $(eval $(call KernelPackage,it87-wdt)) + + +define KernelPackage/f71808e-wdt + SUBMENU:=$(OTHER_MENU) + TITLE:=Fintek F718xx/F818xx Watchdog Timer + DEPENDS:=@TARGET_x86 + KCONFIG:=CONFIG_F71808E_WDT + FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/f71808e_wdt.ko + AUTOLOAD:=$(call AutoProbe,f71808e-wdt,1) +endef + +define KernelPackage/f71808e-wdt/description + Kernel module for the watchdog timer found on many Fintek Super-IO chips. +endef + +$(eval $(call KernelPackage,f71808e-wdt)) diff --git a/package/kernel/mac80211/realtek.mk b/package/kernel/mac80211/realtek.mk index 41f5e3e9dc..19b54e07d7 100644 --- a/package/kernel/mac80211/realtek.mk +++ b/package/kernel/mac80211/realtek.mk @@ -1,7 +1,7 @@ PKG_DRIVERS += \ rtl8180 rtl8187 \ rtlwifi rtlwifi-pci rtlwifi-btcoexist rtlwifi-usb rtl8192c-common \ - rtl8192ce rtl8192se rtl8192de rtl8192cu rtl8821ae \ + rtl8192ce rtl8192se rtl8192de rtl8192cu rtl8723bs rtl8821ae \ rtl8xxxu rtw88 config-$(call config_package,rtl8180) += RTL8180 @@ -22,6 +22,9 @@ config-$(CONFIG_PACKAGE_RTLWIFI_DEBUG) += RTLWIFI_DEBUG config-$(call config_package,rtl8xxxu) += RTL8XXXU config-y += RTL8XXXU_UNTESTED +config-$(call config_package,rtl8723bs) += RTL8723BS +config-y += STAGING + config-$(call config_package,rtw88) += RTW88 RTW88_CORE RTW88_PCI config-y += RTW88_8822BE RTW88_8822CE @@ -180,3 +183,17 @@ define KernelPackage/rtw88 $(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtw88/rtwpci.ko AUTOLOAD:=$(call AutoProbe,rtwpci) endef + +define KernelPackage/rtl8723bs + $(call KernelPackage/mac80211/Default) + TITLE:=Realtek RTL8723BS SDIO Wireless LAN NIC driver (staging) + DEPENDS+=+kmod-mmc +kmod-mac80211 + FILES:=$(PKG_BUILD_DIR)/drivers/staging/rtl8723bs/r8723bs.ko + AUTOLOAD:=$(call AutoProbe,r8723bs) +endef + +define KernelPackage/rtl8723bs/description + This option enables support for RTL8723BS SDIO drivers, such as the wifi found + on the 1st gen Intel Compute Stick, the CHIP and many other Intel Atom and ARM + based devices. +endef diff --git a/package/libs/openssl/Makefile b/package/libs/openssl/Makefile index 7c90fcca33..4357417f81 100644 --- a/package/libs/openssl/Makefile +++ b/package/libs/openssl/Makefile @@ -11,7 +11,7 @@ PKG_NAME:=openssl PKG_BASE:=1.1.1 PKG_BUGFIX:=e PKG_VERSION:=$(PKG_BASE)$(PKG_BUGFIX) -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_USE_MIPS16:=0 ENGINES_DIR=engines-1.1 diff --git a/package/libs/openssl/patches/200-Partially-revert-Detect-EOF-while-reading-in-libssl.patch b/package/libs/openssl/patches/200-Partially-revert-Detect-EOF-while-reading-in-libssl.patch new file mode 100644 index 0000000000..c269dff07c --- /dev/null +++ b/package/libs/openssl/patches/200-Partially-revert-Detect-EOF-while-reading-in-libssl.patch @@ -0,0 +1,80 @@ +From 30d190caf311d534867df97e26b552e628cb7d85 Mon Sep 17 00:00:00 2001 +From: Tomas Mraz +Date: Wed, 25 Mar 2020 14:15:31 +0100 +Subject: [PATCH] Partially revert "Detect EOF while reading in libssl" + +This partially reverts commit db943f43a60d1b5b1277e4b5317e8f288e7a0a3a. + +Reviewed-by: Matt Caswell +(Merged from https://github.com/openssl/openssl/pull/11400) + +diff --git a/crypto/err/openssl.txt b/crypto/err/openssl.txt +index f5324c6819..35512f9caf 100644 +--- a/crypto/err/openssl.txt ++++ b/crypto/err/openssl.txt +@@ -2852,7 +2852,6 @@ SSL_R_UNABLE_TO_LOAD_SSL3_MD5_ROUTINES:242:unable to load ssl3 md5 routines + SSL_R_UNABLE_TO_LOAD_SSL3_SHA1_ROUTINES:243:unable to load ssl3 sha1 routines + SSL_R_UNEXPECTED_CCS_MESSAGE:262:unexpected ccs message + SSL_R_UNEXPECTED_END_OF_EARLY_DATA:178:unexpected end of early data +-SSL_R_UNEXPECTED_EOF_WHILE_READING:294:unexpected eof while reading + SSL_R_UNEXPECTED_MESSAGE:244:unexpected message + SSL_R_UNEXPECTED_RECORD:245:unexpected record + SSL_R_UNINITIALIZED:276:uninitialized +diff --git a/include/openssl/sslerr.h b/include/openssl/sslerr.h +index 0ef684f3c1..ba4c4ae5fb 100644 +--- a/include/openssl/sslerr.h ++++ b/include/openssl/sslerr.h +@@ -1,6 +1,6 @@ + /* + * Generated by util/mkerr.pl DO NOT EDIT +- * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved. ++ * Copyright 1995-2019 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy +@@ -734,7 +734,6 @@ int ERR_load_SSL_strings(void); + # define SSL_R_UNABLE_TO_LOAD_SSL3_SHA1_ROUTINES 243 + # define SSL_R_UNEXPECTED_CCS_MESSAGE 262 + # define SSL_R_UNEXPECTED_END_OF_EARLY_DATA 178 +-# define SSL_R_UNEXPECTED_EOF_WHILE_READING 294 + # define SSL_R_UNEXPECTED_MESSAGE 244 + # define SSL_R_UNEXPECTED_RECORD 245 + # define SSL_R_UNINITIALIZED 276 +diff --git a/ssl/record/rec_layer_s3.c b/ssl/record/rec_layer_s3.c +index 1c885a664f..b2a7a47eb0 100644 +--- a/ssl/record/rec_layer_s3.c ++++ b/ssl/record/rec_layer_s3.c +@@ -296,12 +296,6 @@ int ssl3_read_n(SSL *s, size_t n, size_t max, int extend, int clearold, + ret = BIO_read(s->rbio, pkt + len + left, max - left); + if (ret >= 0) + bioread = ret; +- if (ret <= 0 +- && !BIO_should_retry(s->rbio) +- && BIO_eof(s->rbio)) { +- SSLfatal(s, SSL_AD_DECODE_ERROR, SSL_F_SSL3_READ_N, +- SSL_R_UNEXPECTED_EOF_WHILE_READING); +- } + } else { + SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_SSL3_READ_N, + SSL_R_READ_BIO_NOT_SET); +diff --git a/ssl/ssl_err.c b/ssl/ssl_err.c +index a0c7b79659..4b12ed1485 100644 +--- a/ssl/ssl_err.c ++++ b/ssl/ssl_err.c +@@ -1,6 +1,6 @@ + /* + * Generated by util/mkerr.pl DO NOT EDIT +- * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved. ++ * Copyright 1995-2019 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy +@@ -1205,8 +1205,6 @@ static const ERR_STRING_DATA SSL_str_reasons[] = { + "unexpected ccs message"}, + {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_UNEXPECTED_END_OF_EARLY_DATA), + "unexpected end of early data"}, +- {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_UNEXPECTED_EOF_WHILE_READING), +- "unexpected eof while reading"}, + {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_UNEXPECTED_MESSAGE), "unexpected message"}, + {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_UNEXPECTED_RECORD), "unexpected record"}, + {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_UNINITIALIZED), "uninitialized"}, diff --git a/target/linux/apm821xx/patches-5.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch b/target/linux/apm821xx/patches-5.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch index 68110e29b0..36eab9349b 100644 --- a/target/linux/apm821xx/patches-5.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch +++ b/target/linux/apm821xx/patches-5.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch @@ -93,7 +93,7 @@ Signed-off-by: Vinod Koul static const char hcd_name[] = "xhci_hcd"; static struct hc_driver __read_mostly xhci_pci_hc_driver; -@@ -283,6 +323,873 @@ static void xhci_pme_acpi_rtd3_enable(st +@@ -284,6 +324,873 @@ static void xhci_pme_acpi_rtd3_enable(st static void xhci_pme_acpi_rtd3_enable(struct pci_dev *dev) { } #endif /* CONFIG_ACPI */ @@ -967,7 +967,7 @@ Signed-off-by: Vinod Koul /* called during probe() after chip reset completes */ static int xhci_pci_setup(struct usb_hcd *hcd) { -@@ -324,6 +1231,27 @@ static int xhci_pci_probe(struct pci_dev +@@ -325,6 +1232,27 @@ static int xhci_pci_probe(struct pci_dev struct hc_driver *driver; struct usb_hcd *hcd; @@ -995,7 +995,7 @@ Signed-off-by: Vinod Koul driver = (struct hc_driver *)id->driver_data; /* Prevent runtime suspending between USB-2 and USB-3 initialization */ -@@ -385,6 +1313,16 @@ static void xhci_pci_remove(struct pci_d +@@ -386,6 +1314,16 @@ static void xhci_pci_remove(struct pci_d { struct xhci_hcd *xhci; @@ -1012,7 +1012,7 @@ Signed-off-by: Vinod Koul xhci = hcd_to_xhci(pci_get_drvdata(dev)); xhci->xhc_state |= XHCI_STATE_REMOVING; -@@ -512,6 +1450,11 @@ static int xhci_pci_resume(struct usb_hc +@@ -513,6 +1451,11 @@ static int xhci_pci_resume(struct usb_hc if (pdev->vendor == PCI_VENDOR_ID_INTEL) usb_enable_intel_xhci_ports(pdev); diff --git a/target/linux/apm821xx/patches-5.4/802-usb-xhci-force-msi-renesas-xhci.patch b/target/linux/apm821xx/patches-5.4/802-usb-xhci-force-msi-renesas-xhci.patch index af1e5ed6df..55686a2fd8 100644 --- a/target/linux/apm821xx/patches-5.4/802-usb-xhci-force-msi-renesas-xhci.patch +++ b/target/linux/apm821xx/patches-5.4/802-usb-xhci-force-msi-renesas-xhci.patch @@ -13,7 +13,7 @@ produce a noisy warning. --- a/drivers/usb/host/xhci-pci.c +++ b/drivers/usb/host/xhci-pci.c -@@ -274,6 +274,7 @@ static void xhci_pci_quirks(struct devic +@@ -275,6 +275,7 @@ static void xhci_pci_quirks(struct devic pdev->device == 0x0015) { xhci->quirks |= XHCI_RESET_ON_RESUME; xhci->quirks |= XHCI_ZERO_64B_REGS; diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-rb95x.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-rb95x.c index 33c4f53133..c4cf5f12a8 100644 --- a/target/linux/ar71xx/files/arch/mips/ath79/mach-rb95x.c +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-rb95x.c @@ -266,6 +266,7 @@ static void __init rb951g_setup(void) return; ath79_setup_ar934x_eth_cfg(AR934X_ETH_CFG_RGMII_GMAC0 | + AR934X_ETH_CFG_RXD_DELAY | AR934X_ETH_CFG_SW_ONLY_MODE); ath79_register_mdio(0, 0x0); @@ -276,6 +277,7 @@ static void __init rb951g_setup(void) ath79_init_mac(ath79_eth0_data.mac_addr, ath79_mac_base, 0); ath79_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_RGMII; ath79_eth0_data.phy_mask = BIT(0); + ath79_eth0_pll_data.pll_1000 = 0x6f000000; ath79_register_eth(0); diff --git a/target/linux/bcm27xx/patches-5.4/950-0056-Improve-__copy_to_user-and-__copy_from_user-performa.patch b/target/linux/bcm27xx/patches-5.4/950-0056-Improve-__copy_to_user-and-__copy_from_user-performa.patch index 9b0257d3a4..d7f51722fd 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0056-Improve-__copy_to_user-and-__copy_from_user-performa.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0056-Improve-__copy_to_user-and-__copy_from_user-performa.patch @@ -276,7 +276,7 @@ Signed-off-by: Phil Elwell ENDPROC(arm_copy_from_user) +ENDPROC(__copy_from_user_std) - .pushsection .fixup,"ax" + .pushsection .text.fixup,"ax" .align 0 --- /dev/null +++ b/arch/arm/lib/exports_rpi.c diff --git a/target/linux/bcm27xx/patches-5.4/950-0089-cgroup-Disable-cgroup-memory-by-default.patch b/target/linux/bcm27xx/patches-5.4/950-0089-cgroup-Disable-cgroup-memory-by-default.patch index 96ab11f8ab..30eefd3e21 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0089-cgroup-Disable-cgroup-memory-by-default.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0089-cgroup-Disable-cgroup-memory-by-default.patch @@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell --- a/kernel/cgroup/cgroup.c +++ b/kernel/cgroup/cgroup.c -@@ -5707,6 +5707,8 @@ int __init cgroup_init_early(void) +@@ -5720,6 +5720,8 @@ int __init cgroup_init_early(void) } static u16 cgroup_disable_mask __initdata; @@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell /** * cgroup_init - cgroup initialization -@@ -5746,6 +5748,12 @@ int __init cgroup_init(void) +@@ -5759,6 +5761,12 @@ int __init cgroup_init(void) mutex_unlock(&cgroup_mutex); @@ -39,7 +39,7 @@ Signed-off-by: Phil Elwell for_each_subsys(ss, ssid) { if (ss->early_init) { struct cgroup_subsys_state *css = -@@ -6165,6 +6173,28 @@ static int __init cgroup_disable(char *s +@@ -6178,6 +6186,28 @@ static int __init cgroup_disable(char *s } __setup("cgroup_disable=", cgroup_disable); diff --git a/target/linux/bcm27xx/patches-5.4/950-0215-usb-xhci-Show-that-the-VIA-VL805-supports-LPM.patch b/target/linux/bcm27xx/patches-5.4/950-0215-usb-xhci-Show-that-the-VIA-VL805-supports-LPM.patch index 1728ed70d3..ee1e3940b3 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0215-usb-xhci-Show-that-the-VIA-VL805-supports-LPM.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0215-usb-xhci-Show-that-the-VIA-VL805-supports-LPM.patch @@ -10,7 +10,7 @@ Signed-off-by: Phil Elwell --- a/drivers/usb/host/xhci-pci.c +++ b/drivers/usb/host/xhci-pci.c -@@ -243,6 +243,10 @@ static void xhci_pci_quirks(struct devic +@@ -244,6 +244,10 @@ static void xhci_pci_quirks(struct devic pdev->device == 0x3432) xhci->quirks |= XHCI_BROKEN_STREAMS; diff --git a/target/linux/bcm27xx/patches-5.4/950-0268-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch b/target/linux/bcm27xx/patches-5.4/950-0268-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch index 50b9a9b4b4..afddaa9462 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0268-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0268-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch @@ -23,7 +23,7 @@ Signed-off-by: Jonathan Bell --- a/drivers/usb/host/xhci-pci.c +++ b/drivers/usb/host/xhci-pci.c -@@ -244,8 +244,10 @@ static void xhci_pci_quirks(struct devic +@@ -245,8 +245,10 @@ static void xhci_pci_quirks(struct devic xhci->quirks |= XHCI_BROKEN_STREAMS; if (pdev->vendor == PCI_VENDOR_ID_VIA && diff --git a/target/linux/bcm27xx/patches-5.4/950-0284-hid-usb-Add-device-quirks-for-Freeway-Airmouse-T3-an.patch b/target/linux/bcm27xx/patches-5.4/950-0284-hid-usb-Add-device-quirks-for-Freeway-Airmouse-T3-an.patch index 1843ebdce0..203e8638a2 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0284-hid-usb-Add-device-quirks-for-Freeway-Airmouse-T3-an.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0284-hid-usb-Add-device-quirks-for-Freeway-Airmouse-T3-an.patch @@ -33,7 +33,7 @@ Signed-off-by: Jonathan Bell #define USB_VENDOR_ID_BELKIN 0x050d #define USB_DEVICE_ID_FLIP_KVM 0x3201 -@@ -1224,6 +1227,9 @@ +@@ -1226,6 +1229,9 @@ #define USB_VENDOR_ID_XAT 0x2505 #define USB_DEVICE_ID_XAT_CSR 0x0220 @@ -53,7 +53,7 @@ Signed-off-by: Jonathan Bell { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_MULTI_TOUCH), HID_QUIRK_MULTI_INPUT }, { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_PIXART_USB_OPTICAL_MOUSE), HID_QUIRK_ALWAYS_POLL }, { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_PIXART_USB_OPTICAL_MOUSE2), HID_QUIRK_ALWAYS_POLL }, -@@ -175,6 +176,7 @@ static const struct hid_device_id hid_qu +@@ -176,6 +177,7 @@ static const struct hid_device_id hid_qu { HID_USB_DEVICE(USB_VENDOR_ID_WISEGROUP_LTD2, USB_DEVICE_ID_SMARTJOY_DUAL_PLUS), HID_QUIRK_NOGET | HID_QUIRK_MULTI_INPUT }, { HID_USB_DEVICE(USB_VENDOR_ID_WISEGROUP, USB_DEVICE_ID_QUAD_USB_JOYPAD), HID_QUIRK_NOGET | HID_QUIRK_MULTI_INPUT }, { HID_USB_DEVICE(USB_VENDOR_ID_XIN_MO, USB_DEVICE_ID_XIN_MO_DUAL_ARCADE), HID_QUIRK_MULTI_INPUT }, diff --git a/target/linux/bcm27xx/patches-5.4/950-0317-kbuild-Allow-.dtbo-overlays-to-be-built-piecemeal.patch b/target/linux/bcm27xx/patches-5.4/950-0317-kbuild-Allow-.dtbo-overlays-to-be-built-piecemeal.patch index d02902a9b3..c7b3e7e09e 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0317-kbuild-Allow-.dtbo-overlays-to-be-built-piecemeal.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0317-kbuild-Allow-.dtbo-overlays-to-be-built-piecemeal.patch @@ -31,6 +31,6 @@ Signed-off-by: Phil Elwell +%.dtbo: prepare3 scripts_dtc + $(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@ + - PHONY += dtbs dtbs_install dt_binding_check + PHONY += dtbs dtbs_install dtbs_check dtbs dtbs_check: include/config/kernel.release scripts_dtc $(Q)$(MAKE) $(build)=$(dtstree) diff --git a/target/linux/bcm27xx/patches-5.4/950-0466-Kbuild-Allow-.dtbo-overlays-to-be-built-adjust.patch b/target/linux/bcm27xx/patches-5.4/950-0466-Kbuild-Allow-.dtbo-overlays-to-be-built-adjust.patch index e9b8a76831..5795d47464 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0466-Kbuild-Allow-.dtbo-overlays-to-be-built-adjust.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0466-Kbuild-Allow-.dtbo-overlays-to-be-built-adjust.patch @@ -23,4 +23,4 @@ Signed-off-by: Nataliya Korovkina +%.dtbo: include/config/kernel.release scripts_dtc $(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@ - PHONY += dtbs dtbs_install dt_binding_check + PHONY += dtbs dtbs_install dtbs_check diff --git a/target/linux/bcm27xx/patches-5.4/950-0480-drm-modes-parse_cmdline-Fix-possible-reference-past-.patch b/target/linux/bcm27xx/patches-5.4/950-0480-drm-modes-parse_cmdline-Fix-possible-reference-past-.patch index 1617a45d52..9b514c3a25 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0480-drm-modes-parse_cmdline-Fix-possible-reference-past-.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0480-drm-modes-parse_cmdline-Fix-possible-reference-past-.patch @@ -138,4 +138,4 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-1-hdego + sep = delim; } - mode->rotation_reflection = rotation; + if (!(rotation & DRM_MODE_ROTATE_MASK)) diff --git a/target/linux/bcm27xx/patches-5.4/950-0481-drm-modes-parse_cmdline-Make-various-char-pointers-c.patch b/target/linux/bcm27xx/patches-5.4/950-0481-drm-modes-parse_cmdline-Make-various-char-pointers-c.patch index ef8c161f52..6abe7beb32 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0481-drm-modes-parse_cmdline-Make-various-char-pointers-c.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0481-drm-modes-parse_cmdline-Make-various-char-pointers-c.patch @@ -37,7 +37,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-2-hdego option = sep + 1; delim = strchr(option, '='); -@@ -1718,8 +1718,8 @@ bool drm_mode_parse_command_line_for_con +@@ -1725,8 +1725,8 @@ bool drm_mode_parse_command_line_for_con bool named_mode = false, parse_extras = false; unsigned int bpp_off = 0, refresh_off = 0, options_off = 0; unsigned int mode_end = 0; diff --git a/target/linux/bcm27xx/patches-5.4/950-0482-drm-modes-parse_cmdline-Stop-parsing-extras-after-bp.patch b/target/linux/bcm27xx/patches-5.4/950-0482-drm-modes-parse_cmdline-Stop-parsing-extras-after-bp.patch index 1128ac0c36..1d356eb6ab 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0482-drm-modes-parse_cmdline-Stop-parsing-extras-after-bp.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0482-drm-modes-parse_cmdline-Stop-parsing-extras-after-bp.patch @@ -27,7 +27,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-3-hdego --- a/drivers/gpu/drm/drm_modes.c +++ b/drivers/gpu/drm/drm_modes.c -@@ -1721,7 +1721,7 @@ bool drm_mode_parse_command_line_for_con +@@ -1728,7 +1728,7 @@ bool drm_mode_parse_command_line_for_con const char *bpp_ptr = NULL, *refresh_ptr = NULL, *extra_ptr = NULL; const char *options_ptr = NULL; char *bpp_end_ptr = NULL, *refresh_end_ptr = NULL; @@ -36,7 +36,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-3-hdego #ifdef CONFIG_FB if (!mode_option) -@@ -1841,9 +1841,11 @@ bool drm_mode_parse_command_line_for_con +@@ -1848,9 +1848,11 @@ bool drm_mode_parse_command_line_for_con else if (refresh_ptr) extra_ptr = refresh_end_ptr; @@ -53,14 +53,14 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-3-hdego connector, mode); --- a/drivers/gpu/drm/selftests/drm_cmdline_selftests.h +++ b/drivers/gpu/drm/selftests/drm_cmdline_selftests.h -@@ -60,3 +60,4 @@ cmdline_test(drm_cmdline_test_vmirror) +@@ -61,3 +61,4 @@ cmdline_test(drm_cmdline_test_vmirror) cmdline_test(drm_cmdline_test_margin_options) cmdline_test(drm_cmdline_test_multiple_options) cmdline_test(drm_cmdline_test_invalid_option) +cmdline_test(drm_cmdline_test_bpp_extra_and_option) --- a/drivers/gpu/drm/selftests/test-drm_cmdline_parser.c +++ b/drivers/gpu/drm/selftests/test-drm_cmdline_parser.c -@@ -992,6 +992,32 @@ static int drm_cmdline_test_invalid_opti +@@ -1003,6 +1003,32 @@ static int drm_cmdline_test_invalid_opti return 0; } diff --git a/target/linux/bcm27xx/patches-5.4/950-0483-drm-modes-parse_cmdline-Accept-extras-directly-after.patch b/target/linux/bcm27xx/patches-5.4/950-0483-drm-modes-parse_cmdline-Accept-extras-directly-after.patch index 79cfa56e84..8d9a92ec0d 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0483-drm-modes-parse_cmdline-Accept-extras-directly-after.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0483-drm-modes-parse_cmdline-Accept-extras-directly-after.patch @@ -27,7 +27,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-4-hdego --- a/drivers/gpu/drm/drm_modes.c +++ b/drivers/gpu/drm/drm_modes.c -@@ -1794,6 +1794,7 @@ bool drm_mode_parse_command_line_for_con +@@ -1801,6 +1801,7 @@ bool drm_mode_parse_command_line_for_con mode_end = refresh_off; } else if (options_ptr) { mode_end = options_off; @@ -37,14 +37,14 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-4-hdego parse_extras = true; --- a/drivers/gpu/drm/selftests/drm_cmdline_selftests.h +++ b/drivers/gpu/drm/selftests/drm_cmdline_selftests.h -@@ -61,3 +61,4 @@ cmdline_test(drm_cmdline_test_margin_opt +@@ -62,3 +62,4 @@ cmdline_test(drm_cmdline_test_margin_opt cmdline_test(drm_cmdline_test_multiple_options) cmdline_test(drm_cmdline_test_invalid_option) cmdline_test(drm_cmdline_test_bpp_extra_and_option) +cmdline_test(drm_cmdline_test_extra_and_option) --- a/drivers/gpu/drm/selftests/test-drm_cmdline_parser.c +++ b/drivers/gpu/drm/selftests/test-drm_cmdline_parser.c -@@ -1018,6 +1018,30 @@ static int drm_cmdline_test_bpp_extra_an +@@ -1029,6 +1029,30 @@ static int drm_cmdline_test_bpp_extra_an return 0; } diff --git a/target/linux/bcm27xx/patches-5.4/950-0484-drm-modes-parse_cmdline-Rework-drm_mode_parse_cmdlin.patch b/target/linux/bcm27xx/patches-5.4/950-0484-drm-modes-parse_cmdline-Rework-drm_mode_parse_cmdlin.patch index 0cf2939a06..1716ebd7be 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0484-drm-modes-parse_cmdline-Rework-drm_mode_parse_cmdlin.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0484-drm-modes-parse_cmdline-Rework-drm_mode_parse_cmdlin.patch @@ -61,9 +61,9 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-5-hdego + option = sep + 1; + } while (sep); - mode->rotation_reflection = rotation; - -@@ -1855,9 +1854,7 @@ bool drm_mode_parse_command_line_for_con + if (!(rotation & DRM_MODE_ROTATE_MASK)) + rotation |= DRM_MODE_ROTATE_0; +@@ -1862,9 +1861,7 @@ bool drm_mode_parse_command_line_for_con } if (options_ptr) { diff --git a/target/linux/bcm27xx/patches-5.4/950-0485-drm-modes-parse_cmdline-Add-freestanding-argument-to.patch b/target/linux/bcm27xx/patches-5.4/950-0485-drm-modes-parse_cmdline-Add-freestanding-argument-to.patch index ac37b72f74..6ed952bd45 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0485-drm-modes-parse_cmdline-Add-freestanding-argument-to.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0485-drm-modes-parse_cmdline-Add-freestanding-argument-to.patch @@ -29,9 +29,9 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-6-hdego const struct drm_connector *connector, struct drm_cmdline_mode *mode) { -@@ -1663,6 +1664,9 @@ static int drm_mode_parse_cmdline_option - option = sep + 1; - } while (sep); +@@ -1670,6 +1671,9 @@ static int drm_mode_parse_cmdline_option + if (!is_power_of_2(rotation & DRM_MODE_ROTATE_MASK)) + return -EINVAL; + if (rotation && freestanding) + return -EINVAL; @@ -39,7 +39,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-6-hdego mode->rotation_reflection = rotation; return 0; -@@ -1855,6 +1859,7 @@ bool drm_mode_parse_command_line_for_con +@@ -1862,6 +1866,7 @@ bool drm_mode_parse_command_line_for_con if (options_ptr) { ret = drm_mode_parse_cmdline_options(options_ptr + 1, diff --git a/target/linux/bcm27xx/patches-5.4/950-0486-drm-modes-parse_cmdline-Set-bpp-refresh_specified-af.patch b/target/linux/bcm27xx/patches-5.4/950-0486-drm-modes-parse_cmdline-Set-bpp-refresh_specified-af.patch index 7f0c6299de..ac973e1d4e 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0486-drm-modes-parse_cmdline-Set-bpp-refresh_specified-af.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0486-drm-modes-parse_cmdline-Set-bpp-refresh_specified-af.patch @@ -24,7 +24,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-7-hdego --- a/drivers/gpu/drm/drm_modes.c +++ b/drivers/gpu/drm/drm_modes.c -@@ -1771,10 +1771,8 @@ bool drm_mode_parse_command_line_for_con +@@ -1778,10 +1778,8 @@ bool drm_mode_parse_command_line_for_con /* Try to locate the bpp and refresh specifiers, if any */ bpp_ptr = strchr(name, '-'); @@ -36,7 +36,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-7-hdego refresh_ptr = strchr(name, '@'); if (refresh_ptr) { -@@ -1782,7 +1780,6 @@ bool drm_mode_parse_command_line_for_con +@@ -1789,7 +1787,6 @@ bool drm_mode_parse_command_line_for_con return false; refresh_off = refresh_ptr - name; @@ -44,7 +44,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-7-hdego } /* Locate the start of named options */ -@@ -1825,6 +1822,8 @@ bool drm_mode_parse_command_line_for_con +@@ -1832,6 +1829,8 @@ bool drm_mode_parse_command_line_for_con ret = drm_mode_parse_cmdline_bpp(bpp_ptr, &bpp_end_ptr, mode); if (ret) return false; @@ -53,7 +53,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-7-hdego } if (refresh_ptr) { -@@ -1832,6 +1831,8 @@ bool drm_mode_parse_command_line_for_con +@@ -1839,6 +1838,8 @@ bool drm_mode_parse_command_line_for_con &refresh_end_ptr, mode); if (ret) return false; diff --git a/target/linux/bcm27xx/patches-5.4/950-0487-drm-modes-parse_cmdline-Allow-specifying-stand-alone.patch b/target/linux/bcm27xx/patches-5.4/950-0487-drm-modes-parse_cmdline-Allow-specifying-stand-alone.patch index 301ad57f03..746f35f83b 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0487-drm-modes-parse_cmdline-Allow-specifying-stand-alone.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0487-drm-modes-parse_cmdline-Allow-specifying-stand-alone.patch @@ -27,7 +27,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-8-hdego --- a/drivers/gpu/drm/drm_modes.c +++ b/drivers/gpu/drm/drm_modes.c -@@ -1677,17 +1677,6 @@ static const char * const drm_named_mode +@@ -1684,17 +1684,6 @@ static const char * const drm_named_mode "PAL", }; @@ -45,7 +45,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-8-hdego /** * drm_mode_parse_command_line_for_connector - parse command line modeline for connector * @mode_option: optional per connector mode option -@@ -1718,7 +1707,7 @@ bool drm_mode_parse_command_line_for_con +@@ -1725,7 +1714,7 @@ bool drm_mode_parse_command_line_for_con struct drm_cmdline_mode *mode) { const char *name; @@ -54,7 +54,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-8-hdego unsigned int bpp_off = 0, refresh_off = 0, options_off = 0; unsigned int mode_end = 0; const char *bpp_ptr = NULL, *refresh_ptr = NULL, *extra_ptr = NULL; -@@ -1738,49 +1727,14 @@ bool drm_mode_parse_command_line_for_con +@@ -1745,49 +1734,14 @@ bool drm_mode_parse_command_line_for_con name = mode_option; @@ -105,7 +105,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-8-hdego /* Locate the start of named options */ options_ptr = strchr(name, ','); -@@ -1800,23 +1754,45 @@ bool drm_mode_parse_command_line_for_con +@@ -1807,23 +1761,45 @@ bool drm_mode_parse_command_line_for_con parse_extras = true; } @@ -160,7 +160,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-8-hdego if (bpp_ptr) { ret = drm_mode_parse_cmdline_bpp(bpp_ptr, &bpp_end_ptr, mode); -@@ -1852,7 +1828,7 @@ bool drm_mode_parse_command_line_for_con +@@ -1859,7 +1835,7 @@ bool drm_mode_parse_command_line_for_con else len = strlen(extra_ptr); @@ -169,7 +169,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-8-hdego connector, mode); if (ret) return false; -@@ -1860,7 +1836,7 @@ bool drm_mode_parse_command_line_for_con +@@ -1867,7 +1843,7 @@ bool drm_mode_parse_command_line_for_con if (options_ptr) { ret = drm_mode_parse_cmdline_options(options_ptr + 1, @@ -180,7 +180,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-8-hdego return false; --- a/drivers/gpu/drm/selftests/drm_cmdline_selftests.h +++ b/drivers/gpu/drm/selftests/drm_cmdline_selftests.h -@@ -62,3 +62,5 @@ cmdline_test(drm_cmdline_test_multiple_o +@@ -63,3 +63,5 @@ cmdline_test(drm_cmdline_test_multiple_o cmdline_test(drm_cmdline_test_invalid_option) cmdline_test(drm_cmdline_test_bpp_extra_and_option) cmdline_test(drm_cmdline_test_extra_and_option) @@ -188,7 +188,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-8-hdego +cmdline_test(drm_cmdline_test_freestanding_force_e_and_options) --- a/drivers/gpu/drm/selftests/test-drm_cmdline_parser.c +++ b/drivers/gpu/drm/selftests/test-drm_cmdline_parser.c -@@ -1042,6 +1042,56 @@ static int drm_cmdline_test_extra_and_op +@@ -1053,6 +1053,56 @@ static int drm_cmdline_test_extra_and_op return 0; } diff --git a/target/linux/bcm27xx/patches-5.4/950-0488-drm-modes-parse_cmdline-Add-support-for-specifying-p.patch b/target/linux/bcm27xx/patches-5.4/950-0488-drm-modes-parse_cmdline-Add-support-for-specifying-p.patch index 29382003a8..cbda9ecc10 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0488-drm-modes-parse_cmdline-Add-support-for-specifying-p.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0488-drm-modes-parse_cmdline-Add-support-for-specifying-p.patch @@ -91,7 +91,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-9-hdego } else { return -EINVAL; } -@@ -1715,6 +1745,8 @@ bool drm_mode_parse_command_line_for_con +@@ -1722,6 +1752,8 @@ bool drm_mode_parse_command_line_for_con char *bpp_end_ptr = NULL, *refresh_end_ptr = NULL; int i, len, ret; @@ -102,14 +102,14 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-9-hdego mode_option = fb_mode_option; --- a/drivers/gpu/drm/selftests/drm_cmdline_selftests.h +++ b/drivers/gpu/drm/selftests/drm_cmdline_selftests.h -@@ -64,3 +64,4 @@ cmdline_test(drm_cmdline_test_bpp_extra_ +@@ -65,3 +65,4 @@ cmdline_test(drm_cmdline_test_bpp_extra_ cmdline_test(drm_cmdline_test_extra_and_option) cmdline_test(drm_cmdline_test_freestanding_options) cmdline_test(drm_cmdline_test_freestanding_force_e_and_options) +cmdline_test(drm_cmdline_test_panel_orientation) --- a/drivers/gpu/drm/selftests/test-drm_cmdline_parser.c +++ b/drivers/gpu/drm/selftests/test-drm_cmdline_parser.c -@@ -1092,6 +1092,28 @@ static int drm_cmdline_test_freestanding +@@ -1103,6 +1103,28 @@ static int drm_cmdline_test_freestanding return 0; } diff --git a/target/linux/bcm27xx/patches-5.4/950-0489-drm-modes-parse_cmdline-Remove-some-unnecessary-code.patch b/target/linux/bcm27xx/patches-5.4/950-0489-drm-modes-parse_cmdline-Remove-some-unnecessary-code.patch index ce80f19b74..fb4a7f1cda 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0489-drm-modes-parse_cmdline-Remove-some-unnecessary-code.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0489-drm-modes-parse_cmdline-Remove-some-unnecessary-code.patch @@ -24,7 +24,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-10-hdeg --- a/drivers/gpu/drm/drm_modes.c +++ b/drivers/gpu/drm/drm_modes.c -@@ -1747,11 +1747,6 @@ bool drm_mode_parse_command_line_for_con +@@ -1754,11 +1754,6 @@ bool drm_mode_parse_command_line_for_con mode->panel_orientation = DRM_MODE_PANEL_ORIENTATION_UNKNOWN; diff --git a/target/linux/bcm27xx/patches-5.4/950-0490-drm-modes-parse_cmdline-Explicitly-memset-the-passed.patch b/target/linux/bcm27xx/patches-5.4/950-0490-drm-modes-parse_cmdline-Explicitly-memset-the-passed.patch index 6c17d894f7..372cd0d665 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0490-drm-modes-parse_cmdline-Explicitly-memset-the-passed.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0490-drm-modes-parse_cmdline-Explicitly-memset-the-passed.patch @@ -24,7 +24,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-11-hdeg --- a/drivers/gpu/drm/drm_modes.c +++ b/drivers/gpu/drm/drm_modes.c -@@ -1745,12 +1745,11 @@ bool drm_mode_parse_command_line_for_con +@@ -1752,12 +1752,11 @@ bool drm_mode_parse_command_line_for_con char *bpp_end_ptr = NULL, *refresh_end_ptr = NULL; int i, len, ret; diff --git a/target/linux/bcm27xx/patches-5.4/950-0491-add-Sensirion-SPS30-to-i2c-sensor-overlay.patch b/target/linux/bcm27xx/patches-5.4/950-0491-add-Sensirion-SPS30-to-i2c-sensor-overlay.patch new file mode 100644 index 0000000000..e85329aa08 --- /dev/null +++ b/target/linux/bcm27xx/patches-5.4/950-0491-add-Sensirion-SPS30-to-i2c-sensor-overlay.patch @@ -0,0 +1,59 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Petr=20=C5=A0tetiar?= +Date: Sat, 7 Mar 2020 22:37:52 +0100 +Subject: [PATCH] add Sensirion SPS30 to i2c-sensor overlay +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Add support for Sensirion SPS30 particulate matter sensor with fixed +address 0x69. + +Signed-off-by: Petr Štetiar + +diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README +index 62ad35f78bad..0d7d00ac92c4 100644 +--- a/arch/arm/boot/dts/overlays/README ++++ b/arch/arm/boot/dts/overlays/README +@@ -1261,6 +1261,9 @@ Params: addr Set the address for the BME280, BME680, BMP280, + si7020 Select the Silicon Labs Si7013/20/21 humidity/ + temperature sensor + ++ sps30 Select the Sensirion SPS30 particulate matter ++ sensor. Fixed address 0x69. ++ + tmp102 Select the Texas Instruments TMP102 temp sensor + Valid addresses 0x48-0x4b, default 0x48 + +diff --git a/arch/arm/boot/dts/overlays/i2c-sensor-overlay.dts b/arch/arm/boot/dts/overlays/i2c-sensor-overlay.dts +index 40881d72a157..ce97837b0db5 100644 +--- a/arch/arm/boot/dts/overlays/i2c-sensor-overlay.dts ++++ b/arch/arm/boot/dts/overlays/i2c-sensor-overlay.dts +@@ -231,6 +231,20 @@ + }; + }; + ++ fragment@15 { ++ target = <&i2c_arm>; ++ __dormant__ { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ status = "okay"; ++ ++ sps30: sps30@69 { ++ compatible = "sensirion,sps30"; ++ reg = <0x69>; ++ status = "okay"; ++ }; ++ }; ++ }; + + __overrides__ { + addr = <&bme280>,"reg:0", <&bmp280>,"reg:0", <&tmp102>,"reg:0", +@@ -252,5 +266,6 @@ + ds1621 = <0>,"+12"; + max17040 = <0>,"+13"; + bme680 = <0>,"+14"; ++ sps30 = <0>,"+15"; + }; + }; diff --git a/target/linux/generic/backport-5.4/507-v5.6-iio-chemical-sps30-fix-missing-triggered-buffer-depe.patch b/target/linux/generic/backport-5.4/507-v5.6-iio-chemical-sps30-fix-missing-triggered-buffer-depe.patch deleted file mode 100644 index 9c2c4d5a8f..0000000000 --- a/target/linux/generic/backport-5.4/507-v5.6-iio-chemical-sps30-fix-missing-triggered-buffer-depe.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 61338e27e2eef3bfcd3df5c39cec5b9dc10ba25c Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Petr=20=C5=A0tetiar?= -Date: Sun, 23 Feb 2020 22:08:25 +0100 -Subject: [PATCH] iio: chemical: sps30: fix missing triggered buffer dependency -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -SPS30 uses triggered buffer, but the dependency is not specified in the -Kconfig file. Fix this by selecting IIO_BUFFER and IIO_TRIGGERED_BUFFER -config symbols. - -Cc: stable@vger.kernel.org -Fixes: 232e0f6ddeae ("iio: chemical: add support for Sensirion SPS30 sensor") -Signed-off-by: Petr Štetiar ---- - drivers/iio/chemical/Kconfig | 2 ++ - 1 file changed, 2 insertions(+) - ---- a/drivers/iio/chemical/Kconfig -+++ b/drivers/iio/chemical/Kconfig -@@ -91,6 +91,8 @@ config SPS30 - tristate "SPS30 particulate matter sensor" - depends on I2C - select CRC8 -+ select IIO_BUFFER -+ select IIO_TRIGGERED_BUFFER - help - Say Y here to build support for the Sensirion SPS30 particulate - matter sensor. diff --git a/target/linux/generic/backport-5.4/600-ipv6-addrconf-call-ipv6_mc_up-for-non-Ethernet-inter.patch b/target/linux/generic/backport-5.4/600-ipv6-addrconf-call-ipv6_mc_up-for-non-Ethernet-inter.patch deleted file mode 100644 index d8fe827fa7..0000000000 --- a/target/linux/generic/backport-5.4/600-ipv6-addrconf-call-ipv6_mc_up-for-non-Ethernet-inter.patch +++ /dev/null @@ -1,71 +0,0 @@ -From 82afdcd4ec3c8ca6551cbf7c43c09e2fd240487a Mon Sep 17 00:00:00 2001 -From: Hangbin Liu -Date: Tue, 10 Mar 2020 15:27:37 +0800 -Subject: [PATCH] ipv6/addrconf: call ipv6_mc_up() for non-Ethernet interface -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Rafał found an issue that for non-Ethernet interface, if we down and up -frequently, the memory will be consumed slowly. - -The reason is we add allnodes/allrouters addressed in multicast list in -ipv6_add_dev(). When link down, we call ipv6_mc_down(), store all multicast -addresses via mld_add_delrec(). But when link up, we don't call ipv6_mc_up() -for non-Ethernet interface to remove the addresses. This makes idev->mc_tomb -getting bigger and bigger. The call stack looks like: - -addrconf_notify(NETDEV_REGISTER) - ipv6_add_dev - ipv6_dev_mc_inc(ff01::1) - ipv6_dev_mc_inc(ff02::1) - ipv6_dev_mc_inc(ff02::2) - -addrconf_notify(NETDEV_UP) - addrconf_dev_config - /* Alas, we support only Ethernet autoconfiguration. */ - return; - -addrconf_notify(NETDEV_DOWN) - addrconf_ifdown - ipv6_mc_down - igmp6_group_dropped(ff02::2) - mld_add_delrec(ff02::2) - igmp6_group_dropped(ff02::1) - igmp6_group_dropped(ff01::1) - -After investigating, I can't found a rule to disable multicast on -non-Ethernet interface. In RFC2460, the link could be Ethernet, PPP, ATM, -tunnels, etc. In IPv4, it doesn't check the dev type when calls ip_mc_up() -in inetdev_event(). Even for IPv6, we don't check the dev type and call -ipv6_add_dev(), ipv6_dev_mc_inc() after register device. - -So I think it's OK to fix this memory consumer by calling ipv6_mc_up() for -non-Ethernet interface. - -v2: Also check IFF_MULTICAST flag to make sure the interface supports - multicast - -Reported-by: Rafał Miłecki -Tested-by: Rafał Miłecki -Fixes: 74235a25c673 ("[IPV6] addrconf: Fix IPv6 on tuntap tunnels") -Fixes: 1666d49e1d41 ("mld: do not remove mld souce list info when set link down") -Signed-off-by: Hangbin Liu -Signed-off-by: David S. Miller ---- - net/ipv6/addrconf.c | 4 ++++ - 1 file changed, 4 insertions(+) - ---- a/net/ipv6/addrconf.c -+++ b/net/ipv6/addrconf.c -@@ -3345,6 +3345,10 @@ static void addrconf_dev_config(struct n - (dev->type != ARPHRD_NONE) && - (dev->type != ARPHRD_RAWIP)) { - /* Alas, we support only Ethernet autoconfiguration. */ -+ idev = __in6_dev_get(dev); -+ if (!IS_ERR_OR_NULL(idev) && dev->flags & IFF_UP && -+ dev->flags & IFF_MULTICAST) -+ ipv6_mc_up(idev); - return; - } - diff --git a/target/linux/generic/backport-5.4/737-v5.5-net-phy-add-core-phylib-sfp-support.patch b/target/linux/generic/backport-5.4/737-v5.5-net-phy-add-core-phylib-sfp-support.patch index 7835d3f19f..23230abfbb 100644 --- a/target/linux/generic/backport-5.4/737-v5.5-net-phy-add-core-phylib-sfp-support.patch +++ b/target/linux/generic/backport-5.4/737-v5.5-net-phy-add-core-phylib-sfp-support.patch @@ -24,7 +24,7 @@ Signed-off-by: Russell King #include #include #include -@@ -841,6 +842,9 @@ void phy_stop(struct phy_device *phydev) +@@ -842,6 +843,9 @@ void phy_stop(struct phy_device *phydev) mutex_lock(&phydev->lock); @@ -34,7 +34,7 @@ Signed-off-by: Russell King phydev->state = PHY_HALTED; mutex_unlock(&phydev->lock); -@@ -903,6 +907,9 @@ void phy_state_machine(struct work_struc +@@ -904,6 +908,9 @@ void phy_state_machine(struct work_struc old_state = phydev->state; @@ -54,7 +54,7 @@ Signed-off-by: Russell King #include #include #include -@@ -1178,6 +1179,65 @@ phy_standalone_show(struct device *dev, +@@ -1183,6 +1184,65 @@ phy_standalone_show(struct device *dev, static DEVICE_ATTR_RO(phy_standalone); /** @@ -120,7 +120,7 @@ Signed-off-by: Russell King * phy_attach_direct - attach a network device to a given PHY device pointer * @dev: network device to attach * @phydev: Pointer to phy_device to attach -@@ -1254,6 +1314,9 @@ int phy_attach_direct(struct net_device +@@ -1259,6 +1319,9 @@ int phy_attach_direct(struct net_device dev->phydev = phydev; } @@ -130,7 +130,7 @@ Signed-off-by: Russell King /* Some Ethernet drivers try to connect to a PHY device before * calling register_netdevice() -> netdev_register_kobject() and * does the dev->dev.kobj initialization. Here we only check for -@@ -2282,6 +2345,9 @@ static int phy_remove(struct device *dev +@@ -2287,6 +2350,9 @@ static int phy_remove(struct device *dev phydev->state = PHY_DOWN; mutex_unlock(&phydev->lock); @@ -151,7 +151,7 @@ Signed-off-by: Russell King struct sk_buff; /* -@@ -342,6 +344,8 @@ struct phy_c45_device_ids { +@@ -343,6 +345,8 @@ struct phy_c45_device_ids { * dev_flags: Device-specific flags used by the PHY driver. * irq: IRQ number of the PHY's interrupt (-1 if none) * phy_timer: The timer for handling the state machine @@ -160,7 +160,7 @@ Signed-off-by: Russell King * attached_dev: The attached enet driver's device instance ptr * adjust_link: Callback for the enet controller to respond to * changes in the link state. -@@ -432,6 +436,9 @@ struct phy_device { +@@ -434,6 +438,9 @@ struct phy_device { struct mutex lock; @@ -170,7 +170,7 @@ Signed-off-by: Russell King struct phylink *phylink; struct net_device *attached_dev; -@@ -1020,6 +1027,10 @@ int phy_suspend(struct phy_device *phyde +@@ -1023,6 +1030,10 @@ int phy_suspend(struct phy_device *phyde int phy_resume(struct phy_device *phydev); int __phy_resume(struct phy_device *phydev); int phy_loopback(struct phy_device *phydev, bool enable); diff --git a/target/linux/generic/hack-5.4/220-gc_sections.patch b/target/linux/generic/hack-5.4/220-gc_sections.patch index fbac74c111..22276d4399 100644 --- a/target/linux/generic/hack-5.4/220-gc_sections.patch +++ b/target/linux/generic/hack-5.4/220-gc_sections.patch @@ -31,7 +31,7 @@ Signed-off-by: Gabor Juhos select OF_EARLY_FLATTREE if OF --- a/arch/arm/boot/compressed/Makefile +++ b/arch/arm/boot/compressed/Makefile -@@ -107,6 +107,7 @@ ifeq ($(CONFIG_FUNCTION_TRACER),y) +@@ -106,6 +106,7 @@ ifeq ($(CONFIG_FUNCTION_TRACER),y) ORIG_CFLAGS := $(KBUILD_CFLAGS) KBUILD_CFLAGS = $(subst -pg, , $(ORIG_CFLAGS)) endif diff --git a/target/linux/generic/hack-5.4/702-phy_add_aneg_done_function.patch b/target/linux/generic/hack-5.4/702-phy_add_aneg_done_function.patch index 0f4dab3460..f82cef1f94 100644 --- a/target/linux/generic/hack-5.4/702-phy_add_aneg_done_function.patch +++ b/target/linux/generic/hack-5.4/702-phy_add_aneg_done_function.patch @@ -1,6 +1,6 @@ --- a/include/linux/phy.h +++ b/include/linux/phy.h -@@ -522,6 +522,12 @@ struct phy_driver { +@@ -524,6 +524,12 @@ struct phy_driver { /* Determines the negotiated speed and duplex */ int (*read_status)(struct phy_device *phydev); @@ -15,7 +15,7 @@ --- a/drivers/net/phy/phy_device.c +++ b/drivers/net/phy/phy_device.c -@@ -1822,6 +1822,9 @@ int genphy_update_link(struct phy_device +@@ -1827,6 +1827,9 @@ int genphy_update_link(struct phy_device if (bmcr & BMCR_ANRESTART) goto done; diff --git a/target/linux/generic/hack-5.4/902-debloat_proc.patch b/target/linux/generic/hack-5.4/902-debloat_proc.patch index d3aff83896..f652751339 100644 --- a/target/linux/generic/hack-5.4/902-debloat_proc.patch +++ b/target/linux/generic/hack-5.4/902-debloat_proc.patch @@ -29,7 +29,7 @@ Signed-off-by: Felix Fietkau --- a/fs/locks.c +++ b/fs/locks.c -@@ -2961,6 +2961,8 @@ static const struct seq_operations locks +@@ -2989,6 +2989,8 @@ static const struct seq_operations locks static int __init proc_locks_init(void) { @@ -235,7 +235,7 @@ Signed-off-by: Felix Fietkau if (!pe) --- a/mm/vmalloc.c +++ b/mm/vmalloc.c -@@ -3549,6 +3549,8 @@ static const struct seq_operations vmall +@@ -3552,6 +3552,8 @@ static const struct seq_operations vmall static int __init proc_vmalloc_init(void) { @@ -330,7 +330,7 @@ Signed-off-by: Felix Fietkau --- a/net/core/sock.c +++ b/net/core/sock.c -@@ -3603,6 +3603,8 @@ static __net_initdata struct pernet_oper +@@ -3606,6 +3606,8 @@ static __net_initdata struct pernet_oper static int __init proto_init(void) { diff --git a/target/linux/generic/pending-5.4/630-packet_socket_type.patch b/target/linux/generic/pending-5.4/630-packet_socket_type.patch index 80c891a630..fcd00ad666 100644 --- a/target/linux/generic/pending-5.4/630-packet_socket_type.patch +++ b/target/linux/generic/pending-5.4/630-packet_socket_type.patch @@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau if (!net_eq(dev_net(dev), sock_net(sk))) goto drop; -@@ -3267,6 +3269,7 @@ static int packet_create(struct net *net +@@ -3268,6 +3270,7 @@ static int packet_create(struct net *net mutex_init(&po->pg_vec_lock); po->rollover = NULL; po->prot_hook.func = packet_rcv; @@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau if (sock->type == SOCK_PACKET) po->prot_hook.func = packet_rcv_spkt; -@@ -3900,6 +3903,16 @@ packet_setsockopt(struct socket *sock, i +@@ -3901,6 +3904,16 @@ packet_setsockopt(struct socket *sock, i po->xmit = val ? packet_direct_xmit : dev_queue_xmit; return 0; } @@ -112,7 +112,7 @@ Signed-off-by: Felix Fietkau default: return -ENOPROTOOPT; } -@@ -3956,6 +3969,13 @@ static int packet_getsockopt(struct sock +@@ -3957,6 +3970,13 @@ static int packet_getsockopt(struct sock case PACKET_VNET_HDR: val = po->has_vnet_hdr; break; diff --git a/target/linux/generic/pending-5.4/640-netfilter-nf_flow_table-add-hardware-offload-support.patch b/target/linux/generic/pending-5.4/640-netfilter-nf_flow_table-add-hardware-offload-support.patch index c69ca6db2d..a005b25c7a 100644 --- a/target/linux/generic/pending-5.4/640-netfilter-nf_flow_table-add-hardware-offload-support.patch +++ b/target/linux/generic/pending-5.4/640-netfilter-nf_flow_table-add-hardware-offload-support.patch @@ -506,7 +506,7 @@ Signed-off-by: Pablo Neira Ayuso +MODULE_ALIAS("nf-flow-table-hw"); --- a/net/netfilter/nf_tables_api.c +++ b/net/netfilter/nf_tables_api.c -@@ -5740,6 +5740,13 @@ static int nf_tables_flowtable_parse_hoo +@@ -5745,6 +5745,13 @@ static int nf_tables_flowtable_parse_hoo if (err < 0) return err; @@ -520,7 +520,7 @@ Signed-off-by: Pablo Neira Ayuso ops = kcalloc(n, sizeof(struct nf_hook_ops), GFP_KERNEL); if (!ops) return -ENOMEM; -@@ -5870,10 +5877,19 @@ static int nf_tables_newflowtable(struct +@@ -5875,10 +5882,19 @@ static int nf_tables_newflowtable(struct } flowtable->data.type = type; @@ -540,7 +540,7 @@ Signed-off-by: Pablo Neira Ayuso err = nf_tables_flowtable_parse_hook(&ctx, nla[NFTA_FLOWTABLE_HOOK], flowtable); if (err < 0) -@@ -5999,7 +6015,8 @@ static int nf_tables_fill_flowtable_info +@@ -6004,7 +6020,8 @@ static int nf_tables_fill_flowtable_info nla_put_string(skb, NFTA_FLOWTABLE_NAME, flowtable->name) || nla_put_be32(skb, NFTA_FLOWTABLE_USE, htonl(flowtable->use)) || nla_put_be64(skb, NFTA_FLOWTABLE_HANDLE, cpu_to_be64(flowtable->handle), diff --git a/target/linux/generic/pending-5.4/703-phy-add-detach-callback-to-struct-phy_driver.patch b/target/linux/generic/pending-5.4/703-phy-add-detach-callback-to-struct-phy_driver.patch index 7b19890217..246bb8f94e 100644 --- a/target/linux/generic/pending-5.4/703-phy-add-detach-callback-to-struct-phy_driver.patch +++ b/target/linux/generic/pending-5.4/703-phy-add-detach-callback-to-struct-phy_driver.patch @@ -11,7 +11,7 @@ Signed-off-by: Gabor Juhos --- a/drivers/net/phy/phy_device.c +++ b/drivers/net/phy/phy_device.c -@@ -1458,6 +1458,9 @@ void phy_detach(struct phy_device *phyde +@@ -1463,6 +1463,9 @@ void phy_detach(struct phy_device *phyde struct module *ndev_owner = NULL; struct mii_bus *bus; @@ -23,7 +23,7 @@ Signed-off-by: Gabor Juhos sysfs_remove_link(&dev->dev.kobj, "phydev"); --- a/include/linux/phy.h +++ b/include/linux/phy.h -@@ -537,6 +537,12 @@ struct phy_driver { +@@ -540,6 +540,12 @@ struct phy_driver { /* Override default interrupt handling */ int (*handle_interrupt)(struct phy_device *phydev); diff --git a/target/linux/ipq40xx/Makefile b/target/linux/ipq40xx/Makefile index e883fe3535..160ce7fdcd 100644 --- a/target/linux/ipq40xx/Makefile +++ b/target/linux/ipq40xx/Makefile @@ -8,7 +8,7 @@ CPU_TYPE:=cortex-a7 CPU_SUBTYPE:=neon-vfpv4 SUBTARGETS:=generic -KERNEL_PATCHVER:=4.19 +KERNEL_PATCHVER:=5.4 KERNEL_TESTING_PATCHVER:=5.4 KERNELNAME:=zImage Image dtbs diff --git a/target/linux/ipq40xx/files-4.19/arch/arm/boot/dts/qcom-ipq4028-wpj428.dts b/target/linux/ipq40xx/files-4.19/arch/arm/boot/dts/qcom-ipq4028-wpj428.dts index cf8540c101..1bcf5e80bf 100644 --- a/target/linux/ipq40xx/files-4.19/arch/arm/boot/dts/qcom-ipq4028-wpj428.dts +++ b/target/linux/ipq40xx/files-4.19/arch/arm/boot/dts/qcom-ipq4028-wpj428.dts @@ -32,6 +32,10 @@ mdio@90000 { status = "okay"; + pinctrl-0 = <&mdio_pins>; + pinctrl-names = "default"; + reset-gpios = <&tlmm 59 GPIO_ACTIVE_LOW>; + reset-delay-us = <2000>; }; ess-psgmii@98000 { @@ -129,6 +133,20 @@ }; &tlmm { + mdio_pins: mdio_pinmux { + mux_1 { + pins = "gpio53"; + function = "mdio"; + bias-pull-up; + }; + + mux_2 { + pins = "gpio52"; + function = "mdc"; + bias-pull-up; + }; + }; + serial_pins: serial_pinmux { mux { pins = "gpio60", "gpio61"; diff --git a/target/linux/ipq40xx/files-5.4/arch/arm/boot/dts/qcom-ipq4028-wpj428.dts b/target/linux/ipq40xx/files-5.4/arch/arm/boot/dts/qcom-ipq4028-wpj428.dts index cf8540c101..1bcf5e80bf 100644 --- a/target/linux/ipq40xx/files-5.4/arch/arm/boot/dts/qcom-ipq4028-wpj428.dts +++ b/target/linux/ipq40xx/files-5.4/arch/arm/boot/dts/qcom-ipq4028-wpj428.dts @@ -32,6 +32,10 @@ mdio@90000 { status = "okay"; + pinctrl-0 = <&mdio_pins>; + pinctrl-names = "default"; + reset-gpios = <&tlmm 59 GPIO_ACTIVE_LOW>; + reset-delay-us = <2000>; }; ess-psgmii@98000 { @@ -129,6 +133,20 @@ }; &tlmm { + mdio_pins: mdio_pinmux { + mux_1 { + pins = "gpio53"; + function = "mdio"; + bias-pull-up; + }; + + mux_2 { + pins = "gpio52"; + function = "mdc"; + bias-pull-up; + }; + }; + serial_pins: serial_pinmux { mux { pins = "gpio60", "gpio61"; diff --git a/target/linux/lantiq/patches-5.4/002-pinctrl-falcon-fix-syntax-error.patch b/target/linux/lantiq/patches-5.4/002-pinctrl-falcon-fix-syntax-error.patch deleted file mode 100644 index 40a833be54..0000000000 --- a/target/linux/lantiq/patches-5.4/002-pinctrl-falcon-fix-syntax-error.patch +++ /dev/null @@ -1,25 +0,0 @@ -From d2fee0bb982195540e4fbe009996fcdbc26d163c Mon Sep 17 00:00:00 2001 -From: Mathias Kresin -Date: Thu, 5 Mar 2020 08:17:27 +0100 -Subject: [PATCH] pinctrl: falcon: fix syntax error - -Add the missing semicolon after of_node_put to get the file compiled. - -Fixes: f17d2f54d36d ("pinctrl: falcon: Add of_node_put() before return") -Cc: stable@vger.kernel.org # v5.4+ -Signed-off-by: Mathias Kresin ---- - drivers/pinctrl/pinctrl-falcon.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/drivers/pinctrl/pinctrl-falcon.c -+++ b/drivers/pinctrl/pinctrl-falcon.c -@@ -451,7 +451,7 @@ static int pinctrl_falcon_probe(struct p - falcon_info.clk[*bank] = clk_get(&ppdev->dev, NULL); - if (IS_ERR(falcon_info.clk[*bank])) { - dev_err(&ppdev->dev, "failed to get clock\n"); -- of_node_put(np) -+ of_node_put(np); - return PTR_ERR(falcon_info.clk[*bank]); - } - falcon_info.membase[*bank] = devm_ioremap_resource(&pdev->dev, diff --git a/target/linux/mvebu/cortexa9/target.mk b/target/linux/mvebu/cortexa9/target.mk index 2a75599bc9..cdd4d86e49 100644 --- a/target/linux/mvebu/cortexa9/target.mk +++ b/target/linux/mvebu/cortexa9/target.mk @@ -10,5 +10,5 @@ include $(TOPDIR)/rules.mk ARCH:=arm BOARDNAME:=Marvell Armada 37x/38x/XP CPU_TYPE:=cortex-a9 -CPU_SUBTYPE:=vfpv3 +CPU_SUBTYPE:=vfpv3-d16 KERNELNAME:=zImage dtbs diff --git a/target/linux/oxnas/patches-5.4/002-irqchip-versatile-fpga-Apply-clear-mask-earlier.patch b/target/linux/oxnas/patches-5.4/002-irqchip-versatile-fpga-Apply-clear-mask-earlier.patch index eef2c4624f..7a82b5a7cc 100644 --- a/target/linux/oxnas/patches-5.4/002-irqchip-versatile-fpga-Apply-clear-mask-earlier.patch +++ b/target/linux/oxnas/patches-5.4/002-irqchip-versatile-fpga-Apply-clear-mask-earlier.patch @@ -32,11 +32,9 @@ Cc: Daniel Golle drivers/irqchip/irq-versatile-fpga.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) -diff --git a/drivers/irqchip/irq-versatile-fpga.c b/drivers/irqchip/irq-versatile-fpga.c -index 70e2cfff8175..f1386733d3bc 100644 --- a/drivers/irqchip/irq-versatile-fpga.c +++ b/drivers/irqchip/irq-versatile-fpga.c -@@ -212,6 +212,9 @@ int __init fpga_irq_of_init(struct device_node *node, +@@ -212,6 +212,9 @@ int __init fpga_irq_of_init(struct devic if (of_property_read_u32(node, "valid-mask", &valid_mask)) valid_mask = 0; @@ -46,7 +44,7 @@ index 70e2cfff8175..f1386733d3bc 100644 /* Some chips are cascaded from a parent IRQ */ parent_irq = irq_of_parse_and_map(node, 0); if (!parent_irq) { -@@ -221,9 +224,6 @@ int __init fpga_irq_of_init(struct device_node *node, +@@ -221,9 +224,6 @@ int __init fpga_irq_of_init(struct devic fpga_irq_init(base, node->name, 0, parent_irq, valid_mask, node); diff --git a/target/linux/sunxi/Makefile b/target/linux/sunxi/Makefile index f10bf57dee..37b8a30e22 100644 --- a/target/linux/sunxi/Makefile +++ b/target/linux/sunxi/Makefile @@ -13,7 +13,7 @@ BOARDNAME:=Allwinner A1x/A20/A3x/R40 FEATURES:=fpu usb ext4 display rtc squashfs SUBTARGETS:=cortexa8 cortexa7 cortexa53 -KERNEL_PATCHVER:=4.19 +KERNEL_PATCHVER:=5.4 KERNEL_TESTING_PATCHVER:=5.4 KERNELNAME:=zImage dtbs diff --git a/target/linux/sunxi/cortexa53/config-5.4 b/target/linux/sunxi/cortexa53/config-5.4 index e9d6ffc3c8..6e1ef22129 100644 --- a/target/linux/sunxi/cortexa53/config-5.4 +++ b/target/linux/sunxi/cortexa53/config-5.4 @@ -123,6 +123,7 @@ CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE=y CONFIG_KVM_ARM_PMU=y CONFIG_KVM_INDIRECT_VECTORS=y CONFIG_MDIO_BUS_MUX=y +CONFIG_MICREL_PHY=y CONFIG_MODULES_USE_ELF_RELA=y CONFIG_NEED_SG_DMA_LENGTH=y CONFIG_NO_IOPORT_MAP=y diff --git a/target/linux/sunxi/image/cortex-a53.mk b/target/linux/sunxi/image/cortex-a53.mk index eeaaa887d7..7a70de4dff 100644 --- a/target/linux/sunxi/image/cortex-a53.mk +++ b/target/linux/sunxi/image/cortex-a53.mk @@ -6,14 +6,27 @@ # See /LICENSE for more information. # +define Device/sun50i + SUNXI_DTS_DIR := allwinner/ + KERNEL_NAME := Image + KERNEL := kernel-bin +endef + +define Device/sun50i-h5 + SOC := sun50i-h5 + $(Device/sun50i) +endef + +define Device/sun50i-a64 + SOC := sun50i-a64 + $(Device/sun50i) +endef + define Device/friendlyarm_nanopi-neo-plus2 DEVICE_VENDOR := FriendlyARM DEVICE_MODEL := NanoPi NEO Plus2 SUPPORTED_DEVICES:=nanopi-neo-plus2 - SUNXI_DTS_DIR := allwinner/ - SOC := sun50i-h5 - KERNEL_NAME := Image - KERNEL := kernel-bin + $(Device/sun50i-h5) endef TARGET_DEVICES += friendlyarm_nanopi-neo-plus2 @@ -21,49 +34,53 @@ define Device/friendlyarm_nanopi-neo2 DEVICE_VENDOR := FriendlyARM DEVICE_MODEL := NanoPi NEO2 SUPPORTED_DEVICES:=nanopi-neo2 - SUNXI_DTS_DIR := allwinner/ - SOC := sun50i-h5 - KERNEL_NAME := Image - KERNEL := kernel-bin + $(Device/sun50i-h5) endef TARGET_DEVICES += friendlyarm_nanopi-neo2 +define Device/olimex_a64-olinuxino + DEVICE_VENDOR := Olimex + DEVICE_MODEL := A64-Olinuxino + DEVICE_PACKAGES := kmod-rtl8723bs rtl8723bs-firmware + $(Device/sun50i-a64) + SUNXI_DTS := $$(SUNXI_DTS_DIR)$$(SOC)-olinuxino +endef +TARGET_DEVICES += olimex_a64-olinuxino + +define Device/olimex_a64-olinuxino-emmc + DEVICE_VENDOR := Olimex + DEVICE_MODEL := A64-Olinuxino + DEVICE_VARIANT := eMMC + DEVICE_PACKAGES := kmod-rtl8723bs rtl8723bs-firmware + $(Device/sun50i-a64) + SUNXI_DTS := $$(SUNXI_DTS_DIR)$$(SOC)-olinuxino-emmc +endef +TARGET_DEVICES += olimex_a64-olinuxino-emmc + define Device/pine64_pine64-plus DEVICE_VENDOR := Pine64 DEVICE_MODEL := Pine64+ - SUNXI_DTS_DIR := allwinner/ - SOC := sun50i-a64 - KERNEL_NAME := Image - KERNEL := kernel-bin + $(Device/sun50i-a64) endef TARGET_DEVICES += pine64_pine64-plus define Device/pine64_sopine-baseboard DEVICE_VENDOR := Pine64 DEVICE_MODEL := SoPine - SUNXI_DTS_DIR := allwinner/ - SOC := sun50i-a64 - KERNEL_NAME := Image - KERNEL := kernel-bin + $(Device/sun50i-a64) endef TARGET_DEVICES += pine64_sopine-baseboard define Device/xunlong_orangepi-pc2 DEVICE_VENDOR := Xunlong DEVICE_MODEL := Orange Pi PC 2 - SUNXI_DTS_DIR := allwinner/ - SOC := sun50i-h5 - KERNEL_NAME := Image - KERNEL := kernel-bin + $(Device/sun50i-h5) endef TARGET_DEVICES += xunlong_orangepi-pc2 define Device/xunlong_orangepi-zero-plus DEVICE_VENDOR := Xunlong DEVICE_MODEL := Orange Pi Zero Plus - SUNXI_DTS_DIR := allwinner/ - SOC := sun50i-h5 - KERNEL_NAME := Image - KERNEL := kernel-bin + $(Device/sun50i-h5) endef TARGET_DEVICES += xunlong_orangepi-zero-plus diff --git a/target/linux/sunxi/patches-5.4/410-v5.6-arm64-dts-allwinner-a64-olinuxino-Add-bank-supply-re.patch b/target/linux/sunxi/patches-5.4/410-v5.6-arm64-dts-allwinner-a64-olinuxino-Add-bank-supply-re.patch new file mode 100644 index 0000000000..67f7a1536e --- /dev/null +++ b/target/linux/sunxi/patches-5.4/410-v5.6-arm64-dts-allwinner-a64-olinuxino-Add-bank-supply-re.patch @@ -0,0 +1,58 @@ +From f0c3b29f56f0a946df4941edfe2d98e3e766c30f Mon Sep 17 00:00:00 2001 +From: Stefan Mavrodiev +Date: Fri, 29 Nov 2019 13:39:40 +0200 +Subject: [PATCH] arm64: dts: allwinner: a64: olinuxino: Add bank supply + regulators + +Allwinner A64 SoC has separate supplies for PC, PD, PE, PG and PL. This +patch adds regulators for them to the pinctrl node. + +Exception is PL which is used by the RSB bus. To avoid circular +dependencies, VCC-PL is omitted. + +On boards with eMMC, VCC-PC is supplied by ELDO1, instead of DCDC1. + +Signed-off-by: Stefan Mavrodiev +[Maxime: Changed the r_pio comment a bit] +Signed-off-by: Maxime Ripard +--- + .../dts/allwinner/sun50i-a64-olinuxino-emmc.dts | 4 ++++ + .../boot/dts/allwinner/sun50i-a64-olinuxino.dts | 17 +++++++++++++++++ + 2 files changed, 21 insertions(+) + +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino-emmc.dts ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino-emmc.dts +@@ -21,3 +21,7 @@ + cap-mmc-hw-reset; + status = "okay"; + }; ++ ++&pio { ++ vcc-pc-supply = <®_eldo1>; ++}; +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts +@@ -163,6 +163,23 @@ + status = "okay"; + }; + ++&pio { ++ vcc-pc-supply = <®_dcdc1>; ++ vcc-pd-supply = <®_dcdc1>; ++ vcc-pe-supply = <®_aldo1>; ++ vcc-pg-supply = <®_dldo4>; ++}; ++ ++&r_pio { ++ /* ++ * FIXME: We can't add that supply for now since it would ++ * create a circular dependency between pinctrl, the regulator ++ * and the RSB Bus. ++ * ++ * vcc-pl-supply = <®_aldo2>; ++ */ ++}; ++ + &r_rsb { + status = "okay"; + diff --git a/target/linux/sunxi/patches-5.4/420-v5.7-arm64-dts-allwinner-a64-olinuxino-add-user-red-LED.patch b/target/linux/sunxi/patches-5.4/420-v5.7-arm64-dts-allwinner-a64-olinuxino-add-user-red-LED.patch new file mode 100644 index 0000000000..f369cb4f7c --- /dev/null +++ b/target/linux/sunxi/patches-5.4/420-v5.7-arm64-dts-allwinner-a64-olinuxino-add-user-red-LED.patch @@ -0,0 +1,32 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Petr=20=C5=A0tetiar?= +Date: Wed, 25 Mar 2020 18:11:16 +0100 +Subject: [PATCH] arm64: dts: allwinner: a64: olinuxino: add user red LED +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +There is a red LED marked as `GPIO_LED1` on the silkscreen and connected +to PE17 by default. So lets add this missing bit in the current hardware +description. + +Signed-off-by: Petr Štetiar + +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts +@@ -70,6 +70,15 @@ + }; + }; + ++ leds { ++ compatible = "gpio-leds"; ++ ++ user { ++ label = "a64-olinuxino:red:user"; ++ gpios = <&pio 4 17 GPIO_ACTIVE_HIGH>; /* PE17 */ ++ }; ++ }; ++ + reg_usb1_vbus: usb1-vbus { + compatible = "regulator-fixed"; + regulator-name = "usb1-vbus"; diff --git a/target/linux/sunxi/patches-5.4/430-arm64-dts-allwinner-a64-olinuxino-add-status-LED-ali.patch b/target/linux/sunxi/patches-5.4/430-arm64-dts-allwinner-a64-olinuxino-add-status-LED-ali.patch new file mode 100644 index 0000000000..fa02f48132 --- /dev/null +++ b/target/linux/sunxi/patches-5.4/430-arm64-dts-allwinner-a64-olinuxino-add-status-LED-ali.patch @@ -0,0 +1,32 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Petr=20=C5=A0tetiar?= +Date: Thu, 26 Mar 2020 10:09:19 +0100 +Subject: [PATCH] arm64: dts: allwinner: a64: olinuxino: add status LED aliases +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Petr Štetiar + +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts +@@ -53,6 +53,10 @@ + aliases { + ethernet0 = &emac; + serial0 = &uart0; ++ led-boot = &led_user; ++ led-failsafe = &led_user; ++ led-running = &led_user; ++ led-upgrade = &led_user; + }; + + chosen { +@@ -73,7 +77,7 @@ + leds { + compatible = "gpio-leds"; + +- user { ++ led_user: user { + label = "a64-olinuxino:red:user"; + gpios = <&pio 4 17 GPIO_ACTIVE_HIGH>; /* PE17 */ + }; diff --git a/target/linux/tegra/Makefile b/target/linux/tegra/Makefile index 0b48fc16ba..5dd4d43984 100644 --- a/target/linux/tegra/Makefile +++ b/target/linux/tegra/Makefile @@ -11,7 +11,7 @@ BOARD := tegra BOARDNAME := NVIDIA Tegra FEATURES := audio boot-part display ext4 fpu gpio pci pcie rootfs-part rtc squashfs usb CPU_TYPE := cortex-a9 -CPU_SUBTYPE := vfpv3 +CPU_SUBTYPE := vfpv3-d16 KERNEL_PATCHVER := 5.4 KERNEL_TESTING_PATCHVER := 5.4 diff --git a/target/linux/x86/image/Makefile b/target/linux/x86/image/Makefile index c2961e5b9c..c0c5c8323a 100644 --- a/target/linux/x86/image/Makefile +++ b/target/linux/x86/image/Makefile @@ -47,7 +47,7 @@ BOOTOPTS:=$(call qstrip,$(CONFIG_GRUB_BOOTOPTS)) define Build/combined $(CP) $(KDIR)/$(KERNEL_NAME) $@.boot/boot/vmlinuz -$(CP) $(STAGING_DIR_ROOT)/boot/. $@.boot/boot/ - PADDING="$(CONFIG_TARGET_IMAGES_PAD)" SIGNATURE="$(IMG_PART_SIGNATURE)" $(SCRIPT_DIR)/gen_image_generic.sh \ + PADDING="1" SIGNATURE="$(IMG_PART_SIGNATURE)" $(SCRIPT_DIR)/gen_image_generic.sh \ $@ \ $(CONFIG_TARGET_KERNEL_PARTSIZE) $@.boot \ $(CONFIG_TARGET_ROOTFS_PARTSIZE) $(IMAGE_ROOTFS) \ @@ -95,14 +95,16 @@ endef DEVICE_VARS += GRUB2_VARIANT define Device/Default ARTIFACT/image.iso := grub-config iso | iso - IMAGE/combined.img := append-rootfs | pad-extra 128k | grub-config pc | combined | grub-install - IMAGE/combined.img.gz := append-rootfs | pad-extra 128k | grub-config pc | combined | grub-install | gzip - IMAGE/combined.vdi := append-rootfs | pad-extra 128k | grub-config pc | combined | grub-install | qemu-image vdi - IMAGE/combined.vmdk := append-rootfs | pad-extra 128k | grub-config pc | combined | grub-install | qemu-image vmdk + IMAGE/combined.img := grub-config pc | combined | grub-install + IMAGE/combined.img.gz := grub-config pc | combined | grub-install | gzip + IMAGE/combined.vdi := grub-config pc | combined | grub-install | qemu-image vdi + IMAGE/combined.vmdk := grub-config pc | combined | grub-install | qemu-image vmdk + IMAGE/rootfs.img := append-rootfs + IMAGE/rootfs.img.gz := append-rootfs | gzip ifeq ($(CONFIG_TARGET_IMAGES_GZIP),y) - IMAGES := combined.img.gz + IMAGES := combined.img.gz rootfs.img.gz else - IMAGES := combined.img + IMAGES := combined.img rootfs.img endif KERNEL := kernel-bin KERNEL_INSTALL := 1