How to create baremetal workloads for vcu118 prototyping?

128 views
Skip to first unread message

Jerry Ho

unread,
May 5, 2023, 11:58:00 PM5/5/23
to Chipyard
Hello Community:
I want to evaluate a chipyard design(rv32imac without os support) on vcu118 board. According to the chipyard doc, if you want to create linux as workload, you have to go through the FireMarshal flow. I wonder what I shall do if I just want compile a simple rv32i helloworld program and copy it into microSD card. Is FireMarshal still  needed? I searched through the FireMarshal repo and found nothing specific to how to create barematel workload. Are there some examples I can follow? Thanks.

Michael Etzkorn

unread,
May 6, 2023, 4:22:01 PM5/6/23
to Chipyard
Hi Jerry,

It is entirely possible to work without FireMarshal for simple bare-metal flows. 

as a basis for developing a bare metal flow with change-address changed to 0x80000000. 


You will also need to use a different linker script. I honestly recommend learning to write a simple one.
Linker scripts can get very fancy. All that's necessary is linking your text, rodata, stack, bss, and heap (if you need one). 
There should also be ones ready to use within Chipyard. 


Regards,
Michael Etzkorn
Reply all
Reply to author
Forward
0 new messages