aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--target/linux/netlogic/patches-3.14/002-xlr_net_fix.patch63
1 files changed, 63 insertions, 0 deletions
diff --git a/target/linux/netlogic/patches-3.14/002-xlr_net_fix.patch b/target/linux/netlogic/patches-3.14/002-xlr_net_fix.patch
new file mode 100644
index 0000000000..0210f24bab
--- /dev/null
+++ b/target/linux/netlogic/patches-3.14/002-xlr_net_fix.patch
@@ -0,0 +1,63 @@
+Subject: [PATCH] staging: xlr_net: Replace obsolete nlm_cop2_{enable,restore} macros
+
+Commit 64f6ebe63914 ("MIPS: Netlogic: rename nlm_cop2_save/restore")
+replaced nlm_cop2_enable with nlm_cop2_enable_irqsave and
+nlm_cop2_restore with nlm_cop2_disable_irqrestore but it did not
+update the xlr_net driver to use the new macros resulting into build
+problems like this:
+
+drivers/staging/netlogic/xlr_net.c: In function 'send_to_rfr_fifo':
+drivers/staging/netlogic/xlr_net.c:128:3: error: implicit declaration of
+function 'nlm_cop2_enable' [-Werror=implicit-function-declaration]
+mflags = nlm_cop2_enable();
+^
+drivers/staging/netlogic/xlr_net.c:130:3: error: implicit declaration of
+function 'nlm_cop2_restore' [-Werror=implicit-function-declaration]
+nlm_cop2_restore(mflags);
+
+Therefore rename these cases as well
+
+Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+Cc: "David S. Miller" <davem@davemloft.net>
+Cc: devel@driverdev.osuosl.org
+Cc: linux-kernel@vger.kernel.org
+Cc: Jayachandran C <jchandra@broadcom.com>
+Cc: netdev@vger.kernel.org
+Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
+---
+ drivers/staging/netlogic/xlr_net.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/staging/netlogic/xlr_net.c b/drivers/staging/netlogic/xlr_net.c
+index 9bf407d6241a..469f75f0f818 100644
+--- a/drivers/staging/netlogic/xlr_net.c
++++ b/drivers/staging/netlogic/xlr_net.c
+@@ -125,9 +125,9 @@ static int send_to_rfr_fifo(struct xlr_net_priv *priv, void *addr)
+ msg.msg3 = 0;
+ stnid = priv->nd->rfr_station;
+ do {
+- mflags = nlm_cop2_enable();
++ mflags = nlm_cop2_enable_irqsave();
+ ret = nlm_fmn_send(1, 0, stnid, &msg);
+- nlm_cop2_restore(mflags);
++ nlm_cop2_disable_irqrestore(mflags);
+ if (ret == 0)
+ return 0;
+ } while (++num_try < 10000);
+@@ -298,9 +298,9 @@ static netdev_tx_t xlr_net_start_xmit(struct sk_buff *skb,
+ u32 flags;
+
+ xlr_make_tx_desc(&msg, virt_to_phys(skb->data), skb);
+- flags = nlm_cop2_enable();
++ flags = nlm_cop2_enable_irqsave();
+ ret = nlm_fmn_send(2, 0, priv->nd->tx_stnid, &msg);
+- nlm_cop2_restore(flags);
++ nlm_cop2_disable_irqrestore(flags);
+ if (ret)
+ dev_kfree_skb_any(skb);
+ return NETDEV_TX_OK;
+--
+2.1.1
+
+
+