From: Florian Fainelli Date: Sat, 13 Dec 2014 08:08:30 +0000 (+0000) Subject: netlogic: fix XLR network driver build X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=8692819c2c15b4a0d704bc04f71ce8ecbf3d5860;p=openwrt%2Fstaging%2Fthess.git netlogic: fix XLR network driver build Backport an upstream submission to fix xlr_net Signed-off-by: Florian Fainelli SVN-Revision: 43682 --- 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 +Cc: "David S. Miller" +Cc: devel@driverdev.osuosl.org +Cc: linux-kernel@vger.kernel.org +Cc: Jayachandran C +Cc: netdev@vger.kernel.org +Signed-off-by: Markos Chandras +--- + 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 + + +