aboutsummaryrefslogtreecommitdiff
path: root/hardinfo2/devices.c
diff options
context:
space:
mode:
authorLeandro A. F. Pereira <leandro@hardinfo.org>2008-05-18 14:26:36 +0000
committerLeandro A. F. Pereira <leandro@hardinfo.org>2008-05-18 14:26:36 +0000
commitcb4e0ce108d4da27400abfeca1d5d6d3de373d0b (patch)
tree4798699fc00a5ff3aa83e2c22cbb400681abfd58 /hardinfo2/devices.c
parent6e3c288210c382b93e8c0e6243d7d81b6dffd7ce (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.c32
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"