diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-30 08:37:40 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-30 08:37:40 -0700 |
commit | ec31b2124158f60c515ed84bd5e40db1a883c7b6 (patch) | |
tree | 05de4bebce63cf1eaf25d24c9de4b59e5aa7e100 /drivers | |
parent | ca72cddfcb6afd75a808da4f027325fa63a1b856 (diff) | |
parent | eabd90944b3a00766e84da3d117ea0f3e0a3b1a3 (diff) | |
download | linux-3.10-ec31b2124158f60c515ed84bd5e40db1a883c7b6.tar.gz linux-3.10-ec31b2124158f60c515ed84bd5e40db1a883c7b6.tar.bz2 linux-3.10-ec31b2124158f60c515ed84bd5e40db1a883c7b6.zip |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
* 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
[POWERPC] Fix crashkernel= handling when no crashkernel= specified
[POWERPC] Make emergency stack safe for current_thread_info() use
[POWERPC] spufs: add .gitignore for spu_save_dump.h & spu_restore_dump.h
[POWERPC] spufs: trace spu_acquire_saved events
[POWERPC] spufs: fix marker name for find_victim
[POWERPC] spufs: add marker for destroy_spu_context
[POWERPC] spufs: add sputrace marker parameter names
[POWERPC] spufs: add context switch notification log
[POWERPC] mpc5200: defconfigs for CM5200, Lite5200B, Motion-PRO and TQM5200
[POWERPC] mpc5200: Switch mpc5200 dts files to dts-v1 format
[POWERPC] mpc5200: Fix FEC error handling on FIFO errors
[POWERPC] mpc5200: add Phytec pcm030 board support
[POWERPC] mpc5200: add gpiolib support for mpc5200
[POWERPC] mpc5200: add interrupt type function
[POWERPC] mpc5200: Fix unterminated of_device_id table
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/fec_mpc52xx.c | 23 | ||||
-rw-r--r-- | drivers/serial/mpc52xx_uart.c | 2 |
2 files changed, 14 insertions, 11 deletions
diff --git a/drivers/net/fec_mpc52xx.c b/drivers/net/fec_mpc52xx.c index e5e6352556f..d21b7ab64bd 100644 --- a/drivers/net/fec_mpc52xx.c +++ b/drivers/net/fec_mpc52xx.c @@ -491,20 +491,23 @@ static irqreturn_t mpc52xx_fec_interrupt(int irq, void *dev_id) out_be32(&fec->ievent, ievent); /* clear pending events */ - if (ievent & ~(FEC_IEVENT_RFIFO_ERROR | FEC_IEVENT_XFIFO_ERROR)) { - if (ievent & ~FEC_IEVENT_TFINT) - dev_dbg(&dev->dev, "ievent: %08x\n", ievent); + /* on fifo error, soft-reset fec */ + if (ievent & (FEC_IEVENT_RFIFO_ERROR | FEC_IEVENT_XFIFO_ERROR)) { + + if (net_ratelimit() && (ievent & FEC_IEVENT_RFIFO_ERROR)) + dev_warn(&dev->dev, "FEC_IEVENT_RFIFO_ERROR\n"); + if (net_ratelimit() && (ievent & FEC_IEVENT_XFIFO_ERROR)) + dev_warn(&dev->dev, "FEC_IEVENT_XFIFO_ERROR\n"); + + mpc52xx_fec_reset(dev); + + netif_wake_queue(dev); return IRQ_HANDLED; } - if (net_ratelimit() && (ievent & FEC_IEVENT_RFIFO_ERROR)) - dev_warn(&dev->dev, "FEC_IEVENT_RFIFO_ERROR\n"); - if (net_ratelimit() && (ievent & FEC_IEVENT_XFIFO_ERROR)) - dev_warn(&dev->dev, "FEC_IEVENT_XFIFO_ERROR\n"); + if (ievent & ~FEC_IEVENT_TFINT) + dev_dbg(&dev->dev, "ievent: %08x\n", ievent); - mpc52xx_fec_reset(dev); - - netif_wake_queue(dev); return IRQ_HANDLED; } diff --git a/drivers/serial/mpc52xx_uart.c b/drivers/serial/mpc52xx_uart.c index d93b3578c5e..7a3625f52a0 100644 --- a/drivers/serial/mpc52xx_uart.c +++ b/drivers/serial/mpc52xx_uart.c @@ -1221,8 +1221,8 @@ static struct of_device_id mpc52xx_uart_of_match[] = { #endif #ifdef CONFIG_PPC_MPC512x { .compatible = "fsl,mpc5121-psc-uart", .data = &mpc512x_psc_ops, }, - {}, #endif + {}, }; static int __devinit |