diff options
Diffstat (limited to 'sys/isa/syscons_isa.c')
-rw-r--r-- | sys/isa/syscons_isa.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/isa/syscons_isa.c b/sys/isa/syscons_isa.c index a4672f0..e65e984 100644 --- a/sys/isa/syscons_isa.c +++ b/sys/isa/syscons_isa.c @@ -162,15 +162,16 @@ int sc_get_cons_priority(int *unit, int *flags) { int disabled; + char *at; int u, f; - int i; *unit = -1; - for (i = -1; (i = resource_locate(i, SC_DRIVER_NAME)) >= 0;) { - u = resource_query_unit(i); + for (u = 0; u < 16; u++) { if ((resource_int_value(SC_DRIVER_NAME, u, "disabled", &disabled) == 0) && disabled) continue; + if (resource_string_value(SC_DRIVER_NAME, u, "at", &at) != 0) + continue; if (resource_int_value(SC_DRIVER_NAME, u, "flags", &f) != 0) f = 0; if (f & SC_KERNEL_CONSOLE) { @@ -185,7 +186,7 @@ sc_get_cons_priority(int *unit, int *flags) *flags = f; } } - if ((i < 0) && (*unit < 0)) + if (*unit < 0) return CN_DEAD; #if 0 return ((*flags & SC_KERNEL_CONSOLE) ? CN_INTERNAL : CN_NORMAL); |