diff --git a/include/kernel-version.mk b/include/kernel-version.mk index 83efcee89..e07eeeeab 100644 --- a/include/kernel-version.mk +++ b/include/kernel-version.mk @@ -6,13 +6,13 @@ ifdef CONFIG_TESTING_KERNEL KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER) endif -LINUX_VERSION-4.9 = .202 -LINUX_VERSION-4.14 = .155 -LINUX_VERSION-4.19 = .85 +LINUX_VERSION-4.9 = .205 +LINUX_VERSION-4.14 = .156 +LINUX_VERSION-4.19 = .86 -LINUX_KERNEL_HASH-4.9.202 = 8108ec1cd10fc40821c84e9f087dba10b1767aad66596f4a36925faef55e4ebf -LINUX_KERNEL_HASH-4.14.155 = 77d61979556b81c95b81452fa10e1fe9368cbe2f9f80a13e4669b0464722e481 -LINUX_KERNEL_HASH-4.19.85 = 7bf435970aeeafd46263f49730087a61c4858d8b8fc5a4002ceac971b45f4fb7 +LINUX_KERNEL_HASH-4.9.205 = 98b9e8644706acc0cf51022372bb263b59a1d2bbe3ccd7ce6bd9bc7378c78b05 +LINUX_KERNEL_HASH-4.14.156 = f8889feb0cbd7df36ff35bd4c72c1e2010567621bfcb218fcfa501bc5c7787c0 +LINUX_KERNEL_HASH-4.19.86 = bf2cbba319d43d1bd9e876ac0b55ab83118d1a1e61cce3c929d5371f7567bff6 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1))))))) diff --git a/target/linux/ath79/patches-4.19/910-unaligned_access_hacks.patch b/target/linux/ath79/patches-4.19/910-unaligned_access_hacks.patch index 43c4932f1..ad7b12d65 100644 --- a/target/linux/ath79/patches-4.19/910-unaligned_access_hacks.patch +++ b/target/linux/ath79/patches-4.19/910-unaligned_access_hacks.patch @@ -327,7 +327,7 @@ return neigh_create(&arp_tbl, pkey, dev); --- a/net/ipv4/tcp_output.c +++ b/net/ipv4/tcp_output.c -@@ -461,48 +461,53 @@ static void tcp_options_write(__be32 *pt +@@ -444,48 +444,53 @@ static void tcp_options_write(__be32 *pt u16 options = opts->options; /* mungable copy */ if (unlikely(OPTION_MD5 & options)) { @@ -404,7 +404,7 @@ } if (unlikely(opts->num_sack_blocks)) { -@@ -510,16 +515,17 @@ static void tcp_options_write(__be32 *pt +@@ -493,16 +498,17 @@ static void tcp_options_write(__be32 *pt tp->duplicate_sack : tp->selective_acks; int this_sack; @@ -428,7 +428,7 @@ } tp->rx_opt.dsack = 0; -@@ -532,13 +538,14 @@ static void tcp_options_write(__be32 *pt +@@ -515,13 +521,14 @@ static void tcp_options_write(__be32 *pt if (foc->exp) { len = TCPOLEN_EXP_FASTOPEN_BASE + foc->len; @@ -728,7 +728,7 @@ EXPORT_SYMBOL(xfrm_parse_spi); --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c -@@ -3912,14 +3912,16 @@ static bool tcp_parse_aligned_timestamp( +@@ -3891,14 +3891,16 @@ static bool tcp_parse_aligned_timestamp( { const __be32 *ptr = (const __be32 *)(th + 1); diff --git a/target/linux/brcm2708/patches-4.19/950-0041-bcm2708-framebuffer-driver.patch b/target/linux/brcm2708/patches-4.19/950-0041-bcm2708-framebuffer-driver.patch index c019bc827..7135ff3fc 100644 --- a/target/linux/brcm2708/patches-4.19/950-0041-bcm2708-framebuffer-driver.patch +++ b/target/linux/brcm2708/patches-4.19/950-0041-bcm2708-framebuffer-driver.patch @@ -93,7 +93,7 @@ Signed-off-by: James Hughes --- a/drivers/video/fbdev/Kconfig +++ b/drivers/video/fbdev/Kconfig -@@ -236,6 +236,20 @@ config FB_TILEBLITTING +@@ -242,6 +242,20 @@ config FB_TILEBLITTING comment "Frame buffer hardware drivers" depends on FB diff --git a/target/linux/brcm2708/patches-4.19/950-0064-mfd-Add-Raspberry-Pi-Sense-HAT-core-driver.patch b/target/linux/brcm2708/patches-4.19/950-0064-mfd-Add-Raspberry-Pi-Sense-HAT-core-driver.patch index 00228d643..1a8ab6c44 100644 --- a/target/linux/brcm2708/patches-4.19/950-0064-mfd-Add-Raspberry-Pi-Sense-HAT-core-driver.patch +++ b/target/linux/brcm2708/patches-4.19/950-0064-mfd-Add-Raspberry-Pi-Sense-HAT-core-driver.patch @@ -390,11 +390,10 @@ Subject: [PATCH 064/806] mfd: Add Raspberry Pi Sense HAT core driver + --- a/drivers/video/fbdev/Kconfig +++ b/drivers/video/fbdev/Kconfig -@@ -2355,3 +2355,16 @@ config FB_SM712 - This driver is also available as a module. The module will be +@@ -2350,6 +2350,19 @@ config FB_SM712 called sm712fb. If you want to compile it as a module, say M here and read . -+ + +config FB_RPISENSE + tristate "Raspberry Pi Sense HAT framebuffer" + depends on FB @@ -407,6 +406,10 @@ Subject: [PATCH 064/806] mfd: Add Raspberry Pi Sense HAT core driver + + help + This is the framebuffer driver for the Raspberry Pi Sense HAT ++ + source "drivers/video/fbdev/omap/Kconfig" + source "drivers/video/fbdev/omap2/Kconfig" + source "drivers/video/fbdev/mmp/Kconfig" --- a/drivers/video/fbdev/Makefile +++ b/drivers/video/fbdev/Makefile @@ -138,6 +138,7 @@ obj-$(CONFIG_FB_DA8XX) += da8xx-fb.o diff --git a/target/linux/cns3xxx/patches-4.14/070-i2c_support.patch b/target/linux/cns3xxx/patches-4.14/070-i2c_support.patch index bacec3608..53a6f7ff5 100644 --- a/target/linux/cns3xxx/patches-4.14/070-i2c_support.patch +++ b/target/linux/cns3xxx/patches-4.14/070-i2c_support.patch @@ -1,6 +1,6 @@ --- a/drivers/i2c/busses/Kconfig +++ b/drivers/i2c/busses/Kconfig -@@ -473,6 +473,18 @@ config I2C_CBUS_GPIO +@@ -474,6 +474,18 @@ config I2C_CBUS_GPIO This driver can also be built as a module. If so, the module will be called i2c-cbus-gpio. diff --git a/target/linux/cns3xxx/patches-4.19/070-i2c_support.patch b/target/linux/cns3xxx/patches-4.19/070-i2c_support.patch index 9bfb8444e..95768f64a 100644 --- a/target/linux/cns3xxx/patches-4.19/070-i2c_support.patch +++ b/target/linux/cns3xxx/patches-4.19/070-i2c_support.patch @@ -1,6 +1,6 @@ --- a/drivers/i2c/busses/Kconfig +++ b/drivers/i2c/busses/Kconfig -@@ -459,6 +459,18 @@ config I2C_CBUS_GPIO +@@ -460,6 +460,18 @@ config I2C_CBUS_GPIO This driver can also be built as a module. If so, the module will be called i2c-cbus-gpio. diff --git a/target/linux/gemini/patches-4.14/0002-pinctrl-gemini-Add-missing-functions.patch b/target/linux/gemini/patches-4.14/0002-pinctrl-gemini-Add-missing-functions.patch index 604fee469..d4e93f88b 100644 --- a/target/linux/gemini/patches-4.14/0002-pinctrl-gemini-Add-missing-functions.patch +++ b/target/linux/gemini/patches-4.14/0002-pinctrl-gemini-Add-missing-functions.patch @@ -14,7 +14,7 @@ Signed-off-by: Linus Walleij --- a/drivers/pinctrl/pinctrl-gemini.c +++ b/drivers/pinctrl/pinctrl-gemini.c -@@ -2074,6 +2074,16 @@ static const struct gemini_pmx_func gemi +@@ -2102,6 +2102,16 @@ static const struct gemini_pmx_func gemi .num_groups = ARRAY_SIZE(satagrps), }, { diff --git a/target/linux/gemini/patches-4.14/0005-pinctrl-gemini-Use-generic-DT-parser.patch b/target/linux/gemini/patches-4.14/0005-pinctrl-gemini-Use-generic-DT-parser.patch index 5b0bba1cd..f9debdd90 100644 --- a/target/linux/gemini/patches-4.14/0005-pinctrl-gemini-Use-generic-DT-parser.patch +++ b/target/linux/gemini/patches-4.14/0005-pinctrl-gemini-Use-generic-DT-parser.patch @@ -34,7 +34,7 @@ Signed-off-by: Linus Walleij #include #include #include -@@ -1918,73 +1920,13 @@ static void gemini_pin_dbg_show(struct p +@@ -1946,73 +1948,13 @@ static void gemini_pin_dbg_show(struct p seq_printf(s, " " DRIVER_NAME); } diff --git a/target/linux/gemini/patches-4.14/0006-pinctrl-gemini-Implement-clock-skew-delay-config.patch b/target/linux/gemini/patches-4.14/0006-pinctrl-gemini-Implement-clock-skew-delay-config.patch index 4bff3bce9..87a051e1b 100644 --- a/target/linux/gemini/patches-4.14/0006-pinctrl-gemini-Implement-clock-skew-delay-config.patch +++ b/target/linux/gemini/patches-4.14/0006-pinctrl-gemini-Implement-clock-skew-delay-config.patch @@ -97,7 +97,7 @@ Signed-off-by: Linus Walleij #define GLOBAL_MISC_CTRL 0x30 #define TVC_CLK_PAD_ENABLE BIT(20) #define PCI_CLK_PAD_ENABLE BIT(17) -@@ -1925,7 +1946,7 @@ static const struct pinctrl_ops gemini_p +@@ -1953,7 +1974,7 @@ static const struct pinctrl_ops gemini_p .get_group_name = gemini_get_group_name, .get_group_pins = gemini_get_group_pins, .pin_dbg_show = gemini_pin_dbg_show, @@ -106,7 +106,7 @@ Signed-off-by: Linus Walleij .dt_free_map = pinconf_generic_dt_free_map, }; -@@ -2203,10 +2224,155 @@ static const struct pinmux_ops gemini_pm +@@ -2232,10 +2253,155 @@ static const struct pinmux_ops gemini_pm .set_mux = gemini_pmx_set_mux, }; @@ -262,7 +262,7 @@ Signed-off-by: Linus Walleij .owner = THIS_MODULE, }; -@@ -2249,11 +2415,15 @@ static int gemini_pmx_probe(struct platf +@@ -2278,11 +2444,15 @@ static int gemini_pmx_probe(struct platf val &= 0xffff; if (val == 0x3512) { pmx->is_3512 = true; diff --git a/target/linux/gemini/patches-4.14/0007-pinctrl-gemini-Fix-GMAC-groups.patch b/target/linux/gemini/patches-4.14/0007-pinctrl-gemini-Fix-GMAC-groups.patch index 902168ba6..4a4dae34c 100644 --- a/target/linux/gemini/patches-4.14/0007-pinctrl-gemini-Fix-GMAC-groups.patch +++ b/target/linux/gemini/patches-4.14/0007-pinctrl-gemini-Fix-GMAC-groups.patch @@ -55,7 +55,7 @@ Signed-off-by: Linus Walleij }; static const unsigned int pci_3512_pins[] = { -@@ -668,10 +678,10 @@ static const unsigned int gpio1c_3512_pi +@@ -671,10 +681,10 @@ static const unsigned int gpio1c_3512_pi /* The GPIO1D (28-31) pins overlap with LCD and TVC */ static const unsigned int gpio1d_3512_pins[] = { 246, 319, 301, 283 }; @@ -68,7 +68,7 @@ Signed-off-by: Linus Walleij static const unsigned int gpio2b_3512_pins[] = { 262, 244, 317, 299 }; /* The GPIO2C (8-31) pins overlap with PCI */ -@@ -738,9 +748,16 @@ static const struct gemini_pin_group gem +@@ -741,9 +751,16 @@ static const struct gemini_pin_group gem .num_pins = ARRAY_SIZE(usb_3512_pins), }, { @@ -88,7 +88,7 @@ Signed-off-by: Linus Walleij }, { .name = "pcigrp", -@@ -954,14 +971,15 @@ static const struct gemini_pin_group gem +@@ -963,14 +980,15 @@ static const struct gemini_pin_group gem .name = "gpio2agrp", .pins = gpio2a_3512_pins, .num_pins = ARRAY_SIZE(gpio2a_3512_pins), @@ -107,7 +107,7 @@ Signed-off-by: Linus Walleij }, { .name = "gpio2cgrp", -@@ -1441,9 +1459,12 @@ static const unsigned int usb_3516_pins[ +@@ -1450,9 +1468,12 @@ static const unsigned int usb_3516_pins[ }; /* GMII, ethernet pins */ @@ -123,7 +123,7 @@ Signed-off-by: Linus Walleij }; static const unsigned int pci_3516_pins[] = { -@@ -1585,10 +1606,10 @@ static const unsigned int gpio1c_3516_pi +@@ -1600,10 +1621,10 @@ static const unsigned int gpio1c_3516_pi /* The GPIO1D (28-31) pins overlap with TVC */ static const unsigned int gpio1d_3516_pins[] = { 353, 311, 394, 374 }; @@ -136,7 +136,7 @@ Signed-off-by: Linus Walleij static const unsigned int gpio2b_3516_pins[] = { 391, 351, 310, 371 }; /* The GPIO2C (8-31) pins overlap with PCI */ -@@ -1660,9 +1681,16 @@ static const struct gemini_pin_group gem +@@ -1675,9 +1696,16 @@ static const struct gemini_pin_group gem .num_pins = ARRAY_SIZE(usb_3516_pins), }, { @@ -156,7 +156,7 @@ Signed-off-by: Linus Walleij }, { .name = "pcigrp", -@@ -1861,14 +1889,15 @@ static const struct gemini_pin_group gem +@@ -1889,14 +1917,15 @@ static const struct gemini_pin_group gem .name = "gpio2agrp", .pins = gpio2a_3516_pins, .num_pins = ARRAY_SIZE(gpio2a_3516_pins), @@ -175,7 +175,7 @@ Signed-off-by: Linus Walleij }, { .name = "gpio2cgrp", -@@ -1971,7 +2000,7 @@ static const char * const icegrps[] = { +@@ -1999,7 +2028,7 @@ static const char * const icegrps[] = { static const char * const idegrps[] = { "idegrp" }; static const char * const satagrps[] = { "satagrp" }; static const char * const usbgrps[] = { "usbgrp" }; diff --git a/target/linux/gemini/patches-4.14/0009-pinctrl-gemini-Add-two-missing-GPIO-groups.patch b/target/linux/gemini/patches-4.14/0009-pinctrl-gemini-Add-two-missing-GPIO-groups.patch index 46fc102c1..dfb93f6ad 100644 --- a/target/linux/gemini/patches-4.14/0009-pinctrl-gemini-Add-two-missing-GPIO-groups.patch +++ b/target/linux/gemini/patches-4.14/0009-pinctrl-gemini-Add-two-missing-GPIO-groups.patch @@ -13,7 +13,7 @@ Signed-off-by: Linus Walleij --- a/drivers/pinctrl/pinctrl-gemini.c +++ b/drivers/pinctrl/pinctrl-gemini.c -@@ -2015,7 +2015,8 @@ static const char * const sflashgrps[] = +@@ -2043,7 +2043,8 @@ static const char * const sflashgrps[] = static const char * const gpio0grps[] = { "gpio0agrp", "gpio0bgrp", "gpio0cgrp", "gpio0dgrp", "gpio0egrp", "gpio0fgrp", "gpio0ggrp", "gpio0hgrp", "gpio0igrp", diff --git a/target/linux/gemini/patches-4.14/0010-pinctrl-gemini-Fix-usage-of-3512-groups.patch b/target/linux/gemini/patches-4.14/0010-pinctrl-gemini-Fix-usage-of-3512-groups.patch index 1cab269a6..f01edb9bf 100644 --- a/target/linux/gemini/patches-4.14/0010-pinctrl-gemini-Fix-usage-of-3512-groups.patch +++ b/target/linux/gemini/patches-4.14/0010-pinctrl-gemini-Fix-usage-of-3512-groups.patch @@ -14,7 +14,7 @@ Signed-off-by: Linus Walleij --- a/drivers/pinctrl/pinctrl-gemini.c +++ b/drivers/pinctrl/pinctrl-gemini.c -@@ -2323,7 +2323,7 @@ static const struct gemini_pin_conf *gem +@@ -2352,7 +2352,7 @@ static const struct gemini_pin_conf *gem int i; for (i = 0; i < pmx->nconfs; i++) { diff --git a/target/linux/gemini/patches-4.14/0011-pinctrl-gemini-Support-drive-strength-setting.patch b/target/linux/gemini/patches-4.14/0011-pinctrl-gemini-Support-drive-strength-setting.patch index 5fefece49..e6d153403 100644 --- a/target/linux/gemini/patches-4.14/0011-pinctrl-gemini-Support-drive-strength-setting.patch +++ b/target/linux/gemini/patches-4.14/0011-pinctrl-gemini-Support-drive-strength-setting.patch @@ -54,7 +54,7 @@ Signed-off-by: Linus Walleij #define GLOBAL_GMAC_CTRL_SKEW 0x1c #define GLOBAL_GMAC0_DATA_SKEW 0x20 #define GLOBAL_GMAC1_DATA_SKEW 0x24 -@@ -738,6 +743,7 @@ static const struct gemini_pin_group gem +@@ -741,6 +746,7 @@ static const struct gemini_pin_group gem /* Conflict with all flash usage */ .value = IDE_PADS_ENABLE | NAND_PADS_DISABLE | PFLASH_PADS_DISABLE | SFLASH_PADS_DISABLE, @@ -62,7 +62,7 @@ Signed-off-by: Linus Walleij }, { .name = "satagrp", -@@ -753,6 +759,7 @@ static const struct gemini_pin_group gem +@@ -756,6 +762,7 @@ static const struct gemini_pin_group gem .name = "gmii_gmac0_grp", .pins = gmii_gmac0_3512_pins, .num_pins = ARRAY_SIZE(gmii_gmac0_3512_pins), @@ -70,7 +70,7 @@ Signed-off-by: Linus Walleij }, { .name = "gmii_gmac1_grp", -@@ -760,6 +767,7 @@ static const struct gemini_pin_group gem +@@ -763,6 +770,7 @@ static const struct gemini_pin_group gem .num_pins = ARRAY_SIZE(gmii_gmac1_3512_pins), /* Bring out RGMII on the GMAC1 pins */ .value = GEMINI_GMAC_IOSEL_GMAC0_GMAC1_RGMII, @@ -78,7 +78,7 @@ Signed-off-by: Linus Walleij }, { .name = "pcigrp", -@@ -767,6 +775,7 @@ static const struct gemini_pin_group gem +@@ -770,6 +778,7 @@ static const struct gemini_pin_group gem .num_pins = ARRAY_SIZE(pci_3512_pins), /* Conflict only with GPIO2 */ .value = PCI_PADS_ENABLE | PCI_CLK_PAD_ENABLE, @@ -86,7 +86,7 @@ Signed-off-by: Linus Walleij }, { .name = "lpcgrp", -@@ -1671,6 +1680,7 @@ static const struct gemini_pin_group gem +@@ -1686,6 +1695,7 @@ static const struct gemini_pin_group gem /* Conflict with all flash usage */ .value = IDE_PADS_ENABLE | NAND_PADS_DISABLE | PFLASH_PADS_DISABLE | SFLASH_PADS_DISABLE, @@ -94,7 +94,7 @@ Signed-off-by: Linus Walleij }, { .name = "satagrp", -@@ -1686,6 +1696,7 @@ static const struct gemini_pin_group gem +@@ -1701,6 +1711,7 @@ static const struct gemini_pin_group gem .name = "gmii_gmac0_grp", .pins = gmii_gmac0_3516_pins, .num_pins = ARRAY_SIZE(gmii_gmac0_3516_pins), @@ -102,7 +102,7 @@ Signed-off-by: Linus Walleij }, { .name = "gmii_gmac1_grp", -@@ -1693,6 +1704,7 @@ static const struct gemini_pin_group gem +@@ -1708,6 +1719,7 @@ static const struct gemini_pin_group gem .num_pins = ARRAY_SIZE(gmii_gmac1_3516_pins), /* Bring out RGMII on the GMAC1 pins */ .value = GEMINI_GMAC_IOSEL_GMAC0_GMAC1_RGMII, @@ -110,7 +110,7 @@ Signed-off-by: Linus Walleij }, { .name = "pcigrp", -@@ -1700,6 +1712,7 @@ static const struct gemini_pin_group gem +@@ -1715,6 +1727,7 @@ static const struct gemini_pin_group gem .num_pins = ARRAY_SIZE(pci_3516_pins), /* Conflict only with GPIO2 */ .value = PCI_PADS_ENABLE | PCI_CLK_PAD_ENABLE, @@ -118,7 +118,7 @@ Signed-off-by: Linus Walleij }, { .name = "lpcgrp", -@@ -2394,9 +2407,77 @@ static int gemini_pinconf_set(struct pin +@@ -2423,9 +2436,77 @@ static int gemini_pinconf_set(struct pin return ret; } diff --git a/target/linux/gemini/patches-4.19/0001-pinctrl-gemini-Mask-and-set-properly.patch b/target/linux/gemini/patches-4.19/0001-pinctrl-gemini-Mask-and-set-properly.patch deleted file mode 100644 index 3bf9341e3..000000000 --- a/target/linux/gemini/patches-4.19/0001-pinctrl-gemini-Mask-and-set-properly.patch +++ /dev/null @@ -1,31 +0,0 @@ -From f8ac3d3472a8dc99c8647a637611d146d88be8cb Mon Sep 17 00:00:00 2001 -From: Linus Walleij -Date: Tue, 9 Oct 2018 10:09:14 +0200 -Subject: [PATCH 01/18] pinctrl: gemini: Mask and set properly - -The code was written under the assumption that the -regmap_update_bits() would mask the bits in the mask and -set the bits in the value. - -It missed the points that it will not set bits in the value -unless these are also masked in the mask. Set value bits -that are not in the mask will simply be ignored. - -Fixes: 06351d133dea ("pinctrl: add a Gemini SoC pin controller") -Signed-off-by: Linus Walleij ---- - drivers/pinctrl/pinctrl-gemini.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - ---- a/drivers/pinctrl/pinctrl-gemini.c -+++ b/drivers/pinctrl/pinctrl-gemini.c -@@ -2184,7 +2184,8 @@ static int gemini_pmx_set_mux(struct pin - func->name, grp->name); - - regmap_read(pmx->map, GLOBAL_MISC_CTRL, &before); -- regmap_update_bits(pmx->map, GLOBAL_MISC_CTRL, grp->mask, -+ regmap_update_bits(pmx->map, GLOBAL_MISC_CTRL, -+ grp->mask | grp->value, - grp->value); - regmap_read(pmx->map, GLOBAL_MISC_CTRL, &after); - diff --git a/target/linux/gemini/patches-4.19/0002-pinctrl-gemini-Fix-up-TVC-clock-group.patch b/target/linux/gemini/patches-4.19/0002-pinctrl-gemini-Fix-up-TVC-clock-group.patch deleted file mode 100644 index 64172acb4..000000000 --- a/target/linux/gemini/patches-4.19/0002-pinctrl-gemini-Fix-up-TVC-clock-group.patch +++ /dev/null @@ -1,141 +0,0 @@ -From ce81398dccb984855de606b75db25eddecdaa9e5 Mon Sep 17 00:00:00 2001 -From: Linus Walleij -Date: Wed, 10 Oct 2018 20:25:39 +0200 -Subject: [PATCH 02/18] pinctrl: gemini: Fix up TVC clock group - -The previous fix made the TVC clock get muxed in on the -D-Link DIR-685 instead of giving nagging warnings of this -not working. Not good. We didn't want that, as it breaks -video. - -Create a specific group for the TVC CLK, and break out -a specific GPIO group for it on the SL3516 so we can use -that line as GPIO if we don't need the TVC CLK. - -Fixes: d17f477c5bc6 ("pinctrl: gemini: Mask and set properly") -Signed-off-by: Linus Walleij ---- - drivers/pinctrl/pinctrl-gemini.c | 44 ++++++++++++++++++++++++++------ - 1 file changed, 36 insertions(+), 8 deletions(-) - ---- a/drivers/pinctrl/pinctrl-gemini.c -+++ b/drivers/pinctrl/pinctrl-gemini.c -@@ -591,13 +591,16 @@ static const unsigned int tvc_3512_pins[ - 319, /* TVC_DATA[1] */ - 301, /* TVC_DATA[2] */ - 283, /* TVC_DATA[3] */ -- 265, /* TVC_CLK */ - 320, /* TVC_DATA[4] */ - 302, /* TVC_DATA[5] */ - 284, /* TVC_DATA[6] */ - 266, /* TVC_DATA[7] */ - }; - -+static const unsigned int tvc_clk_3512_pins[] = { -+ 265, /* TVC_CLK */ -+}; -+ - /* NAND flash pins */ - static const unsigned int nflash_3512_pins[] = { - 199, 200, 201, 202, 216, 217, 218, 219, 220, 234, 235, 236, 237, 252, -@@ -629,7 +632,7 @@ static const unsigned int pflash_3512_pi - /* Serial flash pins CE0, CE1, DI, DO, CK */ - static const unsigned int sflash_3512_pins[] = { 230, 231, 232, 233, 211 }; - --/* The GPIO0A (0) pin overlap with TVC and extended parallel flash */ -+/* The GPIO0A (0) pin overlap with TVC CLK and extended parallel flash */ - static const unsigned int gpio0a_3512_pins[] = { 265 }; - - /* The GPIO0B (1-4) pins overlap with TVC and ICE */ -@@ -823,7 +826,13 @@ static const struct gemini_pin_group gem - .num_pins = ARRAY_SIZE(tvc_3512_pins), - /* Conflict with character LCD and ICE */ - .mask = LCD_PADS_ENABLE, -- .value = TVC_PADS_ENABLE | TVC_CLK_PAD_ENABLE, -+ .value = TVC_PADS_ENABLE, -+ }, -+ { -+ .name = "tvcclkgrp", -+ .pins = tvc_clk_3512_pins, -+ .num_pins = ARRAY_SIZE(tvc_clk_3512_pins), -+ .value = TVC_CLK_PAD_ENABLE, - }, - /* - * The construction is done such that it is possible to use a serial -@@ -860,8 +869,8 @@ static const struct gemini_pin_group gem - .name = "gpio0agrp", - .pins = gpio0a_3512_pins, - .num_pins = ARRAY_SIZE(gpio0a_3512_pins), -- /* Conflict with TVC */ -- .mask = TVC_PADS_ENABLE, -+ /* Conflict with TVC CLK */ -+ .mask = TVC_CLK_PAD_ENABLE, - }, - { - .name = "gpio0bgrp", -@@ -1531,13 +1540,16 @@ static const unsigned int tvc_3516_pins[ - 311, /* TVC_DATA[1] */ - 394, /* TVC_DATA[2] */ - 374, /* TVC_DATA[3] */ -- 333, /* TVC_CLK */ - 354, /* TVC_DATA[4] */ - 395, /* TVC_DATA[5] */ - 312, /* TVC_DATA[6] */ - 334, /* TVC_DATA[7] */ - }; - -+static const unsigned int tvc_clk_3516_pins[] = { -+ 333, /* TVC_CLK */ -+}; -+ - /* NAND flash pins */ - static const unsigned int nflash_3516_pins[] = { - 243, 260, 261, 224, 280, 262, 281, 264, 300, 263, 282, 301, 320, 283, -@@ -1570,7 +1582,7 @@ static const unsigned int pflash_3516_pi - static const unsigned int sflash_3516_pins[] = { 296, 338, 295, 359, 339 }; - - /* The GPIO0A (0-4) pins overlap with TVC and extended parallel flash */ --static const unsigned int gpio0a_3516_pins[] = { 333, 354, 395, 312, 334 }; -+static const unsigned int gpio0a_3516_pins[] = { 354, 395, 312, 334 }; - - /* The GPIO0B (5-7) pins overlap with ICE */ - static const unsigned int gpio0b_3516_pins[] = { 375, 396, 376 }; -@@ -1602,6 +1614,9 @@ static const unsigned int gpio0j_3516_pi - /* The GPIO0K (30,31) pins overlap with NAND flash */ - static const unsigned int gpio0k_3516_pins[] = { 275, 298 }; - -+/* The GPIO0L (0) pins overlap with TVC_CLK */ -+static const unsigned int gpio0l_3516_pins[] = { 333 }; -+ - /* The GPIO1A (0-4) pins that overlap with IDE and parallel flash */ - static const unsigned int gpio1a_3516_pins[] = { 221, 200, 222, 201, 220 }; - -@@ -1761,7 +1776,13 @@ static const struct gemini_pin_group gem - .num_pins = ARRAY_SIZE(tvc_3516_pins), - /* Conflict with character LCD */ - .mask = LCD_PADS_ENABLE, -- .value = TVC_PADS_ENABLE | TVC_CLK_PAD_ENABLE, -+ .value = TVC_PADS_ENABLE, -+ }, -+ { -+ .name = "tvcclkgrp", -+ .pins = tvc_clk_3516_pins, -+ .num_pins = ARRAY_SIZE(tvc_clk_3516_pins), -+ .value = TVC_CLK_PAD_ENABLE, - }, - /* - * The construction is done such that it is possible to use a serial -@@ -1873,6 +1894,13 @@ static const struct gemini_pin_group gem - .value = PFLASH_PADS_DISABLE | NAND_PADS_DISABLE, - }, - { -+ .name = "gpio0lgrp", -+ .pins = gpio0l_3516_pins, -+ .num_pins = ARRAY_SIZE(gpio0l_3516_pins), -+ /* Conflict with TVE CLK */ -+ .mask = TVC_CLK_PAD_ENABLE, -+ }, -+ { - .name = "gpio1agrp", - .pins = gpio1a_3516_pins, - .num_pins = ARRAY_SIZE(gpio1a_3516_pins), diff --git a/target/linux/gemini/patches-4.19/0005-mtd-physmap_of-Move-custom-initialization.patch b/target/linux/gemini/patches-4.19/0005-mtd-physmap_of-Move-custom-initialization.patch index 5462844a7..1af8a0399 100644 --- a/target/linux/gemini/patches-4.19/0005-mtd-physmap_of-Move-custom-initialization.patch +++ b/target/linux/gemini/patches-4.19/0005-mtd-physmap_of-Move-custom-initialization.patch @@ -16,32 +16,22 @@ Signed-off-by: Linus Walleij --- a/drivers/mtd/maps/physmap_of_core.c +++ b/drivers/mtd/maps/physmap_of_core.c -@@ -239,13 +239,6 @@ static int of_flash_probe(struct platfor +@@ -231,6 +231,9 @@ static int of_flash_probe(struct platfor else if (of_property_read_bool(dp, "little-endian")) info->list[i].map.swap = CFI_LITTLE_ENDIAN; -- err = of_flash_probe_gemini(dev, dp, &info->list[i].map); -- if (err) -- goto err_out; -- err = of_flash_probe_versatile(dev, dp, &info->list[i].map); -- if (err) -- goto err_out; -- - err = -ENOMEM; - info->list[i].map.virt = ioremap(info->list[i].map.phys, - info->list[i].map.size); -@@ -257,6 +250,14 @@ static int of_flash_probe(struct platfor - - simple_map_init(&info->list[i].map); - -+ /* Variants can override map accessors */ -+ err = of_flash_probe_gemini(dev, dp, &info->list[i].map); -+ if (err) -+ goto err_out; -+ err = of_flash_probe_versatile(dev, dp, &info->list[i].map); -+ if (err) -+ goto err_out; ++ simple_map_init(&info->list[i].map); + ++ /* Variants can override map accessors */ + err = of_flash_probe_gemini(dev, dp, &info->list[i].map); + if (err) + goto err_out; +@@ -238,8 +241,6 @@ static int of_flash_probe(struct platfor + if (err) + goto err_out; + +- simple_map_init(&info->list[i].map); +- /* * On some platforms (e.g. MPC5200) a direct 1:1 mapping * may cause problems with JFFS2 usage, as the local bus (LPB) diff --git a/target/linux/generic/backport-4.14/303-v4.16-netfilter-nf_tables-remove-multihook-chains-and-fami.patch b/target/linux/generic/backport-4.14/303-v4.16-netfilter-nf_tables-remove-multihook-chains-and-fami.patch index ed33b2fc5..a2388a1b9 100644 --- a/target/linux/generic/backport-4.14/303-v4.16-netfilter-nf_tables-remove-multihook-chains-and-fami.patch +++ b/target/linux/generic/backport-4.14/303-v4.16-netfilter-nf_tables-remove-multihook-chains-and-fami.patch @@ -361,7 +361,7 @@ Signed-off-by: Pablo Neira Ayuso par->hook_mask = 1 << ops->hooknum; } else { -@@ -318,7 +318,7 @@ static int nft_target_validate(const str +@@ -337,7 +337,7 @@ static int nft_target_validate(const str if (nft_is_base_chain(ctx->chain)) { const struct nft_base_chain *basechain = nft_base_chain(ctx->chain); @@ -370,7 +370,7 @@ Signed-off-by: Pablo Neira Ayuso hook_mask = 1 << ops->hooknum; if (target->hooks && !(hook_mask & target->hooks)) -@@ -415,7 +415,7 @@ nft_match_set_mtchk_param(struct xt_mtch +@@ -434,7 +434,7 @@ nft_match_set_mtchk_param(struct xt_mtch if (nft_is_base_chain(ctx->chain)) { const struct nft_base_chain *basechain = nft_base_chain(ctx->chain); @@ -379,7 +379,7 @@ Signed-off-by: Pablo Neira Ayuso par->hook_mask = 1 << ops->hooknum; } else { -@@ -566,7 +566,7 @@ static int nft_match_validate(const stru +@@ -586,7 +586,7 @@ static int nft_match_validate(const stru if (nft_is_base_chain(ctx->chain)) { const struct nft_base_chain *basechain = nft_base_chain(ctx->chain); diff --git a/target/linux/generic/backport-4.14/335-v4.16-netfilter-nf_tables-add-single-table-list-for-all-fa.patch b/target/linux/generic/backport-4.14/335-v4.16-netfilter-nf_tables-add-single-table-list-for-all-fa.patch index a577e621b..9108a5e4d 100644 --- a/target/linux/generic/backport-4.14/335-v4.16-netfilter-nf_tables-add-single-table-list-for-all-fa.patch +++ b/target/linux/generic/backport-4.14/335-v4.16-netfilter-nf_tables-add-single-table-list-for-all-fa.patch @@ -1237,7 +1237,7 @@ Signed-off-by: Pablo Neira Ayuso if (par.target->destroy != NULL) par.target->destroy(&par); -@@ -390,7 +390,7 @@ nft_match_set_mtchk_param(struct xt_mtch +@@ -409,7 +409,7 @@ nft_match_set_mtchk_param(struct xt_mtch { par->net = ctx->net; par->table = ctx->table->name; @@ -1246,7 +1246,7 @@ Signed-off-by: Pablo Neira Ayuso case AF_INET: entry->e4.ip.proto = proto; entry->e4.ip.invflags = inv ? IPT_INV_PROTO : 0; -@@ -421,7 +421,7 @@ nft_match_set_mtchk_param(struct xt_mtch +@@ -440,7 +440,7 @@ nft_match_set_mtchk_param(struct xt_mtch } else { par->hook_mask = 0; } @@ -1255,7 +1255,7 @@ Signed-off-by: Pablo Neira Ayuso par->nft_compat = true; } -@@ -504,7 +504,7 @@ __nft_match_destroy(const struct nft_ctx +@@ -523,7 +523,7 @@ __nft_match_destroy(const struct nft_ctx par.net = ctx->net; par.match = match; par.matchinfo = info; @@ -1264,7 +1264,7 @@ Signed-off-by: Pablo Neira Ayuso if (par.match->destroy != NULL) par.match->destroy(&par); -@@ -734,7 +734,7 @@ nft_match_select_ops(const struct nft_ct +@@ -754,7 +754,7 @@ nft_match_select_ops(const struct nft_ct mt_name = nla_data(tb[NFTA_MATCH_NAME]); rev = ntohl(nla_get_be32(tb[NFTA_MATCH_REV])); @@ -1273,7 +1273,7 @@ Signed-off-by: Pablo Neira Ayuso /* Re-use the existing match if it's already loaded. */ list_for_each_entry(nft_match, &nft_match_list, head) { -@@ -825,7 +825,7 @@ nft_target_select_ops(const struct nft_c +@@ -845,7 +845,7 @@ nft_target_select_ops(const struct nft_c tg_name = nla_data(tb[NFTA_TARGET_NAME]); rev = ntohl(nla_get_be32(tb[NFTA_TARGET_REV])); diff --git a/target/linux/generic/backport-4.19/200-v5.2-usb-dwc2-Set-lpm-mode-parameters-depend-on-HW-configuration.patch b/target/linux/generic/backport-4.19/200-v5.2-usb-dwc2-Set-lpm-mode-parameters-depend-on-HW-configuration.patch index b41bbf539..ed4aadf2b 100644 --- a/target/linux/generic/backport-4.19/200-v5.2-usb-dwc2-Set-lpm-mode-parameters-depend-on-HW-configuration.patch +++ b/target/linux/generic/backport-4.19/200-v5.2-usb-dwc2-Set-lpm-mode-parameters-depend-on-HW-configuration.patch @@ -17,7 +17,7 @@ Signed-off-by: Felipe Balbi --- a/drivers/usb/dwc2/params.c +++ b/drivers/usb/dwc2/params.c -@@ -272,6 +272,23 @@ static void dwc2_set_param_power_down(st +@@ -273,6 +273,23 @@ static void dwc2_set_param_power_down(st hsotg->params.power_down = val; } @@ -41,7 +41,7 @@ Signed-off-by: Felipe Balbi /** * dwc2_set_default_params() - Set all core parameters to their * auto-detected default values. -@@ -290,6 +307,7 @@ static void dwc2_set_default_params(stru +@@ -291,6 +308,7 @@ static void dwc2_set_default_params(stru dwc2_set_param_speed(hsotg); dwc2_set_param_phy_utmi_width(hsotg); dwc2_set_param_power_down(hsotg); @@ -49,7 +49,7 @@ Signed-off-by: Felipe Balbi p->phy_ulpi_ddr = false; p->phy_ulpi_ext_vbus = false; -@@ -302,11 +320,6 @@ static void dwc2_set_default_params(stru +@@ -303,11 +321,6 @@ static void dwc2_set_default_params(stru p->reload_ctl = (hw->snpsid >= DWC2_CORE_REV_2_92a); p->uframe_sched = true; p->external_id_pin_ctl = false; diff --git a/target/linux/generic/backport-4.9/090-net-generalize-napi_complete_done.patch b/target/linux/generic/backport-4.9/090-net-generalize-napi_complete_done.patch index 4fd101db2..6052bf577 100644 --- a/target/linux/generic/backport-4.9/090-net-generalize-napi_complete_done.patch +++ b/target/linux/generic/backport-4.9/090-net-generalize-napi_complete_done.patch @@ -1150,7 +1150,7 @@ Signed-off-by: David S. Miller return work_done; --- a/drivers/net/ethernet/ti/cpsw.c +++ b/drivers/net/ethernet/ti/cpsw.c -@@ -843,7 +843,7 @@ static int cpsw_rx_poll(struct napi_stru +@@ -844,7 +844,7 @@ static int cpsw_rx_poll(struct napi_stru } if (num_rx < budget) { @@ -1227,7 +1227,7 @@ Signed-off-by: David S. Miller } --- a/drivers/net/ethernet/toshiba/tc35815.c +++ b/drivers/net/ethernet/toshiba/tc35815.c -@@ -1639,7 +1639,7 @@ static int tc35815_poll(struct napi_stru +@@ -1641,7 +1641,7 @@ static int tc35815_poll(struct napi_stru spin_unlock(&lp->rx_lock); if (received < budget) { @@ -1346,7 +1346,7 @@ Signed-off-by: David S. Miller --- a/drivers/net/wireless/ath/ath10k/pci.c +++ b/drivers/net/wireless/ath/ath10k/pci.c -@@ -2804,7 +2804,7 @@ static int ath10k_pci_napi_poll(struct n +@@ -2803,7 +2803,7 @@ static int ath10k_pci_napi_poll(struct n done = ath10k_htt_txrx_compl_task(ar, budget); if (done < budget) { diff --git a/target/linux/generic/hack-4.19/661-use_fq_codel_by_default.patch b/target/linux/generic/hack-4.19/661-use_fq_codel_by_default.patch index 806e0f3c2..71a26dba4 100644 --- a/target/linux/generic/hack-4.19/661-use_fq_codel_by_default.patch +++ b/target/linux/generic/hack-4.19/661-use_fq_codel_by_default.patch @@ -83,7 +83,7 @@ Signed-off-by: Felix Fietkau EXPORT_SYMBOL(default_qdisc_ops); /* Main transmission queue. */ -@@ -1013,7 +1013,7 @@ static void attach_one_default_qdisc(str +@@ -1025,7 +1025,7 @@ static void attach_one_default_qdisc(str void *_unused) { struct Qdisc *qdisc; diff --git a/target/linux/generic/hack-4.19/662-remove_pfifo_fast.patch b/target/linux/generic/hack-4.19/662-remove_pfifo_fast.patch index d545cdf7e..e49507a59 100644 --- a/target/linux/generic/hack-4.19/662-remove_pfifo_fast.patch +++ b/target/linux/generic/hack-4.19/662-remove_pfifo_fast.patch @@ -10,7 +10,7 @@ Signed-off-by: Felix Fietkau --- a/net/sched/sch_generic.c +++ b/net/sched/sch_generic.c -@@ -600,207 +600,6 @@ struct Qdisc_ops noqueue_qdisc_ops __rea +@@ -612,207 +612,6 @@ struct Qdisc_ops noqueue_qdisc_ops __rea .owner = THIS_MODULE, }; diff --git a/target/linux/generic/pending-4.14/161-mtd-part-add-generic-parsing-of-linux-part-probe.patch b/target/linux/generic/pending-4.14/161-mtd-part-add-generic-parsing-of-linux-part-probe.patch index 9625a5112..5e70756c4 100644 --- a/target/linux/generic/pending-4.14/161-mtd-part-add-generic-parsing-of-linux-part-probe.patch +++ b/target/linux/generic/pending-4.14/161-mtd-part-add-generic-parsing-of-linux-part-probe.patch @@ -46,7 +46,7 @@ Signed-off-by: Hauke Mehrtens errors per {size} bytes". --- a/drivers/mtd/maps/physmap_of_core.c +++ b/drivers/mtd/maps/physmap_of_core.c -@@ -114,37 +114,9 @@ static struct mtd_info *obsolete_probe(s +@@ -105,37 +105,9 @@ static struct mtd_info *obsolete_probe(s static const char * const part_probe_types_def[] = { "cmdlinepart", "RedBoot", "ofpart", "ofoldpart", NULL }; @@ -84,7 +84,7 @@ Signed-off-by: Hauke Mehrtens const struct of_device_id *match; struct device_node *dp = dev->dev.of_node; struct resource res; -@@ -310,14 +282,8 @@ static int of_flash_probe(struct platfor +@@ -293,14 +265,8 @@ static int of_flash_probe(struct platfor info->cmtd->dev.parent = &dev->dev; mtd_set_of_node(info->cmtd, dp); diff --git a/target/linux/generic/pending-4.19/220-optimize_inlining.patch b/target/linux/generic/pending-4.19/220-optimize_inlining.patch index e6a9c19ca..ae032709d 100644 --- a/target/linux/generic/pending-4.19/220-optimize_inlining.patch +++ b/target/linux/generic/pending-4.19/220-optimize_inlining.patch @@ -122,7 +122,7 @@ { int set; -@@ -982,7 +982,7 @@ void radix__tlb_flush(struct mmu_gather +@@ -983,7 +983,7 @@ void radix__tlb_flush(struct mmu_gather tlb->need_flush_all = 0; } diff --git a/target/linux/generic/pending-4.19/680-NET-skip-GRO-for-foreign-MAC-addresses.patch b/target/linux/generic/pending-4.19/680-NET-skip-GRO-for-foreign-MAC-addresses.patch index f7803f0e3..5ce652ba5 100644 --- a/target/linux/generic/pending-4.19/680-NET-skip-GRO-for-foreign-MAC-addresses.patch +++ b/target/linux/generic/pending-4.19/680-NET-skip-GRO-for-foreign-MAC-addresses.patch @@ -32,7 +32,7 @@ Signed-off-by: Felix Fietkau __u16 tc_index; /* traffic control index */ --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -5468,6 +5468,9 @@ static enum gro_result dev_gro_receive(s +@@ -5482,6 +5482,9 @@ static enum gro_result dev_gro_receive(s int same_flow; int grow; @@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau if (netif_elide_gro(skb->dev)) goto normal; -@@ -6962,6 +6965,48 @@ static void __netdev_adjacent_dev_unlink +@@ -6976,6 +6979,48 @@ static void __netdev_adjacent_dev_unlink &upper_dev->adj_list.lower); } @@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau static int __netdev_upper_dev_link(struct net_device *dev, struct net_device *upper_dev, bool master, void *upper_priv, void *upper_info, -@@ -7009,6 +7054,7 @@ static int __netdev_upper_dev_link(struc +@@ -7023,6 +7068,7 @@ static int __netdev_upper_dev_link(struc if (ret) return ret; @@ -99,7 +99,7 @@ Signed-off-by: Felix Fietkau ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, &changeupper_info.info); ret = notifier_to_errno(ret); -@@ -7095,6 +7141,7 @@ void netdev_upper_dev_unlink(struct net_ +@@ -7109,6 +7155,7 @@ void netdev_upper_dev_unlink(struct net_ __netdev_adjacent_dev_unlink_neighbour(dev, upper_dev); @@ -107,7 +107,7 @@ Signed-off-by: Felix Fietkau call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, &changeupper_info.info); } -@@ -7718,6 +7765,7 @@ int dev_set_mac_address(struct net_devic +@@ -7732,6 +7779,7 @@ int dev_set_mac_address(struct net_devic if (err) return err; dev->addr_assign_type = NET_ADDR_SET; diff --git a/target/linux/generic/pending-4.9/161-mtd-part-add-generic-parsing-of-linux-part-probe.patch b/target/linux/generic/pending-4.9/161-mtd-part-add-generic-parsing-of-linux-part-probe.patch index 1b6290fca..64ed23170 100644 --- a/target/linux/generic/pending-4.9/161-mtd-part-add-generic-parsing-of-linux-part-probe.patch +++ b/target/linux/generic/pending-4.9/161-mtd-part-add-generic-parsing-of-linux-part-probe.patch @@ -40,7 +40,7 @@ Signed-off-by: Hauke Mehrtens errors per {size} bytes". --- a/drivers/mtd/maps/physmap_of.c +++ b/drivers/mtd/maps/physmap_of.c -@@ -113,47 +113,9 @@ static struct mtd_info *obsolete_probe(s +@@ -104,47 +104,9 @@ static struct mtd_info *obsolete_probe(s static const char * const part_probe_types_def[] = { "cmdlinepart", "RedBoot", "ofpart", "ofoldpart", NULL }; @@ -88,7 +88,7 @@ Signed-off-by: Hauke Mehrtens const struct of_device_id *match; struct device_node *dp = dev->dev.of_node; struct resource res; -@@ -317,14 +279,8 @@ static int of_flash_probe(struct platfor +@@ -300,14 +262,8 @@ static int of_flash_probe(struct platfor info->cmtd->dev.parent = &dev->dev; mtd_set_of_node(info->cmtd, dp); diff --git a/target/linux/ipq806x/patches-4.14/0048-PM-OPP-HACK-Allow-to-set-regulator-without-opp_list.patch b/target/linux/ipq806x/patches-4.14/0048-PM-OPP-HACK-Allow-to-set-regulator-without-opp_list.patch index cca2fcaa4..7c78d444f 100644 --- a/target/linux/ipq806x/patches-4.14/0048-PM-OPP-HACK-Allow-to-set-regulator-without-opp_list.patch +++ b/target/linux/ipq806x/patches-4.14/0048-PM-OPP-HACK-Allow-to-set-regulator-without-opp_list.patch @@ -10,7 +10,7 @@ Signed-off-by: Georgi Djakov --- a/drivers/base/power/opp/core.c +++ b/drivers/base/power/opp/core.c -@@ -1292,11 +1292,13 @@ struct opp_table *dev_pm_opp_set_regulat +@@ -1280,11 +1280,13 @@ struct opp_table *dev_pm_opp_set_regulat if (!opp_table) return ERR_PTR(-ENOMEM); diff --git a/target/linux/ipq806x/patches-4.14/0049-PM-OPP-Support-adjusting-OPP-voltages-at-runtime.patch b/target/linux/ipq806x/patches-4.14/0049-PM-OPP-Support-adjusting-OPP-voltages-at-runtime.patch index 9f7c8185e..ef48e9f01 100644 --- a/target/linux/ipq806x/patches-4.14/0049-PM-OPP-Support-adjusting-OPP-voltages-at-runtime.patch +++ b/target/linux/ipq806x/patches-4.14/0049-PM-OPP-Support-adjusting-OPP-voltages-at-runtime.patch @@ -27,7 +27,7 @@ Signed-off-by: Georgi Djakov --- a/drivers/base/power/opp/core.c +++ b/drivers/base/power/opp/core.c -@@ -1620,6 +1620,83 @@ put_table: +@@ -1608,6 +1608,83 @@ put_table: } /** diff --git a/target/linux/ipq806x/patches-4.14/0051-PM-OPP-Add-a-helper-to-get-an-opp-regulator-for-devi.patch b/target/linux/ipq806x/patches-4.14/0051-PM-OPP-Add-a-helper-to-get-an-opp-regulator-for-devi.patch index 7819dc0dd..22ae30980 100644 --- a/target/linux/ipq806x/patches-4.14/0051-PM-OPP-Add-a-helper-to-get-an-opp-regulator-for-devi.patch +++ b/target/linux/ipq806x/patches-4.14/0051-PM-OPP-Add-a-helper-to-get-an-opp-regulator-for-devi.patch @@ -12,7 +12,7 @@ Signed-off-by: Georgi Djakov --- a/drivers/base/power/opp/core.c +++ b/drivers/base/power/opp/core.c -@@ -131,6 +131,27 @@ unsigned long dev_pm_opp_get_freq(struct +@@ -126,6 +126,27 @@ unsigned long dev_pm_opp_get_freq(struct } EXPORT_SYMBOL_GPL(dev_pm_opp_get_freq); diff --git a/target/linux/ipq806x/patches-4.14/0052-PM-OPP-Update-the-voltage-tolerance-when-adjusting-t.patch b/target/linux/ipq806x/patches-4.14/0052-PM-OPP-Update-the-voltage-tolerance-when-adjusting-t.patch index 3105b4ea1..7cde22be0 100644 --- a/target/linux/ipq806x/patches-4.14/0052-PM-OPP-Update-the-voltage-tolerance-when-adjusting-t.patch +++ b/target/linux/ipq806x/patches-4.14/0052-PM-OPP-Update-the-voltage-tolerance-when-adjusting-t.patch @@ -17,7 +17,7 @@ Signed-off-by: Georgi Djakov --- a/drivers/base/power/opp/core.c +++ b/drivers/base/power/opp/core.c -@@ -1664,6 +1664,7 @@ int dev_pm_opp_adjust_voltage(struct dev +@@ -1652,6 +1652,7 @@ int dev_pm_opp_adjust_voltage(struct dev struct opp_table *opp_table; struct dev_pm_opp *new_opp, *tmp_opp, *opp = ERR_PTR(-ENODEV); int r = 0; @@ -25,7 +25,7 @@ Signed-off-by: Georgi Djakov /* keep the node allocated */ new_opp = kmalloc(sizeof(*new_opp), GFP_KERNEL); -@@ -1700,6 +1701,10 @@ int dev_pm_opp_adjust_voltage(struct dev +@@ -1688,6 +1689,10 @@ int dev_pm_opp_adjust_voltage(struct dev /* plug in new node */ new_opp->supplies[0].u_volt = u_volt; diff --git a/target/linux/lantiq/patches-4.19/0022-MTD-m25p80-allow-loading-mtd-name-from-OF.patch b/target/linux/lantiq/patches-4.19/0022-MTD-m25p80-allow-loading-mtd-name-from-OF.patch index 90dc20b90..fbdd117de 100644 --- a/target/linux/lantiq/patches-4.19/0022-MTD-m25p80-allow-loading-mtd-name-from-OF.patch +++ b/target/linux/lantiq/patches-4.19/0022-MTD-m25p80-allow-loading-mtd-name-from-OF.patch @@ -22,7 +22,7 @@ Signed-off-by: John Crispin #include #include -@@ -180,6 +181,10 @@ static int m25p_probe(struct spi_mem *sp +@@ -173,6 +174,10 @@ static int m25p_probe(struct spi_mem *sp }; char *flash_name; int ret; @@ -33,7 +33,7 @@ Signed-off-by: John Crispin data = dev_get_platdata(&spimem->spi->dev); -@@ -218,6 +223,8 @@ static int m25p_probe(struct spi_mem *sp +@@ -211,6 +216,8 @@ static int m25p_probe(struct spi_mem *sp if (data && data->name) nor->mtd.name = data->name; diff --git a/target/linux/lantiq/patches-4.19/0031-I2C-MIPS-lantiq-add-FALC-ON-i2c-bus-master.patch b/target/linux/lantiq/patches-4.19/0031-I2C-MIPS-lantiq-add-FALC-ON-i2c-bus-master.patch index 90238e35b..eed32d309 100644 --- a/target/linux/lantiq/patches-4.19/0031-I2C-MIPS-lantiq-add-FALC-ON-i2c-bus-master.patch +++ b/target/linux/lantiq/patches-4.19/0031-I2C-MIPS-lantiq-add-FALC-ON-i2c-bus-master.patch @@ -18,7 +18,7 @@ Signed-off-by: John Crispin --- a/drivers/i2c/busses/Kconfig +++ b/drivers/i2c/busses/Kconfig -@@ -690,6 +690,16 @@ config I2C_MESON +@@ -691,6 +691,16 @@ config I2C_MESON If you say yes to this option, support will be included for the I2C interface on the Amlogic Meson family of SoCs. diff --git a/target/linux/lantiq/patches-4.19/0050-USB-DWC2-make-the-lantiq-settings-match-vendor-drive.patch b/target/linux/lantiq/patches-4.19/0050-USB-DWC2-make-the-lantiq-settings-match-vendor-drive.patch index 81d46c3d1..fed65e532 100644 --- a/target/linux/lantiq/patches-4.19/0050-USB-DWC2-make-the-lantiq-settings-match-vendor-drive.patch +++ b/target/linux/lantiq/patches-4.19/0050-USB-DWC2-make-the-lantiq-settings-match-vendor-drive.patch @@ -23,8 +23,8 @@ Signed-off-by: Hauke Mehrtens --- a/drivers/usb/dwc2/params.c +++ b/drivers/usb/dwc2/params.c -@@ -90,7 +90,14 @@ static void dwc2_set_rk_params(struct dw - GAHBCFG_HBSTLEN_SHIFT; +@@ -91,7 +91,14 @@ static void dwc2_set_rk_params(struct dw + p->power_down = 0; } -static void dwc2_set_ltq_params(struct dwc2_hsotg *hsotg) @@ -39,7 +39,7 @@ Signed-off-by: Hauke Mehrtens { struct dwc2_core_params *p = &hsotg->params; -@@ -98,12 +105,20 @@ static void dwc2_set_ltq_params(struct d +@@ -99,12 +106,20 @@ static void dwc2_set_ltq_params(struct d p->host_rx_fifo_size = 288; p->host_nperio_tx_fifo_size = 128; p->host_perio_tx_fifo_size = 96; @@ -62,7 +62,7 @@ Signed-off-by: Hauke Mehrtens static void dwc2_set_amlogic_params(struct dwc2_hsotg *hsotg) { struct dwc2_core_params *p = &hsotg->params; -@@ -155,8 +170,11 @@ const struct of_device_id dwc2_of_match_ +@@ -156,8 +171,11 @@ const struct of_device_id dwc2_of_match_ { .compatible = "brcm,bcm2835-usb", .data = dwc2_set_bcm_params }, { .compatible = "hisilicon,hi6220-usb", .data = dwc2_set_his_params }, { .compatible = "rockchip,rk3066-usb", .data = dwc2_set_rk_params }, diff --git a/target/linux/layerscape/patches-4.14/807-usb-support-layerscape.patch b/target/linux/layerscape/patches-4.14/807-usb-support-layerscape.patch index 34a86b56b..ab43bc49f 100644 --- a/target/linux/layerscape/patches-4.14/807-usb-support-layerscape.patch +++ b/target/linux/layerscape/patches-4.14/807-usb-support-layerscape.patch @@ -528,7 +528,7 @@ Signed-off-by: Zhao Chenhui reg &= ~DWC3_DCTL_INITU2ENA; --- a/drivers/usb/dwc3/gadget.c +++ b/drivers/usb/dwc3/gadget.c -@@ -3211,6 +3211,7 @@ int dwc3_gadget_init(struct dwc3 *dwc) +@@ -3220,6 +3220,7 @@ int dwc3_gadget_init(struct dwc3 *dwc) { int ret; int irq; @@ -536,7 +536,7 @@ Signed-off-by: Zhao Chenhui irq = dwc3_gadget_get_irq(dwc); if (irq < 0) { -@@ -3290,6 +3291,12 @@ int dwc3_gadget_init(struct dwc3 *dwc) +@@ -3299,6 +3300,12 @@ int dwc3_gadget_init(struct dwc3 *dwc) dwc3_gadget_set_speed(&dwc->gadget, dwc->maximum_speed); diff --git a/target/linux/layerscape/patches-4.14/810-kvm-support-layerscape.patch b/target/linux/layerscape/patches-4.14/810-kvm-support-layerscape.patch index 502a99fa8..470aa683f 100644 --- a/target/linux/layerscape/patches-4.14/810-kvm-support-layerscape.patch +++ b/target/linux/layerscape/patches-4.14/810-kvm-support-layerscape.patch @@ -74,7 +74,7 @@ Signed-off-by: Signed-off-by: Biwen Li kvmppc_booke_queue_irqprio(vcpu, BOOKE_IRQPRIO_DECREMENTER); --- a/virt/kvm/arm/mmu.c +++ b/virt/kvm/arm/mmu.c -@@ -1027,9 +1027,11 @@ static int stage2_pmdp_test_and_clear_yo +@@ -1028,9 +1028,11 @@ static int stage2_pmdp_test_and_clear_yo * @guest_ipa: The IPA at which to insert the mapping * @pa: The physical address of the device * @size: The size of the mapping @@ -87,7 +87,7 @@ Signed-off-by: Signed-off-by: Biwen Li { phys_addr_t addr, end; int ret = 0; -@@ -1040,7 +1042,7 @@ int kvm_phys_addr_ioremap(struct kvm *kv +@@ -1041,7 +1043,7 @@ int kvm_phys_addr_ioremap(struct kvm *kv pfn = __phys_to_pfn(pa); for (addr = guest_ipa; addr < end; addr += PAGE_SIZE) { @@ -96,7 +96,7 @@ Signed-off-by: Signed-off-by: Biwen Li if (writable) pte = kvm_s2pte_mkwrite(pte); -@@ -1064,6 +1066,30 @@ out: +@@ -1065,6 +1067,30 @@ out: return ret; } @@ -127,7 +127,7 @@ Signed-off-by: Signed-off-by: Biwen Li static bool transparent_hugepage_adjust(kvm_pfn_t *pfnp, phys_addr_t *ipap) { kvm_pfn_t pfn = *pfnp; -@@ -1340,6 +1366,18 @@ static int user_mem_abort(struct kvm_vcp +@@ -1341,6 +1367,18 @@ static int user_mem_abort(struct kvm_vcp hugetlb = true; gfn = (fault_ipa & PMD_MASK) >> PAGE_SHIFT; } else { @@ -146,7 +146,7 @@ Signed-off-by: Signed-off-by: Biwen Li /* * Pages belonging to memslots that don't have the same * alignment for userspace and IPA cannot be mapped using -@@ -1381,6 +1419,11 @@ static int user_mem_abort(struct kvm_vcp +@@ -1382,6 +1420,11 @@ static int user_mem_abort(struct kvm_vcp if (is_error_noslot_pfn(pfn)) return -EFAULT; @@ -158,7 +158,7 @@ Signed-off-by: Signed-off-by: Biwen Li if (kvm_is_device_pfn(pfn)) { mem_type = PAGE_S2_DEVICE; flags |= KVM_S2PTE_FLAG_IS_IOMAP; -@@ -1917,6 +1960,9 @@ int kvm_arch_prepare_memory_region(struc +@@ -1918,6 +1961,9 @@ int kvm_arch_prepare_memory_region(struc gpa_t gpa = mem->guest_phys_addr + (vm_start - mem->userspace_addr); phys_addr_t pa; @@ -168,7 +168,7 @@ Signed-off-by: Signed-off-by: Biwen Li pa = (phys_addr_t)vma->vm_pgoff << PAGE_SHIFT; pa += vm_start - vma->vm_start; -@@ -1927,9 +1973,13 @@ int kvm_arch_prepare_memory_region(struc +@@ -1928,9 +1974,13 @@ int kvm_arch_prepare_memory_region(struc goto out; } diff --git a/target/linux/layerscape/patches-4.14/813-ifc-nor-nand-support-layerscape.patch b/target/linux/layerscape/patches-4.14/813-ifc-nor-nand-support-layerscape.patch index dd024305c..8e9cd1d4a 100644 --- a/target/linux/layerscape/patches-4.14/813-ifc-nor-nand-support-layerscape.patch +++ b/target/linux/layerscape/patches-4.14/813-ifc-nor-nand-support-layerscape.patch @@ -321,7 +321,7 @@ Signed-off-by: Biwen Li #include #include #include -@@ -205,6 +206,9 @@ static int of_flash_probe(struct platfor +@@ -197,6 +198,9 @@ static int of_flash_probe(struct platfor info->list[i].map.bankwidth = be32_to_cpup(width); info->list[i].map.device_node = dp; diff --git a/target/linux/layerscape/patches-4.14/816-pcie-support-layerscape.patch b/target/linux/layerscape/patches-4.14/816-pcie-support-layerscape.patch index 781333356..f3f09989a 100644 --- a/target/linux/layerscape/patches-4.14/816-pcie-support-layerscape.patch +++ b/target/linux/layerscape/patches-4.14/816-pcie-support-layerscape.patch @@ -5841,7 +5841,7 @@ Signed-off-by: Yangbo Lu #endif /* __UAPI_LINUX_PCITEST_H */ --- a/tools/pci/pcitest.c +++ b/tools/pci/pcitest.c -@@ -31,12 +31,17 @@ +@@ -30,12 +30,17 @@ #define BILLION 1E9 static char *result[] = { "NOT OKAY", "OKAY" }; @@ -5859,7 +5859,7 @@ Signed-off-by: Yangbo Lu bool read; bool write; bool copy; -@@ -65,6 +70,24 @@ static int run_test(struct pci_test *tes +@@ -62,6 +67,24 @@ static int run_test(struct pci_test *tes fprintf(stdout, "%s\n", result[ret]); } @@ -5884,7 +5884,7 @@ Signed-off-by: Yangbo Lu if (test->legacyirq) { ret = ioctl(fd, PCITEST_LEGACY_IRQ, 0); fprintf(stdout, "LEGACY IRQ:\t"); -@@ -83,6 +106,15 @@ static int run_test(struct pci_test *tes +@@ -80,6 +103,15 @@ static int run_test(struct pci_test *tes fprintf(stdout, "%s\n", result[ret]); } @@ -5900,7 +5900,7 @@ Signed-off-by: Yangbo Lu if (test->write) { ret = ioctl(fd, PCITEST_WRITE, test->size); fprintf(stdout, "WRITE (%7ld bytes):\t\t", test->size); -@@ -133,7 +165,7 @@ int main(int argc, char **argv) +@@ -130,7 +162,7 @@ int main(int argc, char **argv) /* set default endpoint device */ test->device = "/dev/pci-endpoint-test.0"; @@ -5909,7 +5909,7 @@ Signed-off-by: Yangbo Lu switch (c) { case 'D': test->device = optarg; -@@ -151,6 +183,20 @@ int main(int argc, char **argv) +@@ -148,6 +180,20 @@ int main(int argc, char **argv) if (test->msinum < 1 || test->msinum > 32) goto usage; continue; @@ -5930,7 +5930,7 @@ Signed-off-by: Yangbo Lu case 'r': test->read = true; continue; -@@ -173,6 +219,9 @@ usage: +@@ -170,6 +216,9 @@ usage: "\t-D PCI endpoint test device {default: /dev/pci-endpoint-test.0}\n" "\t-b BAR test (bar number between 0..5)\n" "\t-m MSI test (msi number between 1..32)\n" diff --git a/target/linux/mediatek/patches-4.14/0173-clk-mediatek-fixup-test-building-of-MediaTek-clock-d.patch b/target/linux/mediatek/patches-4.14/0173-clk-mediatek-fixup-test-building-of-MediaTek-clock-d.patch index f8a755003..259a93cf2 100644 --- a/target/linux/mediatek/patches-4.14/0173-clk-mediatek-fixup-test-building-of-MediaTek-clock-d.patch +++ b/target/linux/mediatek/patches-4.14/0173-clk-mediatek-fixup-test-building-of-MediaTek-clock-d.patch @@ -16,8 +16,8 @@ Signed-off-by: Stephen Boyd --- a/drivers/clk/Makefile +++ b/drivers/clk/Makefile -@@ -67,7 +67,7 @@ obj-$(CONFIG_ARCH_MXC) += imx/ - obj-$(CONFIG_MACH_INGENIC) += ingenic/ +@@ -68,7 +68,7 @@ obj-$(CONFIG_MACH_INGENIC) += ingenic/ + obj-$(CONFIG_ARCH_K3) += keystone/ obj-$(CONFIG_ARCH_KEYSTONE) += keystone/ obj-$(CONFIG_MACH_LOONGSON32) += loongson1/ -obj-$(CONFIG_ARCH_MEDIATEK) += mediatek/ diff --git a/target/linux/oxnas/patches-4.14/500-oxnas-sata.patch b/target/linux/oxnas/patches-4.14/500-oxnas-sata.patch index 5fe074608..0699e158a 100644 --- a/target/linux/oxnas/patches-4.14/500-oxnas-sata.patch +++ b/target/linux/oxnas/patches-4.14/500-oxnas-sata.patch @@ -1,6 +1,6 @@ --- a/drivers/ata/Kconfig +++ b/drivers/ata/Kconfig -@@ -492,6 +492,13 @@ config SATA_VITESSE +@@ -493,6 +493,13 @@ config SATA_VITESSE If unsure, say N. diff --git a/target/linux/ramips/patches-4.14/0044-i2c-MIPS-adds-ralink-I2C-driver.patch b/target/linux/ramips/patches-4.14/0044-i2c-MIPS-adds-ralink-I2C-driver.patch index 471c8f40e..4905aba04 100644 --- a/target/linux/ramips/patches-4.14/0044-i2c-MIPS-adds-ralink-I2C-driver.patch +++ b/target/linux/ramips/patches-4.14/0044-i2c-MIPS-adds-ralink-I2C-driver.patch @@ -45,7 +45,7 @@ Signed-off-by: John Crispin +}; --- a/drivers/i2c/busses/Kconfig +++ b/drivers/i2c/busses/Kconfig -@@ -863,6 +863,11 @@ config I2C_RK3X +@@ -864,6 +864,11 @@ config I2C_RK3X This driver can also be built as a module. If so, the module will be called i2c-rk3x. diff --git a/target/linux/ramips/patches-4.14/0045-i2c-add-mt7621-driver.patch b/target/linux/ramips/patches-4.14/0045-i2c-add-mt7621-driver.patch index 9cd8c4b5c..a84808552 100644 --- a/target/linux/ramips/patches-4.14/0045-i2c-add-mt7621-driver.patch +++ b/target/linux/ramips/patches-4.14/0045-i2c-add-mt7621-driver.patch @@ -13,7 +13,7 @@ Signed-off-by: John Crispin --- a/drivers/i2c/busses/Kconfig +++ b/drivers/i2c/busses/Kconfig -@@ -868,6 +868,11 @@ config I2C_RALINK +@@ -869,6 +869,11 @@ config I2C_RALINK depends on RALINK && !SOC_MT7621 select OF_I2C