Felix Held has submitted this change. ( https://review.coreboot.org/c/coreboot/+/76073?usp=email )
Change subject: soc/amd/common/acpi/ivrs: add HID argument to ivhd_describe_f0_device ......................................................................
soc/amd/common/acpi/ivrs: add HID argument to ivhd_describe_f0_device
Allow the caller to specify the HID that gets written to the ivrs_ivhd_f0_entry_t struct.
TEST=None
Signed-off-by: Felix Held felix-coreboot@felixheld.de Change-Id: I830f1fbbd535b100c88997ece10142a5d553950f Reviewed-on: https://review.coreboot.org/c/coreboot/+/76073 Reviewed-by: Fred Reitberger reitbergerfred@gmail.com Tested-by: build bot (Jenkins) no-reply@coreboot.org Reviewed-by: Jason Glenesk jason.glenesk@gmail.com --- M src/soc/amd/common/block/acpi/ivrs.c 1 file changed, 5 insertions(+), 10 deletions(-)
Approvals: Fred Reitberger: Looks good to me, approved Jason Glenesk: Looks good to me, approved build bot (Jenkins): Verified
diff --git a/src/soc/amd/common/block/acpi/ivrs.c b/src/soc/amd/common/block/acpi/ivrs.c index 8d127e9..7afabf8 100644 --- a/src/soc/amd/common/block/acpi/ivrs.c +++ b/src/soc/amd/common/block/acpi/ivrs.c @@ -48,8 +48,8 @@ return current; }
-static unsigned long ivhd_describe_f0_device(unsigned long current, - uint16_t dev_id, uint8_t datasetting) +static unsigned long ivhd_describe_f0_device(unsigned long current, uint16_t dev_id, + const char acpi_hid[8], uint8_t datasetting) { ivrs_ivhd_f0_entry_t *ivhd_f0 = (ivrs_ivhd_f0_entry_t *)current; memset(ivhd_f0, 0, sizeof(*ivhd_f0)); @@ -57,14 +57,8 @@ ivhd_f0->type = IVHD_DEV_VARIABLE; ivhd_f0->dev_id = dev_id; ivhd_f0->dte_setting = datasetting; - ivhd_f0->hardware_id[0] = 'A'; - ivhd_f0->hardware_id[1] = 'M'; - ivhd_f0->hardware_id[2] = 'D'; - ivhd_f0->hardware_id[3] = 'I'; - ivhd_f0->hardware_id[4] = '0'; - ivhd_f0->hardware_id[5] = '0'; - ivhd_f0->hardware_id[6] = '4'; - ivhd_f0->hardware_id[7] = '0'; + + memcpy(ivhd_f0->hardware_id, acpi_hid, sizeof(ivhd_f0->hardware_id));
current += sizeof(ivrs_ivhd_f0_entry_t); return current; @@ -246,6 +240,7 @@ * reference code uses. Maybe to have a unique PCI device to put into * the field that doesn't collide with any existing device? */ current = ivhd_describe_f0_device(current, PCI_DEVFN(0x13, 1), + "AMDI0040", IVHD_DTE_LINT_1_PASS | IVHD_DTE_LINT_0_PASS | IVHD_DTE_SYS_MGT_TRANS | IVHD_DTE_NMI_PASS | IVHD_DTE_EXT_INT_PASS | IVHD_DTE_INIT_PASS);