diff options
author | Leandro A. F. Pereira <leandro@hardinfo.org> | 2008-05-18 14:26:36 +0000 |
---|---|---|
committer | Leandro A. F. Pereira <leandro@hardinfo.org> | 2008-05-18 14:26:36 +0000 |
commit | cb4e0ce108d4da27400abfeca1d5d6d3de373d0b (patch) | |
tree | 4798699fc00a5ff3aa83e2c22cbb400681abfd58 /hardinfo2/devices.c | |
parent | 6e3c288210c382b93e8c0e6243d7d81b6dffd7ce (diff) |
Add DMI support for x86 and x86-64 architectures. Support is based on patch by Stewart Adam (berlios patch #2272).
Diffstat (limited to 'hardinfo2/devices.c')
-rw-r--r-- | hardinfo2/devices.c | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/hardinfo2/devices.c b/hardinfo2/devices.c index 6221769c..1d3c73db 100644 --- a/hardinfo2/devices.c +++ b/hardinfo2/devices.c @@ -36,6 +36,9 @@ enum { DEVICES_PRINTERS, DEVICES_BATTERY, DEVICES_SENSORS, +#if defined(ARCH_i386) || defined(ARCH_x86_64) + DEVICES_DMI, +#endif DEVICES_INPUT, DEVICES_STORAGE, } Entries; @@ -49,6 +52,9 @@ gchar *callback_printers(); gchar *callback_storage(); gchar *callback_input(); gchar *callback_usb(); +#if defined(ARCH_i386) || defined(ARCH_x86_64) +gchar *callback_dmi(); +#endif void scan_processors(gboolean reload); void scan_memory(gboolean reload); @@ -59,6 +65,9 @@ void scan_printers(gboolean reload); void scan_storage(gboolean reload); void scan_input(gboolean reload); void scan_usb(gboolean reload); +#if defined(ARCH_i386) || defined(ARCH_x86_64) +void scan_dmi(gboolean reload); +#endif static ModuleEntry entries[] = { {"Processor", "processor.png", callback_processors, scan_processors}, @@ -68,6 +77,9 @@ static ModuleEntry entries[] = { {"Printers", "printer.png", callback_printers, scan_printers,}, {"Battery", "battery.png", callback_battery, scan_battery}, {"Sensors", "therm.png", callback_sensors, scan_sensors}, +#if defined(ARCH_i386) || defined(ARCH_x86_64) + {"DMI", "computer.png", callback_dmi, scan_dmi}, +#endif /* x86 or x86_64 */ {"Input Devices", "inputdevices.png", callback_input, scan_input}, {"Storage", "hdd.png", callback_storage, scan_storage}, {NULL} @@ -124,6 +136,10 @@ typedef struct _Processor Processor; #include <arch/this/sensors.h> #include <arch/this/devmemory.h> +#if defined(ARCH_i386) || defined(ARCH_x86_64) +#include <arch/this/dmi.h> +#endif /* x86 or x86_64 */ + gchar *get_processor_name(void) { scan_processors(FALSE); @@ -193,6 +209,15 @@ gchar *hi_get_field(gchar * field) return g_strdup(field); } +#if defined(ARCH_i386) || defined(ARCH_x86_64) +void scan_dmi(gboolean reload) +{ + SCAN_START(); + __scan_dmi(); + SCAN_END(); +} +#endif + void scan_processors(gboolean reload) { SCAN_START(); @@ -266,6 +291,13 @@ gchar *callback_processors() return processor_get_info(processors); } +#if defined(ARCH_i386) || defined(ARCH_x86_64) +gchar *callback_dmi() +{ + return dmi_info; +} +#endif + gchar *callback_memory() { return g_strdup_printf("[Memory]\n" |