Hi Frank —
> I got this nice old "workstation" from the mid 90ies with dual P54C
> processors and i430NX chipset and want to operate it in MP mode with
> OpenBSD. Unfortunately this doesn't work as expected currently.
Are you able to describe "doesn't work as expected" a bit more? Does it hang after the dmesg? do you get to login? Something else?
> I've
> already tried with 6.1, 6.2 and 6.3-current-1521924436. Find attached
> the full dmesg output for 6.3-[...] below, but I suspect that the
> following message is the most relevant one:
>
> ```
> [...]
> bios0: MP default configuration 6 not supported
> [...]
> ```
>
> I actually don't know the meaning of it, can someone perhaps shed some
> light on it?
It means you got to this bit of code (see sys/arch/i386/i386/mpbios.c):
if (mp_fps->pap == 0) {
if (mp_fps->mpfb1 == 0)
printf("%s: MP fps invalid: "
"no default config and no configuration table\n",
self->dv_xname);
else
printf("%s: MP default configuration %d not "
"supported\n", self->dv_xname, mp_fps->mpfb1);
goto err;
}
mp_fps is the "MP floating point structure" (see 4.1 in the MP spec). Now, we know the pap (Physical Address Pointer) is zero which means the MP config table doesn't exist on your system. So when there's no config table, the spec wants to use a default setup. (see section 5 of the spec).
To know which default config to use we'd need to use the MP information byte #1 according to the spec. Your dmesg shows the value is 6 and the spec says a value of 6 refers to 2 cpus with EISA+PCI bus and integrated APIC).
It may be the case that more work is needed to add support for this setup. Haven't looked much further than that so far...
No comments:
Post a Comment