From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marek Vasut Date: Mon, 2 Apr 2012 19:54:25 +0200 Subject: [U-Boot] [PATCH] mmc: mxsmmc: Fix operation with DMA In-Reply-To: <1333388952-8459-1-git-send-email-fabio.estevam@freescale.com> References: <1333388952-8459-1-git-send-email-fabio.estevam@freescale.com> Message-ID: <201204021954.26104.marex@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Dear Fabio Estevam, > Initialize the DMA controller so that the following errors are fixed: > > U-Boot 2012.04-rc1-00001-g037cbfd (Apr 02 2012 - 10:57:48) > > Freescale i.MX28 family at 454 MHz > DRAM: 128 MiB > MMC: MXS MMC: 0 > MMC0: DMA transfer failed > MMC0: DMA transfer failed > MMC0: DMA transfer failed > MMC0: DMA transfer failed > MMC init failed > > Signed-off-by: Fabio Estevam > --- > drivers/mmc/mxsmmc.c | 3 +++ > 1 files changed, 3 insertions(+), 0 deletions(-) > > diff --git a/drivers/mmc/mxsmmc.c b/drivers/mmc/mxsmmc.c > index e8bad9d..57f9953 100644 > --- a/drivers/mmc/mxsmmc.c > +++ b/drivers/mmc/mxsmmc.c > @@ -303,6 +303,9 @@ int mxsmmc_initialize(bd_t *bis, int id, int > (*wp)(int)) return -ENOMEM; > } > > + /* Init the DMA controller. */ > + mxs_dma_init(); > + > priv->desc = mxs_dma_desc_alloc(); > if (!priv->desc) { > free(priv); AAAAAH! You don't have NAND over there, that explains it :) Now, this is a problem on m28evk, because this init happens twice there. Can you possibly pull this somewhere into arch_cpu_init() or similar call? Best regards, Marek Vasut