diff options
author | Hauke Mehrtens <hauke@hauke-m.de> | 2018-04-02 16:01:58 +0200 |
---|---|---|
committer | Hauke Mehrtens <hauke@hauke-m.de> | 2018-04-03 23:26:45 +0200 |
commit | a74fd570a23f2226afcf63f92f22bcb9df37beee (patch) | |
tree | f0452055d7b540e7424a5c3f70ad2e44ffb6c641 | |
parent | 9aaa23ec8baa50b63d33466f3f353e43c473952a (diff) | |
download | upstream-a74fd570a23f2226afcf63f92f22bcb9df37beee.tar.gz upstream-a74fd570a23f2226afcf63f92f22bcb9df37beee.tar.bz2 upstream-a74fd570a23f2226afcf63f92f22bcb9df37beee.zip |
kernel: update kernel 4.14 to 4.14.32
The following patches are now included upstream:
* 0052-MIPS-lantiq-fix-usb-clocks.patch
* 0053-MIPS-lantiq-enable-AHB-Bus-for-USB.patch
* 0060-lantiq-ase-enable-MFD-SYSCON.patch
Closes: FS#1466
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Stijn Segers <foss@volatilesystems.org>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
17 files changed, 33 insertions, 123 deletions
diff --git a/include/kernel-version.mk b/include/kernel-version.mk index 43f891c1c9..4be674ccdd 100644 --- a/include/kernel-version.mk +++ b/include/kernel-version.mk @@ -5,12 +5,12 @@ LINUX_RELEASE?=1 LINUX_VERSION-3.18 = .71 LINUX_VERSION-4.4 = .121 LINUX_VERSION-4.9 = .91 -LINUX_VERSION-4.14 = .29 +LINUX_VERSION-4.14 = .32 LINUX_KERNEL_HASH-3.18.71 = 5abc9778ad44ce02ed6c8ab52ece8a21c6d20d21f6ed8a19287b4a38a50c1240 LINUX_KERNEL_HASH-4.4.121 = 44a88268b5088dc326b30c9b9133ac35a9a200b636b7268d08f32abeae6ca729 LINUX_KERNEL_HASH-4.9.91 = 60caa752ec9fa1c426f6a2f37db3f268d0961b67a723b6443949112167b39832 -LINUX_KERNEL_HASH-4.14.29 = 18f67b70ce9922c7ef95791bfd91f46e52ee9eb3e310978bb6ef6d2e93c14619 +LINUX_KERNEL_HASH-4.14.32 = cb0979bec663089a43b10cfbeae0cf9673544b0ff5968c33ede614ec0f43b680 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/generic/hack-4.14/207-disable-modorder.patch b/target/linux/generic/hack-4.14/207-disable-modorder.patch index 8f817f32a7..8f99cde617 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 <nbd@nbd.name> --- a/Makefile +++ b/Makefile -@@ -1224,7 +1224,6 @@ all: modules +@@ -1233,7 +1233,6 @@ all: modules PHONY += modules modules: $(vmlinux-dirs) $(if $(KBUILD_BUILTIN),vmlinux) modules.builtin @@ -23,7 +23,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> @$(kecho) ' Building modules, stage 2.'; $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost -@@ -1253,7 +1252,6 @@ _modinst_: +@@ -1262,7 +1261,6 @@ _modinst_: rm -f $(MODLIB)/build ; \ ln -s $(CURDIR) $(MODLIB)/build ; \ fi diff --git a/target/linux/generic/hack-4.14/702-phy_add_aneg_done_function.patch b/target/linux/generic/hack-4.14/702-phy_add_aneg_done_function.patch index 61e460fda7..0453112a1f 100644 --- a/target/linux/generic/hack-4.14/702-phy_add_aneg_done_function.patch +++ b/target/linux/generic/hack-4.14/702-phy_add_aneg_done_function.patch @@ -15,7 +15,7 @@ --- a/drivers/net/phy/phy_device.c +++ b/drivers/net/phy/phy_device.c -@@ -1451,6 +1451,9 @@ int genphy_update_link(struct phy_device +@@ -1458,6 +1458,9 @@ int genphy_update_link(struct phy_device { int status; 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 43a1483c56..5ee89be5ad 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 <dev-NTEO@vplace.de> --- a/mm/page_alloc.c +++ b/mm/page_alloc.c -@@ -6156,7 +6156,7 @@ static void __ref alloc_node_mem_map(str +@@ -6147,7 +6147,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/680-NET-skip-GRO-for-foreign-MAC-addresses.patch b/target/linux/generic/pending-4.14/680-NET-skip-GRO-for-foreign-MAC-addresses.patch index 4fd8978835..9ac505e85e 100644 --- a/target/linux/generic/pending-4.14/680-NET-skip-GRO-for-foreign-MAC-addresses.patch +++ b/target/linux/generic/pending-4.14/680-NET-skip-GRO-for-foreign-MAC-addresses.patch @@ -32,7 +32,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> __u16 tc_index; /* traffic control index */ --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -4775,6 +4775,9 @@ static enum gro_result dev_gro_receive(s +@@ -4783,6 +4783,9 @@ static enum gro_result dev_gro_receive(s enum gro_result ret; int grow; @@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> if (netif_elide_gro(skb->dev)) goto normal; -@@ -6245,6 +6248,48 @@ static void __netdev_adjacent_dev_unlink +@@ -6253,6 +6256,48 @@ static void __netdev_adjacent_dev_unlink &upper_dev->adj_list.lower); } @@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> static int __netdev_upper_dev_link(struct net_device *dev, struct net_device *upper_dev, bool master, void *upper_priv, void *upper_info) -@@ -6283,6 +6328,7 @@ static int __netdev_upper_dev_link(struc +@@ -6291,6 +6336,7 @@ static int __netdev_upper_dev_link(struc if (ret) return ret; @@ -99,7 +99,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev, &changeupper_info.info); ret = notifier_to_errno(ret); -@@ -6360,6 +6406,7 @@ void netdev_upper_dev_unlink(struct net_ +@@ -6368,6 +6414,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 <nbd@nbd.name> call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev, &changeupper_info.info); } -@@ -6930,6 +6977,7 @@ int dev_set_mac_address(struct net_devic +@@ -6938,6 +6985,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.14/701-phy_extension.patch b/target/linux/generic/pending-4.14/701-phy_extension.patch index 2529505801..1b380e24a9 100644 --- a/target/linux/generic/pending-4.14/701-phy_extension.patch +++ b/target/linux/generic/pending-4.14/701-phy_extension.patch @@ -85,7 +85,7 @@ Signed-off-by: John Crispin <john@phrozen.org> * @phydev: the phy_device struct --- a/include/linux/phy.h +++ b/include/linux/phy.h -@@ -906,6 +906,7 @@ void phy_ethtool_ksettings_get(struct ph +@@ -905,6 +905,7 @@ void phy_ethtool_ksettings_get(struct ph struct ethtool_link_ksettings *cmd); int phy_ethtool_ksettings_set(struct phy_device *phydev, const struct ethtool_link_ksettings *cmd); diff --git a/target/linux/generic/pending-4.14/703-phy-add-detach-callback-to-struct-phy_driver.patch b/target/linux/generic/pending-4.14/703-phy-add-detach-callback-to-struct-phy_driver.patch index 3d5f8fc5ed..11436a2166 100644 --- a/target/linux/generic/pending-4.14/703-phy-add-detach-callback-to-struct-phy_driver.patch +++ b/target/linux/generic/pending-4.14/703-phy-add-detach-callback-to-struct-phy_driver.patch @@ -11,7 +11,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org> --- a/drivers/net/phy/phy_device.c +++ b/drivers/net/phy/phy_device.c -@@ -1095,6 +1095,9 @@ void phy_detach(struct phy_device *phyde +@@ -1102,6 +1102,9 @@ void phy_detach(struct phy_device *phyde struct module *ndev_owner = dev->dev.parent->driver->owner; struct mii_bus *bus; diff --git a/target/linux/generic/pending-4.14/834-ledtrig-libata.patch b/target/linux/generic/pending-4.14/834-ledtrig-libata.patch index 1ceffc5a29..83bc42fe33 100644 --- a/target/linux/generic/pending-4.14/834-ledtrig-libata.patch +++ b/target/linux/generic/pending-4.14/834-ledtrig-libata.patch @@ -65,7 +65,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org> /** * ata_build_rw_tf - Build ATA taskfile for given read/write request * @tf: Target ATA taskfile -@@ -5090,6 +5103,9 @@ struct ata_queued_cmd *ata_qc_new_init(s +@@ -5111,6 +5124,9 @@ struct ata_queued_cmd *ata_qc_new_init(s if (tag < 0) return NULL; } @@ -75,7 +75,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org> qc = __ata_qc_from_tag(ap, tag); qc->tag = tag; -@@ -5992,6 +6008,9 @@ struct ata_port *ata_port_alloc(struct a +@@ -6012,6 +6028,9 @@ struct ata_port *ata_port_alloc(struct a ap->stats.unhandled_irq = 1; ap->stats.idle_irq = 1; #endif @@ -85,7 +85,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org> ata_sff_port_init(ap); return ap; -@@ -6013,6 +6032,12 @@ static void ata_host_release(struct devi +@@ -6033,6 +6052,12 @@ static void ata_host_release(struct devi kfree(ap->pmp_link); kfree(ap->slave_link); @@ -98,7 +98,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org> kfree(ap); host->ports[i] = NULL; } -@@ -6459,7 +6484,23 @@ int ata_host_register(struct ata_host *h +@@ -6479,7 +6504,23 @@ int ata_host_register(struct ata_host *h host->ports[i]->print_id = atomic_inc_return(&ata_print_id); host->ports[i]->local_port_no = i + 1; } diff --git a/target/linux/lantiq/patches-4.14/0001-MIPS-lantiq-add-pcie-driver.patch b/target/linux/lantiq/patches-4.14/0001-MIPS-lantiq-add-pcie-driver.patch index ecabe81e5d..77351e1791 100644 --- a/target/linux/lantiq/patches-4.14/0001-MIPS-lantiq-add-pcie-driver.patch +++ b/target/linux/lantiq/patches-4.14/0001-MIPS-lantiq-add-pcie-driver.patch @@ -41,7 +41,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org> --- a/arch/mips/lantiq/Kconfig +++ b/arch/mips/lantiq/Kconfig -@@ -18,6 +18,7 @@ config SOC_XWAY +@@ -20,6 +20,7 @@ config SOC_XWAY bool "XWAY" select SOC_TYPE_XWAY select HW_HAS_PCI @@ -49,7 +49,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org> select MFD_SYSCON select MFD_CORE -@@ -50,6 +51,15 @@ config PCI_LANTIQ +@@ -52,6 +53,15 @@ config PCI_LANTIQ bool "PCI Support" depends on SOC_XWAY && PCI diff --git a/target/linux/lantiq/patches-4.14/0052-MIPS-lantiq-fix-usb-clocks.patch b/target/linux/lantiq/patches-4.14/0052-MIPS-lantiq-fix-usb-clocks.patch deleted file mode 100644 index aa3069ed9d..0000000000 --- a/target/linux/lantiq/patches-4.14/0052-MIPS-lantiq-fix-usb-clocks.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 11e84fdfad0331555ca889c4ac6a9d5f37ae83df Mon Sep 17 00:00:00 2001 -From: Mathias Kresin <dev@kresin.me> -Date: Sat, 20 Jan 2018 14:38:40 +0100 -Subject: [PATCH] MIPS: lantiq: fix danube usb clock - -On danube the USB0 registers are at 1e101000 similar to all other lantiq -SoCs. - -Fixes: dea54fbad332 ("phy: Add an USB PHY driver for the Lantiq SoCs using the RCU module") -Signed-off-by: Mathias Kresin <dev@kresin.me> ---- - arch/mips/lantiq/xway/sysctrl.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/arch/mips/lantiq/xway/sysctrl.c -+++ b/arch/mips/lantiq/xway/sysctrl.c -@@ -581,7 +581,7 @@ void __init ltq_soc_init(void) - } else { - clkdev_add_static(ltq_danube_cpu_hz(), ltq_danube_fpi_hz(), - ltq_danube_fpi_hz(), ltq_danube_pp32_hz()); -- clkdev_add_pmu("1f203018.usb2-phy", "ctrl", 1, 0, PMU_USB0); -+ clkdev_add_pmu("1e101000.usb", "otg", 1, 0, PMU_USB0); - clkdev_add_pmu("1f203018.usb2-phy", "phy", 1, 0, PMU_USB0_P); - clkdev_add_pmu("1e103000.sdio", NULL, 1, 0, PMU_SDIO); - clkdev_add_pmu("1e103100.deu", NULL, 1, 0, PMU_DEU); diff --git a/target/linux/lantiq/patches-4.14/0053-MIPS-lantiq-enable-AHB-Bus-for-USB.patch b/target/linux/lantiq/patches-4.14/0053-MIPS-lantiq-enable-AHB-Bus-for-USB.patch deleted file mode 100644 index 314ec3d8fd..0000000000 --- a/target/linux/lantiq/patches-4.14/0053-MIPS-lantiq-enable-AHB-Bus-for-USB.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 2f57c45efb9acb5eea2d8af211ab87b3ccfbf584 Mon Sep 17 00:00:00 2001 -From: Mathias Kresin <dev@kresin.me> -Date: Sat, 20 Jan 2018 14:38:40 +0100 -Subject: [PATCH] MIPS: lantiq: enable AHB Bus for USB - -On Danube and AR9 the USB core is connected to the AHB bus, hence we need -to enable the AHB Bus as well. - -Fixes: dea54fbad332 ("phy: Add an USB PHY driver for the Lantiq SoCs using the RCU module") -Signed-off-by: Mathias Kresin <dev@kresin.me> ---- - arch/mips/lantiq/xway/sysctrl.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - ---- a/arch/mips/lantiq/xway/sysctrl.c -+++ b/arch/mips/lantiq/xway/sysctrl.c -@@ -570,9 +570,9 @@ void __init ltq_soc_init(void) - clkdev_add_static(ltq_ar9_cpu_hz(), ltq_ar9_fpi_hz(), - ltq_ar9_fpi_hz(), CLOCK_250M); - clkdev_add_pmu("1f203018.usb2-phy", "phy", 1, 0, PMU_USB0_P); -- clkdev_add_pmu("1e101000.usb", "otg", 1, 0, PMU_USB0); -+ clkdev_add_pmu("1e101000.usb", "otg", 1, 0, PMU_USB0 | PMU_AHBM); - clkdev_add_pmu("1f203034.usb2-phy", "phy", 1, 0, PMU_USB1_P); -- clkdev_add_pmu("1e106000.usb", "otg", 1, 0, PMU_USB1); -+ clkdev_add_pmu("1e106000.usb", "otg", 1, 0, PMU_USB1 | PMU_AHBM); - clkdev_add_pmu("1e180000.etop", "switch", 1, 0, PMU_SWITCH); - clkdev_add_pmu("1e103000.sdio", NULL, 1, 0, PMU_SDIO); - clkdev_add_pmu("1e103100.deu", NULL, 1, 0, PMU_DEU); -@@ -581,7 +581,7 @@ void __init ltq_soc_init(void) - } else { - clkdev_add_static(ltq_danube_cpu_hz(), ltq_danube_fpi_hz(), - ltq_danube_fpi_hz(), ltq_danube_pp32_hz()); -- clkdev_add_pmu("1e101000.usb", "otg", 1, 0, PMU_USB0); -+ clkdev_add_pmu("1e101000.usb", "otg", 1, 0, PMU_USB0 | PMU_AHBM); - clkdev_add_pmu("1f203018.usb2-phy", "phy", 1, 0, PMU_USB0_P); - clkdev_add_pmu("1e103000.sdio", NULL, 1, 0, PMU_SDIO); - clkdev_add_pmu("1e103100.deu", NULL, 1, 0, PMU_DEU); diff --git a/target/linux/lantiq/patches-4.14/0060-lantiq-ase-enable-MFD-SYSCON.patch b/target/linux/lantiq/patches-4.14/0060-lantiq-ase-enable-MFD-SYSCON.patch deleted file mode 100644 index a74f551898..0000000000 --- a/target/linux/lantiq/patches-4.14/0060-lantiq-ase-enable-MFD-SYSCON.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 24af63c6cce57cf88eda7c863035208fba59ee1c Mon Sep 17 00:00:00 2001 -From: Mathias Kresin <dev@kresin.me> -Date: Tue, 23 Jan 2018 22:14:28 +0100 -Subject: [PATCH] MIPS: lantiq: ase: Enable MFD_SYSCON - -Enable syscon to use it for the RCU MFD on Amazon SE as well. - -Fixes: 2b6639d4c794 ("MIPS: lantiq: Enable MFD_SYSCON to be able to use it for the RCU MFD") -Signed-off-by: Mathias Kresin <dev@kresin.me> ---- - arch/mips/lantiq/Kconfig | 2 ++ - 1 file changed, 2 insertions(+) - ---- a/arch/mips/lantiq/Kconfig -+++ b/arch/mips/lantiq/Kconfig -@@ -13,6 +13,8 @@ choice - config SOC_AMAZON_SE - bool "Amazon SE" - select SOC_TYPE_XWAY -+ select MFD_SYSCON -+ select MFD_CORE - - config SOC_XWAY - bool "XWAY" diff --git a/target/linux/mediatek/patches-4.14/0048-net-core-add-RPS-balancer.patch b/target/linux/mediatek/patches-4.14/0048-net-core-add-RPS-balancer.patch index a3f4fe8060..6cb5fa7495 100644 --- a/target/linux/mediatek/patches-4.14/0048-net-core-add-RPS-balancer.patch +++ b/target/linux/mediatek/patches-4.14/0048-net-core-add-RPS-balancer.patch @@ -10,7 +10,7 @@ Signed-off-by: John Crispin <john@phrozen.org> --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -3628,6 +3628,58 @@ set_rps_cpu(struct net_device *dev, stru +@@ -3636,6 +3636,58 @@ set_rps_cpu(struct net_device *dev, stru return rflow; } @@ -69,7 +69,7 @@ Signed-off-by: John Crispin <john@phrozen.org> /* * get_rps_cpu is called from netif_receive_skb and returns the target * CPU from the RPS map of the receiving queue for a given skb. -@@ -3717,7 +3769,7 @@ static int get_rps_cpu(struct net_device +@@ -3725,7 +3777,7 @@ static int get_rps_cpu(struct net_device try_rps: if (map) { @@ -78,7 +78,7 @@ Signed-off-by: John Crispin <john@phrozen.org> if (cpu_online(tcpu)) { cpu = tcpu; goto done; -@@ -8802,6 +8854,9 @@ static int __init net_dev_init(void) +@@ -8810,6 +8862,9 @@ static int __init net_dev_init(void) sd->backlog.weight = weight_p; } diff --git a/target/linux/mediatek/patches-4.14/0052-net-phy-add-FC.patch b/target/linux/mediatek/patches-4.14/0052-net-phy-add-FC.patch index 021f713157..3c4fc5a7ce 100644 --- a/target/linux/mediatek/patches-4.14/0052-net-phy-add-FC.patch +++ b/target/linux/mediatek/patches-4.14/0052-net-phy-add-FC.patch @@ -10,7 +10,7 @@ Signed-off-by: John Crispin <john@phrozen.org> --- a/drivers/net/phy/phy_device.c +++ b/drivers/net/phy/phy_device.c -@@ -1922,7 +1922,7 @@ static struct phy_driver genphy_driver = +@@ -1929,7 +1929,7 @@ static struct phy_driver genphy_driver = .config_init = genphy_config_init, .features = PHY_GBIT_FEATURES | SUPPORTED_MII | SUPPORTED_AUI | SUPPORTED_FIBRE | diff --git a/target/linux/mvebu/patches-4.14/411-sfp-add-sfp-compatible.patch b/target/linux/mvebu/patches-4.14/411-sfp-add-sfp-compatible.patch index a0462e766e..b775116cda 100644 --- a/target/linux/mvebu/patches-4.14/411-sfp-add-sfp-compatible.patch +++ b/target/linux/mvebu/patches-4.14/411-sfp-add-sfp-compatible.patch @@ -14,7 +14,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk> --- a/drivers/net/phy/sfp.c +++ b/drivers/net/phy/sfp.c -@@ -1137,6 +1137,7 @@ static int sfp_remove(struct platform_de +@@ -1136,6 +1136,7 @@ static int sfp_remove(struct platform_de static const struct of_device_id sfp_of_match[] = { { .compatible = "sff,sfp", }, diff --git a/target/linux/mvebu/patches-4.14/450-reprobe_sfp_phy.patch b/target/linux/mvebu/patches-4.14/450-reprobe_sfp_phy.patch index a9a6634c23..e9a3d695da 100644 --- a/target/linux/mvebu/patches-4.14/450-reprobe_sfp_phy.patch +++ b/target/linux/mvebu/patches-4.14/450-reprobe_sfp_phy.patch @@ -22,20 +22,16 @@ Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com> { struct phy_device *phy; int err; -@@ -497,12 +497,12 @@ static void sfp_sm_probe_phy(struct sfp - +@@ -498,11 +498,11 @@ static void sfp_sm_probe_phy(struct sfp phy = mdiobus_scan(sfp->i2c_mii, SFP_PHY_ADDR); + if (phy == ERR_PTR(-ENODEV)) { + dev_info(sfp->dev, "no PHY detected\n"); +- return; ++ return -EAGAIN; + } if (IS_ERR(phy)) { -+ if (PTR_ERR(phy) == -ENODEV) { -+ dev_dbg(sfp->dev, "no PHY detected\n"); -+ return -EAGAIN; -+ } dev_err(sfp->dev, "mdiobus scan returned %ld\n", PTR_ERR(phy)); - return; -- } -- if (!phy) { -- dev_info(sfp->dev, "no PHY detected\n"); -- return; + return PTR_ERR(phy); } diff --git a/target/linux/ramips/patches-4.14/0034-NET-multi-phy-support.patch b/target/linux/ramips/patches-4.14/0034-NET-multi-phy-support.patch index 7c2777c467..e10f3a31a1 100644 --- a/target/linux/ramips/patches-4.14/0034-NET-multi-phy-support.patch +++ b/target/linux/ramips/patches-4.14/0034-NET-multi-phy-support.patch @@ -11,7 +11,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org> --- a/drivers/net/phy/phy.c +++ b/drivers/net/phy/phy.c -@@ -981,7 +981,10 @@ void phy_state_machine(struct work_struc +@@ -980,7 +980,10 @@ void phy_state_machine(struct work_struc /* If the link is down, give up on negotiation for now */ if (!phydev->link) { phydev->state = PHY_NOLINK; @@ -23,7 +23,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org> break; } -@@ -1068,7 +1071,10 @@ void phy_state_machine(struct work_struc +@@ -1067,7 +1070,10 @@ void phy_state_machine(struct work_struc phy_link_up(phydev); } else { phydev->state = PHY_NOLINK; @@ -35,7 +35,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org> } if (phy_interrupt_is_valid(phydev)) -@@ -1078,7 +1084,10 @@ void phy_state_machine(struct work_struc +@@ -1077,7 +1083,10 @@ void phy_state_machine(struct work_struc case PHY_HALTED: if (phydev->link) { phydev->link = 0; |