qemu-ppc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Deprecate the ppc405 boards in QEMU?


From: Thomas Huth
Subject: Re: Deprecate the ppc405 boards in QEMU?
Date: Tue, 19 Oct 2021 11:39:15 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0

On 19/10/2021 11.31, Christophe Leroy wrote:


Le 11/10/2021 à 15:24, Thomas Huth a écrit :
On 11/10/2021 11.20, David Gibson wrote:
On Mon, Oct 11, 2021 at 10:10:36AM +0200, Thomas Huth wrote:
On 06/10/2021 09.25, Thomas Huth wrote:
On 05/10/2021 23.53, BALATON Zoltan wrote:
[...]
Maybe these 405 boards in QEMU ran with modified firmware where the
memory detection was patched out but it seems to detect the RAM so I
wonder where it gets that from. Maybe by reading the SDRAM
controller DCRs ppc4xx_sdram_init() sets up. Then I'm not sure what
it needs the SPD for, I forgot how this worked on sam460ex. Maybe
for the speed calibration, so could be it detects ram by reading
DCRs then tries to get SPD data and that's where it stops as i2c is
not emulated on taihu. This could be confirmed by checking what it
pokes with -d guest_errors that shows accesses to missing devices
but don't know where 405 has the i2c controller and if it's the same
as newer SoCs. If so that could be reused and an i2c bus could be
added with the SPD data like in sam460ex to make u-boot happy or you
could skip this in u-boot.

FWIW, I've just tried the latter (skipping the sdram init in u-boot),
and indeed, I can get to the u-boot prompt now.
[...]> I've also attached the patch with my modifications to u-boot.

FYI, the changes can now be found on this branch here:

  https://gitlab.com/huth/u-boot/-/commits/taihu

I also added a gitlab-CI file, so you can now download the u-boot.bin as an
artifact from the corresponding pipeline, e.g.:

  https://gitlab.com/huth/u-boot/-/jobs/1667201028

Thanks.

Are you going to send a v2 of your proposed deprecation patches?

No, since there was interest in keeping the 405 boards for testing the 405 code in the Linux kernel, and since there is now a way to do at least some very basic testing of these boards (with the u-boot firmware), I don't plan to respin the deprecation patch. I just sent a patch for adding the boards to our CI instead:

  https://lists.gnu.org/archive/html/qemu-devel/2021-10/msg02072.html


I have downloaded your u-boot.bin and tried it with both QEMU 5.2.0 and mainline, and I get:

ERROR:../accel/tcg/tcg-accel-ops.c:79:tcg_handle_interrupt: assertion failed: (qemu_mutex_iothread_locked()) Bail out! ERROR:../accel/tcg/tcg-accel-ops.c:79:tcg_handle_interrupt: assertion failed: (qemu_mutex_iothread_locked())
Abandon (core dumped)

I see in the mail history that you got that problem as well at some point. How did you fix it ?

You need this patch here to fix this issue:

 https://lists.gnu.org/archive/html/qemu-devel/2021-10/msg01019.html
 ("hw/ppc: Fix iothread locking in the 405 code")

 Thomas




reply via email to

[Prev in Thread] Current Thread [Next in Thread]