diff --git a/include/kernel-version.mk b/include/kernel-version.mk index 3adb953064..cf52e2620d 100644 --- a/include/kernel-version.mk +++ b/include/kernel-version.mk @@ -6,14 +6,14 @@ ifdef CONFIG_TESTING_KERNEL KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER) endif -LINUX_VERSION-4.9 = .223 -LINUX_VERSION-4.14 = .180 -LINUX_VERSION-4.19 = .123 +LINUX_VERSION-4.9 = .224 +LINUX_VERSION-4.14 = .181 +LINUX_VERSION-4.19 = .124 LINUX_VERSION-5.4 = .42 -LINUX_KERNEL_HASH-4.9.223 = cf5300e6f5d8c66c2bed8f00d53f9c58103731809862427012e4010f5d782ae5 -LINUX_KERNEL_HASH-4.14.180 = 444ef973d9b6a6ea174e4a9086f0aea980d8575d13302e431ad688f22e27ed0e -LINUX_KERNEL_HASH-4.19.123 = a79914d31a8d8c6b0e2bb0f2b143d615fe8a6c4dd2e0f36e97aa20efd69a993f +LINUX_KERNEL_HASH-4.9.224 = df6d07e99513f9afadd7d44c471f44c56fccc9e4c984a1ba4b988f053a13c949 +LINUX_KERNEL_HASH-4.14.181 = ab9bea577cfe59fb2f502ce4d6130bfb49163ef969364adc3d36a65721d64a4d +LINUX_KERNEL_HASH-4.19.124 = d5d9001879d7a77309dca203656490326d26b068b7b0b9d8003548dba8fdad00 LINUX_KERNEL_HASH-5.4.42 = 4e431b7c0266a07b76fdb77f8917ad681f0fa34ffba0eb8a172b67f7ef57bc31 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) diff --git a/package/boot/uboot-sunxi/Makefile b/package/boot/uboot-sunxi/Makefile index 5cd2aa623d..e6478dc73c 100644 --- a/package/boot/uboot-sunxi/Makefile +++ b/package/boot/uboot-sunxi/Makefile @@ -302,7 +302,7 @@ UBOOT_TARGETS := \ nanopi_neo \ nanopi_duo2 \ nanopi_r1 \ - nanopi_r1s \ + nanopi_r1s \ nanopi_neo_air \ nanopi_neo_plus2 \ nanopi_neo2 \ diff --git a/package/ctcgfw/gost/Makefile b/package/ctcgfw/gost/Makefile index 1160826e0f..e62371d51c 100644 --- a/package/ctcgfw/gost/Makefile +++ b/package/ctcgfw/gost/Makefile @@ -1,12 +1,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gost -PKG_VERSION:=2.11.0 +PKG_VERSION:=2.11.1 PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/ginuerzh/gost.git -PKG_SOURCE_VERSION:=2c0e01a5dd3d2257527ee41867fefa4273efc380 +PKG_SOURCE_VERSION:=2707a8f0a90e111fc009791a6a911405939a25fb PKG_MAINTAINER:=[CTCGFW] Project OpenWrt PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) @@ -17,7 +17,7 @@ PKG_BUILD_DEPENDS:=golang/host PKG_BUILD_PARALLEL:=1 PKG_USE_MIPS16:=0 -GO_PKG:=github.com/ginuerzh/gost +GO_PKG:=github.com/ginuerzh/gost/cmd/gost GO_PKG_LDFLAGS:=-s -w include $(INCLUDE_DIR)/package.mk @@ -43,7 +43,7 @@ define Build/Configure endef define Build/Compile - $(eval GO_PKG_BUILD_PKG:=$(GO_PKG)/cmd/gost) + $(eval GO_PKG_BUILD_PKG:=$(GO_PKG)) $(call GoPackage/Build/Configure) $(call GoPackage/Build/Compile) $(STAGING_DIR_HOST)/bin/upx --lzma --best $(GO_PKG_BUILD_BIN_DIR)/gost diff --git a/package/ctcgfw/subconverter/Makefile b/package/ctcgfw/subconverter/Makefile index b36d145080..ff1a97340a 100644 --- a/package/ctcgfw/subconverter/Makefile +++ b/package/ctcgfw/subconverter/Makefile @@ -7,12 +7,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=subconverter -PKG_VERSION:=0.5.1-5b692c8 +PKG_VERSION:=0.5.2-8385792 PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/tindy2013/subconverter.git -PKG_SOURCE_VERSION:=5b692c800bec3374d03ffcac1c3d05ca48886ac2 +PKG_SOURCE_VERSION:=8385792fec9c07fb38b594b2dba285bff237ee3f PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz diff --git a/package/kernel/gpio-nct5104d/src/gpio-nct5104d.c b/package/kernel/gpio-nct5104d/src/gpio-nct5104d.c index 8da7580562..8f180edd33 100644 --- a/package/kernel/gpio-nct5104d/src/gpio-nct5104d.c +++ b/package/kernel/gpio-nct5104d/src/gpio-nct5104d.c @@ -276,11 +276,7 @@ static int nct5104d_gpio_probe(struct platform_device *pdev) for (i = 0; i < data->nr_bank; i++) { struct nct5104d_gpio_bank *bank = &data->bank[i]; -#if LINUX_VERSION_CODE < KERNEL_VERSION(4,5,0) - bank->chip.dev = &pdev->dev; -#else bank->chip.parent = &pdev->dev; -#endif bank->data = data; err = gpiochip_add(&bank->chip); @@ -298,15 +294,7 @@ err_gpiochip: for (i = i - 1; i >= 0; i--) { struct nct5104d_gpio_bank *bank = &data->bank[i]; -#if LINUX_VERSION_CODE < KERNEL_VERSION(3,18,0) - int rm_err = gpiochip_remove(&bank->chip); - if (rm_err < 0) - dev_err(&pdev->dev, - "Failed to remove gpiochip %d: %d\n", - i, rm_err); -#else /* LINUX_VERSION_CODE < KERNEL_VERSION(3,18,0) */ gpiochip_remove (&bank->chip); -#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,18,0) */ } return err; @@ -320,17 +308,7 @@ static int nct5104d_gpio_remove(struct platform_device *pdev) for (i = 0; i < data->nr_bank; i++) { struct nct5104d_gpio_bank *bank = &data->bank[i]; -#if LINUX_VERSION_CODE < KERNEL_VERSION(3,18,0) - int err = gpiochip_remove(&bank->chip); - if (err) { - dev_err(&pdev->dev, - "Failed to remove GPIO gpiochip %d: %d\n", - i, err); - return err; - } -#else /* LINUX_VERSION_CODE < KERNEL_VERSION(3,18,0) */ gpiochip_remove (&bank->chip); -#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,18,0) */ } return 0; diff --git a/package/kernel/lantiq/ltq-adsl-mei/src/ifxmips_mei_interface.h b/package/kernel/lantiq/ltq-adsl-mei/src/ifxmips_mei_interface.h index dc9f1c241b..4d0d363f0e 100644 --- a/package/kernel/lantiq/ltq-adsl-mei/src/ifxmips_mei_interface.h +++ b/package/kernel/lantiq/ltq-adsl-mei/src/ifxmips_mei_interface.h @@ -523,9 +523,7 @@ typedef struct DSL_DEV_Device #define IFX_DFEIR 0 #define IFX_DYING_GASP 1 DSL_DEV_MeiDebug_t lop_debugwr; /* dying gasp */ -#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,0)) struct module *owner; -#endif } DSL_DEV_Device_t; /* ifx_adsl_device_t */ #define DSL_DEV_PRIVATE(dev) ((ifx_mei_device_private_t*)(dev->pPriv)) diff --git a/package/kernel/lantiq/ltq-atm/src/ltq_atm.c b/package/kernel/lantiq/ltq-atm/src/ltq_atm.c index 267a515df6..f5dbfaae2d 100644 --- a/package/kernel/lantiq/ltq-atm/src/ltq_atm.c +++ b/package/kernel/lantiq/ltq-atm/src/ltq_atm.c @@ -1809,11 +1809,7 @@ static int ltq_atm_probe(struct platform_device *pdev) } /* register interrupt handler */ -#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,1,0) ret = request_irq(PPE_MAILBOX_IGU1_INT, mailbox_irq_handler, 0, "atm_mailbox_isr", &g_atm_priv_data); -#else - ret = request_irq(PPE_MAILBOX_IGU1_INT, mailbox_irq_handler, IRQF_DISABLED, "atm_mailbox_isr", &g_atm_priv_data); -#endif if ( ret ) { if ( ret == -EBUSY ) { pr_err("IRQ may be occupied by other driver, please reconfig to disable it.\n"); diff --git a/package/kernel/lantiq/ltq-deu/src/ifxmips_aes.c b/package/kernel/lantiq/ltq-deu/src/ifxmips_aes.c index 6c8d065d8b..76abfafb4e 100644 --- a/package/kernel/lantiq/ltq-deu/src/ifxmips_aes.c +++ b/package/kernel/lantiq/ltq-deu/src/ifxmips_aes.c @@ -895,18 +895,6 @@ int ifxdeu_init_aes (void) int ret = -ENOSYS; - -#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)) - if (!disable_multiblock) { - ifxdeu_aes_alg.cra_u.cipher.cia_max_nbytes = AES_BLOCK_SIZE; //(size_t)-1; - ifxdeu_aes_alg.cra_u.cipher.cia_req_align = 16; - ifxdeu_aes_alg.cra_u.cipher.cia_ecb = ifx_deu_aes_ecb; - ifxdeu_aes_alg.cra_u.cipher.cia_cbc = ifx_deu_aes_cbc; - ifxdeu_aes_alg.cra_u.cipher.cia_cfb = ifx_deu_aes_cfb; - ifxdeu_aes_alg.cra_u.cipher.cia_ofb = ifx_deu_aes_ofb; - } -#endif - if ((ret = crypto_register_alg(&ifxdeu_aes_alg))) goto aes_err; diff --git a/package/kernel/lantiq/ltq-deu/src/ifxmips_async_aes.c b/package/kernel/lantiq/ltq-deu/src/ifxmips_async_aes.c index 15e1485912..dcd059371f 100644 --- a/package/kernel/lantiq/ltq-deu/src/ifxmips_async_aes.c +++ b/package/kernel/lantiq/ltq-deu/src/ifxmips_async_aes.c @@ -100,11 +100,7 @@ extern char debug_level; static int disable_multiblock = 0; -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,0) module_param(disable_multiblock, int, 0); -#else -MODULE_PARM_DESC(disable_multiblock, "Disable encryption of whole multiblock buffers"); -#endif static int disable_deudma = 1; diff --git a/package/kernel/lantiq/ltq-deu/src/ifxmips_async_des.c b/package/kernel/lantiq/ltq-deu/src/ifxmips_async_des.c index ea94c6460f..1523763ccd 100644 --- a/package/kernel/lantiq/ltq-deu/src/ifxmips_async_des.c +++ b/package/kernel/lantiq/ltq-deu/src/ifxmips_async_des.c @@ -117,11 +117,7 @@ struct des_ctx { static int disable_multiblock = 0; -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,0) module_param(disable_multiblock, int, 0); -#else -MODULE_PARM_DESC(disable_multiblock, "Disable encryption of whole multiblock buffers"); -#endif static int disable_deudma = 1; @@ -893,16 +889,6 @@ int __init lqdeu_async_des_init (void) { int i, j, ret = -EINVAL; -#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)) - if (!disable_multiblock) { - ifxdeu_des_alg.cra_u.cipher.cia_max_nbytes = DES_BLOCK_SIZE; //(size_t)-1; - ifxdeu_des_alg.cra_u.cipher.cia_req_align = 16; - ifxdeu_des_alg.cra_u.cipher.cia_ecb = ifx_deu_des_ecb; - ifxdeu_des_alg.cra_u.cipher.cia_cbc = ifx_deu_des_cbc; - ifxdeu_des_alg.cra_u.cipher.cia_cfb = ifx_deu_des_cfb; - ifxdeu_des_alg.cra_u.cipher.cia_ofb = ifx_deu_des_ofb; - } -#endif for (i = 0; i < ARRAY_SIZE(des_drivers_alg); i++) { ret = crypto_register_alg(&des_drivers_alg[i].alg); //printk("driver: %s\n", des_drivers_alg[i].alg.cra_name); diff --git a/package/kernel/lantiq/ltq-deu/src/ifxmips_des.c b/package/kernel/lantiq/ltq-deu/src/ifxmips_des.c index beb67075ee..6d7d82fcb9 100644 --- a/package/kernel/lantiq/ltq-deu/src/ifxmips_des.c +++ b/package/kernel/lantiq/ltq-deu/src/ifxmips_des.c @@ -691,17 +691,6 @@ int ifxdeu_init_des (void) int ret = -ENOSYS; -#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)) - if (!disable_multiblock) { - ifxdeu_des_alg.cra_u.cipher.cia_max_nbytes = DES_BLOCK_SIZE; //(size_t)-1; - ifxdeu_des_alg.cra_u.cipher.cia_req_align = 16; - ifxdeu_des_alg.cra_u.cipher.cia_ecb = ifx_deu_des_ecb; - ifxdeu_des_alg.cra_u.cipher.cia_cbc = ifx_deu_des_cbc; - ifxdeu_des_alg.cra_u.cipher.cia_cfb = ifx_deu_des_cfb; - ifxdeu_des_alg.cra_u.cipher.cia_ofb = ifx_deu_des_ofb; - } -#endif - ret = crypto_register_alg(&ifxdeu_des_alg); if (ret < 0) goto des_err; diff --git a/package/kernel/lantiq/ltq-deu/src/ifxmips_deu.c b/package/kernel/lantiq/ltq-deu/src/ifxmips_deu.c index 05f168160b..3947b31a40 100644 --- a/package/kernel/lantiq/ltq-deu/src/ifxmips_deu.c +++ b/package/kernel/lantiq/ltq-deu/src/ifxmips_deu.c @@ -171,14 +171,8 @@ static int ltq_deu_remove(struct platform_device *pdev) int disable_multiblock = 0; -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,0) module_param(disable_multiblock,int,0); -#else -//MODULE_PARM (disable_multiblock, "i"); -MODULE_PARM_DESC (disable_multiblock, - "Disable encryption of whole multiblock buffers."); -#endif static const struct of_device_id ltq_deu_match[] = { #ifdef CONFIG_DANUBE diff --git a/package/kernel/lantiq/ltq-ptm/src/ifxmips_ptm_adsl.c b/package/kernel/lantiq/ltq-ptm/src/ifxmips_ptm_adsl.c index 186c848693..78c8a3fecd 100644 --- a/package/kernel/lantiq/ltq-ptm/src/ifxmips_ptm_adsl.c +++ b/package/kernel/lantiq/ltq-ptm/src/ifxmips_ptm_adsl.c @@ -61,12 +61,8 @@ * Kernel Version Adaption * #################################### */ -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,11) #define MODULE_PARM_ARRAY(a, b) module_param_array(a, int, NULL, 0) #define MODULE_PARM(a, b) module_param(a, int, 0) -#else - #define MODULE_PARM_ARRAY(a, b) MODULE_PARM(a, b) -#endif @@ -243,7 +239,6 @@ static INLINE void init_tables(void); static struct ptm_priv_data g_ptm_priv_data; -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,32) static struct net_device_ops g_ptm_netdev_ops = { .ndo_get_stats = ptm_get_stats, .ndo_open = ptm_open, @@ -257,7 +252,6 @@ static struct net_device_ops g_ptm_netdev_ops = { .ndo_do_ioctl = ptm_ioctl, .ndo_tx_timeout = ptm_tx_timeout, }; -#endif static struct net_device *g_net_dev[2] = {0}; static char *g_net_dev_name[2] = {"dsl0", "dslfast0"}; @@ -415,11 +409,7 @@ static int ptm_hard_start_xmit(struct sk_buff *skb, struct net_device *dev) /* allocate descriptor */ desc_base = get_tx_desc(ndev, &f_full); if ( f_full ) { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,7,0) netif_trans_update(dev); -#else - dev->trans_start = jiffies; -#endif netif_stop_queue(dev); IFX_REG_W32_MASK(0, 1 << (ndev + 16), MBOX_IGU1_ISRC); @@ -453,11 +443,7 @@ static int ptm_hard_start_xmit(struct sk_buff *skb, struct net_device *dev) g_ptm_priv_data.itf[ndev].stats.tx_packets++; g_ptm_priv_data.itf[ndev].stats.tx_bytes += reg_desc.datalen; -#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,7,0) netif_trans_update(dev); -#else - dev->trans_start = jiffies; -#endif mailbox_signal(ndev, 1); adsl_led_flash(); @@ -1513,11 +1499,7 @@ static int ltq_ptm_probe(struct platform_device *pdev) } /* register interrupt handler */ -#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,1,0) ret = request_irq(PPE_MAILBOX_IGU1_INT, mailbox_irq_handler, 0, "ptm_mailbox_isr", &g_ptm_priv_data); -#else - ret = request_irq(PPE_MAILBOX_IGU1_INT, mailbox_irq_handler, IRQF_DISABLED, "ptm_mailbox_isr", &g_ptm_priv_data); -#endif if ( ret ) { if ( ret == -EBUSY ) { err("IRQ may be occupied by other driver, please reconfig to disable it."); diff --git a/package/kernel/lantiq/ltq-ptm/src/ifxmips_ptm_vdsl.c b/package/kernel/lantiq/ltq-ptm/src/ifxmips_ptm_vdsl.c index 46a52e29d8..9c486c7262 100644 --- a/package/kernel/lantiq/ltq-ptm/src/ifxmips_ptm_vdsl.c +++ b/package/kernel/lantiq/ltq-ptm/src/ifxmips_ptm_vdsl.c @@ -301,11 +301,7 @@ static int ptm_hard_start_xmit(struct sk_buff *skb, struct net_device *dev) /* allocate descriptor */ desc_base = get_tx_desc(0, &f_full); if ( f_full ) { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,7,0) netif_trans_update(dev); -#else - dev->trans_start = jiffies; -#endif netif_stop_queue(dev); IFX_REG_W32_MASK(0, 1 << 17, MBOX_IGU1_ISRC); @@ -367,11 +363,7 @@ static int ptm_hard_start_xmit(struct sk_buff *skb, struct net_device *dev) wmb(); *(volatile unsigned int *)desc = *(unsigned int *)®_desc; -#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,7,0) netif_trans_update(dev); -#else - dev->trans_start = jiffies; -#endif return 0; @@ -1024,11 +1016,7 @@ static int ltq_ptm_probe(struct platform_device *pdev) } /* register interrupt handler */ -#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,1,0) ret = request_irq(PPE_MAILBOX_IGU1_INT, mailbox_irq_handler, 0, "ptm_mailbox_isr", &g_ptm_priv_data); -#else - ret = request_irq(PPE_MAILBOX_IGU1_INT, mailbox_irq_handler, IRQF_DISABLED, "ptm_mailbox_isr", &g_ptm_priv_data); -#endif if ( ret ) { if ( ret == -EBUSY ) { err("IRQ may be occupied by other driver, please reconfig to disable it."); diff --git a/package/kernel/leds-apu2/src/leds-apu2.c b/package/kernel/leds-apu2/src/leds-apu2.c index ff13b3cde1..ef125c8768 100644 --- a/package/kernel/leds-apu2/src/leds-apu2.c +++ b/package/kernel/leds-apu2/src/leds-apu2.c @@ -194,11 +194,7 @@ static int gpio_apu2_probe (struct platform_device *dev) } } -#if LINUX_VERSION_CODE < KERNEL_VERSION(4,5,0) - gpio_apu2_chip.dev = &dev->dev; -#else gpio_apu2_chip.parent = &dev->dev; -#endif ret = gpiochip_add (&gpio_apu2_chip); if (ret) { pr_err ("%s: adding gpiochip failed\n", DEVNAME); @@ -209,12 +205,7 @@ static int gpio_apu2_probe (struct platform_device *dev) static int gpio_apu2_remove (struct platform_device *dev) { -#if LINUX_VERSION_CODE < KERNEL_VERSION(3,18,0) - int ret; - ret = gpiochip_remove (&gpio_apu2_chip); -#else /* LINUX_VERSION_CODE < KERNEL_VERSION(3,18,0) */ gpiochip_remove (&gpio_apu2_chip); -#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,18,0) */ return 0; } diff --git a/package/kernel/rtc-rv5c386a/src/rtc.c b/package/kernel/rtc-rv5c386a/src/rtc.c index 96dc56eb36..0c00c41f96 100644 --- a/package/kernel/rtc-rv5c386a/src/rtc.c +++ b/package/kernel/rtc-rv5c386a/src/rtc.c @@ -57,9 +57,6 @@ #include #include -#if LINUX_VERSION_CODE < KERNEL_VERSION(3,4,0) -#include -#endif #include #include diff --git a/package/lean/verysync/Makefile b/package/lean/verysync/Makefile index 3db7afbeb1..12eee3ce0e 100644 --- a/package/lean/verysync/Makefile +++ b/package/lean/verysync/Makefile @@ -22,18 +22,21 @@ ifeq ($(ARCH),arm) PKG_ARCH_VERYSYNC:=arm7 endif ifeq ($(BOARD),bcm53xx) - PKG_ARCH_VERYSYNC:=arm + PKG_ARCH_VERYSYNC:=arm6 endif ifeq ($(BOARD),kirkwood) PKG_ARCH_VERYSYNC:=arm endif +ifeq ($(word 2,$(subst +,$(space),$(call qstrip,$(CONFIG_CPU_TYPE)))),) + PKG_ARCH_VERYSYNC:=arm +endif ifeq ($(ARCH),aarch64) PKG_ARCH_VERYSYNC:=arm64 endif PKG_NAME:=verysync PKG_VERSION:=v1.3.1 -PKG_RELEASE:=3 +PKG_RELEASE:=4 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE:=$(PKG_NAME)-linux-$(PKG_ARCH_VERYSYNC)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://releases-cdn.verysync.com/releases/$(PKG_VERSION)/ diff --git a/package/system/usign/Makefile b/package/system/usign/Makefile index ab7fda33a3..5267ce15f3 100644 --- a/package/system/usign/Makefile +++ b/package/system/usign/Makefile @@ -5,9 +5,9 @@ PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL=$(PROJECT_GIT)/project/usign.git -PKG_SOURCE_DATE:=2019-09-21 -PKG_SOURCE_VERSION:=f34a383eeed6282fa16fb021157a60c75f33fdcd -PKG_MIRROR_HASH:=74dc05f3ff24995193956a2803d20994fa6fce3d9e7d997002ee524618fbcec6 +PKG_SOURCE_DATE:=2020-05-23 +PKG_SOURCE_VERSION:=f1f65026a94137c91b5466b149ef3ea3f20091e9 +PKG_MIRROR_HASH:=3f6569a5e63fdfd032976ac0f79d736d3935101ac1b97fb370514b013c5e6bb6 CMAKE_INSTALL:=1 PKG_CHECK_FORMAT_SECURITY:=1 PKG_USE_MIPS16:=0 diff --git a/target/linux/ar71xx/patches-4.14/411-mtd-cfi_cmdset_0002-force-word-write.patch b/target/linux/ar71xx/patches-4.14/411-mtd-cfi_cmdset_0002-force-word-write.patch index 3fa18162eb..9a367c2ab0 100644 --- a/target/linux/ar71xx/patches-4.14/411-mtd-cfi_cmdset_0002-force-word-write.patch +++ b/target/linux/ar71xx/patches-4.14/411-mtd-cfi_cmdset_0002-force-word-write.patch @@ -43,7 +43,7 @@ static int __xipram do_write_buffer(struct map_info *map, struct flchip *chip, unsigned long adr, const u_char *buf, int len) -@@ -1930,7 +1935,6 @@ static int __xipram do_write_buffer(stru +@@ -1932,7 +1937,6 @@ static int __xipram do_write_buffer(stru return ret; } @@ -51,7 +51,7 @@ static int cfi_amdstd_write_buffers(struct mtd_info *mtd, loff_t to, size_t len, size_t *retlen, const u_char *buf) { -@@ -2005,6 +2009,7 @@ static int cfi_amdstd_write_buffers(stru +@@ -2007,6 +2011,7 @@ static int cfi_amdstd_write_buffers(stru return 0; } diff --git a/target/linux/ar71xx/patches-4.9/961-wr885n-tp9343-support.patch b/target/linux/ar71xx/patches-4.9/961-wr885n-tp9343-support.patch index 8a8c2249d9..2f66df99bf 100644 --- a/target/linux/ar71xx/patches-4.9/961-wr885n-tp9343-support.patch +++ b/target/linux/ar71xx/patches-4.9/961-wr885n-tp9343-support.patch @@ -1,6 +1,6 @@ --- a/arch/mips/ath79/machtypes.h +++ b/arch/mips/ath79/machtypes.h -@@ -312,6 +312,7 @@ enum ath79_mach_type { +@@ -313,6 +313,7 @@ enum ath79_mach_type { ATH79_MACH_TL_WR841N_V9, /* TP-LINK TL-WR841N/ND v9 */ ATH79_MACH_TL_WR842N_V2, /* TP-LINK TL-WR842N/ND v2 */ ATH79_MACH_TL_WR842N_V3, /* TP-LINK TL-WR842N/ND v3 */ @@ -10,7 +10,7 @@ ATH79_MACH_TL_WR941ND_V5, /* TP-LINK TL-WR941ND v5 */ --- a/arch/mips/ath79/Makefile +++ b/arch/mips/ath79/Makefile -@@ -251,6 +251,7 @@ obj-$(CONFIG_ATH79_MACH_TL_WR840N_V2) + +@@ -252,6 +252,7 @@ obj-$(CONFIG_ATH79_MACH_TL_WR840N_V2) + obj-$(CONFIG_ATH79_MACH_TL_WR841N_V1) += mach-tl-wr841n.o obj-$(CONFIG_ATH79_MACH_TL_WR841N_V8) += mach-tl-wr841n-v8.o obj-$(CONFIG_ATH79_MACH_TL_WR841N_V9) += mach-tl-wr841n-v9.o @@ -20,7 +20,7 @@ obj-$(CONFIG_ATH79_MACH_TL_WR941ND_V6) += mach-tl-wr941nd-v6.o --- a/arch/mips/ath79/Kconfig.openwrt +++ b/arch/mips/ath79/Kconfig.openwrt -@@ -2019,6 +2019,15 @@ config ATH79_MACH_TL_WR841N_V9 +@@ -2029,6 +2029,15 @@ config ATH79_MACH_TL_WR841N_V9 select ATH79_DEV_USB select ATH79_DEV_WMAC diff --git a/target/linux/bcm27xx/patches-4.19/950-0039-Add-dwc_otg-driver.patch b/target/linux/bcm27xx/patches-4.19/950-0039-Add-dwc_otg-driver.patch index ff062ffdf1..e123f8b83d 100644 --- a/target/linux/bcm27xx/patches-4.19/950-0039-Add-dwc_otg-driver.patch +++ b/target/linux/bcm27xx/patches-4.19/950-0039-Add-dwc_otg-driver.patch @@ -917,7 +917,7 @@ Fixes https://github.com/raspberrypi/linux/issues/2408 } --- a/drivers/usb/core/hub.c +++ b/drivers/usb/core/hub.c -@@ -5246,7 +5246,7 @@ static void port_event(struct usb_hub *h +@@ -5247,7 +5247,7 @@ static void port_event(struct usb_hub *h u16 status = 0, unused; port_dev->over_current_count++; diff --git a/target/linux/bcm27xx/patches-4.19/950-0043-MMC-added-alternative-MMC-driver.patch b/target/linux/bcm27xx/patches-4.19/950-0043-MMC-added-alternative-MMC-driver.patch index bfe690d34e..27992b7582 100644 --- a/target/linux/bcm27xx/patches-4.19/950-0043-MMC-added-alternative-MMC-driver.patch +++ b/target/linux/bcm27xx/patches-4.19/950-0043-MMC-added-alternative-MMC-driver.patch @@ -125,7 +125,7 @@ Signed-off-by: Phil Elwell static inline int mmc_blk_part_switch(struct mmc_card *card, unsigned int part_type); -@@ -2876,6 +2883,7 @@ static int mmc_blk_probe(struct mmc_card +@@ -2877,6 +2884,7 @@ static int mmc_blk_probe(struct mmc_card { struct mmc_blk_data *md, *part_md; char cap_str[10]; @@ -133,7 +133,7 @@ Signed-off-by: Phil Elwell /* * Check that the card supports the command class(es) we need. -@@ -2883,7 +2891,16 @@ static int mmc_blk_probe(struct mmc_card +@@ -2884,7 +2892,16 @@ static int mmc_blk_probe(struct mmc_card if (!(card->csd.cmdclass & CCC_BLOCK_READ)) return -ENODEV; @@ -151,7 +151,7 @@ Signed-off-by: Phil Elwell card->complete_wq = alloc_workqueue("mmc_complete", WQ_MEM_RECLAIM | WQ_HIGHPRI, 0); -@@ -2898,9 +2915,14 @@ static int mmc_blk_probe(struct mmc_card +@@ -2899,9 +2916,14 @@ static int mmc_blk_probe(struct mmc_card string_get_size((u64)get_capacity(md->disk), 512, STRING_UNITS_2, cap_str, sizeof(cap_str)); diff --git a/target/linux/generic/backport-4.14/324-v4.16-netfilter-flow-table-support-for-IPv6.patch b/target/linux/generic/backport-4.14/324-v4.16-netfilter-flow-table-support-for-IPv6.patch index 02edd96d55..8e776383d1 100644 --- a/target/linux/generic/backport-4.14/324-v4.16-netfilter-flow-table-support-for-IPv6.patch +++ b/target/linux/generic/backport-4.14/324-v4.16-netfilter-flow-table-support-for-IPv6.patch @@ -23,7 +23,7 @@ Signed-off-by: Pablo Neira Ayuso + int ip6_dst_lookup(struct net *net, struct sock *sk, struct dst_entry **dst, struct flowi6 *fl6); - struct dst_entry *ip6_dst_lookup_flow(const struct sock *sk, struct flowi6 *fl6, + struct dst_entry *ip6_dst_lookup_flow(struct net *net, const struct sock *sk, struct flowi6 *fl6, --- a/net/ipv6/ip6_output.c +++ b/net/ipv6/ip6_output.c @@ -381,7 +381,7 @@ static inline int ip6_forward_finish(str diff --git a/target/linux/generic/backport-4.14/350-v4.18-ipv6-make-ip6_dst_mtu_forward-inline.patch b/target/linux/generic/backport-4.14/350-v4.18-ipv6-make-ip6_dst_mtu_forward-inline.patch index bbc04555f7..1c52cf51c6 100644 --- a/target/linux/generic/backport-4.14/350-v4.18-ipv6-make-ip6_dst_mtu_forward-inline.patch +++ b/target/linux/generic/backport-4.14/350-v4.18-ipv6-make-ip6_dst_mtu_forward-inline.patch @@ -46,7 +46,7 @@ Signed-off-by: Felix Fietkau - int ip6_dst_lookup(struct net *net, struct sock *sk, struct dst_entry **dst, struct flowi6 *fl6); - struct dst_entry *ip6_dst_lookup_flow(const struct sock *sk, struct flowi6 *fl6, + struct dst_entry *ip6_dst_lookup_flow(struct net *net, const struct sock *sk, struct flowi6 *fl6, --- a/net/ipv6/ip6_output.c +++ b/net/ipv6/ip6_output.c @@ -381,28 +381,6 @@ static inline int ip6_forward_finish(str diff --git a/target/linux/generic/backport-4.9/012-kbuild-add-macro-for-controlling-warnings-to-linux-c.patch b/target/linux/generic/backport-4.9/012-kbuild-add-macro-for-controlling-warnings-to-linux-c.patch index 5b4b075838..ca0f995ece 100644 --- a/target/linux/generic/backport-4.9/012-kbuild-add-macro-for-controlling-warnings-to-linux-c.patch +++ b/target/linux/generic/backport-4.9/012-kbuild-add-macro-for-controlling-warnings-to-linux-c.patch @@ -117,11 +117,10 @@ Signed-off-by: Masahiro Yamada + --- a/include/linux/compiler.h +++ b/include/linux/compiler.h -@@ -605,4 +605,23 @@ unsigned long read_word_at_a_time(const - # define __kprobes - # define nokprobe_inline inline - #endif -+ +@@ -612,4 +612,22 @@ unsigned long read_word_at_a_time(const + */ + #define prevent_tail_call_optimization() mb() + +#ifndef __diag +#define __diag(string) +#endif @@ -130,14 +129,14 @@ Signed-off-by: Masahiro Yamada +#define __diag_GCC(version, severity, string) +#endif + -+#define __diag_push() __diag(push) -+#define __diag_pop() __diag(pop) ++#define __diag_push() __diag(push) ++#define __diag_pop() __diag(pop) + +#define __diag_ignore(compiler, version, option, comment) \ -+ __diag_ ## compiler(version, ignore, option) ++ __diag_ ## compiler(version, ignore, option) +#define __diag_warn(compiler, version, option, comment) \ -+ __diag_ ## compiler(version, warn, option) ++ __diag_ ## compiler(version, warn, option) +#define __diag_error(compiler, version, option, comment) \ -+ __diag_ ## compiler(version, error, option) ++ __diag_ ## compiler(version, error, option) + #endif /* __LINUX_COMPILER_H */ diff --git a/target/linux/generic/backport-4.9/040-mm-add-support-for-releasing-multiple-instances-of-a.patch b/target/linux/generic/backport-4.9/040-mm-add-support-for-releasing-multiple-instances-of-a.patch index 4656bb1db3..f919aa2203 100644 --- a/target/linux/generic/backport-4.9/040-mm-add-support-for-releasing-multiple-instances-of-a.patch +++ b/target/linux/generic/backport-4.9/040-mm-add-support-for-releasing-multiple-instances-of-a.patch @@ -52,7 +52,7 @@ Signed-off-by: Linus Torvalds extern void __free_page_frag(void *addr); --- a/mm/page_alloc.c +++ b/mm/page_alloc.c -@@ -3935,6 +3935,20 @@ static struct page *__page_frag_refill(s +@@ -3936,6 +3936,20 @@ static struct page *__page_frag_refill(s return page; } diff --git a/target/linux/generic/files/drivers/net/phy/b53/b53_priv.h b/target/linux/generic/files/drivers/net/phy/b53/b53_priv.h index a9296c9421..37c17aeb25 100644 --- a/target/linux/generic/files/drivers/net/phy/b53/b53_priv.h +++ b/target/linux/generic/files/drivers/net/phy/b53/b53_priv.h @@ -314,9 +314,8 @@ static inline int b53_write64(struct b53_device *dev, u8 page, u8 reg, #endif #include -#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 1, 0)) #include -#endif + static inline int b53_switch_get_reset_gpio(struct b53_device *dev) { #ifdef CONFIG_BCM47XX @@ -331,11 +330,7 @@ static inline int b53_switch_get_reset_gpio(struct b53_device *dev) } #endif -#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 1, 0)) return bcm47xx_nvram_gpio_pin("robo_reset"); -#else - return -ENOENT; -#endif } #endif diff --git a/target/linux/generic/files/drivers/net/phy/rtl8366_smi.c b/target/linux/generic/files/drivers/net/phy/rtl8366_smi.c index 2c4d53fc67..e8375e5147 100644 --- a/target/linux/generic/files/drivers/net/phy/rtl8366_smi.c +++ b/target/linux/generic/files/drivers/net/phy/rtl8366_smi.c @@ -1035,14 +1035,6 @@ static int rtl8366_smi_mii_init(struct rtl8366_smi *smi) dev_name(smi->parent)); smi->mii_bus->parent = smi->parent; smi->mii_bus->phy_mask = ~(0x1f); -#if LINUX_VERSION_CODE < KERNEL_VERSION(4,5,0) - { - int i; - smi->mii_bus->irq = smi->mii_irq; - for (i = 0; i < PHY_MAX_ADDR; i++) - smi->mii_irq[i] = PHY_POLL; - } -#endif #ifdef CONFIG_OF if (np) diff --git a/target/linux/generic/hack-4.14/207-disable-modorder.patch b/target/linux/generic/hack-4.14/207-disable-modorder.patch index 35834291cc..d1d9040ef5 100644 --- a/target/linux/generic/hack-4.14/207-disable-modorder.patch +++ b/target/linux/generic/hack-4.14/207-disable-modorder.patch @@ -15,7 +15,7 @@ Signed-off-by: Felix Fietkau --- a/Makefile +++ b/Makefile -@@ -1252,7 +1252,6 @@ all: modules +@@ -1257,7 +1257,6 @@ all: modules PHONY += modules modules: $(vmlinux-dirs) $(if $(KBUILD_BUILTIN),vmlinux) modules.builtin @@ -23,7 +23,7 @@ Signed-off-by: Felix Fietkau @$(kecho) ' Building modules, stage 2.'; $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost -@@ -1281,7 +1280,6 @@ _modinst_: +@@ -1286,7 +1285,6 @@ _modinst_: rm -f $(MODLIB)/build ; \ ln -s $(CURDIR) $(MODLIB)/build ; \ fi diff --git a/target/linux/generic/hack-4.14/220-gc_sections.patch b/target/linux/generic/hack-4.14/220-gc_sections.patch index 7d791eb451..20e150bbac 100644 --- a/target/linux/generic/hack-4.14/220-gc_sections.patch +++ b/target/linux/generic/hack-4.14/220-gc_sections.patch @@ -33,7 +33,7 @@ Signed-off-by: Gabor Juhos # Read KERNELRELEASE from include/config/kernel.release (if it exists) KERNELRELEASE = $(shell cat include/config/kernel.release 2> /dev/null) KERNELVERSION = $(VERSION)$(if $(PATCHLEVEL),.$(PATCHLEVEL)$(if $(SUBLEVEL),.$(SUBLEVEL)))$(EXTRAVERSION) -@@ -789,11 +794,6 @@ ifdef CONFIG_DEBUG_SECTION_MISMATCH +@@ -783,11 +788,6 @@ ifdef CONFIG_DEBUG_SECTION_MISMATCH KBUILD_CFLAGS += $(call cc-option, -fno-inline-functions-called-once) endif diff --git a/target/linux/generic/hack-4.19/207-disable-modorder.patch b/target/linux/generic/hack-4.19/207-disable-modorder.patch index f47da3f24e..ff2b01a763 100644 --- a/target/linux/generic/hack-4.19/207-disable-modorder.patch +++ b/target/linux/generic/hack-4.19/207-disable-modorder.patch @@ -15,7 +15,7 @@ Signed-off-by: Felix Fietkau --- a/Makefile +++ b/Makefile -@@ -1232,7 +1232,6 @@ all: modules +@@ -1237,7 +1237,6 @@ all: modules PHONY += modules modules: $(vmlinux-dirs) $(if $(KBUILD_BUILTIN),vmlinux) modules.builtin @@ -23,7 +23,7 @@ Signed-off-by: Felix Fietkau @$(kecho) ' Building modules, stage 2.'; $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost -@@ -1261,7 +1260,6 @@ _modinst_: +@@ -1266,7 +1265,6 @@ _modinst_: rm -f $(MODLIB)/build ; \ ln -s $(CURDIR) $(MODLIB)/build ; \ fi diff --git a/target/linux/generic/hack-4.19/220-gc_sections.patch b/target/linux/generic/hack-4.19/220-gc_sections.patch index 77422e821b..ccded1901b 100644 --- a/target/linux/generic/hack-4.19/220-gc_sections.patch +++ b/target/linux/generic/hack-4.19/220-gc_sections.patch @@ -33,7 +33,7 @@ Signed-off-by: Gabor Juhos # Read KERNELRELEASE from include/config/kernel.release (if it exists) KERNELRELEASE = $(shell cat include/config/kernel.release 2> /dev/null) KERNELVERSION = $(VERSION)$(if $(PATCHLEVEL),.$(PATCHLEVEL)$(if $(SUBLEVEL),.$(SUBLEVEL)))$(EXTRAVERSION) -@@ -782,11 +787,6 @@ ifdef CONFIG_DEBUG_SECTION_MISMATCH +@@ -776,11 +781,6 @@ ifdef CONFIG_DEBUG_SECTION_MISMATCH KBUILD_CFLAGS += $(call cc-option, -fno-inline-functions-called-once) endif diff --git a/target/linux/generic/hack-4.9/207-disable-modorder.patch b/target/linux/generic/hack-4.9/207-disable-modorder.patch index 62f67ac95d..d07c38f19e 100644 --- a/target/linux/generic/hack-4.9/207-disable-modorder.patch +++ b/target/linux/generic/hack-4.9/207-disable-modorder.patch @@ -15,7 +15,7 @@ Signed-off-by: Felix Fietkau --- a/Makefile +++ b/Makefile -@@ -1240,7 +1240,6 @@ all: modules +@@ -1245,7 +1245,6 @@ all: modules PHONY += modules modules: $(vmlinux-dirs) $(if $(KBUILD_BUILTIN),vmlinux) modules.builtin @@ -23,7 +23,7 @@ Signed-off-by: Felix Fietkau @$(kecho) ' Building modules, stage 2.'; $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.fwinst obj=firmware __fw_modbuild -@@ -1270,7 +1269,6 @@ _modinst_: +@@ -1275,7 +1274,6 @@ _modinst_: rm -f $(MODLIB)/build ; \ ln -s $(CURDIR) $(MODLIB)/build ; \ fi diff --git a/target/linux/generic/hack-4.9/220-gc_sections.patch b/target/linux/generic/hack-4.9/220-gc_sections.patch index bdacb0f3ed..3fa872a2fd 100644 --- a/target/linux/generic/hack-4.9/220-gc_sections.patch +++ b/target/linux/generic/hack-4.9/220-gc_sections.patch @@ -43,7 +43,7 @@ Signed-off-by: Gabor Juhos -endif - ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE - KBUILD_CFLAGS += -Os $(call cc-disable-warning,maybe-uninitialized,) $(EXTRA_OPTIMIZATION) + KBUILD_CFLAGS += -Os $(EXTRA_OPTIMIZATION) else --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig diff --git a/target/linux/generic/pending-4.14/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch b/target/linux/generic/pending-4.14/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch index 3308b1d71f..44e7fa70a3 100644 --- a/target/linux/generic/pending-4.14/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch +++ b/target/linux/generic/pending-4.14/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch @@ -71,7 +71,7 @@ Signed-off-by: Tobias Wolf --- a/mm/page_alloc.c +++ b/mm/page_alloc.c -@@ -6145,7 +6145,7 @@ static void __ref alloc_node_mem_map(str +@@ -6146,7 +6146,7 @@ static void __ref alloc_node_mem_map(str mem_map = NODE_DATA(0)->node_mem_map; #if defined(CONFIG_HAVE_MEMBLOCK_NODE_MAP) || defined(CONFIG_FLATMEM) if (page_to_pfn(mem_map) != pgdat->node_start_pfn) diff --git a/target/linux/generic/pending-4.14/201-extra_optimization.patch b/target/linux/generic/pending-4.14/201-extra_optimization.patch index 305ba3aad2..b37f0c5ae1 100644 --- a/target/linux/generic/pending-4.14/201-extra_optimization.patch +++ b/target/linux/generic/pending-4.14/201-extra_optimization.patch @@ -14,19 +14,15 @@ Signed-off-by: Felix Fietkau --- a/Makefile +++ b/Makefile -@@ -656,12 +656,12 @@ KBUILD_CFLAGS += $(call cc-disable-warni +@@ -656,9 +656,9 @@ KBUILD_CFLAGS += $(call cc-disable-warni KBUILD_CFLAGS += $(call cc-disable-warning, attribute-alias) ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE --KBUILD_CFLAGS += -Os $(call cc-disable-warning,maybe-uninitialized,) -+KBUILD_CFLAGS += -Os $(call cc-disable-warning,maybe-uninitialized,) $(EXTRA_OPTIMIZATION) - else - ifdef CONFIG_PROFILE_ALL_BRANCHES --KBUILD_CFLAGS += -O2 $(call cc-disable-warning,maybe-uninitialized,) -+KBUILD_CFLAGS += -O2 $(call cc-disable-warning,maybe-uninitialized,) $(EXTRA_OPTIMIZATION) +-KBUILD_CFLAGS += -Os ++KBUILD_CFLAGS += -Os $(EXTRA_OPTIMIZATION) else -KBUILD_CFLAGS += -O2 -+KBUILD_CFLAGS += -O2 -fno-reorder-blocks -fno-tree-ch $(EXTRA_OPTIMIZATION) - endif ++KBUILD_CFLAGS += -O2 $(EXTRA_OPTIMIZATION) endif + # Tell gcc to never replace conditional load with a non-conditional one diff --git a/target/linux/generic/pending-4.14/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch b/target/linux/generic/pending-4.14/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch index 57ba68f4b6..3839865712 100644 --- a/target/linux/generic/pending-4.14/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch +++ b/target/linux/generic/pending-4.14/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch @@ -141,7 +141,7 @@ Signed-off-by: Jonas Gorski static const struct rt6_info ip6_blk_hole_entry_template = { .dst = { .__refcnt = ATOMIC_INIT(1), -@@ -2054,6 +2071,11 @@ static struct rt6_info *ip6_route_info_c +@@ -2056,6 +2073,11 @@ static struct rt6_info *ip6_route_info_c rt->dst.output = ip6_pkt_prohibit_out; rt->dst.input = ip6_pkt_prohibit; break; @@ -153,7 +153,7 @@ Signed-off-by: Jonas Gorski case RTN_THROW: case RTN_UNREACHABLE: default: -@@ -2779,6 +2801,17 @@ static int ip6_pkt_prohibit_out(struct n +@@ -2781,6 +2803,17 @@ static int ip6_pkt_prohibit_out(struct n return ip6_pkt_drop(skb, ICMPV6_ADM_PROHIBITED, IPSTATS_MIB_OUTNOROUTES); } @@ -171,7 +171,7 @@ Signed-off-by: Jonas Gorski /* * Allocate a dst for local (unicast / anycast) address. */ -@@ -3015,7 +3048,8 @@ static int rtm_to_fib6_config(struct sk_ +@@ -3017,7 +3050,8 @@ static int rtm_to_fib6_config(struct sk_ if (rtm->rtm_type == RTN_UNREACHABLE || rtm->rtm_type == RTN_BLACKHOLE || rtm->rtm_type == RTN_PROHIBIT || @@ -181,7 +181,7 @@ Signed-off-by: Jonas Gorski cfg->fc_flags |= RTF_REJECT; if (rtm->rtm_type == RTN_LOCAL) -@@ -3515,6 +3549,9 @@ static int rt6_fill_node(struct net *net +@@ -3517,6 +3551,9 @@ static int rt6_fill_node(struct net *net case -EACCES: rtm->rtm_type = RTN_PROHIBIT; break; @@ -191,7 +191,7 @@ Signed-off-by: Jonas Gorski case -EAGAIN: rtm->rtm_type = RTN_THROW; break; -@@ -3833,6 +3870,8 @@ static int ip6_route_dev_notify(struct n +@@ -3835,6 +3872,8 @@ static int ip6_route_dev_notify(struct n #ifdef CONFIG_IPV6_MULTIPLE_TABLES net->ipv6.ip6_prohibit_entry->dst.dev = dev; net->ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(dev); @@ -200,7 +200,7 @@ Signed-off-by: Jonas Gorski net->ipv6.ip6_blk_hole_entry->dst.dev = dev; net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev); #endif -@@ -3844,6 +3883,7 @@ static int ip6_route_dev_notify(struct n +@@ -3846,6 +3885,7 @@ static int ip6_route_dev_notify(struct n in6_dev_put_clear(&net->ipv6.ip6_null_entry->rt6i_idev); #ifdef CONFIG_IPV6_MULTIPLE_TABLES in6_dev_put_clear(&net->ipv6.ip6_prohibit_entry->rt6i_idev); @@ -208,7 +208,7 @@ Signed-off-by: Jonas Gorski in6_dev_put_clear(&net->ipv6.ip6_blk_hole_entry->rt6i_idev); #endif } -@@ -4060,6 +4100,17 @@ static int __net_init ip6_route_net_init +@@ -4062,6 +4102,17 @@ static int __net_init ip6_route_net_init net->ipv6.ip6_blk_hole_entry->dst.ops = &net->ipv6.ip6_dst_ops; dst_init_metrics(&net->ipv6.ip6_blk_hole_entry->dst, ip6_template_metrics, true); @@ -226,7 +226,7 @@ Signed-off-by: Jonas Gorski #endif net->ipv6.sysctl.flush_delay = 0; -@@ -4078,6 +4129,8 @@ out: +@@ -4080,6 +4131,8 @@ out: return ret; #ifdef CONFIG_IPV6_MULTIPLE_TABLES @@ -235,7 +235,7 @@ Signed-off-by: Jonas Gorski out_ip6_prohibit_entry: kfree(net->ipv6.ip6_prohibit_entry); out_ip6_null_entry: -@@ -4095,6 +4148,7 @@ static void __net_exit ip6_route_net_exi +@@ -4097,6 +4150,7 @@ static void __net_exit ip6_route_net_exi #ifdef CONFIG_IPV6_MULTIPLE_TABLES kfree(net->ipv6.ip6_prohibit_entry); kfree(net->ipv6.ip6_blk_hole_entry); @@ -243,7 +243,7 @@ Signed-off-by: Jonas Gorski #endif dst_entries_destroy(&net->ipv6.ip6_dst_ops); } -@@ -4168,6 +4222,9 @@ void __init ip6_route_init_special_entri +@@ -4170,6 +4224,9 @@ void __init ip6_route_init_special_entri init_net.ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev); init_net.ipv6.ip6_blk_hole_entry->dst.dev = init_net.loopback_dev; init_net.ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev); diff --git a/target/linux/generic/pending-4.19/201-extra_optimization.patch b/target/linux/generic/pending-4.19/201-extra_optimization.patch index cafccd42c9..5fff5e7524 100644 --- a/target/linux/generic/pending-4.19/201-extra_optimization.patch +++ b/target/linux/generic/pending-4.19/201-extra_optimization.patch @@ -14,19 +14,15 @@ Signed-off-by: Felix Fietkau --- a/Makefile +++ b/Makefile -@@ -657,12 +657,12 @@ KBUILD_CFLAGS += $(call cc-disable-warni +@@ -657,9 +657,9 @@ KBUILD_CFLAGS += $(call cc-disable-warni KBUILD_CFLAGS += $(call cc-disable-warning, address-of-packed-member) ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE --KBUILD_CFLAGS += -Os $(call cc-disable-warning,maybe-uninitialized,) -+KBUILD_CFLAGS += -Os $(call cc-disable-warning,maybe-uninitialized,) $(EXTRA_OPTIMIZATION) - else - ifdef CONFIG_PROFILE_ALL_BRANCHES --KBUILD_CFLAGS += -O2 $(call cc-disable-warning,maybe-uninitialized,) -+KBUILD_CFLAGS += -O2 $(call cc-disable-warning,maybe-uninitialized,) $(EXTRA_OPTIMIZATION) +-KBUILD_CFLAGS += -Os ++KBUILD_CFLAGS += -Os $(EXTRA_OPTIMIZATION) else -KBUILD_CFLAGS += -O2 -+KBUILD_CFLAGS += -O2 -fno-reorder-blocks -fno-tree-ch $(EXTRA_OPTIMIZATION) - endif ++KBUILD_CFLAGS += -O2 $(EXTRA_OPTIMIZATION) endif + # Tell gcc to never replace conditional load with a non-conditional one diff --git a/target/linux/generic/pending-4.19/644-net-pppoe-support-hardware-flow-table-offload.patch b/target/linux/generic/pending-4.19/644-net-pppoe-support-hardware-flow-table-offload.patch index 26d46ec005..89fa863aab 100644 --- a/target/linux/generic/pending-4.19/644-net-pppoe-support-hardware-flow-table-offload.patch +++ b/target/linux/generic/pending-4.19/644-net-pppoe-support-hardware-flow-table-offload.patch @@ -73,7 +73,7 @@ Signed-off-by: Felix Fietkau #include #include #include -@@ -976,8 +981,36 @@ static int pppoe_xmit(struct ppp_channel +@@ -979,8 +984,36 @@ static int pppoe_xmit(struct ppp_channel return __pppoe_xmit(sk, skb); } diff --git a/target/linux/generic/pending-4.19/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch b/target/linux/generic/pending-4.19/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch index 9fd05107c4..d8c439b993 100644 --- a/target/linux/generic/pending-4.19/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch +++ b/target/linux/generic/pending-4.19/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch @@ -157,7 +157,7 @@ Signed-off-by: Jonas Gorski case RTN_THROW: case RTN_UNREACHABLE: default: -@@ -3789,6 +3808,17 @@ static int ip6_pkt_prohibit_out(struct n +@@ -3791,6 +3810,17 @@ static int ip6_pkt_prohibit_out(struct n return ip6_pkt_drop(skb, ICMPV6_ADM_PROHIBITED, IPSTATS_MIB_OUTNOROUTES); } @@ -175,7 +175,7 @@ Signed-off-by: Jonas Gorski /* * Allocate a dst for local (unicast / anycast) address. */ -@@ -4236,7 +4266,8 @@ static int rtm_to_fib6_config(struct sk_ +@@ -4238,7 +4268,8 @@ static int rtm_to_fib6_config(struct sk_ if (rtm->rtm_type == RTN_UNREACHABLE || rtm->rtm_type == RTN_BLACKHOLE || rtm->rtm_type == RTN_PROHIBIT || @@ -185,7 +185,7 @@ Signed-off-by: Jonas Gorski cfg->fc_flags |= RTF_REJECT; if (rtm->rtm_type == RTN_LOCAL) -@@ -5085,6 +5116,8 @@ static int ip6_route_dev_notify(struct n +@@ -5087,6 +5118,8 @@ static int ip6_route_dev_notify(struct n #ifdef CONFIG_IPV6_MULTIPLE_TABLES net->ipv6.ip6_prohibit_entry->dst.dev = dev; net->ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(dev); @@ -194,7 +194,7 @@ Signed-off-by: Jonas Gorski net->ipv6.ip6_blk_hole_entry->dst.dev = dev; net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev); #endif -@@ -5096,6 +5129,7 @@ static int ip6_route_dev_notify(struct n +@@ -5098,6 +5131,7 @@ static int ip6_route_dev_notify(struct n in6_dev_put_clear(&net->ipv6.ip6_null_entry->rt6i_idev); #ifdef CONFIG_IPV6_MULTIPLE_TABLES in6_dev_put_clear(&net->ipv6.ip6_prohibit_entry->rt6i_idev); @@ -202,7 +202,7 @@ Signed-off-by: Jonas Gorski in6_dev_put_clear(&net->ipv6.ip6_blk_hole_entry->rt6i_idev); #endif } -@@ -5290,6 +5324,15 @@ static int __net_init ip6_route_net_init +@@ -5292,6 +5326,15 @@ static int __net_init ip6_route_net_init net->ipv6.ip6_blk_hole_entry->dst.ops = &net->ipv6.ip6_dst_ops; dst_init_metrics(&net->ipv6.ip6_blk_hole_entry->dst, ip6_template_metrics, true); @@ -218,7 +218,7 @@ Signed-off-by: Jonas Gorski #endif net->ipv6.sysctl.flush_delay = 0; -@@ -5308,6 +5351,8 @@ out: +@@ -5310,6 +5353,8 @@ out: return ret; #ifdef CONFIG_IPV6_MULTIPLE_TABLES @@ -227,7 +227,7 @@ Signed-off-by: Jonas Gorski out_ip6_prohibit_entry: kfree(net->ipv6.ip6_prohibit_entry); out_ip6_null_entry: -@@ -5328,6 +5373,7 @@ static void __net_exit ip6_route_net_exi +@@ -5330,6 +5375,7 @@ static void __net_exit ip6_route_net_exi #ifdef CONFIG_IPV6_MULTIPLE_TABLES kfree(net->ipv6.ip6_prohibit_entry); kfree(net->ipv6.ip6_blk_hole_entry); @@ -235,7 +235,7 @@ Signed-off-by: Jonas Gorski #endif dst_entries_destroy(&net->ipv6.ip6_dst_ops); } -@@ -5404,6 +5450,9 @@ void __init ip6_route_init_special_entri +@@ -5406,6 +5452,9 @@ void __init ip6_route_init_special_entri init_net.ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev); init_net.ipv6.ip6_blk_hole_entry->dst.dev = init_net.loopback_dev; init_net.ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev); diff --git a/target/linux/generic/pending-4.9/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch b/target/linux/generic/pending-4.9/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch index 794280eec9..0f6ce1f802 100644 --- a/target/linux/generic/pending-4.9/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch +++ b/target/linux/generic/pending-4.9/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch @@ -71,7 +71,7 @@ Signed-off-by: Tobias Wolf --- a/mm/page_alloc.c +++ b/mm/page_alloc.c -@@ -5923,7 +5923,7 @@ static void __ref alloc_node_mem_map(str +@@ -5924,7 +5924,7 @@ static void __ref alloc_node_mem_map(str mem_map = NODE_DATA(0)->node_mem_map; #if defined(CONFIG_HAVE_MEMBLOCK_NODE_MAP) || defined(CONFIG_FLATMEM) if (page_to_pfn(mem_map) != pgdat->node_start_pfn) diff --git a/target/linux/generic/pending-4.9/201-extra_optimization.patch b/target/linux/generic/pending-4.9/201-extra_optimization.patch index 813951158c..0c09906eee 100644 --- a/target/linux/generic/pending-4.9/201-extra_optimization.patch +++ b/target/linux/generic/pending-4.9/201-extra_optimization.patch @@ -14,19 +14,15 @@ Signed-off-by: Felix Fietkau --- a/Makefile +++ b/Makefile -@@ -658,12 +658,12 @@ KBUILD_CFLAGS += $(call cc-option,-fdata +@@ -658,9 +658,9 @@ KBUILD_CFLAGS += $(call cc-option,-fdata endif ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE --KBUILD_CFLAGS += -Os $(call cc-disable-warning,maybe-uninitialized,) -+KBUILD_CFLAGS += -Os $(call cc-disable-warning,maybe-uninitialized,) $(EXTRA_OPTIMIZATION) - else - ifdef CONFIG_PROFILE_ALL_BRANCHES --KBUILD_CFLAGS += -O2 $(call cc-disable-warning,maybe-uninitialized,) -+KBUILD_CFLAGS += -O2 $(call cc-disable-warning,maybe-uninitialized,) $(EXTRA_OPTIMIZATION) +-KBUILD_CFLAGS += -Os ++KBUILD_CFLAGS += -Os $(EXTRA_OPTIMIZATION) else -KBUILD_CFLAGS += -O2 -+KBUILD_CFLAGS += -O2 -fno-reorder-blocks -fno-tree-ch $(EXTRA_OPTIMIZATION) - endif ++KBUILD_CFLAGS += -O2 $(EXTRA_OPTIMIZATION) endif + # Tell gcc to never replace conditional load with a non-conditional one diff --git a/target/linux/generic/pending-4.9/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch b/target/linux/generic/pending-4.9/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch index b9c7aa06c9..f71aac4956 100644 --- a/target/linux/generic/pending-4.9/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch +++ b/target/linux/generic/pending-4.9/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch @@ -141,7 +141,7 @@ Signed-off-by: Jonas Gorski static const struct rt6_info ip6_blk_hole_entry_template = { .dst = { .__refcnt = ATOMIC_INIT(1), -@@ -1970,6 +1987,11 @@ static struct rt6_info *ip6_route_info_c +@@ -1972,6 +1989,11 @@ static struct rt6_info *ip6_route_info_c rt->dst.output = ip6_pkt_prohibit_out; rt->dst.input = ip6_pkt_prohibit; break; @@ -153,7 +153,7 @@ Signed-off-by: Jonas Gorski case RTN_THROW: case RTN_UNREACHABLE: default: -@@ -2613,6 +2635,17 @@ static int ip6_pkt_prohibit_out(struct n +@@ -2615,6 +2637,17 @@ static int ip6_pkt_prohibit_out(struct n return ip6_pkt_drop(skb, ICMPV6_ADM_PROHIBITED, IPSTATS_MIB_OUTNOROUTES); } @@ -171,7 +171,7 @@ Signed-off-by: Jonas Gorski /* * Allocate a dst for local (unicast / anycast) address. */ -@@ -2850,7 +2883,8 @@ static int rtm_to_fib6_config(struct sk_ +@@ -2852,7 +2885,8 @@ static int rtm_to_fib6_config(struct sk_ if (rtm->rtm_type == RTN_UNREACHABLE || rtm->rtm_type == RTN_BLACKHOLE || rtm->rtm_type == RTN_PROHIBIT || @@ -181,7 +181,7 @@ Signed-off-by: Jonas Gorski cfg->fc_flags |= RTF_REJECT; if (rtm->rtm_type == RTN_LOCAL) -@@ -3223,6 +3257,9 @@ static int rt6_fill_node(struct net *net +@@ -3225,6 +3259,9 @@ static int rt6_fill_node(struct net *net case -EACCES: rtm->rtm_type = RTN_PROHIBIT; break; @@ -191,7 +191,7 @@ Signed-off-by: Jonas Gorski case -EAGAIN: rtm->rtm_type = RTN_THROW; break; -@@ -3499,6 +3536,8 @@ static int ip6_route_dev_notify(struct n +@@ -3501,6 +3538,8 @@ static int ip6_route_dev_notify(struct n #ifdef CONFIG_IPV6_MULTIPLE_TABLES net->ipv6.ip6_prohibit_entry->dst.dev = dev; net->ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(dev); @@ -200,7 +200,7 @@ Signed-off-by: Jonas Gorski net->ipv6.ip6_blk_hole_entry->dst.dev = dev; net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev); #endif -@@ -3510,6 +3549,7 @@ static int ip6_route_dev_notify(struct n +@@ -3512,6 +3551,7 @@ static int ip6_route_dev_notify(struct n in6_dev_put(net->ipv6.ip6_null_entry->rt6i_idev); #ifdef CONFIG_IPV6_MULTIPLE_TABLES in6_dev_put(net->ipv6.ip6_prohibit_entry->rt6i_idev); @@ -208,7 +208,7 @@ Signed-off-by: Jonas Gorski in6_dev_put(net->ipv6.ip6_blk_hole_entry->rt6i_idev); #endif } -@@ -3725,6 +3765,17 @@ static int __net_init ip6_route_net_init +@@ -3727,6 +3767,17 @@ static int __net_init ip6_route_net_init net->ipv6.ip6_blk_hole_entry->dst.ops = &net->ipv6.ip6_dst_ops; dst_init_metrics(&net->ipv6.ip6_blk_hole_entry->dst, ip6_template_metrics, true); @@ -226,7 +226,7 @@ Signed-off-by: Jonas Gorski #endif net->ipv6.sysctl.flush_delay = 0; -@@ -3743,6 +3794,8 @@ out: +@@ -3745,6 +3796,8 @@ out: return ret; #ifdef CONFIG_IPV6_MULTIPLE_TABLES @@ -235,7 +235,7 @@ Signed-off-by: Jonas Gorski out_ip6_prohibit_entry: kfree(net->ipv6.ip6_prohibit_entry); out_ip6_null_entry: -@@ -3760,6 +3813,7 @@ static void __net_exit ip6_route_net_exi +@@ -3762,6 +3815,7 @@ static void __net_exit ip6_route_net_exi #ifdef CONFIG_IPV6_MULTIPLE_TABLES kfree(net->ipv6.ip6_prohibit_entry); kfree(net->ipv6.ip6_blk_hole_entry); @@ -243,7 +243,7 @@ Signed-off-by: Jonas Gorski #endif dst_entries_destroy(&net->ipv6.ip6_dst_ops); } -@@ -3833,6 +3887,9 @@ void __init ip6_route_init_special_entri +@@ -3835,6 +3889,9 @@ void __init ip6_route_init_special_entri init_net.ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev); init_net.ipv6.ip6_blk_hole_entry->dst.dev = init_net.loopback_dev; init_net.ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev); diff --git a/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4019-cm520-79f.dts b/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4019-cm520-79f.dts index 53f1cb75b7..019a8a191b 100644 --- a/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4019-cm520-79f.dts +++ b/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4019-cm520-79f.dts @@ -114,7 +114,7 @@ led_spi { compatible = "spi-gpio"; #address-cells = <1>; - ranges; + #size-cells = <0>; sck-gpios = <&tlmm 40 GPIO_ACTIVE_HIGH>; mosi-gpios = <&tlmm 36 GPIO_ACTIVE_HIGH>; diff --git a/target/linux/ipq40xx/files-4.19/arch/arm/boot/dts/qcom-ipq4019-cm520-79f.dts b/target/linux/ipq40xx/files-4.19/arch/arm/boot/dts/qcom-ipq4019-cm520-79f.dts index 53f1cb75b7..019a8a191b 100644 --- a/target/linux/ipq40xx/files-4.19/arch/arm/boot/dts/qcom-ipq4019-cm520-79f.dts +++ b/target/linux/ipq40xx/files-4.19/arch/arm/boot/dts/qcom-ipq4019-cm520-79f.dts @@ -114,7 +114,7 @@ led_spi { compatible = "spi-gpio"; #address-cells = <1>; - ranges; + #size-cells = <0>; sck-gpios = <&tlmm 40 GPIO_ACTIVE_HIGH>; mosi-gpios = <&tlmm 36 GPIO_ACTIVE_HIGH>; diff --git a/target/linux/ipq40xx/patches-4.14/852-ARM-dts-qcom-ipq4019-Add-SDHCI-VQMMC-LDO-regulator-n.patch b/target/linux/ipq40xx/patches-4.14/852-ARM-dts-qcom-ipq4019-Add-SDHCI-VQMMC-LDO-regulator-n.patch index fdb3f8bbcc..4a530b4266 100644 --- a/target/linux/ipq40xx/patches-4.14/852-ARM-dts-qcom-ipq4019-Add-SDHCI-VQMMC-LDO-regulator-n.patch +++ b/target/linux/ipq40xx/patches-4.14/852-ARM-dts-qcom-ipq4019-Add-SDHCI-VQMMC-LDO-regulator-n.patch @@ -14,7 +14,7 @@ Signed-off-by: Robert Marko --- a/arch/arm/boot/dts/qcom-ipq4019.dtsi +++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi -@@ -216,6 +216,16 @@ +@@ -212,6 +212,16 @@ interrupts = ; }; diff --git a/target/linux/ipq40xx/patches-4.14/995-4g-add-u9300-driver.patch b/target/linux/ipq40xx/patches-4.14/995-4g-add-u9300-driver.patch index 5b81e89375..558893798a 100644 --- a/target/linux/ipq40xx/patches-4.14/995-4g-add-u9300-driver.patch +++ b/target/linux/ipq40xx/patches-4.14/995-4g-add-u9300-driver.patch @@ -1,6 +1,6 @@ --- a/drivers/net/usb/qmi_wwan.c +++ b/drivers/net/usb/qmi_wwan.c -@@ -1290,6 +1290,7 @@ static const struct usb_device_id produc +@@ -1291,6 +1291,7 @@ static const struct usb_device_id produc {QMI_FIXED_INTF(0x03f0, 0x9d1d, 1)}, /* HP lt4120 Snapdragon X5 LTE */ {QMI_FIXED_INTF(0x22de, 0x9061, 3)}, /* WeTelecom WPD-600N */ {QMI_QUIRK_SET_DTR(0x1e0e, 0x9001, 5)}, /* SIMCom 7100E, 7230E, 7600E ++ */ diff --git a/target/linux/ipq40xx/patches-4.19/995-4g-add-u9300-driver.patch b/target/linux/ipq40xx/patches-4.19/995-4g-add-u9300-driver.patch index 6c4d0be0fd..e2d73a5288 100644 --- a/target/linux/ipq40xx/patches-4.19/995-4g-add-u9300-driver.patch +++ b/target/linux/ipq40xx/patches-4.19/995-4g-add-u9300-driver.patch @@ -1,6 +1,6 @@ --- a/drivers/net/usb/qmi_wwan.c +++ b/drivers/net/usb/qmi_wwan.c -@@ -1301,6 +1301,7 @@ static const struct usb_device_id produc +@@ -1302,6 +1302,7 @@ static const struct usb_device_id produc {QMI_FIXED_INTF(0x03f0, 0x9d1d, 1)}, /* HP lt4120 Snapdragon X5 LTE */ {QMI_FIXED_INTF(0x22de, 0x9061, 3)}, /* WeTelecom WPD-600N */ {QMI_QUIRK_SET_DTR(0x1e0e, 0x9001, 5)}, /* SIMCom 7100E, 7230E, 7600E ++ */ diff --git a/target/linux/ipq806x/patches-4.14/995-4g-add-u9300-driver.patch b/target/linux/ipq806x/patches-4.14/995-4g-add-u9300-driver.patch index 5b81e89375..558893798a 100644 --- a/target/linux/ipq806x/patches-4.14/995-4g-add-u9300-driver.patch +++ b/target/linux/ipq806x/patches-4.14/995-4g-add-u9300-driver.patch @@ -1,6 +1,6 @@ --- a/drivers/net/usb/qmi_wwan.c +++ b/drivers/net/usb/qmi_wwan.c -@@ -1290,6 +1290,7 @@ static const struct usb_device_id produc +@@ -1291,6 +1291,7 @@ static const struct usb_device_id produc {QMI_FIXED_INTF(0x03f0, 0x9d1d, 1)}, /* HP lt4120 Snapdragon X5 LTE */ {QMI_FIXED_INTF(0x22de, 0x9061, 3)}, /* WeTelecom WPD-600N */ {QMI_QUIRK_SET_DTR(0x1e0e, 0x9001, 5)}, /* SIMCom 7100E, 7230E, 7600E ++ */ diff --git a/target/linux/ipq806x/patches-4.19/995-4g-add-u9300-driver.patch b/target/linux/ipq806x/patches-4.19/995-4g-add-u9300-driver.patch index 6c4d0be0fd..e2d73a5288 100644 --- a/target/linux/ipq806x/patches-4.19/995-4g-add-u9300-driver.patch +++ b/target/linux/ipq806x/patches-4.19/995-4g-add-u9300-driver.patch @@ -1,6 +1,6 @@ --- a/drivers/net/usb/qmi_wwan.c +++ b/drivers/net/usb/qmi_wwan.c -@@ -1301,6 +1301,7 @@ static const struct usb_device_id produc +@@ -1302,6 +1302,7 @@ static const struct usb_device_id produc {QMI_FIXED_INTF(0x03f0, 0x9d1d, 1)}, /* HP lt4120 Snapdragon X5 LTE */ {QMI_FIXED_INTF(0x22de, 0x9061, 3)}, /* WeTelecom WPD-600N */ {QMI_QUIRK_SET_DTR(0x1e0e, 0x9001, 5)}, /* SIMCom 7100E, 7230E, 7600E ++ */ diff --git a/target/linux/layerscape/patches-4.14/202-core-linux-support-layerscape.patch b/target/linux/layerscape/patches-4.14/202-core-linux-support-layerscape.patch index 571ec4cd11..91f478ad83 100644 --- a/target/linux/layerscape/patches-4.14/202-core-linux-support-layerscape.patch +++ b/target/linux/layerscape/patches-4.14/202-core-linux-support-layerscape.patch @@ -623,7 +623,7 @@ Signed-off-by: Yangbo Lu EXPORT_SYMBOL(dma_noop_ops); --- a/mm/page_alloc.c +++ b/mm/page_alloc.c -@@ -4366,8 +4366,14 @@ void page_frag_free(void *addr) +@@ -4367,8 +4367,14 @@ void page_frag_free(void *addr) { struct page *page = virt_to_head_page(addr); @@ -713,7 +713,7 @@ Signed-off-by: Yangbo Lu } #ifdef CONFIG_NET_INGRESS -@@ -6342,7 +6343,15 @@ static int __netdev_upper_dev_link(struc +@@ -6352,7 +6353,15 @@ static int __netdev_upper_dev_link(struc struct net_device *upper_dev, bool master, void *upper_priv, void *upper_info) { @@ -730,7 +730,7 @@ Signed-off-by: Yangbo Lu int ret = 0; ASSERT_RTNL(); -@@ -6360,12 +6369,7 @@ static int __netdev_upper_dev_link(struc +@@ -6370,12 +6379,7 @@ static int __netdev_upper_dev_link(struc if (master && netdev_master_upper_dev_get(dev)) return -EBUSY; @@ -744,7 +744,7 @@ Signed-off-by: Yangbo Lu &changeupper_info.info); ret = notifier_to_errno(ret); if (ret) -@@ -6377,7 +6381,7 @@ static int __netdev_upper_dev_link(struc +@@ -6387,7 +6391,7 @@ static int __netdev_upper_dev_link(struc return ret; netdev_update_addr_mask(dev); @@ -753,7 +753,7 @@ Signed-off-by: Yangbo Lu &changeupper_info.info); ret = notifier_to_errno(ret); if (ret) -@@ -6441,21 +6445,25 @@ EXPORT_SYMBOL(netdev_master_upper_dev_li +@@ -6451,21 +6455,25 @@ EXPORT_SYMBOL(netdev_master_upper_dev_li void netdev_upper_dev_unlink(struct net_device *dev, struct net_device *upper_dev) { @@ -784,7 +784,7 @@ Signed-off-by: Yangbo Lu &changeupper_info.info); } EXPORT_SYMBOL(netdev_upper_dev_unlink); -@@ -6471,11 +6479,13 @@ EXPORT_SYMBOL(netdev_upper_dev_unlink); +@@ -6481,11 +6489,13 @@ EXPORT_SYMBOL(netdev_upper_dev_unlink); void netdev_bonding_info_change(struct net_device *dev, struct netdev_bonding_info *bonding_info) { @@ -800,7 +800,7 @@ Signed-off-by: Yangbo Lu &info.info); } EXPORT_SYMBOL(netdev_bonding_info_change); -@@ -6601,11 +6611,13 @@ EXPORT_SYMBOL(dev_get_nest_level); +@@ -6611,11 +6621,13 @@ EXPORT_SYMBOL(dev_get_nest_level); void netdev_lower_state_changed(struct net_device *lower_dev, void *lower_state_info) { @@ -816,7 +816,7 @@ Signed-off-by: Yangbo Lu &changelowerstate_info.info); } EXPORT_SYMBOL(netdev_lower_state_changed); -@@ -6896,11 +6908,14 @@ void __dev_notify_flags(struct net_devic +@@ -6906,11 +6918,14 @@ void __dev_notify_flags(struct net_devic if (dev->flags & IFF_UP && (changes & ~(IFF_UP | IFF_PROMISC | IFF_ALLMULTI | IFF_VOLATILE))) { diff --git a/target/linux/sunxi/patches-4.19/036-SWC-add-nanopi-r1-and-duo2.patch b/target/linux/sunxi/patches-4.19/036-SWC-add-nanopi-r1-and-duo2.patch new file mode 100644 index 0000000000..1421bdefb8 --- /dev/null +++ b/target/linux/sunxi/patches-4.19/036-SWC-add-nanopi-r1-and-duo2.patch @@ -0,0 +1,266 @@ +--- a/arch/arm/boot/dts/Makefile ++++ b/arch/arm/boot/dts/Makefile +@@ -1038,6 +1038,8 @@ dtb-$(CONFIG_MACH_SUN8I) += \ + sun8i-h3-nanopi-m1.dtb \ + sun8i-h3-nanopi-m1-plus.dtb \ + sun8i-h3-nanopi-neo.dtb \ ++ sun8i-h3-nanopi-duo2.dtb \ ++ sun8i-h3-nanopi-r1.dtb \ + sun8i-h3-nanopi-neo-air.dtb \ + sun8i-h3-orangepi-2.dtb \ + sun8i-h3-orangepi-lite.dtb \ +--- /dev/null ++++ b/configs/nanopi_r1_defconfig +@@ -0,0 +1,22 @@ ++CONFIG_ARM=y ++CONFIG_ARCH_SUNXI=y ++CONFIG_SPL=y ++CONFIG_MACH_SUN8I_H3=y ++CONFIG_DRAM_CLK=408 ++CONFIG_DRAM_ZQ=3881979 ++CONFIG_DRAM_ODT_EN=y ++CONFIG_MACPWR="PD6" ++# CONFIG_VIDEO_DE2 is not set ++CONFIG_NR_DRAM_BANKS=1 ++# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set ++CONFIG_CONSOLE_MUX=y ++CONFIG_SYS_CLK_FREQ=480000000 ++# CONFIG_CMD_FLASH is not set ++# CONFIG_SPL_DOS_PARTITION is not set ++# CONFIG_SPL_EFI_PARTITION is not set ++CONFIG_DEFAULT_DEVICE_TREE="sun8i-h3-nanopi-r1" ++CONFIG_SUN8I_EMAC=y ++CONFIG_USB_EHCI_HCD=y ++CONFIG_USB_OHCI_HCD=y ++CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y ++CONFIG_MMC_SUNXI_SLOT_EXTRA=2 +--- /dev/null ++++ b/configs/nanopi_duo2_defconfig +@@ -0,0 +1,21 @@ ++CONFIG_ARM=y ++CONFIG_ARCH_SUNXI=y ++CONFIG_SYS_TEXT_BASE=0x4a000000 ++CONFIG_SPL_SPI_FLASH_SUPPORT=y ++CONFIG_MACH_SUN8I_H3=y ++CONFIG_DRAM_CLK=408 ++CONFIG_DRAM_ZQ=3881979 ++CONFIG_DRAM_ODT_EN=y ++# CONFIG_VIDEO_DE2 is not set ++CONFIG_DEVEL=y ++# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set ++CONFIG_CONSOLE_MUX=y ++CONFIG_SPL=y ++CONFIG_SYS_CLK_FREQ=480000000 ++# CONFIG_CMD_IMLS is not set ++# CONFIG_CMD_FLASH is not set ++# CONFIG_CMD_FPGA is not set ++CONFIG_SPL_SPI_SUNXI=y ++CONFIG_SUN8I_EMAC=y ++CONFIG_USB_EHCI_HCD=y ++CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y +--- /dev/null ++++ b/arch/arm/boot/dts/sun8i-h3-nanopi-duo2.dts +@@ -0,0 +1,98 @@ ++/* ++ * adapted by Igor Pecovnik igor@armbian.com ++ * Copyright (C) 2017 Jelle van der Waa ++ * ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively, ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use, ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++/dts-v1/; ++#include "sun8i-h3.dtsi" ++#include "sunxi-common-regulators.dtsi" ++ ++#include ++#include ++ ++/ { ++ model = "FriendlyARM NanoPi DUO 2"; ++ compatible = "friendlyarm,nanopi-duo2", "allwinner,sun8i-h3"; ++ ++ aliases { ++ serial0 = &uart0; ++ }; ++ ++ chosen { ++ stdout-path = "serial0:115200n8"; ++ }; ++ ++ leds { ++ compatible = "gpio-leds"; ++ ++ pwr { ++ label = "nanopi:green:pwr"; ++ gpios = <&r_pio 0 10 GPIO_ACTIVE_HIGH>; /* PL10 */ ++ default-state = "on"; ++ }; ++ ++ status { ++ label = "nanopi:blue:status"; ++ gpios = <&pio 0 10 GPIO_ACTIVE_HIGH>; /* PA10 */ ++ }; ++ }; ++}; ++ ++&mmc0 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc0_pins_a>; ++ vmmc-supply = <®_vcc3v3>; ++ bus-width = <4>; ++ cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; /* PF6 */ ++ cd-inverted; ++ status = "okay"; ++}; ++ ++&uart0 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart0_pins_a>; ++ status = "okay"; ++}; ++ ++&usbphy { ++ /* USB VBUS is always on */ ++ status = "okay"; ++}; +--- /dev/null ++++ b/arch/arm/boot/dts/sun8i-h3-nanopi-r1.dts +@@ -0,0 +1,102 @@ ++/* ++ * Copyright (C) 2019 Igor Pecovnik ++ * ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively, ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use, ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++#include "sun8i-h3-nanopi.dtsi" ++ ++/ { ++ model = "FriendlyARM NanoPi R1"; ++ compatible = "friendlyarm,nanopi-neo", "allwinner,sun8i-h3"; ++ ++ reg_gmac_3v3: gmac-3v3 { ++ compatible = "regulator-fixed"; ++ pinctrl-names = "default"; ++ regulator-name = "gmac-3v3"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ startup-delay-us = <100000>; ++ enable-active-high; ++ gpio = <&pio 3 6 GPIO_ACTIVE_HIGH>; ++ }; ++ ++}; ++ ++&ehci0 { ++ status = "okay"; ++}; ++ ++&pio { ++ gmac_power_pin_nanopi: gmac_power_pin@0 { ++ pins = "PD6"; ++ function = "gpio_out"; ++ }; ++}; ++ ++&ohci0 { ++ status = "okay"; ++}; ++ ++&mmc2 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc2_8bit_pins>; ++ vmmc-supply = <®_vcc3v3>; ++ bus-width = <8>; ++ non-removable; ++ cap-mmc-hw-reset; ++ status = "okay"; ++}; ++ ++&emac { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&emac_rgmii_pins>; ++ phy-supply = <®_gmac_3v3>; ++ phy-handle = <&ext_rgmii_phy>; ++ phy-mode = "rgmii"; ++ ++ status = "okay"; ++}; ++ ++&external_mdio { ++ ext_rgmii_phy: ethernet-phy@1 { ++ compatible = "ethernet-phy-ieee802.3-c22"; ++ reg = <7>; ++ }; ++}; diff --git a/target/linux/sunxi/patches-4.19/230-ARM-dts-friendlyelec-nanopi-r1s-h5.patch b/target/linux/sunxi/patches-4.19/230-ARM-dts-friendlyelec-nanopi-r1s-h5.patch new file mode 100644 index 0000000000..b68f743ae6 --- /dev/null +++ b/target/linux/sunxi/patches-4.19/230-ARM-dts-friendlyelec-nanopi-r1s-h5.patch @@ -0,0 +1,245 @@ +--- a/arch/arm64/boot/dts/allwinner/Makefile ++++ b/arch/arm64/boot/dts/allwinner/Makefile +@@ -11,6 +11,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-t + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-libretech-all-h3-cc.dtb + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo2.dtb + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo-plus2.dtb ++dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-r1s.dtb + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-pc2.dtb + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-prime.dtb + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-zero-plus.dtb +--- /dev/null ++++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s.dts +@@ -0,0 +1,232 @@ ++/* ++ * Copyright (C) 2017 Icenowy Zheng ++ * ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively, ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use, ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++/dts-v1/; ++#include "sun50i-h5.dtsi" ++ ++#include ++#include ++#include ++#include ++/ { ++ model = "FriendlyElec NanoPi-R1S-H5"; ++ compatible = "friendlyelec,nanopi-r1s-h5", "allwinner,sun50i-h5"; ++ ++ aliases { ++ ethernet0 = &emac; ++ serial0 = &uart0; ++ }; ++ ++ ++ chosen { ++ stdout-path = "serial0:115200n8"; ++ }; ++ ++ wifi_pwrseq: wifi_pwrseq { ++ compatible = "mmc-pwrseq-simple"; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&wifi_en_npi>; ++ reset-gpios = <&r_pio 0 7 GPIO_ACTIVE_LOW>; /* PL7 */ ++ post-power-on-delay-ms = <200>; ++ }; ++ ++ r-gpio-keys { ++ compatible = "gpio-keys"; ++ ++ k1@0 { ++ label = "k1"; ++ linux,code = ; ++ gpios = <&r_pio 0 3 GPIO_ACTIVE_LOW>; ++ }; ++ }; ++ ++ leds { ++ compatible = "gpio-leds"; ++ ++ status { ++ label = "status_led"; ++ gpios = <&pio 0 10 GPIO_ACTIVE_HIGH>; ++ linux,default-trigger = "heartbeat"; ++ }; ++ ++ led2 { ++ label = "LED2"; ++ gpios = <&pio 6 11 GPIO_ACTIVE_HIGH>; ++ default-state = "off"; ++ linux,default-trigger = "netdev"; ++ }; ++ ++ led3 { ++ label = "LED3"; ++ gpios = <&pio 0 9 GPIO_ACTIVE_HIGH>; ++ default-state = "off"; ++ linux,default-trigger = "netdev"; ++ }; ++ }; ++ ++ reg_gmac_3v3: gmac-3v3 { ++ compatible = "regulator-fixed"; ++ regulator-name = "gmac-3v3"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ startup-delay-us = <100000>; ++ enable-active-high; ++ gpio = <&pio 3 6 GPIO_ACTIVE_HIGH>; ++ }; ++ ++ reg_vcc3v3: vcc3v3 { ++ compatible = "regulator-fixed"; ++ regulator-name = "vcc3v3"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ }; ++ ++ reg_usb0_vbus: usb0-vbus { ++ compatible = "regulator-fixed"; ++ regulator-name = "usb0-vbus"; ++ regulator-min-microvolt = <5000000>; ++ regulator-max-microvolt = <5000000>; ++ enable-active-high; ++ gpio = <&r_pio 0 2 GPIO_ACTIVE_HIGH>; /* PL2 */ ++ status = "okay"; ++ }; ++}; ++ ++ ++ ++ ++&ehci0 { ++ status = "okay"; ++}; ++ ++&ohci0 { ++ status = "okay"; ++}; ++ ++&ehci1 { ++ status = "okay"; ++}; ++ ++&ohci1 { ++ status = "okay"; ++}; ++ ++&ehci2 { ++ status = "okay"; ++}; ++ ++&ohci2 { ++ status = "okay"; ++}; ++ ++&ehci3 { ++ status = "okay"; ++}; ++ ++&ohci3 { ++ status = "okay"; ++}; ++ ++&emac { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&emac_rgmii_pins>; ++ phy-supply = <®_gmac_3v3>; ++ phy-handle = <&ext_rgmii_phy>; ++ phy-mode = "rgmii"; ++ status = "okay"; ++}; ++ ++&external_mdio { ++ ext_rgmii_phy: ethernet-phy@7 { ++ compatible = "ethernet-phy-ieee802.3-c22"; ++ reg = <7>; ++ }; ++}; ++ ++&mmc0 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin>; ++ vmmc-supply = <®_vcc3v3>; ++ bus-width = <4>; ++ cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */ ++ status = "okay"; ++}; ++ ++&mmc1 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc1_pins_a>; ++ vmmc-supply = <®_vcc3v3>; ++ vqmmc-supply = <®_vcc3v3>; ++ mmc-pwrseq = <&wifi_pwrseq>; ++ bus-width = <4>; ++ non-removable; ++ status = "okay"; ++}; ++&r_pio { ++ wifi_en_npi: wifi_en_pin { ++ pins = "PL7"; ++ function = "gpio_out"; ++ }; ++}; ++ ++&uart0 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart0_pins_a>; ++ status = "okay"; ++}; ++ ++&usb_otg { ++ dr_mode = "peripheral"; ++ status = "okay"; ++}; ++®_usb0_vbus { ++ gpio = <&r_pio 0 2 GPIO_ACTIVE_HIGH>; /* PL2 */ ++ status = "okay"; ++}; ++ ++&usbphy { ++ /* USB Type-A port's VBUS is always on */ ++ usb0_id_det-gpios = <&pio 6 12 GPIO_ACTIVE_HIGH>; /* PG12 */ ++ usb0_vbus-supply = <®_usb0_vbus>; ++ status = "okay"; ++}; ++ diff --git a/tools/squashfs/patches/140-gcc-10-fix.patch b/tools/squashfs/patches/140-gcc-10-fix.patch new file mode 100644 index 0000000000..a02641f307 --- /dev/null +++ b/tools/squashfs/patches/140-gcc-10-fix.patch @@ -0,0 +1,25 @@ +Fixes the following build error with GCC 10: + /usr/bin/ld: read_fs.o:(.bss+0x0): multiple definition of `swap'; mksquashfs.o:(.bss+0x1b2a88): first defined here +And a compile warning. + +--- a/squashfs-tools/read_fs.c ++++ b/squashfs-tools/read_fs.c +@@ -61,7 +61,7 @@ extern int add_file(long long, long long + fprintf(stderr, s, ## args); \ + } while(0) + +-int swap; ++static int swap; + + int read_block(int fd, long long start, long long *next, unsigned char *block, squashfs_super_block *sBlk) + { +--- a/squashfs-tools/mksquashfs.c ++++ b/squashfs-tools/mksquashfs.c +@@ -258,6 +258,7 @@ int read_sort_file(char *filename, int s + void sort_files_and_write(struct dir_info *dir); + struct file_info *duplicate(char *(get_next_file_block)(struct duplicate_buffer_handle *, unsigned int), struct duplicate_buffer_handle *file_start, long long bytes, unsigned int **block_list, long long *start, int blocks, struct fragment **fragment, char *frag_data, int frag_bytes); + struct dir_info *dir_scan1(char *, int (_readdir)(char *, char *, struct dir_info *)); ++int dir_scan2(squashfs_inode *inode, struct dir_info *dir_info); + + #define MKINODE(A) ((squashfs_inode)(((squashfs_inode) inode_bytes << 16) + (((char *)A) - data_cache))) +