On Wed 29 May 2019 at 00:50, Atish Patra <atish.pa...@wdc.com> 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.walms...@sifive.com> 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