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

Re: New Amiga drivers coming for Linux 4.18



Hi Finn,

Am 20.04.2018 um 15:33 schrieb Finn Thain:
> On Fri, 20 Apr 2018, Michael Schmitz wrote:
> 
>>
>> What's not supported right now is Oktagon SCSI - in contrast to the 
>> above, this card does not have a DMA engine. We have pseudo-DMA support 
>> in the Mac ESP driver, but the Mac uses a 1:1 mapping of physical 
>> addresses into kernel virtual space while the Amiga uses an offset 
>> mapping. The Mac PDMA code would need some modifications for this board 
>> (ideally, just accounting for some offset, nothing major). If someone's 
>> keen to give it a try and wants more details, just let me know.
> 
> A PDMA algorithm like the one in g_NCR5380 may be more relevant here (?)

Might be an alternative, yes. But can we monitor the DRQ status in the
ESP interrupt or status registers? The 5380 is a dumb piece of hardware
and must expose all these details, the 53C9x is a lot smarter and may not.

> On Macs, the PDMA logic circuit is found in a custom Apple ASIC. This 
> suggests that the mac_esp PDMA algorithm may not be very portable.

Much as I hate to admit that, but despite Apple's use of custom logic,
the details of the PDMA algorithm may vary but the concept itself is
quite portable.

> Moreover, this algorithm won't work unless the logic circuits in Oktagon 
> cards raise the appropriate bus faults, as derived from the DMA signalling 
> from the ESP chip.

Looking at oktakon_io.S from the 2.16 series, it's using an exception
table similar to the Mac PDMA code (the main difference is that the Mac
PDMA has the transfer loop unrolled). So it would appear the PDMA logic
on the Oktagon board can raise a bus fault to signal transfer errors.

Cheers,

	Michael


Reply to: