diff options
author | Hauke Mehrtens <hauke@hauke-m.de> | 2017-02-11 15:52:41 +0100 |
---|---|---|
committer | Hauke Mehrtens <hauke@hauke-m.de> | 2017-02-11 23:44:13 +0100 |
commit | 863e79f8d5544a8a884375d7e867f350fddca9b9 (patch) | |
tree | 6c95efffd7d7db4df17dbfae7d108fdd20b99926 /target/linux/lantiq/patches-4.9/0070-MIPS-Lantiq-Keep-ethernet-enabled-during-boot.patch | |
parent | ca9b9969fb3f3853f7c6beb43bd496d90c7efe80 (diff) | |
download | upstream-863e79f8d5544a8a884375d7e867f350fddca9b9.tar.gz upstream-863e79f8d5544a8a884375d7e867f350fddca9b9.tar.bz2 upstream-863e79f8d5544a8a884375d7e867f350fddca9b9.zip |
lantiq: add support for kernel 4.9
The following patches were dropped because they are already applied
upstream:
0012-pinctrl-lantiq-fix-up-pinmux.patch
0013-MTD-lantiq-xway-fix-invalid-operator.patch
0014-MTD-lantiq-xway-the-latched-command-should-be-persis.patch
0015-MTD-lantiq-xway-remove-endless-loop.patch
0016-MTD-lantiq-xway-add-missing-write_buf-and-read_buf-t.patch
0017-MTD-xway-fix-nand-locking.patch
0044-pinctrl-lantiq-introduce-new-dedicated-devicetree-bi.patch
0045-pinctrl-lantiq-Fix-GPIO-Setup-of-GPIO-Port3.patch
0046-pinctrl-lantiq-2-pins-have-the-wrong-mux-list.patch
0047-irq-fixes.patch
0047-mtd-plat-nand-pass-of-node.patch
0060-usb-dwc2-Add-support-for-Lantiq-ARX-and-XRX-SoCs.patch
0120-MIPS-lantiq-add-support-for-device-tree-file-from-bo.patch
0121-MIPS-lantiq-make-it-possible-to-build-in-no-device-t.patch
122-MIPS-store-the-appended-dtb-address-in-a-variable.patch
The PHY driver was reduced to the code adding the LED configuration,
the rest is already upstream:
0023-NET-PHY-adds-driver-for-lantiq-PHY11G.patch
The SPI driver was replaced with the version pending for upstream
inclusion:
New driver:
0090-spi-add-transfer_status-callback.patch
0091-spi-lantiq-ssc-add-support-for-Lantiq-SSC-SPI-controller.patch
Old driver:
0100-spi-add-support-for-Lantiq-SPI-controller.patch
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Diffstat (limited to 'target/linux/lantiq/patches-4.9/0070-MIPS-Lantiq-Keep-ethernet-enabled-during-boot.patch')
-rw-r--r-- | target/linux/lantiq/patches-4.9/0070-MIPS-Lantiq-Keep-ethernet-enabled-during-boot.patch | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/target/linux/lantiq/patches-4.9/0070-MIPS-Lantiq-Keep-ethernet-enabled-during-boot.patch b/target/linux/lantiq/patches-4.9/0070-MIPS-Lantiq-Keep-ethernet-enabled-during-boot.patch new file mode 100644 index 0000000000..67cf7d3a61 --- /dev/null +++ b/target/linux/lantiq/patches-4.9/0070-MIPS-Lantiq-Keep-ethernet-enabled-during-boot.patch @@ -0,0 +1,53 @@ +From: Felix Fietkau <nbd@nbd.name> +Date: Thu, 19 Jan 2017 14:14:36 +0100 +Subject: [PATCH] MIPS: Lantiq: Keep ethernet enabled during boot + +Disabling ethernet during reboot (only to enable it again when the +ethernet driver attaches) can put the chip into a faulty state where it +corrupts the header of all incoming packets. + +This happens if packets arrive during the time window where the core is +disabled, and it can be easily reproduced by rebooting while sending a +flood ping to the broadcast address. + +Cc: john@phrozen.org +Cc: hauke.mehrtens@lantiq.com +Cc: stable@vger.kernel.org +Fixes: 95135bfa7ead ("MIPS: Lantiq: Deactivate most of the devices by default") +Signed-off-by: Felix Fietkau <nbd@nbd.name> +--- + +--- a/arch/mips/lantiq/xway/sysctrl.c ++++ b/arch/mips/lantiq/xway/sysctrl.c +@@ -564,7 +564,7 @@ void __init ltq_soc_init(void) + clkdev_add_pmu("1a800000.pcie", "msi", 1, 1, PMU1_PCIE2_MSI); + clkdev_add_pmu("1a800000.pcie", "pdi", 1, 1, PMU1_PCIE2_PDI); + clkdev_add_pmu("1a800000.pcie", "ctl", 1, 1, PMU1_PCIE2_CTL); +- clkdev_add_pmu("1e108000.eth", NULL, 1, 0, PMU_SWITCH | PMU_PPE_DP); ++ clkdev_add_pmu("1e108000.eth", NULL, 0, 0, PMU_SWITCH | PMU_PPE_DP); + clkdev_add_pmu("1da00000.usif", "NULL", 1, 0, PMU_USIF); + clkdev_add_pmu("1e103100.deu", NULL, 1, 0, PMU_DEU); + } else if (of_machine_is_compatible("lantiq,ar10")) { +@@ -572,7 +572,7 @@ void __init ltq_soc_init(void) + ltq_ar10_fpi_hz(), ltq_ar10_pp32_hz()); + clkdev_add_pmu("1e101000.usb", "ctl", 1, 0, PMU_USB0); + clkdev_add_pmu("1e106000.usb", "ctl", 1, 0, PMU_USB1); +- clkdev_add_pmu("1e108000.eth", NULL, 1, 0, PMU_SWITCH | ++ clkdev_add_pmu("1e108000.eth", NULL, 0, 0, PMU_SWITCH | + PMU_PPE_DP | PMU_PPE_TC); + clkdev_add_pmu("1da00000.usif", "NULL", 1, 0, PMU_USIF); + clkdev_add_pmu("1f203000.rcu", "gphy", 1, 0, PMU_GPHY); +@@ -594,11 +594,11 @@ void __init ltq_soc_init(void) + clkdev_add_pmu(NULL, "ahb", 1, 0, PMU_AHBM | PMU_AHBS); + + clkdev_add_pmu("1da00000.usif", "NULL", 1, 0, PMU_USIF); +- clkdev_add_pmu("1e108000.eth", NULL, 1, 0, ++ clkdev_add_pmu("1e108000.eth", NULL, 0, 0, + PMU_SWITCH | PMU_PPE_DPLUS | PMU_PPE_DPLUM | + PMU_PPE_EMA | PMU_PPE_TC | PMU_PPE_SLL01 | + PMU_PPE_QSB | PMU_PPE_TOP); +- clkdev_add_pmu("1f203000.rcu", "gphy", 1, 0, PMU_GPHY); ++ clkdev_add_pmu("1f203000.rcu", "gphy", 0, 0, PMU_GPHY); + clkdev_add_pmu("1e103000.sdio", NULL, 1, 0, PMU_SDIO); + clkdev_add_pmu("1e103100.deu", NULL, 1, 0, PMU_DEU); + clkdev_add_pmu("1e116000.mei", "dfe", 1, 0, PMU_DFE); |