Home
last modified time | relevance | path

Searched hist:b6ae6765c5a9e5daa3799e4d65562d3184712506 (Results 1 – 2 of 2) sorted by relevance

/rk3399_rockchip-uboot/drivers/mmc/
H A Dsunxi_mmc.cb6ae6765c5a9e5daa3799e4d65562d3184712506 Mon Jun 09 09:36:55 UTC 2014 Hans de Goede <hdegoede@redhat.com> sunxi: Remove mmc DMA support

The DMA code in sunxi_mmc.c is broken. mmc_trans_data_by_dma() allocates the
dma descriptors on the stack, and then exits while the dma transfer is in
progress, so the dma engine is reading stack memory which at that point may
be re-used. So far we've gotten away with this by luck, but recent u-boot
changes have shifted the stack start address by 16 bytes, which combined
with dma alignment now exposes this problem.

Since we end up just busy waiting for the dma engine anyway, this commit
fixes things by simply removing the dma code, resulting in smaller bug-free
code.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Ian Campbell <ijc@hellion.org.uk>
/rk3399_rockchip-uboot/include/configs/
H A Dsunxi-common.hb6ae6765c5a9e5daa3799e4d65562d3184712506 Mon Jun 09 09:36:55 UTC 2014 Hans de Goede <hdegoede@redhat.com> sunxi: Remove mmc DMA support

The DMA code in sunxi_mmc.c is broken. mmc_trans_data_by_dma() allocates the
dma descriptors on the stack, and then exits while the dma transfer is in
progress, so the dma engine is reading stack memory which at that point may
be re-used. So far we've gotten away with this by luck, but recent u-boot
changes have shifted the stack start address by 16 bytes, which combined
with dma alignment now exposes this problem.

Since we end up just busy waiting for the dma engine anyway, this commit
fixes things by simply removing the dma code, resulting in smaller bug-free
code.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Ian Campbell <ijc@hellion.org.uk>