On Fri, Apr 22, 2022 at 9:48 AM Michael Schmitz schmitzmic@gmail.com wrote:
Am 21.04.2022 um 20:20 schrieb Arnd Bergmann:
From: Arnd Bergmann arnd@arndb.de
After a build regression report, I took a look at possible users of CONFIG_ISA_DMA_API on m68k and found none, which Greg confirmed. The CONFIG_GENERIC_ISA_DMA option in turn is only needed to implement ISA_DMA_API, and is clearly not used on the platforms with ISA support.
The CONFIG_ISA support for AMIGA_PCMCIA is probably also unneeded, but this is less clear. Unlike other PCMCIA implementations, this one does not use the drivers/pcmcia subsystem at all and just supports the "apne" network driver. When it was first added, one could use ISA drivers on it as well, but this probably broke at some point.
Hoping to clarify some of this:
For the Amiga PCMCIA "apne" driver, both the definitions of isa_type/isa_sex and the definitions of the low-level accessor and address translation functions are protected by CONFIG_ISA (see arch/m68k/kernel/setup_mm.c and arch/m68k/include/asm/io_mm.h for details).
This could conceivably be changed (only AMIGA_PCMCIA and Q40 do use these definitions, aside from ATARI_ROM_ISA), but as things are right now, neither Q40 ISA nor Amiga PCMCIA will work without CONFIG_ISA defined.
Ok, thanks for clarifying that, this makes a lot more sense now. I was wondering what ISA devices one can actually use without DMA, but it turns out that a lot of the older storage (pata_legacy, pata_isapnp, aha152x) and network (3c509, 8390, cs89x0, smc9194) devices work in PIO mode, aside from a couple of oddball special-purpose stuff (speech, busmouse, comedi, appletalk, wan, ...).
Regarding the Amiga PCMCIA driver's use of the drivers/pcmcia subsystem, I have a patch in limbo at netdev that makes use of the cftable parser code from drivers/pcmcia, but as far as I can recall, none of this depends on CONFIG_ISA.
Yes, Geert mentioned that on IRC already. Note that Dominik Brodowski has said in the past that he would plan to eventually drop PCMCIA support from the kernel, but I think if that happens, the cftable parser can just be moved into the amiga_pcmcia code.
Arnd