From 1d51160f856c2bc14a657a4de76a515339435f9c Mon Sep 17 00:00:00 2001 From: Koen Vandeputte Date: Mon, 9 Sep 2019 13:24:41 +0200 Subject: [PATCH] kernel: bump 4.19 to 4.19.71 Refreshed all patches. Remove upstreamed: - 950-0774-watchdog-bcm2835_wdt-Fix-module-autoload.patch - 0017-usb-host-fotg2-restart-hcd-after-port-reset.patch Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte --- include/kernel-version.mk | 4 +- ...hdog-bcm2835_wdt-Fix-module-autoload.patch | 27 ---------- ...ost-fotg2-add-silicon-clock-handling.patch | 6 +-- ...b-host-fotg2-add-device-tree-probing.patch | 2 +- ...t-fotg2-add-Gemini-specific-handling.patch | 4 +- ...t-fotg2-restart-hcd-after-port-reset.patch | 27 ---------- .../0101-pci-mediatek-backport-fix-pcie.patch | 51 +++++++++---------- 7 files changed, 32 insertions(+), 89 deletions(-) delete mode 100644 target/linux/brcm2708/patches-4.19/950-0774-watchdog-bcm2835_wdt-Fix-module-autoload.patch delete mode 100644 target/linux/gemini/patches-4.19/0017-usb-host-fotg2-restart-hcd-after-port-reset.patch diff --git a/include/kernel-version.mk b/include/kernel-version.mk index ec3602a8ff..666e27e52f 100644 --- a/include/kernel-version.mk +++ b/include/kernel-version.mk @@ -8,11 +8,11 @@ endif LINUX_VERSION-4.9 = .191 LINUX_VERSION-4.14 = .142 -LINUX_VERSION-4.19 = .69 +LINUX_VERSION-4.19 = .71 LINUX_KERNEL_HASH-4.9.191 = ded4b87406deb67112b25a2283e8b5c89c2b47e2de14a97acda57f74cd38b7bc LINUX_KERNEL_HASH-4.14.142 = e67ba535991170a8383be68203af7d9b4262474ceeff2f9afedeac6043b590f3 -LINUX_KERNEL_HASH-4.19.69 = c091760b520a4e4a4c7034a8329cc2689a0ea3f81a377b694ed196d623e2d987 +LINUX_KERNEL_HASH-4.19.71 = 1f53ebffd4842099db429172f6bac6a23e6f355f1278efb321860a34cf9a5cae 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/brcm2708/patches-4.19/950-0774-watchdog-bcm2835_wdt-Fix-module-autoload.patch b/target/linux/brcm2708/patches-4.19/950-0774-watchdog-bcm2835_wdt-Fix-module-autoload.patch deleted file mode 100644 index 7ef6cd24e8..0000000000 --- a/target/linux/brcm2708/patches-4.19/950-0774-watchdog-bcm2835_wdt-Fix-module-autoload.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 85a0f4d9bb71497ed710518de5f5cac124da9643 Mon Sep 17 00:00:00 2001 -From: Stefan Wahren -Date: Wed, 15 May 2019 19:14:18 +0200 -Subject: [PATCH 774/782] watchdog: bcm2835_wdt: Fix module autoload - -The commit 5e6acc3e678e ("bcm2835-pm: Move bcm2835-watchdog's DT probe -to an MFD.") broke module autoloading on Raspberry Pi. So add a -module alias this fix this. - -Signed-off-by: Stefan Wahren -Reviewed-by: Guenter Roeck -Signed-off-by: Guenter Roeck -Signed-off-by: Wim Van Sebroeck ---- - drivers/watchdog/bcm2835_wdt.c | 1 + - 1 file changed, 1 insertion(+) - ---- a/drivers/watchdog/bcm2835_wdt.c -+++ b/drivers/watchdog/bcm2835_wdt.c -@@ -246,6 +246,7 @@ module_param(nowayout, bool, 0); - MODULE_PARM_DESC(nowayout, "Watchdog cannot be stopped once started (default=" - __MODULE_STRING(WATCHDOG_NOWAYOUT) ")"); - -+MODULE_ALIAS("platform:bcm2835-wdt"); - MODULE_AUTHOR("Lubomir Rintel "); - MODULE_DESCRIPTION("Driver for Broadcom BCM2835 watchdog timer"); - MODULE_LICENSE("GPL"); diff --git a/target/linux/gemini/patches-4.19/0013-usb-host-fotg2-add-silicon-clock-handling.patch b/target/linux/gemini/patches-4.19/0013-usb-host-fotg2-add-silicon-clock-handling.patch index b28454e6f1..207a58d857 100644 --- a/target/linux/gemini/patches-4.19/0013-usb-host-fotg2-add-silicon-clock-handling.patch +++ b/target/linux/gemini/patches-4.19/0013-usb-host-fotg2-add-silicon-clock-handling.patch @@ -36,7 +36,7 @@ ChangeLog v1->v2: #include #include -@@ -5596,7 +5597,7 @@ static int fotg210_hcd_probe(struct plat +@@ -5600,7 +5601,7 @@ static int fotg210_hcd_probe(struct plat hcd->regs = devm_ioremap_resource(&pdev->dev, res); if (IS_ERR(hcd->regs)) { retval = PTR_ERR(hcd->regs); @@ -45,7 +45,7 @@ ChangeLog v1->v2: } hcd->rsrc_start = res->start; -@@ -5606,22 +5607,42 @@ static int fotg210_hcd_probe(struct plat +@@ -5610,22 +5611,42 @@ static int fotg210_hcd_probe(struct plat fotg210->caps = hcd->regs; @@ -91,7 +91,7 @@ ChangeLog v1->v2: usb_put_hcd(hcd); fail_create_hcd: dev_err(dev, "init %s fail, %d\n", dev_name(dev), retval); -@@ -5637,6 +5658,10 @@ static int fotg210_hcd_remove(struct pla +@@ -5641,6 +5662,10 @@ static int fotg210_hcd_remove(struct pla { struct device *dev = &pdev->dev; struct usb_hcd *hcd = dev_get_drvdata(dev); diff --git a/target/linux/gemini/patches-4.19/0015-usb-host-fotg2-add-device-tree-probing.patch b/target/linux/gemini/patches-4.19/0015-usb-host-fotg2-add-device-tree-probing.patch index 8950ef040f..7a4a3fe77e 100644 --- a/target/linux/gemini/patches-4.19/0015-usb-host-fotg2-add-device-tree-probing.patch +++ b/target/linux/gemini/patches-4.19/0015-usb-host-fotg2-add-device-tree-probing.patch @@ -22,7 +22,7 @@ Signed-off-by: Linus Walleij #include #include #include -@@ -5672,9 +5673,18 @@ static int fotg210_hcd_remove(struct pla +@@ -5676,9 +5677,18 @@ static int fotg210_hcd_remove(struct pla return 0; } diff --git a/target/linux/gemini/patches-4.19/0016-usb-host-fotg2-add-Gemini-specific-handling.patch b/target/linux/gemini/patches-4.19/0016-usb-host-fotg2-add-Gemini-specific-handling.patch index 51bd0e7d7e..f30ee7991e 100644 --- a/target/linux/gemini/patches-4.19/0016-usb-host-fotg2-add-Gemini-specific-handling.patch +++ b/target/linux/gemini/patches-4.19/0016-usb-host-fotg2-add-Gemini-specific-handling.patch @@ -43,7 +43,7 @@ Signed-off-by: Linus Walleij #include #include -@@ -5554,6 +5558,72 @@ static void fotg210_init(struct fotg210_ +@@ -5558,6 +5562,72 @@ static void fotg210_init(struct fotg210_ iowrite32(value, &fotg210->regs->otgcsr); } @@ -116,7 +116,7 @@ Signed-off-by: Linus Walleij /** * fotg210_hcd_probe - initialize faraday FOTG210 HCDs * -@@ -5631,6 +5701,12 @@ static int fotg210_hcd_probe(struct plat +@@ -5635,6 +5705,12 @@ static int fotg210_hcd_probe(struct plat fotg210_init(fotg210); diff --git a/target/linux/gemini/patches-4.19/0017-usb-host-fotg2-restart-hcd-after-port-reset.patch b/target/linux/gemini/patches-4.19/0017-usb-host-fotg2-restart-hcd-after-port-reset.patch deleted file mode 100644 index 0b5e81ce54..0000000000 --- a/target/linux/gemini/patches-4.19/0017-usb-host-fotg2-restart-hcd-after-port-reset.patch +++ /dev/null @@ -1,27 +0,0 @@ -From b9d300b5aea18f2e992201d182d939030130aab2 Mon Sep 17 00:00:00 2001 -From: Hans Ulli Kroll -Date: Sat, 14 Apr 2018 18:49:57 +0200 -Subject: [PATCH 17/18] usb: host: fotg2: restart hcd after port reset - -on Gemini SoC FOTG2 stalls after port reset -rerstart the hcd. - -Signed-off-by: Hans Ulli Kroll -Signed-off-by: Linus Walleij ---- - drivers/usb/host/fotg210-hcd.c | 4 ++++ - 1 file changed, 4 insertions(+) - ---- a/drivers/usb/host/fotg210-hcd.c -+++ b/drivers/usb/host/fotg210-hcd.c -@@ -1633,6 +1633,10 @@ static int fotg210_hub_control(struct us - /* see what we found out */ - temp = check_reset_complete(fotg210, wIndex, status_reg, - fotg210_readl(fotg210, status_reg)); -+ -+ /* restart schedule */ -+ fotg210->command |= CMD_RUN; -+ fotg210_writel(fotg210, fotg210->command, &fotg210->regs->command); - } - - if (!(temp & (PORT_RESUME|PORT_RESET))) { diff --git a/target/linux/mediatek/patches-4.19/0101-pci-mediatek-backport-fix-pcie.patch b/target/linux/mediatek/patches-4.19/0101-pci-mediatek-backport-fix-pcie.patch index bf7c1ea32b..cdb53954cf 100644 --- a/target/linux/mediatek/patches-4.19/0101-pci-mediatek-backport-fix-pcie.patch +++ b/target/linux/mediatek/patches-4.19/0101-pci-mediatek-backport-fix-pcie.patch @@ -1,7 +1,6 @@ -diff -urN a/drivers/clk/clk-devres.c b/drivers/clk/clk-devres.c ---- a/drivers/clk/clk-devres.c 2019-08-29 16:59:26.540010395 +0800 -+++ b/drivers/clk/clk-devres.c 2019-08-29 17:02:09.215924786 +0800 -@@ -34,6 +34,17 @@ +--- a/drivers/clk/clk-devres.c ++++ b/drivers/clk/clk-devres.c +@@ -34,6 +34,17 @@ struct clk *devm_clk_get(struct device * } EXPORT_SYMBOL(devm_clk_get); @@ -19,9 +18,8 @@ diff -urN a/drivers/clk/clk-devres.c b/drivers/clk/clk-devres.c struct clk_bulk_devres { struct clk_bulk_data *clks; int num_clks; -diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie-mediatek.c ---- a/drivers/pci/controller/pcie-mediatek.c 2019-08-29 16:59:10.520410188 +0800 -+++ b/drivers/pci/controller/pcie-mediatek.c 2019-08-29 17:01:58.340199243 +0800 +--- a/drivers/pci/controller/pcie-mediatek.c ++++ b/drivers/pci/controller/pcie-mediatek.c @@ -15,6 +15,7 @@ #include #include @@ -30,7 +28,7 @@ diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie #include #include #include -@@ -162,6 +163,7 @@ +@@ -162,6 +163,7 @@ struct mtk_pcie_soc { * @phy: pointer to PHY control block * @lane: lane count * @slot: port slot @@ -38,7 +36,7 @@ diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie * @irq_domain: legacy INTx IRQ domain * @inner_domain: inner IRQ domain * @msi_domain: MSI IRQ domain -@@ -182,6 +184,7 @@ +@@ -182,6 +184,7 @@ struct mtk_pcie_port { struct phy *phy; u32 lane; u32 slot; @@ -46,7 +44,7 @@ diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie struct irq_domain *irq_domain; struct irq_domain *inner_domain; struct irq_domain *msi_domain; -@@ -225,10 +228,8 @@ +@@ -225,10 +228,8 @@ static void mtk_pcie_subsys_powerdown(st clk_disable_unprepare(pcie->free_ck); @@ -59,7 +57,7 @@ diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie } static void mtk_pcie_port_free(struct mtk_pcie_port *port) -@@ -394,75 +395,6 @@ +@@ -394,75 +395,6 @@ static struct pci_ops mtk_pcie_ops_v2 = .write = mtk_pcie_config_write, }; @@ -135,7 +133,7 @@ diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie static void mtk_compose_msi_msg(struct irq_data *data, struct msi_msg *msg) { struct mtk_pcie_port *port = irq_data_get_irq_chip_data(data); -@@ -601,6 +533,27 @@ +@@ -601,6 +533,27 @@ static void mtk_pcie_enable_msi(struct m writel(val, port->base + PCIE_INT_MASK); } @@ -163,7 +161,7 @@ diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie static int mtk_pcie_intx_map(struct irq_domain *domain, unsigned int irq, irq_hw_number_t hwirq) { -@@ -630,6 +583,7 @@ +@@ -630,6 +583,7 @@ static int mtk_pcie_init_irq_domain(stru port->irq_domain = irq_domain_add_linear(pcie_intc_node, PCI_NUM_INTX, &intx_domain_ops, port); @@ -171,7 +169,7 @@ diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie if (!port->irq_domain) { dev_err(dev, "failed to get INTx IRQ domain\n"); return -ENODEV; -@@ -639,8 +593,6 @@ +@@ -639,8 +593,6 @@ static int mtk_pcie_init_irq_domain(stru ret = mtk_pcie_allocate_msi_domains(port); if (ret) return ret; @@ -180,7 +178,7 @@ diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie } return 0; -@@ -693,7 +645,7 @@ +@@ -693,7 +645,7 @@ static int mtk_pcie_setup_irq(struct mtk struct mtk_pcie *pcie = port->pcie; struct device *dev = pcie->dev; struct platform_device *pdev = to_platform_device(dev); @@ -189,7 +187,7 @@ diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie err = mtk_pcie_init_irq_domain(port, node); if (err) { -@@ -701,8 +653,81 @@ +@@ -701,8 +653,81 @@ static int mtk_pcie_setup_irq(struct mtk return err; } @@ -273,7 +271,7 @@ diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie return 0; } -@@ -903,49 +928,29 @@ +@@ -903,49 +928,29 @@ static int mtk_pcie_parse_port(struct mt /* sys_ck might be divided into the following parts in some chips */ snprintf(name, sizeof(name), "ahb_ck%d", slot); @@ -338,7 +336,7 @@ diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie snprintf(name, sizeof(name), "pcie-rst%d", slot); port->reset = devm_reset_control_get_optional_exclusive(dev, name); -@@ -998,10 +1003,8 @@ +@@ -998,10 +1003,8 @@ static int mtk_pcie_subsys_powerup(struc pcie->free_ck = NULL; } @@ -351,7 +349,7 @@ diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie /* enable top level clock */ err = clk_prepare_enable(pcie->free_ck); -@@ -1013,10 +1016,8 @@ +@@ -1013,10 +1016,8 @@ static int mtk_pcie_subsys_powerup(struc return 0; err_free_ck: @@ -364,7 +362,7 @@ diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie return err; } -@@ -1125,34 +1126,6 @@ +@@ -1125,34 +1126,6 @@ static int mtk_pcie_request_resources(st return 0; } @@ -399,7 +397,7 @@ diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie static int mtk_pcie_probe(struct platform_device *pdev) { struct device *dev = &pdev->dev; -@@ -1179,7 +1152,14 @@ +@@ -1179,7 +1152,14 @@ static int mtk_pcie_probe(struct platfor if (err) goto put_resources; @@ -415,7 +413,7 @@ diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie if (err) goto put_resources; -@@ -1192,6 +1172,80 @@ +@@ -1192,6 +1172,80 @@ put_resources: return err; } @@ -496,7 +494,7 @@ diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie static const struct mtk_pcie_soc mtk_pcie_soc_v1 = { .ops = &mtk_pcie_ops, .startup = mtk_pcie_startup_port, -@@ -1220,10 +1274,13 @@ +@@ -1220,10 +1274,13 @@ static const struct of_device_id mtk_pci static struct platform_driver mtk_pcie_driver = { .probe = mtk_pcie_probe, @@ -511,10 +509,9 @@ diff -urN a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie -builtin_platform_driver(mtk_pcie_driver); +module_platform_driver(mtk_pcie_driver); +MODULE_LICENSE("GPL v2"); -diff -urN a/include/linux/clk.h b/include/linux/clk.h ---- a/include/linux/clk.h 2019-08-29 16:59:52.335365591 +0800 -+++ b/include/linux/clk.h 2019-08-29 17:02:17.107725525 +0800 -@@ -349,6 +349,17 @@ +--- a/include/linux/clk.h ++++ b/include/linux/clk.h +@@ -349,6 +349,17 @@ int __must_check devm_clk_bulk_get(struc struct clk *devm_clk_get(struct device *dev, const char *id); /**