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:
Hoa Nguyen
2023-12-01 01:13:36 +00:00
parent bfd25f5352
commit bbe5216d88
3 changed files with 7 additions and 9 deletions

View File

@@ -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"
)

View File

@@ -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");

View File

@@ -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();