diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2011-06-17 11:58:41 +0000 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2011-06-17 11:58:41 +0000 |
commit | 25ed11d08e98b9893a076c57f694c14892155c01 (patch) | |
tree | 9dfff040a25548e21b1518f66612a33b6d82fa3d /c/src/lib/libbsp/powerpc/gen5200/ide | |
parent | 2011-06-17 Ralf Corsépius <ralf.corsepius@rtems.org> (diff) | |
download | rtems-25ed11d08e98b9893a076c57f694c14892155c01.tar.bz2 |
2011-06-17 Sebastian Huber <sebastian.huber@embedded-brains.de>
* Makefile.am: Added custom memcpy(). Update for network sources.
* configure.ac: Enable interrupt driven Termios for all BSPs.
* ide/pcmcia_ide.c: Disable broken DMA support.
* include/bsp.h: Fixed NEED_LOW_LEVEL_INIT define. Set default
console baud to 115200.
* include/irq.h, irq/irq.c: Fixed interrupt handling to avoid the
following problems: 1. multiple invokation of peripheral interrupt
handlers, 2. missing synchronization after mask write and enabling of
external exceptions, and 3. logic overhead.
* network_5200/network.c: Added MII interface. Fixed controller
restart after FIFO errors. Performance improvements.
* start/start.S: Fixed ROM startup. Initialize XLB arbiter for all
BSPs.
* startup/bspstart.c: Special intialization for MPC5200B (B variant).
Install standard alignment handler.
* startup/cpuinit.c, startup/linkcmds.brs5l, startup/linkcmds.dp2,
startup/linkcmds.icecube, startup/linkcmds.pm520_cr825,
startup/linkcmds.pm520_ze30: Avoid accesses outside the RAM area.
Diffstat (limited to 'c/src/lib/libbsp/powerpc/gen5200/ide')
-rw-r--r-- | c/src/lib/libbsp/powerpc/gen5200/ide/pcmcia_ide.c | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/c/src/lib/libbsp/powerpc/gen5200/ide/pcmcia_ide.c b/c/src/lib/libbsp/powerpc/gen5200/ide/pcmcia_ide.c index 63c6a0b72a..1366a6bd4e 100644 --- a/c/src/lib/libbsp/powerpc/gen5200/ide/pcmcia_ide.c +++ b/c/src/lib/libbsp/powerpc/gen5200/ide/pcmcia_ide.c @@ -92,23 +92,13 @@ #endif #define IDE_DMA_TEST FALSE -#ifdef BRS5L -#define IDE_USE_INT TRUE -#define IDE_READ_USE_DMA TRUE -#define IDE_USE_READ_PIO_OPT FALSE -#define IDE_WRITE_USE_DMA TRUE -#define IDE_USE_WRITE_PIO_OPT TRUE -/* #define IDE_USE_DMA (IDE_READ_USE_DMA||IDE_WRITE_USE_DMA) */ -#define IDE_USE_DMA TRUE -#else +/* DMA supported PIO mode is broken */ #define IDE_USE_INT TRUE #define IDE_READ_USE_DMA FALSE #define IDE_USE_READ_PIO_OPT FALSE #define IDE_WRITE_USE_DMA FALSE #define IDE_USE_WRITE_PIO_OPT FALSE -/* #define IDE_USE_DMA (IDE_READ_USE_DMA||IDE_WRITE_USE_DMA) */ -#define IDE_USE_DMA FALSE -#endif +#define IDE_USE_DMA (IDE_READ_USE_DMA || IDE_WRITE_USE_DMA) #define IDE_USE_STATISTICS TRUE @@ -464,6 +454,7 @@ void mpc5200_pcmciaide_dma_blockop(bool is_write, (*cbuf)++; (*pos) += bufs[bufs_from_dma].length; bufs_from_dma++; + bds_free++; } } while ((nxt_bd_idx != TASK_ERR_BD_RING_EMPTY) && (nxt_bd_idx != TASK_ERR_BD_BUSY) && |