x86: fsp: Make hob command a sub-command to fsp

Introduce a new fsp command and make the existing hob command a
sub-command to fsp for future extension. Also move cmd_hob.c to
the dedicated fsp sub-directory in arch/x86/lib.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Bin Meng 2015-10-10 01:47:58 -07:00 committed by Simon Glass
parent b325cbb171
commit 62716ebb75
4 changed files with 30 additions and 10 deletions

View file

@ -10,7 +10,6 @@ obj-y += bios_asm.o
obj-y += bios_interrupts.o obj-y += bios_interrupts.o
obj-$(CONFIG_CMD_BOOTM) += bootm.o obj-$(CONFIG_CMD_BOOTM) += bootm.o
obj-y += cmd_boot.o obj-y += cmd_boot.o
obj-$(CONFIG_HAVE_FSP) += cmd_hob.o
obj-$(CONFIG_EFI) += efi/ obj-$(CONFIG_EFI) += efi/
obj-y += e820.o obj-y += e820.o
obj-y += gcc.o obj-y += gcc.o

View file

@ -4,6 +4,7 @@
# SPDX-License-Identifier: GPL-2.0+ # SPDX-License-Identifier: GPL-2.0+
# #
obj-y += cmd_fsp.o
obj-y += fsp_car.o obj-y += fsp_car.o
obj-y += fsp_common.o obj-y += fsp_common.o
obj-y += fsp_dram.o obj-y += fsp_dram.o

View file

@ -1,12 +1,11 @@
/* /*
* Copyright (C) 2014, Bin Meng <bmeng.cn@gmail.com> * Copyright (C) 2014-2015, Bin Meng <bmeng.cn@gmail.com>
* *
* SPDX-License-Identifier: GPL-2.0+ * SPDX-License-Identifier: GPL-2.0+
*/ */
#include <common.h> #include <common.h>
#include <command.h> #include <command.h>
#include <linux/compiler.h>
#include <asm/fsp/fsp_support.h> #include <asm/fsp/fsp_support.h>
DECLARE_GLOBAL_DATA_PTR; DECLARE_GLOBAL_DATA_PTR;
@ -26,7 +25,7 @@ static char *hob_type[] = {
"Capsule", "Capsule",
}; };
int do_hob(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) static int do_hob(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
{ {
const struct hob_header *hdr; const struct hob_header *hdr;
uint type; uint type;
@ -74,8 +73,30 @@ int do_hob(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
return 0; return 0;
} }
static cmd_tbl_t fsp_commands[] = {
U_BOOT_CMD_MKENT(hob, 0, 1, do_hob, "", ""),
};
static int do_fsp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
{
cmd_tbl_t *fsp_cmd;
int ret;
if (argc < 2)
return CMD_RET_USAGE;
fsp_cmd = find_cmd_tbl(argv[1], fsp_commands, ARRAY_SIZE(fsp_commands));
argc -= 2;
argv += 2;
if (!fsp_cmd || argc > fsp_cmd->maxargs)
return CMD_RET_USAGE;
ret = fsp_cmd->cmd(fsp_cmd, flag, argc, argv);
return cmd_process_error(fsp_cmd, ret);
}
U_BOOT_CMD( U_BOOT_CMD(
hob, 1, 1, do_hob, fsp, 2, 1, do_fsp,
"print Firmware Support Package (FSP) Hand-Off Block information", "Show Intel Firmware Support Package (FSP) related information",
"" "hob - Print FSP Hand-Off Block (HOB) information"
); );

View file

@ -332,9 +332,8 @@ In keeping with the U-Boot philosophy of providing functions to check and
adjust internal settings, there are several x86-specific commands that may be adjust internal settings, there are several x86-specific commands that may be
useful: useful:
hob - Display information about Firmware Support Package (FSP) Hand-off fsp - Display information about Intel Firmware Support Package (FSP).
Block. This is only available on platforms which use FSP, mostly This is only available on platforms which use FSP, mostly Atom.
Atom.
iod - Display I/O memory iod - Display I/O memory
iow - Write I/O memory iow - Write I/O memory
mtrr - List and set the Memory Type Range Registers (MTRR). These are used to mtrr - List and set the Memory Type Range Registers (MTRR). These are used to