Re: [PATCH 0/2] Experimental Amiga Zorro ESP driver

Michael Schmitz
2013-08-18T02:05:38Z

Tuomas,
>>
>>> [ 301.880000] esp: esp0: Reconnect IRQ2 timeout
>>
>> Are there interrupts logged for IRQ2 at all (cat /proc/interrupts)?
>> It looks to me as though all DMA transfers fail (the first command to
>> fail is READ_CAPACITY which would usually be issued right after
>> IDENTIFY IIRC).
>
> root@amiga:/# cat /proc/interrupts
> CPU0
> 2: 1066320 auto CIAA, zorro8390, ide0, Amiga Zorro ESP
> 6: 456970 auto CIAB
> 8: 38239 amiga serial TX
> 9: 0 amiga floppy_dma
> 12: 315934 amiga fb vertb handler
> 13: 315741 amiga serial status
> 15: 0 amiga DMA sound
> 19: 401 amiga serial RX
> 23: 1 cia floppy_timer
> 25: 0 cia amikbd
> 27: 456971 cia timer
> ERR: 0
>
> Seems like IRQ2 is very popular, so it's hard to say which device has
> generated the interrupts...

Yep - you'll be guaranteed to get a few IDE interrupts just by calling
up cat - might be possible to get away without too much interrupts
generated if it's all in the buffer cache - try whether the interrupt
count changes after a few repetitions of that command.

Might require more elaborate IRQ bookkeeping though.

> Should the assigned irq name match the module name?
No, that's just the string passed to request_irq. I'm not aware of a
policy mandating use of module names there.

Another question, after I had a look at your driver: are you certain
mapping a size of 0x20 is enough for the Mark IV DMA engine? The latch
register is at offset 0x8000 from the address register ...

All (or most) other ESP drivers use 16 bit transfer counts only - you
set the 1230 to use 24 bit, can it actually do that?

Cheers,

Michael