* [PATCH] cs89x0 : packet reception not working
@ 2012-08-26 21:39 Jaccon Bastiaansen
2012-08-26 22:26 ` Joe Perches
0 siblings, 1 reply; 2+ messages in thread
From: Jaccon Bastiaansen @ 2012-08-26 21:39 UTC (permalink / raw)
To: davem, joe
Cc: netdev, s.hauer, festevam, Jaccon Bastiaansen, linux-arm-kernel
The RxCFG register of the CS89x0 could be configured incorrectly
(because of misplaced parentheses), resulting in the disabling
of packet reception.
Signed-off-by: Jaccon Bastiaansen <jaccon.bastiaansen@gmail.com>
---
drivers/net/ethernet/cirrus/cs89x0.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/net/ethernet/cirrus/cs89x0.c b/drivers/net/ethernet/cirrus/cs89x0.c
index 845b202..ea521fa 100644
--- a/drivers/net/ethernet/cirrus/cs89x0.c
+++ b/drivers/net/ethernet/cirrus/cs89x0.c
@@ -1261,10 +1261,10 @@ static void set_multicast_list(struct net_device *dev)
* so we have to enable interrupts on them also
*/
writereg(dev, PP_RxCFG,
- (lp->curr_rx_cfg |
- (lp->rx_mode == RX_ALL_ACCEPT)
- ? (RX_CRC_ERROR_ENBL | RX_RUNT_ENBL | RX_EXTRA_DATA_ENBL)
- : 0));
+ lp->curr_rx_cfg |
+ (lp->rx_mode == RX_ALL_ACCEPT
+ ? (RX_CRC_ERROR_ENBL | RX_RUNT_ENBL | RX_EXTRA_DATA_ENBL)
+ : 0));
spin_unlock_irqrestore(&lp->lock, flags);
}
--
1.7.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] cs89x0 : packet reception not working
2012-08-26 21:39 [PATCH] cs89x0 : packet reception not working Jaccon Bastiaansen
@ 2012-08-26 22:26 ` Joe Perches
0 siblings, 0 replies; 2+ messages in thread
From: Joe Perches @ 2012-08-26 22:26 UTC (permalink / raw)
To: Jaccon Bastiaansen; +Cc: davem, linux-arm-kernel, netdev, s.hauer, festevam
On Sun, 2012-08-26 at 23:39 +0200, Jaccon Bastiaansen wrote:
> The RxCFG register of the CS89x0 could be configured incorrectly
> (because of misplaced parentheses), resulting in the disabling
> of packet reception.
Thanks.
> diff --git a/drivers/net/ethernet/cirrus/cs89x0.c b/drivers/net/ethernet/cirrus/cs89x0.c
[]
> @@ -1261,10 +1261,10 @@ static void set_multicast_list(struct net_device *dev)
> * so we have to enable interrupts on them also
> */
> writereg(dev, PP_RxCFG,
> - (lp->curr_rx_cfg |
> - (lp->rx_mode == RX_ALL_ACCEPT)
> - ? (RX_CRC_ERROR_ENBL | RX_RUNT_ENBL | RX_EXTRA_DATA_ENBL)
> - : 0));
> + lp->curr_rx_cfg |
> + (lp->rx_mode == RX_ALL_ACCEPT
> + ? (RX_CRC_ERROR_ENBL | RX_RUNT_ENBL | RX_EXTRA_DATA_ENBL)
> + : 0));
> spin_unlock_irqrestore(&lp->lock, flags);
> }
Perhaps it would be better to use something like:
int cfg = lp->curr_rx_cfg;
if (lp->rx_mode == RX_ALL_ACCEPT)
cfg |= RX_CRC_ERROR_ENBL | RX_RUNT_ENBL | RX_EXTRA_DATA_ENBL;
writereg(dev, PP_RxCFG, cfg);
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2012-08-26 22:26 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-08-26 21:39 [PATCH] cs89x0 : packet reception not working Jaccon Bastiaansen
2012-08-26 22:26 ` Joe Perches
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).