# HG changeset patch # User asl # Date 1141236824 0 # Node ID 3f92807e911dcb19a02d5bcd462b132035684efd # Parent ddfe9fa68b742977e1f7bfc36fc361e76ee4e5ba * src/at91_serial.c (at91_serial_config_port): Enable the DMA if the control register exists. diff --git a/packages/devs/serial/arm/at91/current/ChangeLog b/packages/devs/serial/arm/at91/current/ChangeLog --- a/packages/devs/serial/arm/at91/current/ChangeLog +++ b/packages/devs/serial/arm/at91/current/ChangeLog @@ -1,3 +1,9 @@ +2006-02-28 Andrew Lunn + Oliver Munz + + * src/at91_serial.c (at91_serial_config_port): Enable the DMA + if the control register exists. + 2006-02-19 Andrew Lunn * src/at91_serial.c (at91_serial_lookup): Enable the peripheral diff --git a/packages/devs/serial/arm/at91/current/src/at91_serial.c b/packages/devs/serial/arm/at91/current/src/at91_serial.c --- a/packages/devs/serial/arm/at91/current/src/at91_serial.c +++ b/packages/devs/serial/arm/at91/current/src/at91_serial.c @@ -325,6 +325,13 @@ at91_serial_config_port(serial_channel * AT91_US_CR_RxENAB | AT91_US_CR_TxENAB | AT91_US_CR_RSTATUS | AT91_US_CR_STTTO ); + // Enable the DMA is the control register exists +#ifdef AT91_US_PTCR + HAL_WRITE_UINT32(base + AT91_US_PTCR, + AT91_US_PTCR_RXTEN | + AT91_US_PTCR_TXTEN); +#endif + if (new_config != &chan->config) { chan->config = *new_config; }