aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/netlogic
diff options
context:
space:
mode:
authorFlorian Fainelli <florian@openwrt.org>2014-12-13 08:08:30 +0000
committerFlorian Fainelli <florian@openwrt.org>2014-12-13 08:08:30 +0000
commit8692819c2c15b4a0d704bc04f71ce8ecbf3d5860 (patch)
tree18f21ca37ac5bfc502ecb2979b16f90a2cf84a12 /target/linux/netlogic
parent263070a2e72dbb85ed16d286a22fc3ce422580e5 (diff)
downloadupstream-8692819c2c15b4a0d704bc04f71ce8ecbf3d5860.tar.gz
upstream-8692819c2c15b4a0d704bc04f71ce8ecbf3d5860.tar.bz2
upstream-8692819c2c15b4a0d704bc04f71ce8ecbf3d5860.zip
netlogic: fix XLR network driver build
Backport an upstream submission to fix xlr_net Signed-off-by: Florian Fainelli <florian@openwrt.org> SVN-Revision: 43682
Diffstat (limited to 'target/linux/netlogic')
-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
+
+
+
class="s2">"${CC}")" = "ccc-analyzer" ] || [ -n "${COVERITY_OUTPUT}" ]; then is_scan_build_env=1 fi run_linter() { ./util/lint/lint-extended-020-signed-off-by } build_make () { make clean make -j $(nproc) CONFIG_EVERYTHING=yes # In case of clang analyzer we don't want to run it on # each programmer individually. Thus, just return here. if [ ${is_scan_build_env} -eq 1 ]; then return fi for option in ${make_programmer_opts}; do echo "Building ${option}" make clean make -j $(nproc) CONFIG_NOTHING=yes CONFIG_${option}=yes done } build_meson () { build_dir=out meson_opts="-Dtests=enabled" ninja_opts="-j $(nproc)" rm -rf ${build_dir} for programmer in ${meson_programmer_opts}; do programmer_dir="${build_dir}/${programmer}" # In case of clang analyzer we don't want to run it on # each programmer individually. Thus, just return here. if [ ${is_scan_build_env} -eq 1 ] && [ "${programmer}" != "all" ]; then return fi meson setup ${programmer_dir} ${meson_opts} -Dprogrammer=${programmer} ninja ${ninja_opts} -C ${programmer_dir} ninja ${ninja_opts} -C ${programmer_dir} test done } run_linter build_make build_meson