diff options
author | David S. Miller <davem@davemloft.net> | 2014-01-30 19:48:17 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-01-30 19:48:17 -0500 |
commit | 65b80cae7a72e94df9335552e1a77a3a8946566c (patch) | |
tree | 28617224603f1e162a2cb6014c1dd3cc027c251a | |
parent | 2b6e0ca175fe4a20f21ba82b1e7ccc71029c4dd4 (diff) | |
parent | 73615c8669ef1c497c942cae0d5079b95824332a (diff) |
Merge tag 'linux-can-fixes-for-3.14-20140129' of git://gitorious.org/linux-can/linux-can
linux-can-fixes-for-3.14-20140129
Marc Kleine-Budde says:
====================
Arnd Bergmann provides a fix for the flexcan driver, enabling compilation on
all combinations of big and little endian on ARM and PowerPc. A patch by Ira W.
Snyder fixes uninitialized variable warnings in the janz-ican3 driver.
Rostislav Lisovy contributes a patch to propagate the SO_PRIORITY of raw
sockets to skbs.
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/can/Kconfig | 2 | ||||
-rw-r--r-- | drivers/net/can/flexcan.c | 7 | ||||
-rw-r--r-- | drivers/net/can/janz-ican3.c | 2 | ||||
-rw-r--r-- | net/can/raw.c | 1 |
4 files changed, 8 insertions, 4 deletions
diff --git a/drivers/net/can/Kconfig b/drivers/net/can/Kconfig index d447b881bbde..9e7d95dae2c7 100644 --- a/drivers/net/can/Kconfig +++ b/drivers/net/can/Kconfig | |||
@@ -104,7 +104,7 @@ config CAN_JANZ_ICAN3 | |||
104 | 104 | ||
105 | config CAN_FLEXCAN | 105 | config CAN_FLEXCAN |
106 | tristate "Support for Freescale FLEXCAN based chips" | 106 | tristate "Support for Freescale FLEXCAN based chips" |
107 | depends on (ARM && CPU_LITTLE_ENDIAN) || PPC | 107 | depends on ARM || PPC |
108 | ---help--- | 108 | ---help--- |
109 | Say Y here if you want to support for Freescale FlexCAN. | 109 | Say Y here if you want to support for Freescale FlexCAN. |
110 | 110 | ||
diff --git a/drivers/net/can/flexcan.c b/drivers/net/can/flexcan.c index aaed97bee471..320bef2dba42 100644 --- a/drivers/net/can/flexcan.c +++ b/drivers/net/can/flexcan.c | |||
@@ -235,9 +235,12 @@ static const struct can_bittiming_const flexcan_bittiming_const = { | |||
235 | }; | 235 | }; |
236 | 236 | ||
237 | /* | 237 | /* |
238 | * Abstract off the read/write for arm versus ppc. | 238 | * Abstract off the read/write for arm versus ppc. This |
239 | * assumes that PPC uses big-endian registers and everything | ||
240 | * else uses little-endian registers, independent of CPU | ||
241 | * endianess. | ||
239 | */ | 242 | */ |
240 | #if defined(__BIG_ENDIAN) | 243 | #if defined(CONFIG_PPC) |
241 | static inline u32 flexcan_read(void __iomem *addr) | 244 | static inline u32 flexcan_read(void __iomem *addr) |
242 | { | 245 | { |
243 | return in_be32(addr); | 246 | return in_be32(addr); |
diff --git a/drivers/net/can/janz-ican3.c b/drivers/net/can/janz-ican3.c index 2124c6790687..71594e5676fd 100644 --- a/drivers/net/can/janz-ican3.c +++ b/drivers/net/can/janz-ican3.c | |||
@@ -1312,7 +1312,7 @@ static int ican3_napi(struct napi_struct *napi, int budget) | |||
1312 | 1312 | ||
1313 | /* process all communication messages */ | 1313 | /* process all communication messages */ |
1314 | while (true) { | 1314 | while (true) { |
1315 | struct ican3_msg msg; | 1315 | struct ican3_msg uninitialized_var(msg); |
1316 | ret = ican3_recv_msg(mod, &msg); | 1316 | ret = ican3_recv_msg(mod, &msg); |
1317 | if (ret) | 1317 | if (ret) |
1318 | break; | 1318 | break; |
diff --git a/net/can/raw.c b/net/can/raw.c index 07d72d852324..8be757cca2ec 100644 --- a/net/can/raw.c +++ b/net/can/raw.c | |||
@@ -715,6 +715,7 @@ static int raw_sendmsg(struct kiocb *iocb, struct socket *sock, | |||
715 | 715 | ||
716 | skb->dev = dev; | 716 | skb->dev = dev; |
717 | skb->sk = sk; | 717 | skb->sk = sk; |
718 | skb->priority = sk->sk_priority; | ||
718 | 719 | ||
719 | err = can_send(skb, ro->loopback); | 720 | err = can_send(skb, ro->loopback); |
720 | 721 | ||