On Mon, Aug 9, 2021 at 12:20 PM Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote: > > Hi all, > > After merging the net-next tree, today's linux-next build (powerpc > allyesconfig) failed like this: > > drivers/net/ethernet/cirrus/cs89x0.c: In function 'net_open': > drivers/net/ethernet/cirrus/cs89x0.c:897:20: error: implicit declaration of function 'isa_virt_to_bus' [-Werror=implicit-function-declaration] > 897 | (unsigned long)isa_virt_to_bus(lp->dma_buff)); > | ^~~~~~~~~~~~~~~ Thank you for the report! I already sent a patch for m68knommu running into this issue, but it seems there are other architectures that still have it. The driver checks CONFIG_ISA_DMA_API at compile time to determine whether isa_virt_to_bus(), set_dma_mode(), set_dma_addr(), ... are all defined. It seems that isa_virt_to_bus() is only implemented on most of the architectures that set ISA_DMA_API: alpha, arm, mips, parisc and x86, but not on m68k/coldfire and powerpc. Before my patch, the platform driver could only be built on ARM, so maybe we should just go back to that dependency or something like depends on ARM || ((X86 || !ISA_DMA_API) && COMPILE_TEST) for extra build coverage. Then again, it's hard to find any machine actually using these: we have a couple of s3c24xx machines that use the wrong device name, so the device never gets probed, the imx machines that used to work are gone, and the ep7211-edb7211.dts is missing a device node for it. Most likely, neither the platform nor the ISA driver are actually used by anyone. Arnd