arch-riscv: Rename BootloaderKernelWorkload parameters
The gem5 standard library hardcoded some parameters of the workload. E.g., the kernel filename must be `object_file`. Change-Id: I5eeb7359be399138693eaba0738eaf524c59408f Signed-off-by: Hoa Nguyen <hn@hnpl.org>
This commit is contained in:
@@ -67,9 +67,7 @@ class RiscvBootloaderKernelWorkload(Workload):
|
||||
bootloader_addr = Param.Addr(
|
||||
0x0, "Where to place the bootloader in memory."
|
||||
)
|
||||
kernel_filename = Param.String(
|
||||
"", "vmlinux file. Don't use kernel if empty."
|
||||
)
|
||||
object_file = Param.String("", "vmlinux file. Don't use kernel if empty.")
|
||||
kernel_addr = Param.Addr(
|
||||
0x80200000,
|
||||
"Where to place the kernel in memory. Typically, after the first "
|
||||
@@ -85,6 +83,6 @@ class RiscvBootloaderKernelWorkload(Workload):
|
||||
dtb_addr = Param.Addr(0x87E00000, "Where to place the DTB in memory.")
|
||||
|
||||
# booting parameters
|
||||
boot_args = Param.String(
|
||||
command_line = Param.String(
|
||||
"", "Booting arguments, to be passed to the kernel"
|
||||
)
|
||||
|
||||
@@ -97,8 +97,8 @@ BootloaderKernelWorkload::loadBootloaderSymbolTable()
|
||||
void
|
||||
BootloaderKernelWorkload::loadKernelSymbolTable()
|
||||
{
|
||||
if (params().kernel_filename != "") {
|
||||
kernel = loader::createObjectFile(params().kernel_filename);
|
||||
if (params().object_file != "") {
|
||||
kernel = loader::createObjectFile(params().object_file);
|
||||
kernelSymbolTable = kernel->symtab();
|
||||
auto renamedKernelSymbolTable = \
|
||||
kernelSymbolTable.functionSymbols()->rename(
|
||||
@@ -131,7 +131,7 @@ BootloaderKernelWorkload::loadBootloader()
|
||||
void
|
||||
BootloaderKernelWorkload::loadKernel()
|
||||
{
|
||||
if (params().kernel_filename != "") {
|
||||
if (params().object_file != "") {
|
||||
Addr kernel_paddr_offset = params().kernel_addr;
|
||||
kernel->buildImage().offset(kernel_paddr_offset).write(
|
||||
system->physProxy
|
||||
@@ -139,7 +139,7 @@ BootloaderKernelWorkload::loadKernel()
|
||||
delete kernel;
|
||||
|
||||
inform("Loaded kernel \'%s\' at 0x%llx\n",
|
||||
params().kernel_filename,
|
||||
params().object_file,
|
||||
kernel_paddr_offset);
|
||||
} else {
|
||||
inform("Kernel is not specified.\n");
|
||||
|
||||
@@ -81,7 +81,7 @@ class BootloaderKernelWorkload: public Workload
|
||||
public:
|
||||
PARAMS(RiscvBootloaderKernelWorkload);
|
||||
BootloaderKernelWorkload(const Params &p)
|
||||
: Workload(p), entryPoint(p.entry_point), bootArgs(p.boot_args)
|
||||
: Workload(p), entryPoint(p.entry_point), bootArgs(p.command_line)
|
||||
{
|
||||
loadBootloaderSymbolTable();
|
||||
loadKernelSymbolTable();
|
||||
|
||||
Reference in New Issue
Block a user