aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
diff options
context:
space:
mode:
authorKevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>2017-08-17 17:58:24 +0100
committerStijn Tintel <stijn@linux-ipv6.be>2017-08-17 19:47:27 +0200
commit4a1b87aba448fae648bf17830379fde11060927b (patch)
tree0f769693caf6f7210c6aece9d06e0c3f37fbc4ff /target/linux
parentcae20f64b555cfb76f74eb115b2d01fcb22ca462 (diff)
downloadupstream-4a1b87aba448fae648bf17830379fde11060927b.tar.gz
upstream-4a1b87aba448fae648bf17830379fde11060927b.tar.bz2
upstream-4a1b87aba448fae648bf17830379fde11060927b.zip
kernel: update 4.4 to 4.4.83
Refresh patches. Minor update 704-phy-no-genphy-soft-reset.patch which was partially accepted upstream. Compile-tested on ar71xx. Runtime-tested on ar71xx. Fixes the following vulnerabilities: - CVE-2017-7533 (4.4.80) - CVE-2017-1000111 (4.4.82) - CVE-2017-1000112 (4.4.82) Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
Diffstat (limited to 'target/linux')
-rw-r--r--target/linux/brcm2708/patches-4.4/0029-Add-dwc_otg-driver.patch2
-rw-r--r--target/linux/brcm2708/patches-4.4/0111-mm-Remove-the-PFN-busy-warning.patch2
-rw-r--r--target/linux/brcm2708/patches-4.4/0179-Protect-__release_resource-against-resources-without.patch2
-rw-r--r--target/linux/generic/patches-4.4/630-packet_socket_type.patch4
-rw-r--r--target/linux/generic/patches-4.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch10
-rw-r--r--target/linux/generic/patches-4.4/701-phy_extension.patch2
-rw-r--r--target/linux/generic/patches-4.4/704-phy-no-genphy-soft-reset.patch22
-rw-r--r--target/linux/generic/patches-4.4/710-phy-add-mdio_register_board_info.patch2
-rw-r--r--target/linux/generic/patches-4.4/721-phy_packets.patch2
-rw-r--r--target/linux/generic/patches-4.4/811-pci_disable_usb_common_quirks.patch8
-rw-r--r--target/linux/lantiq/patches-4.4/0026-NET-multi-phy-support.patch6
-rw-r--r--target/linux/mediatek/patches-4.4/0001-NET-multi-phy-support.patch6
-rw-r--r--target/linux/mvebu/patches-4.4/125-phy-provide-a-hook-for-link-up-link-down-events.patch18
-rw-r--r--target/linux/mvebu/patches-4.4/128-phy-export-phy_speed_to_str-for-phylink.patch2
-rw-r--r--target/linux/ramips/patches-4.4/0034-NET-multi-phy-support.patch6
-rw-r--r--target/linux/ramips/patches-4.4/101-mt7621-timer.patch8
16 files changed, 42 insertions, 60 deletions
diff --git a/target/linux/brcm2708/patches-4.4/0029-Add-dwc_otg-driver.patch b/target/linux/brcm2708/patches-4.4/0029-Add-dwc_otg-driver.patch
index 8ed8870988..0310041353 100644
--- a/target/linux/brcm2708/patches-4.4/0029-Add-dwc_otg-driver.patch
+++ b/target/linux/brcm2708/patches-4.4/0029-Add-dwc_otg-driver.patch
@@ -659,7 +659,7 @@ dwc_otg: Remove duplicate gadget probe/unregister function
}
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
-@@ -4973,7 +4973,7 @@ static void port_event(struct usb_hub *h
+@@ -4975,7 +4975,7 @@ static void port_event(struct usb_hub *h
if (portchange & USB_PORT_STAT_C_OVERCURRENT) {
u16 status = 0, unused;
diff --git a/target/linux/brcm2708/patches-4.4/0111-mm-Remove-the-PFN-busy-warning.patch b/target/linux/brcm2708/patches-4.4/0111-mm-Remove-the-PFN-busy-warning.patch
index 014f878e86..88f4939e0f 100644
--- a/target/linux/brcm2708/patches-4.4/0111-mm-Remove-the-PFN-busy-warning.patch
+++ b/target/linux/brcm2708/patches-4.4/0111-mm-Remove-the-PFN-busy-warning.patch
@@ -18,7 +18,7 @@ Signed-off-by: Eric Anholt <eric@anholt.net>
/* Make sure the range is really isolated. */
if (test_pages_isolated(outer_start, end, false)) {
-- pr_info("%s: [%lx, %lx) PFNs busy\n",
+- pr_info_ratelimited("%s: [%lx, %lx) PFNs busy\n",
- __func__, outer_start, end);
ret = -EBUSY;
goto done;
diff --git a/target/linux/brcm2708/patches-4.4/0179-Protect-__release_resource-against-resources-without.patch b/target/linux/brcm2708/patches-4.4/0179-Protect-__release_resource-against-resources-without.patch
index 2455d52b61..c16bf57f5c 100644
--- a/target/linux/brcm2708/patches-4.4/0179-Protect-__release_resource-against-resources-without.patch
+++ b/target/linux/brcm2708/patches-4.4/0179-Protect-__release_resource-against-resources-without.patch
@@ -12,7 +12,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
--- a/kernel/resource.c
+++ b/kernel/resource.c
-@@ -237,6 +237,12 @@ static int __release_resource(struct res
+@@ -246,6 +246,12 @@ static int __release_resource(struct res
{
struct resource *tmp, **p;
diff --git a/target/linux/generic/patches-4.4/630-packet_socket_type.patch b/target/linux/generic/patches-4.4/630-packet_socket_type.patch
index d30878684f..8c6b7a37b5 100644
--- a/target/linux/generic/patches-4.4/630-packet_socket_type.patch
+++ b/target/linux/generic/patches-4.4/630-packet_socket_type.patch
@@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (sock->type == SOCK_PACKET)
po->prot_hook.func = packet_rcv_spkt;
-@@ -3739,6 +3742,16 @@ packet_setsockopt(struct socket *sock, i
+@@ -3744,6 +3747,16 @@ packet_setsockopt(struct socket *sock, i
po->xmit = val ? packet_direct_xmit : dev_queue_xmit;
return 0;
}
@@ -108,7 +108,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
default:
return -ENOPROTOOPT;
}
-@@ -3791,6 +3804,13 @@ static int packet_getsockopt(struct sock
+@@ -3796,6 +3809,13 @@ static int packet_getsockopt(struct sock
case PACKET_VNET_HDR:
val = po->has_vnet_hdr;
break;
diff --git a/target/linux/generic/patches-4.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch b/target/linux/generic/patches-4.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch
index 0c5871048b..0616eaa7c0 100644
--- a/target/linux/generic/patches-4.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch
+++ b/target/linux/generic/patches-4.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch
@@ -17,7 +17,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/net/core/dev.c
+++ b/net/core/dev.c
-@@ -4249,6 +4249,9 @@ static enum gro_result dev_gro_receive(s
+@@ -4256,6 +4256,9 @@ static enum gro_result dev_gro_receive(s
enum gro_result ret;
int grow;
@@ -27,7 +27,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (!(skb->dev->features & NETIF_F_GRO))
goto normal;
-@@ -5415,6 +5418,48 @@ static void __netdev_adjacent_dev_unlink
+@@ -5422,6 +5425,48 @@ static void __netdev_adjacent_dev_unlink
&upper_dev->adj_list.lower);
}
@@ -76,7 +76,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 *private)
-@@ -5486,6 +5531,7 @@ static int __netdev_upper_dev_link(struc
+@@ -5493,6 +5538,7 @@ static int __netdev_upper_dev_link(struc
goto rollback_lower_mesh;
}
@@ -84,7 +84,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev,
&changeupper_info.info);
return 0;
-@@ -5612,6 +5658,7 @@ void netdev_upper_dev_unlink(struct net_
+@@ -5619,6 +5665,7 @@ void netdev_upper_dev_unlink(struct net_
list_for_each_entry(i, &upper_dev->all_adj_list.upper, list)
__netdev_adjacent_dev_unlink(dev, i->dev, i->ref_nr);
@@ -92,7 +92,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev,
&changeupper_info.info);
}
-@@ -6152,6 +6199,7 @@ int dev_set_mac_address(struct net_devic
+@@ -6159,6 +6206,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/patches-4.4/701-phy_extension.patch b/target/linux/generic/patches-4.4/701-phy_extension.patch
index 6cb3fdfd44..a1c48b7a3a 100644
--- a/target/linux/generic/patches-4.4/701-phy_extension.patch
+++ b/target/linux/generic/patches-4.4/701-phy_extension.patch
@@ -53,7 +53,7 @@
* @phydev: the phy_device struct
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
-@@ -796,6 +796,7 @@ void phy_start_machine(struct phy_device
+@@ -800,6 +800,7 @@ void phy_start_machine(struct phy_device
void phy_stop_machine(struct phy_device *phydev);
int phy_ethtool_sset(struct phy_device *phydev, struct ethtool_cmd *cmd);
int phy_ethtool_gset(struct phy_device *phydev, struct ethtool_cmd *cmd);
diff --git a/target/linux/generic/patches-4.4/704-phy-no-genphy-soft-reset.patch b/target/linux/generic/patches-4.4/704-phy-no-genphy-soft-reset.patch
index d876187d7c..7cec6d3226 100644
--- a/target/linux/generic/patches-4.4/704-phy-no-genphy-soft-reset.patch
+++ b/target/linux/generic/patches-4.4/704-phy-no-genphy-soft-reset.patch
@@ -1,29 +1,11 @@
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
-@@ -1213,7 +1213,7 @@ int genphy_config_init(struct phy_device
- return 0;
- }
-
--static int gen10g_soft_reset(struct phy_device *phydev)
-+static int no_soft_reset(struct phy_device *phydev)
- {
- /* Do nothing for now */
- return 0;
-@@ -1448,7 +1448,7 @@ static struct phy_driver genphy_driver[]
- .phy_id = 0xffffffff,
- .phy_id_mask = 0xffffffff,
- .name = "Generic PHY",
-- .soft_reset = genphy_soft_reset,
-+ .soft_reset = no_soft_reset,
- .config_init = genphy_config_init,
- .features = PHY_GBIT_FEATURES | SUPPORTED_MII |
- SUPPORTED_AUI | SUPPORTED_FIBRE |
-@@ -1463,7 +1463,7 @@ static struct phy_driver genphy_driver[]
+@@ -1465,7 +1465,7 @@ static struct phy_driver genphy_driver[]
.phy_id = 0xffffffff,
.phy_id_mask = 0xffffffff,
.name = "Generic 10G PHY",
- .soft_reset = gen10g_soft_reset,
-+ .soft_reset = no_soft_reset,
++ .soft_reset = genphy_no_soft_reset,
.config_init = gen10g_config_init,
.features = 0,
.config_aneg = gen10g_config_aneg,
diff --git a/target/linux/generic/patches-4.4/710-phy-add-mdio_register_board_info.patch b/target/linux/generic/patches-4.4/710-phy-add-mdio_register_board_info.patch
index 4886dd0e3a..bd15df2384 100644
--- a/target/linux/generic/patches-4.4/710-phy-add-mdio_register_board_info.patch
+++ b/target/linux/generic/patches-4.4/710-phy-add-mdio_register_board_info.patch
@@ -46,7 +46,7 @@
phy_device_free(phydev);
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
-@@ -835,6 +835,23 @@ void mdio_bus_exit(void);
+@@ -839,6 +839,23 @@ void mdio_bus_exit(void);
extern struct bus_type mdio_bus_type;
diff --git a/target/linux/generic/patches-4.4/721-phy_packets.patch b/target/linux/generic/patches-4.4/721-phy_packets.patch
index b163684c69..89ffdc558d 100644
--- a/target/linux/generic/patches-4.4/721-phy_packets.patch
+++ b/target/linux/generic/patches-4.4/721-phy_packets.patch
@@ -86,7 +86,7 @@
help
--- a/net/core/dev.c
+++ b/net/core/dev.c
-@@ -2736,10 +2736,20 @@ static int xmit_one(struct sk_buff *skb,
+@@ -2743,10 +2743,20 @@ static int xmit_one(struct sk_buff *skb,
if (!list_empty(&ptype_all) || !list_empty(&dev->ptype_all))
dev_queue_xmit_nit(skb, dev);
diff --git a/target/linux/generic/patches-4.4/811-pci_disable_usb_common_quirks.patch b/target/linux/generic/patches-4.4/811-pci_disable_usb_common_quirks.patch
index f22bf804ef..c990681067 100644
--- a/target/linux/generic/patches-4.4/811-pci_disable_usb_common_quirks.patch
+++ b/target/linux/generic/patches-4.4/811-pci_disable_usb_common_quirks.patch
@@ -1,7 +1,7 @@
--- a/drivers/usb/host/pci-quirks.c
+++ b/drivers/usb/host/pci-quirks.c
-@@ -97,6 +97,8 @@ struct amd_chipset_type {
+@@ -98,6 +98,8 @@ struct amd_chipset_type {
u8 rev;
};
@@ -10,7 +10,7 @@
static struct amd_chipset_info {
struct pci_dev *nb_dev;
struct pci_dev *smbus_dev;
-@@ -450,6 +452,10 @@ void usb_amd_dev_put(void)
+@@ -457,6 +459,10 @@ void usb_amd_dev_put(void)
}
EXPORT_SYMBOL_GPL(usb_amd_dev_put);
@@ -21,7 +21,7 @@
/*
* Make sure the controller is completely inactive, unable to
* generate interrupts or do DMA.
-@@ -529,8 +535,17 @@ reset_needed:
+@@ -536,8 +542,17 @@ reset_needed:
uhci_reset_hc(pdev, base);
return 1;
}
@@ -39,7 +39,7 @@
static inline int io_type_enabled(struct pci_dev *pdev, unsigned int mask)
{
u16 cmd;
-@@ -1095,3 +1110,4 @@ static void quirk_usb_early_handoff(stru
+@@ -1102,3 +1117,4 @@ static void quirk_usb_early_handoff(stru
}
DECLARE_PCI_FIXUP_CLASS_FINAL(PCI_ANY_ID, PCI_ANY_ID,
PCI_CLASS_SERIAL_USB, 8, quirk_usb_early_handoff);
diff --git a/target/linux/lantiq/patches-4.4/0026-NET-multi-phy-support.patch b/target/linux/lantiq/patches-4.4/0026-NET-multi-phy-support.patch
index 381170a396..f52f6f544b 100644
--- a/target/linux/lantiq/patches-4.4/0026-NET-multi-phy-support.patch
+++ b/target/linux/lantiq/patches-4.4/0026-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
-@@ -890,7 +890,8 @@ void phy_state_machine(struct work_struc
+@@ -893,7 +893,8 @@ 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;
@@ -21,7 +21,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
phydev->adjust_link(phydev->attached_dev);
break;
}
-@@ -973,7 +974,8 @@ void phy_state_machine(struct work_struc
+@@ -985,7 +986,8 @@ void phy_state_machine(struct work_struc
netif_carrier_on(phydev->attached_dev);
} else {
phydev->state = PHY_NOLINK;
@@ -31,7 +31,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
}
phydev->adjust_link(phydev->attached_dev);
-@@ -985,7 +987,8 @@ void phy_state_machine(struct work_struc
+@@ -997,7 +999,8 @@ void phy_state_machine(struct work_struc
case PHY_HALTED:
if (phydev->link) {
phydev->link = 0;
diff --git a/target/linux/mediatek/patches-4.4/0001-NET-multi-phy-support.patch b/target/linux/mediatek/patches-4.4/0001-NET-multi-phy-support.patch
index b60eac0efc..6778dad0ba 100644
--- a/target/linux/mediatek/patches-4.4/0001-NET-multi-phy-support.patch
+++ b/target/linux/mediatek/patches-4.4/0001-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
-@@ -890,7 +890,8 @@ void phy_state_machine(struct work_struc
+@@ -893,7 +893,8 @@ 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;
@@ -21,7 +21,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
phydev->adjust_link(phydev->attached_dev);
break;
}
-@@ -973,7 +974,8 @@ void phy_state_machine(struct work_struc
+@@ -985,7 +986,8 @@ void phy_state_machine(struct work_struc
netif_carrier_on(phydev->attached_dev);
} else {
phydev->state = PHY_NOLINK;
@@ -31,7 +31,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
}
phydev->adjust_link(phydev->attached_dev);
-@@ -985,7 +987,8 @@ void phy_state_machine(struct work_struc
+@@ -997,7 +999,8 @@ void phy_state_machine(struct work_struc
case PHY_HALTED:
if (phydev->link) {
phydev->link = 0;
diff --git a/target/linux/mvebu/patches-4.4/125-phy-provide-a-hook-for-link-up-link-down-events.patch b/target/linux/mvebu/patches-4.4/125-phy-provide-a-hook-for-link-up-link-down-events.patch
index b00968961f..75d30f6a08 100644
--- a/target/linux/mvebu/patches-4.4/125-phy-provide-a-hook-for-link-up-link-down-events.patch
+++ b/target/linux/mvebu/patches-4.4/125-phy-provide-a-hook-for-link-up-link-down-events.patch
@@ -22,7 +22,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
--- a/drivers/net/phy/phy.c
+++ b/drivers/net/phy/phy.c
-@@ -849,6 +849,16 @@ void phy_start(struct phy_device *phydev
+@@ -852,6 +852,16 @@ void phy_start(struct phy_device *phydev
}
EXPORT_SYMBOL(phy_start);
@@ -39,7 +39,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
/**
* phy_state_machine - Handle the state machine
* @work: work_struct that describes the work to be done
-@@ -890,8 +900,7 @@ void phy_state_machine(struct work_struc
+@@ -893,8 +903,7 @@ 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;
@@ -49,7 +49,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
break;
}
-@@ -903,9 +912,7 @@ void phy_state_machine(struct work_struc
+@@ -906,9 +915,7 @@ void phy_state_machine(struct work_struc
/* If AN is done, we're running */
if (err > 0) {
phydev->state = PHY_RUNNING;
@@ -60,7 +60,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
} else if (0 == phydev->link_timeout--)
needs_aneg = true;
break;
-@@ -930,8 +937,7 @@ void phy_state_machine(struct work_struc
+@@ -933,8 +940,7 @@ void phy_state_machine(struct work_struc
}
}
phydev->state = PHY_RUNNING;
@@ -70,7 +70,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
}
break;
case PHY_FORCING:
-@@ -941,13 +947,12 @@ void phy_state_machine(struct work_struc
+@@ -944,13 +950,12 @@ void phy_state_machine(struct work_struc
if (phydev->link) {
phydev->state = PHY_RUNNING;
@@ -86,7 +86,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
break;
case PHY_RUNNING:
/* Only register a CHANGE if we are polling or ignoring
-@@ -970,14 +975,12 @@ void phy_state_machine(struct work_struc
+@@ -982,14 +987,12 @@ void phy_state_machine(struct work_struc
if (phydev->link) {
phydev->state = PHY_RUNNING;
@@ -103,7 +103,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
if (phy_interrupt_is_valid(phydev))
err = phy_config_interrupt(phydev,
PHY_INTERRUPT_ENABLED);
-@@ -985,8 +988,7 @@ void phy_state_machine(struct work_struc
+@@ -997,8 +1000,7 @@ void phy_state_machine(struct work_struc
case PHY_HALTED:
if (phydev->link) {
phydev->link = 0;
@@ -113,7 +113,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
do_suspend = true;
}
break;
-@@ -1006,11 +1008,11 @@ void phy_state_machine(struct work_struc
+@@ -1018,11 +1020,11 @@ void phy_state_machine(struct work_struc
if (phydev->link) {
phydev->state = PHY_RUNNING;
@@ -127,7 +127,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
} else {
phydev->state = PHY_AN;
phydev->link_timeout = PHY_AN_TIMEOUT;
-@@ -1022,11 +1024,11 @@ void phy_state_machine(struct work_struc
+@@ -1034,11 +1036,11 @@ void phy_state_machine(struct work_struc
if (phydev->link) {
phydev->state = PHY_RUNNING;
diff --git a/target/linux/mvebu/patches-4.4/128-phy-export-phy_speed_to_str-for-phylink.patch b/target/linux/mvebu/patches-4.4/128-phy-export-phy_speed_to_str-for-phylink.patch
index c43607029c..1b79259dac 100644
--- a/target/linux/mvebu/patches-4.4/128-phy-export-phy_speed_to_str-for-phylink.patch
+++ b/target/linux/mvebu/patches-4.4/128-phy-export-phy_speed_to_str-for-phylink.patch
@@ -34,7 +34,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
case PHY_##_state: \
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
-@@ -812,6 +812,7 @@ int phy_ethtool_gset(struct phy_device *
+@@ -816,6 +816,7 @@ int phy_ethtool_gset(struct phy_device *
int phy_ethtool_ioctl(struct phy_device *phydev, void *useraddr);
int phy_mii_ioctl(struct phy_device *phydev, struct ifreq *ifr, int cmd);
int phy_start_interrupts(struct phy_device *phydev);
diff --git a/target/linux/ramips/patches-4.4/0034-NET-multi-phy-support.patch b/target/linux/ramips/patches-4.4/0034-NET-multi-phy-support.patch
index f49660a56e..bb55c120da 100644
--- a/target/linux/ramips/patches-4.4/0034-NET-multi-phy-support.patch
+++ b/target/linux/ramips/patches-4.4/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
-@@ -890,7 +890,8 @@ void phy_state_machine(struct work_struc
+@@ -893,7 +893,8 @@ 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;
@@ -21,7 +21,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
phydev->adjust_link(phydev->attached_dev);
break;
}
-@@ -973,7 +974,8 @@ void phy_state_machine(struct work_struc
+@@ -985,7 +986,8 @@ void phy_state_machine(struct work_struc
netif_carrier_on(phydev->attached_dev);
} else {
phydev->state = PHY_NOLINK;
@@ -31,7 +31,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
}
phydev->adjust_link(phydev->attached_dev);
-@@ -985,7 +987,8 @@ void phy_state_machine(struct work_struc
+@@ -997,7 +999,8 @@ void phy_state_machine(struct work_struc
case PHY_HALTED:
if (phydev->link) {
phydev->link = 0;
diff --git a/target/linux/ramips/patches-4.4/101-mt7621-timer.patch b/target/linux/ramips/patches-4.4/101-mt7621-timer.patch
index 02497bc1d2..630bb2c1cd 100644
--- a/target/linux/ramips/patches-4.4/101-mt7621-timer.patch
+++ b/target/linux/ramips/patches-4.4/101-mt7621-timer.patch
@@ -1,6 +1,6 @@
--- a/arch/mips/ralink/mt7621.c
+++ b/arch/mips/ralink/mt7621.c
-@@ -18,6 +18,7 @@
+@@ -21,6 +21,7 @@
#include <asm/mach-ralink/ralink_regs.h>
#include <asm/mach-ralink/mt7621.h>
#include <asm/mips-boards/launch.h>
@@ -8,7 +8,7 @@
#include <pinmux.h>
-@@ -179,6 +180,58 @@ bool plat_cpu_core_present(int core)
+@@ -178,6 +179,58 @@ bool plat_cpu_core_present(int core)
return true;
}
@@ -79,7 +79,7 @@
choice
--- a/arch/mips/ralink/timer-gic.c
+++ b/arch/mips/ralink/timer-gic.c
-@@ -12,6 +12,7 @@
+@@ -3,6 +3,7 @@
#include <linux/of.h>
#include <linux/clk-provider.h>
#include <linux/clocksource.h>
@@ -87,7 +87,7 @@
#include "common.h"
-@@ -19,6 +20,8 @@ void __init plat_time_init(void)
+@@ -10,6 +11,8 @@ void __init plat_time_init(void)
{
ralink_of_remap();