mb/qemu/fw_cfg: Use fw_cfg_read() to read SMBIOS data
The QEMU firmware configuration driver can help initialize SMBIOS tables using the table data that QEMU provides over the device. While doing so, it reads from the device "file" manually using port-based IO. Use the fw_cfg_read() helper function to read the SMBIOS-related file, so that the driver is easier to port the driver to other architectures. Change-Id: I18e60b8e9de34f2b0ff67af4113beec1d7467329 Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/80367 Reviewed-by: Nico Huber <nico.h@gmx.de> Reviewed-by: Martin L Roth <gaumless@gmail.com> Reviewed-by: Matt DeVillier <matt.devillier@gmail.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
dd63418f81
commit
2009f7c0b7
1 changed files with 2 additions and 2 deletions
|
|
@ -362,9 +362,9 @@ static void fw_cfg_smbios_init(void)
|
|||
|
||||
fw_cfg_get(FW_CFG_SMBIOS_ENTRIES, &count, sizeof(count));
|
||||
for (i = 0; i < count; i++) {
|
||||
insb(FW_CFG_PORT_DATA, &entry, sizeof(entry));
|
||||
fw_cfg_read(&entry, sizeof(entry));
|
||||
buf = malloc(entry.length - sizeof(entry));
|
||||
insb(FW_CFG_PORT_DATA, buf, entry.length - sizeof(entry));
|
||||
fw_cfg_read(buf, entry.length - sizeof(entry));
|
||||
if (entry.headertype == SMBIOS_FIELD_ENTRY &&
|
||||
entry.tabletype == 1) {
|
||||
switch (entry.fieldoffset) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue