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

Re: swim driver question for 2.6



> Okay - thanks for the confirmation.  I had a look through the code
> for both drivers, and they seemed pretty self-contained (no cross
> dependencies), but I just wanted to make sure.  I'm only now just
> learning how to crawl around in kernel code ...
> 
> Another question, if folks don't mind:
> 
> As Micheal suggested in an earlier thread, some older interrupt
> routines had to be replaced with the 2.6 version (local_irq_**).
> This was pointed out not to be SMP safe, so I read a little, and
> started again with substitution, replacing the local_irq_* lines
> with the spin_lock equivalents.  However, I could not find the
> spin_lock_ equivalent of local_irq_enable.  The closest I found
> was spin_lock_irqsave in floopy.c ...  Is this what should be
> used to replace local_irq_enable ?

spin_unlock_irqrestore. I suggest you look at floppy.c, swim3 was
partially based on it, see how it does it's locking.

> With all of the other irq handling functions replaced, except
> that one (local_irq)enable), the machine locked up and I had to
> do a hard reboot.

There is also available somewhere the mklinux floppy driver source,
which contains bits from Apple that can be re-used, and has all the
infos you may need about the HW

Ben.




Reply to: