diff options
Diffstat (limited to 'util/cbi-util.c')
-rw-r--r-- | util/cbi-util.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/util/cbi-util.c b/util/cbi-util.c index 97dade6754..2fd983c1aa 100644 --- a/util/cbi-util.c +++ b/util/cbi-util.c @@ -37,6 +37,7 @@ enum { OPT_DRAM_PART_NUM, OPT_OEM_NAME, OPT_MODEL_ID, + OPT_FW_CONFIG, OPT_SIZE, OPT_ERASE_BYTE, OPT_SHOW_ALL, @@ -51,6 +52,7 @@ static const struct option opts_create[] = { {"dram_part_num", 1, 0, OPT_DRAM_PART_NUM}, {"oem_name", 1, 0, OPT_OEM_NAME}, {"model_id", 1, 0, OPT_MODEL_ID}, + {"fw_config", 1, 0, OPT_FW_CONFIG}, {"size", 1, 0, OPT_SIZE}, {"erase_byte", 1, 0, OPT_ERASE_BYTE}, {NULL, 0, 0, 0} @@ -70,6 +72,7 @@ static const char *field_name[] = { "DRAM_PART_NUM", "OEM_NAME", "MODEL_ID", + "FW_CONFIG", }; BUILD_ASSERT(ARRAY_SIZE(field_name) == CBI_TAG_COUNT); @@ -89,6 +92,7 @@ const char help_create[] = " --erase_byte <uint8> Byte used for empty space. Default:0xff\n" " --format_version <uint16> Data format version\n" " --model_id <value> Model ID\n" + " --fw_config <value> Firmware configuration bit-field\n" "\n" "<value> must be a positive integer <= 0XFFFFFFFF and field size can\n" " be optionally specified by <value:size> notation: e.g. 0xabcd:4.\n" @@ -246,6 +250,7 @@ static int cmd_create(int argc, char **argv) struct integer_field oem; struct integer_field sku; struct integer_field model; + struct integer_field fw_config; const char *dram_part_num; const char *oem_name; } bi; @@ -314,6 +319,10 @@ static int cmd_create(int argc, char **argv) if (parse_integer_field(optarg, &bi.model)) return -1; break; + case OPT_FW_CONFIG: + if (parse_integer_field(optarg, &bi.fw_config)) + return -1; + break; } } @@ -340,6 +349,8 @@ static int cmd_create(int argc, char **argv) p = cbi_set_data(p, CBI_TAG_OEM_ID, &bi.oem.val, bi.oem.size); p = cbi_set_data(p, CBI_TAG_SKU_ID, &bi.sku.val, bi.sku.size); p = cbi_set_data(p, CBI_TAG_MODEL_ID, &bi.model.val, bi.model.size); + p = cbi_set_data(p, CBI_TAG_FW_CONFIG, &bi.fw_config.val, + bi.fw_config.size); p = cbi_set_string(p, CBI_TAG_DRAM_PART_NUM, bi.dram_part_num); p = cbi_set_string(p, CBI_TAG_OEM_NAME, bi.oem_name); @@ -465,6 +476,7 @@ static int cmd_show(int argc, char **argv) print_integer(buf, CBI_TAG_OEM_ID); print_integer(buf, CBI_TAG_SKU_ID); print_integer(buf, CBI_TAG_MODEL_ID); + print_integer(buf, CBI_TAG_FW_CONFIG); print_string(buf, CBI_TAG_DRAM_PART_NUM); print_string(buf, CBI_TAG_OEM_NAME); |