sifive / freedom

Source files for SiFive's Freedom platforms
Apache License 2.0
1.11k stars 284 forks source link

Correct `freedom-u-sdk` branch / known-good SD Card image for U500 VC707? #38

Closed ilebedev closed 7 years ago

ilebedev commented 7 years ago

I am having a whole lot of trouble finding a working combination of hardware and SD card image for the u500 on a VC707. By way of a sanity check, I am trying to get vanilla hardware and software to boot.

I have in the past successfully done this with older versions of the repository.

I have tried the following hardware:

And the following software

In all cases, the result is the same: the bootloader runs, but fails to boot linux:

INIT
CMD0
CMD8
ACMD41
CMD58
CMD16
CMD18
LOADING  
BOOT

followed by nothing. I suspect some sort of disagreement between the priv ABI enforced by hardware, and expected by software.

These builds take a long time; any pointers would be greatly appreciated. Is there a pre-built, known-good SD card image somewhere? This would sure help reduce the search space for this issue. Please advise.

Thanks in advance, -ilia

davidmin7 commented 7 years ago

I'm having exactly the same problem. I was trying to backtrace the problem and found something is going wrong at riscv-pk/machine/minit.c line #27 with the old vanilla branch. The statement makes u500 to print something but at the end it hangs at do_tohost_fromhost where you cannot escape the infinite loop. Don't know the reason.

+ for the new freedom-u-sdk, it hangs at riscv-pk/machine/mentry.S line# 277. It is waiting for the interrupt but it never happens. Mine doesn't have pcie so I might be getting the error for a different reason.

saurabhpb22 commented 7 years ago

I too am having the same issue although I am trying to boot with out the FMC PCI board. I have made changes accordingly to work without the FMC but I get stuck at the same state as the above prints. I kept doubting my changes (as there was no way for me to test the base code) however thanks to this post I think there might be some issue with base SiFive code.

terpstra commented 7 years ago

@palmer-dabbelt @henrystyles Is the freedom-u-sdk/master in-sync with the (very old) vc707 image on our site? We should probably also provide a newer vc707 image compatible with the latest (hopefully final) revision of the privileged spec...

palmer-dabbelt commented 7 years ago

Ya, we need to bump everything. If freedom/master is updated then I can go deal with the software.

terpstra commented 7 years ago

I think the main effort required is to create a new VC707 image using only open-source stuff.

ilebedev commented 7 years ago

I am unable to get work done for nearly a month now because of this issue. Happy to build the images myself, but unclear which freedom-u-sdk is compatible with recent commits to freedom.

Is there a specific freedom-u-sdk commit that is known to boot on 22ee433699dca058f96858c15e7a2b0c33547d63 in freedom? If not, perhaps a specific earlier earlier commit to freedom? Trying pairs until a working one is found is extremely time consuming and a huge waste of time if somoene on this list knows the answer.. Surely someone here knows the answer.

Any info would help here, thanks,

terpstra commented 7 years ago

freedom/master should work with freedom-u-sdk/master now. Furthermore, we are preparing an updated freedom-u-sdk which should better support FPGAs.

ilebedev commented 6 years ago

Hi @terpstra, thanks for the update.

A small correction, in case anyone is stuck: freedom/master successfully boots with freedom-u-sdk/priv-1.10. (/new immediately panics, and /master has seen no updates and exhibits the same opaque failure to boot).

terpstra commented 6 years ago

We will bump the sdk and remove those branches this week. Hopefully, from that point on they will stay compatible since the hardware-softeware interface is no longer changing.

On Nov 7, 2017 7:34 AM, "Ilia Lebedev" notifications@github.com wrote:

Hi @terpstra https://github.com/terpstra, thanks for the update.

A small correction, in case anyone is stuck: freedom/master successfully boots with freedom-u-sdk/priv-1.10. (/new immediately panics, and /master has seen no updates and exhibits the same opaque failure to boot).

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/sifive/freedom/issues/38#issuecomment-342520192, or mute the thread https://github.com/notifications/unsubscribe-auth/ABDPirc16grT06oYO-ZznhGd4bDHW6IRks5s0Hh_gaJpZM4P7Qoj .