id = 1772 title = "MPS2 AN521 has the wrong number of MPU region defined" state = "closed" created_at = "2023-07-18T21:11:31.996Z" closed_at = "2023-08-31T16:14:26.140Z" labels = ["kind::Bug", "target: arm", "workflow::Patch available"] url = "https://gitlab.com/qemu-project/qemu/-/issues/1772" host-os = "any" host-arch = "any" qemu-version = "7.0.0" guest-os = "Zephyr" guest-arch = "Arm" description = """The AN521 is integrating SSE-200 on the MPS2+ FPGA prototyping board. The current implementation in qemu behaves as though there are 16MPU regions when it really only has 8, as describes as `MPU_NS` and `MPU_S` core configuration parameters in the SSE-200's [Techincal Reference Manual](https://developer.arm.com/documentation/101104/0200/functional-description/cpu-elements/cortex-m33-configurations?lang=en).""" reproduce = """1. Prepare your Zephyr dev environment 2. fix `boards/arm/mps2_an521/mps2_an521.dts` to set `arm,num-mpu-regions` to the appropriate value of 8. 3. build a Zephyr test such as `west build -p -b mps2_an521 -T tests/kernel/interrupt/arch.interrupt` 4. run `qemu-system-arm -machine mps2-an521 -chardev stdio,id=con,mux=on -serial chardev:con -kernel ./build/zephyr/zephyr.elf`""" additional = """With matching MPU region number in QEMU and Zephyr's DTS, the application shows the test suite's progress & outcome. If there's a mismatch, the application will enter a fault and not display the expected traces."""