From c419d3be121a35680753f4709a070b5da239d97c Mon Sep 17 00:00:00 2001 From: =?utf8?q?Rafa=C5=82=20Mi=C5=82ecki?= Date: Wed, 11 Feb 2015 17:35:09 +0000 Subject: [PATCH] kernel: backport mainlined bgmac patches from 3.19 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Rafał Miłecki git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44410 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- ...=> 074-bgmac-register-napi-before-the-device.patch} | 18 ++++++++++++------ ...tivate-irqs-only-if-there-is-nothing-to-poll.patch} | 14 ++++++++++---- ...=> 070-bgmac-register-napi-before-the-device.patch} | 18 ++++++++++++------ ...tivate-irqs-only-if-there-is-nothing-to-poll.patch} | 14 ++++++++++---- 4 files changed, 44 insertions(+), 20 deletions(-) rename target/linux/generic/patches-3.14/{771-bgmac-register-napi-before-the-device.patch => 074-bgmac-register-napi-before-the-device.patch} (65%) rename target/linux/generic/patches-3.14/{772-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch => 075-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch} (63%) rename target/linux/generic/patches-3.18/{771-bgmac-register-napi-before-the-device.patch => 070-bgmac-register-napi-before-the-device.patch} (65%) rename target/linux/generic/patches-3.18/{772-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch => 071-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch} (63%) diff --git a/target/linux/generic/patches-3.14/771-bgmac-register-napi-before-the-device.patch b/target/linux/generic/patches-3.14/074-bgmac-register-napi-before-the-device.patch similarity index 65% rename from target/linux/generic/patches-3.14/771-bgmac-register-napi-before-the-device.patch rename to target/linux/generic/patches-3.14/074-bgmac-register-napi-before-the-device.patch index 56248c6720..2eba9eee82 100644 --- a/target/linux/generic/patches-3.14/771-bgmac-register-napi-before-the-device.patch +++ b/target/linux/generic/patches-3.14/074-bgmac-register-napi-before-the-device.patch @@ -1,18 +1,21 @@ -From d5b4e70e8c205a67e2e246908b259367ab9ccecf Mon Sep 17 00:00:00 2001 +From 6216642f200258708e47170ff14ba8ecb486f4f0 Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens -Date: Mon, 8 Dec 2014 08:27:23 +0100 -Subject: [PATCH 2/4] bgmac: register napi before the device +Date: Sun, 18 Jan 2015 19:49:58 +0100 +Subject: [PATCH] bgmac: register napi before the device napi should get registered before the netdev and not after. Signed-off-by: Hauke Mehrtens +Signed-off-by: David S. Miller --- drivers/net/ethernet/broadcom/bgmac.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) +diff --git a/drivers/net/ethernet/broadcom/bgmac.c b/drivers/net/ethernet/broadcom/bgmac.c +index 05c6af6..aa9f950 100644 --- a/drivers/net/ethernet/broadcom/bgmac.c +++ b/drivers/net/ethernet/broadcom/bgmac.c -@@ -1515,6 +1515,8 @@ static int bgmac_probe(struct bcma_devic +@@ -1515,6 +1515,8 @@ static int bgmac_probe(struct bcma_device *core) if (core->bus->sprom.boardflags_lo & BGMAC_BFL_ENETADM) bgmac_warn(bgmac, "Support for ADMtek ethernet switch not implemented\n"); @@ -21,7 +24,7 @@ Signed-off-by: Hauke Mehrtens err = bgmac_mii_register(bgmac); if (err) { bgmac_err(bgmac, "Cannot register MDIO\n"); -@@ -1529,8 +1531,6 @@ static int bgmac_probe(struct bcma_devic +@@ -1529,8 +1531,6 @@ static int bgmac_probe(struct bcma_device *core) netif_carrier_off(net_dev); @@ -30,7 +33,7 @@ Signed-off-by: Hauke Mehrtens return 0; err_mii_unregister: -@@ -1549,9 +1549,9 @@ static void bgmac_remove(struct bcma_dev +@@ -1549,9 +1549,9 @@ static void bgmac_remove(struct bcma_device *core) { struct bgmac *bgmac = bcma_get_drvdata(core); @@ -41,3 +44,6 @@ Signed-off-by: Hauke Mehrtens bgmac_dma_free(bgmac); bcma_set_drvdata(core, NULL); free_netdev(bgmac->net_dev); +-- +1.8.4.5 + diff --git a/target/linux/generic/patches-3.14/772-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch b/target/linux/generic/patches-3.14/075-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch similarity index 63% rename from target/linux/generic/patches-3.14/772-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch rename to target/linux/generic/patches-3.14/075-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch index b494998be3..506d8c6f1c 100644 --- a/target/linux/generic/patches-3.14/772-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch +++ b/target/linux/generic/patches-3.14/075-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch @@ -1,19 +1,22 @@ -From fbd3b188fbaa861165a074c454d8f8dcf15343a0 Mon Sep 17 00:00:00 2001 +From 43f159c60a99318b1ef7d1d7c16c4dfdd06bfd90 Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens -Date: Mon, 8 Dec 2014 08:47:10 +0100 -Subject: [PATCH 3/4] bgmac: activate irqs only if there is nothing to poll +Date: Sun, 18 Jan 2015 19:49:59 +0100 +Subject: [PATCH] bgmac: activate irqs only if there is nothing to poll IRQs should only get activated when there is nothing to poll in the queue any more and to after every poll. Signed-off-by: Hauke Mehrtens +Signed-off-by: David S. Miller --- drivers/net/ethernet/broadcom/bgmac.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) +diff --git a/drivers/net/ethernet/broadcom/bgmac.c b/drivers/net/ethernet/broadcom/bgmac.c +index aa9f950..3007d95 100644 --- a/drivers/net/ethernet/broadcom/bgmac.c +++ b/drivers/net/ethernet/broadcom/bgmac.c -@@ -1167,10 +1167,10 @@ static int bgmac_poll(struct napi_struct +@@ -1167,10 +1167,10 @@ static int bgmac_poll(struct napi_struct *napi, int weight) bgmac->int_status = 0; } @@ -27,3 +30,6 @@ Signed-off-by: Hauke Mehrtens return handled; } +-- +1.8.4.5 + diff --git a/target/linux/generic/patches-3.18/771-bgmac-register-napi-before-the-device.patch b/target/linux/generic/patches-3.18/070-bgmac-register-napi-before-the-device.patch similarity index 65% rename from target/linux/generic/patches-3.18/771-bgmac-register-napi-before-the-device.patch rename to target/linux/generic/patches-3.18/070-bgmac-register-napi-before-the-device.patch index 56248c6720..2eba9eee82 100644 --- a/target/linux/generic/patches-3.18/771-bgmac-register-napi-before-the-device.patch +++ b/target/linux/generic/patches-3.18/070-bgmac-register-napi-before-the-device.patch @@ -1,18 +1,21 @@ -From d5b4e70e8c205a67e2e246908b259367ab9ccecf Mon Sep 17 00:00:00 2001 +From 6216642f200258708e47170ff14ba8ecb486f4f0 Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens -Date: Mon, 8 Dec 2014 08:27:23 +0100 -Subject: [PATCH 2/4] bgmac: register napi before the device +Date: Sun, 18 Jan 2015 19:49:58 +0100 +Subject: [PATCH] bgmac: register napi before the device napi should get registered before the netdev and not after. Signed-off-by: Hauke Mehrtens +Signed-off-by: David S. Miller --- drivers/net/ethernet/broadcom/bgmac.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) +diff --git a/drivers/net/ethernet/broadcom/bgmac.c b/drivers/net/ethernet/broadcom/bgmac.c +index 05c6af6..aa9f950 100644 --- a/drivers/net/ethernet/broadcom/bgmac.c +++ b/drivers/net/ethernet/broadcom/bgmac.c -@@ -1515,6 +1515,8 @@ static int bgmac_probe(struct bcma_devic +@@ -1515,6 +1515,8 @@ static int bgmac_probe(struct bcma_device *core) if (core->bus->sprom.boardflags_lo & BGMAC_BFL_ENETADM) bgmac_warn(bgmac, "Support for ADMtek ethernet switch not implemented\n"); @@ -21,7 +24,7 @@ Signed-off-by: Hauke Mehrtens err = bgmac_mii_register(bgmac); if (err) { bgmac_err(bgmac, "Cannot register MDIO\n"); -@@ -1529,8 +1531,6 @@ static int bgmac_probe(struct bcma_devic +@@ -1529,8 +1531,6 @@ static int bgmac_probe(struct bcma_device *core) netif_carrier_off(net_dev); @@ -30,7 +33,7 @@ Signed-off-by: Hauke Mehrtens return 0; err_mii_unregister: -@@ -1549,9 +1549,9 @@ static void bgmac_remove(struct bcma_dev +@@ -1549,9 +1549,9 @@ static void bgmac_remove(struct bcma_device *core) { struct bgmac *bgmac = bcma_get_drvdata(core); @@ -41,3 +44,6 @@ Signed-off-by: Hauke Mehrtens bgmac_dma_free(bgmac); bcma_set_drvdata(core, NULL); free_netdev(bgmac->net_dev); +-- +1.8.4.5 + diff --git a/target/linux/generic/patches-3.18/772-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch b/target/linux/generic/patches-3.18/071-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch similarity index 63% rename from target/linux/generic/patches-3.18/772-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch rename to target/linux/generic/patches-3.18/071-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch index b494998be3..506d8c6f1c 100644 --- a/target/linux/generic/patches-3.18/772-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch +++ b/target/linux/generic/patches-3.18/071-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch @@ -1,19 +1,22 @@ -From fbd3b188fbaa861165a074c454d8f8dcf15343a0 Mon Sep 17 00:00:00 2001 +From 43f159c60a99318b1ef7d1d7c16c4dfdd06bfd90 Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens -Date: Mon, 8 Dec 2014 08:47:10 +0100 -Subject: [PATCH 3/4] bgmac: activate irqs only if there is nothing to poll +Date: Sun, 18 Jan 2015 19:49:59 +0100 +Subject: [PATCH] bgmac: activate irqs only if there is nothing to poll IRQs should only get activated when there is nothing to poll in the queue any more and to after every poll. Signed-off-by: Hauke Mehrtens +Signed-off-by: David S. Miller --- drivers/net/ethernet/broadcom/bgmac.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) +diff --git a/drivers/net/ethernet/broadcom/bgmac.c b/drivers/net/ethernet/broadcom/bgmac.c +index aa9f950..3007d95 100644 --- a/drivers/net/ethernet/broadcom/bgmac.c +++ b/drivers/net/ethernet/broadcom/bgmac.c -@@ -1167,10 +1167,10 @@ static int bgmac_poll(struct napi_struct +@@ -1167,10 +1167,10 @@ static int bgmac_poll(struct napi_struct *napi, int weight) bgmac->int_status = 0; } @@ -27,3 +30,6 @@ Signed-off-by: Hauke Mehrtens return handled; } +-- +1.8.4.5 + -- 2.11.0