Dear Forum members,
Is there any special meaning for eDMA channel 0?
We are using Timesys Linux and in their UART driver (mvf.c), following codes imply eDMA channel 0 has special meaning.
(linux3.0/drivers/tty/serial/mvf.c
static void imx_shutdown(struct uart_port *port)
{
struct imx_port *sport = (struct imx_port *)port;
unsigned char temp;
unsigned long flags;
if (sport->enable_dma) {
/* We have to wait for the DMA to finish. */
if (sport->dma_tx_ch) {
mcf_edma_stop_transfer(sport->dma_tx_ch);
mcf_edma_free_channel(sport->dma_tx_ch, sport);
sport->dma_tx_ch = 0;
}
}
Line 10 to 14 is not executed when UART uses DMA channel 0 (Because, sport->dma_tx_ch is 0 ).
We think those are just a software bug, but we want to confirm that eDMA channel 0 has special meaning or not.
Thank you,
Makoto Katsukura