On Wed 29 May 2019 at 00:50, Atish Patra <atish.patra@xxxxxxx> wrote:
On 5/28/19 8:36 AM, Karsten Merker wrote:
On Tue, May 28, 2019 at 05:10:42PM +0200, Loys Ollivier wrote:
On Tue 28 May 2019 at 01:32, Paul Walmsley <paul.walmsley@xxxxxxxxxx> wrote:[...]
An update for those testing RISC-V patches: here's a new branch of
riscv-pk/bbl that doesn't try to read or modify the DT data at all, which
should be useful until U-Boot settles down.
Here is an Linux kernel branch with updated DT data that can be booted
with the above bootloader:
https://github.com/sifive/riscv-linux/tree/dev/paulw/dts-v5.2-rc1-experimental
A sample boot log follows, using a 'defconfig' build from that branch.
Thanks Paul, I can confirm that it works.
Something is still unclear to myself.
Using FSBL + riscv-pk/bbl the linux kernel + device tree boots.
Neither FSBL nor riscv-pk/bbl are modifying the DT.
Using FSBL + OpenSBI + U-Boot the same kernel + device tree hangs on
running /init.
Would you have any pointer on what riscv-pk does that OpenSBI/U-boot doesn't ?
Or maybe it is the other way around - OpenSBI/U-boot does something that
extra that should not happen.
Hello,
I don't know which version of OpenSBI you are using, but there is
a problem with the combination of kernel 5.2-rc1 and OpenSBI
versions before commit
https://github.com/riscv/opensbi/commit/4e2cd478208531c47343290f15b577d40c82649c
that can result in a hang on executing init, so in case you
should be using an older OpenSBI build that might be the source
of the problem that you are experiencing.
Regards,
Karsten
I verified the updated DT with upstream kernel for the boot flow OpenSBI
+ U-Boot + Linux or OpenSBI + Linux.
OpenSBI should be compiled for sifive platform with following additional
argument
FW_PAYLOAD_FDT_PATH=<linux kernel
source>/arch/riscv/boot/dts/sifive/hifive-unleashed-a00.dtb
FYI: It will only work when kernel is given a payload to U-Boot/OpenSBI
directly.
Hum, I am surprised by this statement.
I was able to verify the latest DT patch serie from Paul with:
OpenSBI + U-Boot + Linux & DT.
Following the OpenSBI documentation [0] with U-Boot payload:
FW_PAYLOAD_PATH=<u-boot_build_dir>/u-boot.bin
I get an U-Boot prompt and then I can just load the linux kernel and
device tree from the network.
[0]: https://github.com/riscv/opensbi/blob/master/docs/platform/sifive_fu540.md#building-sifive-fu540-platform
Network booting is still not working as the clock driver probe doesn't
happen because of the updated DT.
--
Regards,
Atish