cros_ec: Add support for reading the SKU ID

This allows reading strapping pins attached to the EC. Add an
implementation for this.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass
2021-01-16 14:52:25 -07:00
parent 698e30f7a8
commit 7791df576c
5 changed files with 55 additions and 0 deletions

View File

@@ -1105,6 +1105,19 @@ int cros_ec_flash_update_rw(struct udevice *dev, const uint8_t *image,
return 0;
}
int cros_ec_get_sku_id(struct udevice *dev)
{
struct ec_sku_id_info *r;
int ret;
ret = ec_command_inptr(dev, EC_CMD_GET_SKU_ID, 0, NULL, 0,
(uint8_t **)&r, sizeof(*r));
if (ret != sizeof(*r))
return -ret;
return r->sku_id;
}
int cros_ec_read_nvdata(struct udevice *dev, uint8_t *block, int size)
{
struct ec_params_vbnvcontext p;

View File

@@ -473,6 +473,13 @@ static int process_cmd(struct ec_state *ec,
len = sizeof(*resp);
break;
}
case EC_CMD_GET_SKU_ID: {
struct ec_sku_id_info *resp = resp_data;
resp->sku_id = 1234;
len = sizeof(*resp);
break;
}
default:
printf(" ** Unknown EC command %#02x\n", req_hdr->command);
return -1;