mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 18:50:05 +01:00
xen/arm: add start to struct bootcmdline
Add a new start address field to struct bootcmdline to easily match a cmdline to the corresponding bootmodule. This is useful for debugging (not actually needed for functionalities today, but could be.) Instead of printing the index in the cmdline array, print the start address of the corresponding bootmodule for each cmdline in early_print_info. Signed-off-by: Stefano Stabellini <stefanos@xilinx.com> Reviewed-by: Julien Grall <julien.grall@arm.com>
This commit is contained in:
1 parent
93ff7f1242
commit
c74b8d5ca0
3 files changed
+6
-4
No files matched your search
@@ -238,7 +238,7 @@ static void __init process_multiboot_node(const void *fdt, int node,
|
||||
if ( !prop )
|
||||
return;
|
||||
add_boot_cmdline(fdt_get_name(fdt, parent_node, &len), prop->data,
|
||||
kind, domU);
|
||||
kind, start, domU);
|
||||
}
|
||||
|
||||
static void __init process_chosen_node(const void *fdt, int node,
|
||||
@@ -335,7 +335,7 @@ static void __init early_print_info(void)
|
||||
}
|
||||
printk("\n");
|
||||
for ( i = 0 ; i < cmds->nr_mods; i++ )
|
||||
printk("CMDLINE[%d]:%s %s\n", i,
|
||||
printk("CMDLINE[%"PRIpaddr"]:%s %s\n", cmds->cmdline[i].start,
|
||||
cmds->cmdline[i].dt_name,
|
||||
&cmds->cmdline[i].cmdline[0]);
|
||||
printk("\n");
|
||||
|
||||
@@ -254,7 +254,7 @@ struct bootmodule * __init boot_module_find_by_kind(bootmodule_kind kind)
|
||||
}
|
||||
|
||||
void __init add_boot_cmdline(const char *name, const char *cmdline,
|
||||
bootmodule_kind kind, bool domU)
|
||||
bootmodule_kind kind, paddr_t start, bool domU)
|
||||
{
|
||||
struct bootcmdlines *cmds = &bootinfo.cmdlines;
|
||||
struct bootcmdline *cmd;
|
||||
@@ -268,6 +268,7 @@ void __init add_boot_cmdline(const char *name, const char *cmdline,
|
||||
cmd = &cmds->cmdline[cmds->nr_mods++];
|
||||
cmd->kind = kind;
|
||||
cmd->domU = domU;
|
||||
cmd->start = start;
|
||||
|
||||
ASSERT(strlen(name) <= DT_MAX_NAME);
|
||||
safe_strcpy(cmd->dt_name, name);
|
||||
|
||||
@@ -49,6 +49,7 @@ struct bootmodule {
|
||||
struct bootcmdline {
|
||||
bootmodule_kind kind;
|
||||
bool domU;
|
||||
paddr_t start;
|
||||
char dt_name[DT_MAX_NAME];
|
||||
char cmdline[BOOTMOD_MAX_CMDLINE];
|
||||
};
|
||||
@@ -104,7 +105,7 @@ struct bootmodule *boot_module_find_by_kind(bootmodule_kind kind);
|
||||
struct bootmodule * boot_module_find_by_addr_and_kind(bootmodule_kind kind,
|
||||
paddr_t start);
|
||||
void add_boot_cmdline(const char *name, const char *cmdline,
|
||||
bootmodule_kind kind, bool domU);
|
||||
bootmodule_kind kind, paddr_t start, bool domU);
|
||||
struct bootcmdline *boot_cmdline_find_by_kind(bootmodule_kind kind);
|
||||
struct bootcmdline * boot_cmdline_find_by_name(const char *name);
|
||||
const char *boot_module_kind_as_string(bootmodule_kind kind);
|
||||
|
||||