Port-amiga archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: ASDG EB920 ethernet



Ignatios Souvatzis <ignatios%theory.cs.uni-bonn.de@localhost> You write: 
> Bernd Ernesti advised:
> 
> > You have to change a 2 to a 6 in the kernel source tree and to compile a
> > new kernel. The interrupt is hardcoded into the kernel.
> 
> [...]
> 
> Its not that easy... this will break the networking code locking, which is 
> based on interupt priority.
> 
> You'll have also to change splnet() to spl6() (instead of spl3()) in
> sys/arch/amiga/include/psl.h
> 
> And I suspect, that you'll have to change the amiga_ttyspl initialization in
> machdep.c from PSL_S|PSL_IPL4 to PSL_S|PSL_IPL6... I seem to recall that there
> was some ordering restriction between splnet and spltty.

  And trying to run with splnet() and whatever else at spl6() is going to
raise havoc with the clock, disk performance, and serial input.

  I tried doing something similar for the Zeus SCSI driver and decided it
just wasn't practical.  It's much better to have a short interrupt routine
running at the interrupt level and have it save what ever information is
needed and schedule a software interrupt callback to finish processing
the interrupt.

  It would be much simpler to run the board at INT2 if possible (which can't
be done with the Zeus SCSI or the MultiFaceCard serial port - unless the
board is physically modified).

Michael
---
Michael L. Hitch                        mhitch%montana.edu@localhost
Computer Consultant,  Information Technology Center
Montana State University, Bozeman, MT     USA



Home | Main Index | Thread Index | Old Index