Re: [char-misc:char-misc-testing 20/24] kismet: WARNING: unmet direct dependencies detected for GPIOLIB_IRQCHIP when selected by GP_PCI1XXXX
From: Geert Uytterhoeven
Date: Mon Sep 05 2022 - 03:52:05 EST
Hi Kumaravel,
On Sat, Sep 3, 2022 at 12:29 PM <Kumaravel.Thiagarajan@xxxxxxxxxxxxx> wrote:
> > -----Original Message-----
> > From: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> > Sent: Saturday, September 3, 2022 12:40 PM
> > To: kernel test robot <lkp@xxxxxxxxx>; Kumaravel Thiagarajan - I21417
> > <Kumaravel.Thiagarajan@xxxxxxxxxxxxx>; Paul Gazzillo <paul@xxxxxxxxx>;
> > Necip Fazil Yildiran <fazilyildiran@xxxxxxxxx>; kbuild-all@xxxxxxxxxxxx; linux-
> > kernel@xxxxxxxxxxxxxxx
> > Subject: Re: [char-misc:char-misc-testing 20/24] kismet: WARNING: unmet
> > direct dependencies detected for GPIOLIB_IRQCHIP when selected by
> > GP_PCI1XXXX
> >
> > EXTERNAL EMAIL: Do not click links or open attachments unless you know the
> > content is safe
> >
> > On Sat, Sep 03, 2022 at 02:12:13PM +0800, kernel test robot wrote:
> > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-
> > misc.git char-misc-testing
> > > head: 4ec7ac90ff399b7d9af81cc8afd430a22786c61b
> > > commit: 393fc2f5948fd340d016a9557eea6e1ac2f6c60c [20/24] misc:
> > microchip: pci1xxxx: load auxiliary bus driver for the PIO function in the multi-
> > function endpoint of pci1xxxx device.
> > > config: x86_64-kismet-CONFIG_GPIOLIB_IRQCHIP-CONFIG_GP_PCI1XXXX-
> > 0-0
> > > (https://download.01.org/0day-
> > ci/archive/20220903/202209031414.Y8YCEjm
> > > I-lkp@xxxxxxxxx/config)
> > > reproduce:
> > > # https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-
> > misc.git/commit/?id=393fc2f5948fd340d016a9557eea6e1ac2f6c60c
> > > git remote add char-misc
> > https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
> > > git fetch --no-tags char-misc char-misc-testing
> > > git checkout 393fc2f5948fd340d016a9557eea6e1ac2f6c60c
> > > # 1. reproduce by kismet
> > > # install kmax per
> > https://github.com/paulgazz/kmax/blob/master/README.md
> > > kismet --linux-ksrc=linux --selectees CONFIG_GPIOLIB_IRQCHIP --
> > selectors CONFIG_GP_PCI1XXXX -a=x86_64
> > > # 2. reproduce by make
> > > # save the config file to linux source tree
> > > cd linux
> > > make ARCH=x86_64 olddefconfig
> > >
> > > If you fix the issue, kindly add following tag where applicable
> > > Reported-by: kernel test robot <lkp@xxxxxxxxx>
> > >
> > > kismet warnings: (new ones prefixed by >>)
> > > >> kismet: WARNING: unmet direct dependencies detected for
> > > >> GPIOLIB_IRQCHIP when selected by GP_PCI1XXXX
> > >
> > > WARNING: unmet direct dependencies detected for GPIOLIB_IRQCHIP
> > > Depends on [n]: GPIOLIB [=n]
> > > Selected by [y]:
> > > - GP_PCI1XXXX [=y] && PCI [=y]
> >
> > Ick, I missed this before in review. Kumaravel, any chance you can make this
> > a "depends" issue instead of a select one?
>
> Greg, can I select both GPIOLIB & GPIOLIB_IRQCHIP like below?
>
> config GP_PCI1XXXX
> tristate "Microchip PCI1XXXX PCIe to GPIO Expander + OTP/EEPROM manager"
> depends on PCI
> select GPIOLIB
> select GPIOLIB_IRQCHIP
> help
> PCI1XXXX is a PCIe GEN 3 switch with one of the endpoints having
> multiple functions and one of the functions is a GPIO controller
> which also has registers to interface with the OTP and EEPROM.
> Select yes, no or module here to include or exclude the driver
> for the GPIO function.
>
> or replace "select GPIOLIB_IRQCHIP" with "depends on GPIOLIB_IRQCHIP" like you mentioned?
>
> Please advise.
I think you want to use
depends on GPIOLIB
select GPIOLIB_IRQCHIP
The former is a visible symbol, under full user control.
The latter is an invisible symbol, to be selected by drivers that need it.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx
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