summaryrefslogtreecommitdiff
path: root/src/mainboard/google/butterfly/mainboard.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mainboard/google/butterfly/mainboard.c')
-rw-r--r--src/mainboard/google/butterfly/mainboard.c37
1 files changed, 8 insertions, 29 deletions
diff --git a/src/mainboard/google/butterfly/mainboard.c b/src/mainboard/google/butterfly/mainboard.c
index 32a830842a..b11c22678f 100644
--- a/src/mainboard/google/butterfly/mainboard.c
+++ b/src/mainboard/google/butterfly/mainboard.c
@@ -343,40 +343,19 @@ static void mainboard_init(device_t dev)
}
}
-static int butterfly_smbios_type41(int *handle, unsigned long *current,
- const char *name, u8 irq, u8 addr)
-{
- struct smbios_type41 *t = (struct smbios_type41 *)*current;
- int len = sizeof(struct smbios_type41);
-
- memset(t, 0, sizeof(struct smbios_type41));
- t->type = SMBIOS_ONBOARD_DEVICES_EXTENDED_INFORMATION;
- t->handle = *handle;
- t->length = len - 2;
- t->reference_designation = smbios_add_string(t->eos, name);
- t->device_type = SMBIOS_DEVICE_TYPE_OTHER;
- t->device_status = 1;
- t->device_type_instance = irq;
- t->segment_group_number = 0;
- t->bus_number = addr;
- t->function_number = 0;
- t->device_number = 0;
-
- len = t->length + smbios_string_table_len(t->eos);
- *current += len;
- *handle += 1;
- return len;
-}
-
static int butterfly_onboard_smbios_data(device_t dev, int *handle,
unsigned long *current)
{
int len = 0;
- len += butterfly_smbios_type41(handle, current,
- BUTTERFLY_TRACKPAD_NAME,
- BUTTERFLY_TRACKPAD_IRQ,
- BUTTERFLY_TRACKPAD_I2C_ADDR);
+ len += smbios_write_type41(
+ current, handle,
+ BUTTERFLY_TRACKPAD_NAME, /* name */
+ BUTTERFLY_TRACKPAD_IRQ, /* instance */
+ 0, /* segment */
+ BUTTERFLY_TRACKPAD_I2C_ADDR, /* bus */
+ 0, /* device */
+ 0); /* function */
return len;
}