On 13/12/23 19:04, Guenter Roeck wrote:
On 12/13/23 09:19, Philippe Mathieu-Daudé wrote:
Hi Guenter,
On 13/12/23 18:12, Peter Maydell wrote:
On Wed, 13 Dec 2023 at 01:49, Guenter Roeck <li...@roeck-us.net> wrote:
All tests using pxa2xx_mmc to access mmc cards on pxa2xx platforms
such as borzoi fail starting with commit a2e1753b80 ("memory: prevent
dma-reentracy issues"). Disable reentrancy guard to fix the problem.
Fixes: a2e1753b80 ("memory: prevent dma-reentracy issues")
Signed-off-by: Guenter Roeck <li...@roeck-us.net>
---
hw/sd/pxa2xx_mmci.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/hw/sd/pxa2xx_mmci.c b/hw/sd/pxa2xx_mmci.c
index 5e8ea69188..27ae8f2888 100644
--- a/hw/sd/pxa2xx_mmci.c
+++ b/hw/sd/pxa2xx_mmci.c
@@ -555,6 +555,8 @@ static void pxa2xx_mmci_instance_init(Object *obj)
qdev_init_gpio_out_named(dev, &s->rx_dma, "rx-dma", 1);
qdev_init_gpio_out_named(dev, &s->tx_dma, "tx-dma", 1);
+ s->iomem.disable_reentrancy_guard = true;
+
All patches that set this flag should include a comment which
explains what the device access path that triggers the reentrancy
is, please.
Can we get a reproducer or backtrace please?
qemu-system-arm: warning: Blocked re-entrant IO on MemoryRegion:
pxa2xx-mmci at addr: 0x40
[ 0.770246] mmc0: invalid bus width
[ 0.770962] mmc0: error -22 whilst initialising SD card
[ 0.828179] mmc0: invalid bus width
[ 0.828445] mmc0: error -22 whilst initialising SD card
with:
qemu-system-arm -M borzoi -kernel arch/arm/boot/zImage -no-reboot
-snapshot \
-device sd-card,drive=d0 -drive
file=/tmp/flash,format=raw,if=none,id=d0 \
-usb -device usb-net,netdev=net0 -netdev user,id=net0 \
--append "root=/dev/mmcblk0 rootwait console=ttyS0"
Thank you, I'll have a look after Christmas.
Regards,
Phil.