Re: irq-loongson-pch-pic.c:undefined reference to `of_iomap'

Geert Uytterhoeven
2020-11-16T09:01:09Z

Hi Arnd,

On Mon, Nov 16, 2020 at 9:33 AM Arnd Bergmann <arnd@kernel.org> wrote:
> On Mon, Nov 16, 2020 at 5:33 AM Randy Dunlap <rdunlap@infradead.org> wrote:
> > On 11/13/20 3:27 PM, kernel test robot wrote:
> > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> > > head: 9e6a39eae450b81c8b2c8cbbfbdf8218e9b40c81
> > > commit: ef8c01eb64ca6719da449dab0aa9424e13c58bd0 irqchip: Add Loongson PCH PIC controller
> > > date: 6 months ago
> > > config: s390-randconfig-r022-20201113 (attached as .config)
> > > compiler: s390-linux-gcc (GCC) 9.3.0
> > > reproduce (this is a W=1 build):
> > > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> > > chmod +x ~/bin/make.cross
> > > # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ef8c01eb64ca6719da449dab0aa9424e13c58bd0
> > > git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
> > > git fetch --no-tags linus master
> > > git checkout ef8c01eb64ca6719da449dab0aa9424e13c58bd0
> > > # save the attached .config to linux build tree
> > > COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=s390
> > >
> > > If you fix the issue, kindly add following tag as appropriate
> > > Reported-by: kernel test robot <lkp@intel.com>
> >
> > Hi lkp (ktr) et al,
> >
> > arch/s390/Kconfig says that HAS_IOMEM depends on CONFIG_PCI and the
> > supplied .config.gz file has
> > # CONFIG_PCI is not set
> >
> > Does that mean that all of these drivers should have an additional
> > depends on HAS_IOMEM
> > in their Kconfig entries?
> >
> > That's what it would take for them to have access to all of the
> > devm_platform_iomap* type functions.
> >
> > For most ARCHes, OF_ADDRESS also depends on HAS_IOMEM, so that's why
> > of_iomap() is not available.
>
> (adding s390 folks to cc)
>
> I think fixing this requires a larger-scale effort. I tried building
> an s390 allmodconfig
> with CONFIG_PCI disabled, and got warnings and failures in many other places,
> see full log at the end of this mail.
>
> While in theory, all of those should depend on 'HAS_IOMEM' or some other symbol,
> keeping these dependencies sounds like an uphill battle, and there is not much
> to be gained from building the drivers for s390 on top of compile-testing them
> on more conventional architectures.

Don't we need the dependencies on HAS_IOMEM for the CONFIG_UML=y
case, too?

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds