Junjie Mao <junjie....@hotmail.com> writes: > Alex Bennée <alex.ben...@linaro.org> writes: > >> Junjie Mao <junjie....@hotmail.com> writes: >> >>> The peripheral and PrimeCell identification registers of pl011 are located >>> at >>> offset 0xFE0 - 0xFFC. To check if a read falls to such registers, the C >>> implementation checks if the offset-shifted-by-2 (not the offset itself) is >>> in >>> the range 0x3F8 - 0x3FF. >>> >>> Use the same check in the Rust implementation. >>> >>> This fixes the timeout of the following avocado tests: >>> >>> * tests/avocado/boot_linux_console.py:BootLinuxConsole.test_arm_virt >>> * tests/avocado/replay_kernel.py:ReplayKernelNormal.test_arm_virt >>> * tests/avocado/replay_kernel.py:ReplayKernelNormal.test_arm_vexpressa9 >>> >>> Reported-by: Peter Maydell <peter.mayd...@linaro.org> >>> Signed-off-by: Junjie Mao <junjie....@hotmail.com> >> >> This certainly fixes the avocado failures. >> >> Tested-by: Alex Bennée <alex.ben...@linaro.org> >> Reviewed-by: Alex Bennée <alex.ben...@linaro.org> >> > > Thanks for reviewing and testing, Alex! > > Meanwhile, Manos has submitted another fix [1] which also replaces > arrays of constant register values with more explicit register > getters. His change may supercedes mine. > > [1] > https://lore.kernel.org/qemu-devel/20241117161039.3758840-1-manos.pitsidiana...@linaro.org
Yes I'm looking at that series now. I just wanted to note this simple fix might be more relevant to 9.2 as its concise and easy to see what its doing. -- Alex Bennée Virtualisation Tech Lead @ Linaro