Kyösti Mälkki (kyosti.malkki@gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/1492
-gerrit
commit 82dcf870f5aa2d53073991b1f128961b729806d1 Author: Kyösti Mälkki kyosti.malkki@gmail.com Date: Tue Aug 28 07:49:49 2012 +0300
Drop get_smbios_data from chip_operations
We only want to add data once per device. Using the one in chip_operations is not very usable anyway, as different devices under the same chip directory would need to output entirely different sets of data.
Change-Id: I96690c4c699667343ebef44a7f3de1f974cf6d6d Signed-off-by: Kyösti Mälkki kyosti.malkki@gmail.com --- src/arch/x86/boot/smbios.c | 3 --- src/include/device/device.h | 3 --- src/mainboard/samsung/lumpy/mainboard.c | 28 ++++++++++++++-------------- 3 files changed, 14 insertions(+), 20 deletions(-)
diff --git a/src/arch/x86/boot/smbios.c b/src/arch/x86/boot/smbios.c index 8877f60..f7d2dd5 100644 --- a/src/arch/x86/boot/smbios.c +++ b/src/arch/x86/boot/smbios.c @@ -282,9 +282,6 @@ static int smbios_walk_device_tree(device_t tree, int *handle, unsigned long *cu
if (dev->ops && dev->ops->get_smbios_data) len += dev->ops->get_smbios_data(dev, handle, current); - - if (dev->chip_ops && dev->chip_ops->get_smbios_data) - len += dev->chip_ops->get_smbios_data(dev, handle, current); } return len; } diff --git a/src/include/device/device.h b/src/include/device/device.h index 642a4a6..2f0f799 100644 --- a/src/include/device/device.h +++ b/src/include/device/device.h @@ -17,9 +17,6 @@ struct smbus_bus_operations; struct chip_operations { void (*enable_dev)(struct device *dev); const char *name; -#if CONFIG_GENERATE_SMBIOS_TABLES - int (*get_smbios_data)(device_t dev, int *handle, unsigned long *current); -#endif };
#define CHIP_NAME(X) .name = X, diff --git a/src/mainboard/samsung/lumpy/mainboard.c b/src/mainboard/samsung/lumpy/mainboard.c index e54b861..a4f06ef 100644 --- a/src/mainboard/samsung/lumpy/mainboard.c +++ b/src/mainboard/samsung/lumpy/mainboard.c @@ -265,19 +265,6 @@ static void mainboard_init(device_t dev) lumpy_ec_init(); }
-// mainboard_enable is executed as first thing after -// enumerate_buses(). - -static void mainboard_enable(device_t dev) -{ - dev->ops->init = mainboard_init; -#if CONFIG_PCI_OPTION_ROM_RUN_YABEL || CONFIG_PCI_OPTION_ROM_RUN_REALMODE - /* Install custom int15 handler for VGA OPROM */ - int15_install(); -#endif - verb_setup(); -} - static int lumpy_smbios_type41_irq(int *handle, unsigned long *current, const char *name, u8 irq, u8 addr) { @@ -322,9 +309,22 @@ static int lumpy_onboard_smbios_data(device_t dev, int *handle, return len; }
+// mainboard_enable is executed as first thing after +// enumerate_buses(). + +static void mainboard_enable(device_t dev) +{ + dev->ops->init = mainboard_init; + dev->ops->get_smbios_data = lumpy_onboard_smbios_data; +#if CONFIG_PCI_OPTION_ROM_RUN_YABEL || CONFIG_PCI_OPTION_ROM_RUN_REALMODE + /* Install custom int15 handler for VGA OPROM */ + int15_install(); +#endif + verb_setup(); +} + struct chip_operations mainboard_ops = { CHIP_NAME("Samsung Lumpy ChromeBook") .enable_dev = mainboard_enable, - .get_smbios_data = lumpy_onboard_smbios_data, };