> You could try to change the base address in bbl/bbl.lds. This might
> help, if for example bbl finds _payload_start with a LUI instruction
> rather than a AUIPC instruction.

There is no problem loading the address of _payload_start, the machine code is as follows
    8020038c:    00200797              auipc    a5,0x200
    80200390:    c7478793              addi    a5,a5,-908 # 80400000 <_payload_start>
    80200394:    4501                    li    a0,0
    80200396:    00012717              auipc    a4,0x12
    8020039a:    c6f73523              sd    a5,-918(a4) # 80212000 <entry_point>
    8020039e:    f4bff0ef              jal    ra,802002e8 <boot_other_hart>

> Does bbl print its logo (the RV banner)?

Yes,  bbl print its logo.

------------------

王翔

安全研究员

广州市腾御安信息科技有限公司

广州市天河区珠江新城华穗路406号保利克洛维二期中景A座1020-1024

 
 
 
------------------ Original ------------------
Date:  Fri, Dec 21, 2018 03:59 PM
To:  "王翔"<merle@tya.email>;
Cc:  "coreboot"<coreboot@coreboot.org>; "j.neuschaefer"<j.neuschaefer@gmx.net>; "philipp"<philipp@hug.cx>; "citypw"<citypw@gmail.com>;
Subject:  Re: Please help me adapt coreboot to HiFive-Unleashed
 
Hi,

I'll be busy with christmas or travelling until January, so I can't
spend much time on this now. Sorry. Please remind me in January.

On Thu, Dec 20, 2018 at 11:56:17AM +0800, 王翔 wrote:
> I tried to adapt coreboot to HiFive-Unleashed and boot bbl with coreboot and run linux.
> My changes are as follows:
>     https://github.com/hardenedlinux/coreboot-HiFiveUnleashed/tree/HiFive-Unleashed-Test-Change
>
> My code can run bbl, but it doesn't respond when bbl exits m-mode and enters linux.
>
> I use freedom-u-sdk to compile bbl. In order not to conflict with the coreboot memory address, execute the following command.
> riscv64-elf-objcopy --change-addresses 0x200000 work/riscv-pk/bbl ../coreboot/payload.elf
>
> I don't know what I missed, what should I do, I hope to get your help.

You could try to change the base address in bbl/bbl.lds. This might
help, if for example bbl finds _payload_start with a LUI instruction
rather than a AUIPC instruction.

Does bbl print its logo (the RV banner)?


Jonathan