summaryrefslogtreecommitdiffstats
path: root/internal.c
diff options
context:
space:
mode:
Diffstat (limited to 'internal.c')
-rw-r--r--internal.c18
1 files changed, 15 insertions, 3 deletions
diff --git a/internal.c b/internal.c
index c96db99..d3866ba 100644
--- a/internal.c
+++ b/internal.c
@@ -99,17 +99,29 @@ int force_boardenable = 0;
int force_boardmismatch = 0;
#if defined(__i386__) || defined(__x86_64__)
-struct superio superio = {};
-
void probe_superio(void)
{
- superio = probe_superio_ite();
+ probe_superio_ite();
#if 0
/* Winbond Super I/O code is not yet available. */
if (superio.vendor == SUPERIO_VENDOR_NONE)
superio = probe_superio_winbond();
#endif
}
+
+int superio_count = 0;
+#define SUPERIO_MAX_COUNT 3
+
+struct superio superios[SUPERIO_MAX_COUNT];
+
+int register_superio(struct superio s)
+{
+ if (superio_count == SUPERIO_MAX_COUNT)
+ return 1;
+ superios[superio_count++] = s;
+ return 0;
+}
+
#endif
int is_laptop = 0;
OpenPOWER on IntegriCloud