#2 noFPU compatibility

release_0.4
closed-fixed
5
2005-01-05
2004-06-15
Laurent Vivier
No

EMILE works and load correctly on machine without FPU.
But kernel is not able to start correctly, it hangs on
first screen after "K".

Seen on LCIII.

Discussion

  • Laurent Vivier
    Laurent Vivier
    2005-01-05

    • status: open --> closed-fixed
     
  • Laurent Vivier
    Laurent Vivier
    2005-01-05

    Logged In: YES
    user_id=400005

    The problem is in fact in the IRQ initialisation.

    Problem: in start_kernel(), kernel hangs on the sti().

    Analyse: We can suppose there are pending IRQs when we
    unmask them, and unfortunately handlers are not already
    installed.
    Penguin booter doesn't meet the issue because it makes a
    shutdown under MacOS that should clear IRQs.

    Solution: To avoid this case, we must avoid pending IRQs by
    disabling/clearing IRQs when we clear handlers (in
    mac_init_IRQ).

    Tested on the machine where the problem appears, a Performa
    450/LCIII, the patch corrects the problem.
    Tested on a machine where the problem doesn't appear, a
    IIci, kernel continues to work correctly :-P

     
  • Laurent Vivier
    Laurent Vivier
    2005-01-05

    linux 2.2 clean IRQs