Ok got to the stage where Epia-m is booting linux, though with lots of
things broken and running only to the serial port (i.e. no vga yet).

I have a couple of issues:

To get the code to run the cpu initialisation sequences I've had to change
the epia-m Config.lb from

...

   chip cpu/via/model_centaur

...

to

...
   device apic_cluster 0 on
        chip cpu/via/model_centaur
                device apic 0 on end
        end
   end

This is so that the code in the northbridge has appropriate device
structures to work with. Now this processor does not have a lapic, so this
construct seems bizare to me. Is there a more appropriate construct where no
lapic is present?

A quick grep shows that there are several other motherboards which use the
same style of configuartion in their Config.lb and their northbridge code.
Do these need changing as well?

Additionally 'src/arch/i386/lib/cpu.c' needs changing to support the case
where no lapic is present:

in function cpu_initialize there needs to be a conditional around some lines
as follows:

#if CONFIG_SMP || CONFIG_IOAPIC
        if (cpu->path.u.apic.apic_id != lapicid()) {
                printk_err("CPU .....
            // return without setting ...
      } else {
#endif

and a similar condition around the closing brace a few lines later

Nick Barker


-- 
LinuxBIOS mailing list
[email protected]
http://www.openbios.org/mailman/listinfo/linuxbios

Reply via email to