[v3,26/38] pnp: add HAS_IOPORT dependencies

Message ID 20230314121216.413434-27-schnelle@linux.ibm.com
State New
Headers
Series Kconfig: Introduce HAS_IOPORT config option |

Commit Message

Niklas Schnelle March 14, 2023, 12:12 p.m. UTC
  In a future patch HAS_IOPORT=n will result in inb()/outb() and friends
not being declared. We thus need to depend on HAS_IOPORT even when
compile testing only.

Co-developed-by: Arnd Bergmann <arnd@kernel.org>
Signed-off-by: Niklas Schnelle <schnelle@linux.ibm.com>
---
 drivers/pnp/isapnp/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Rafael J. Wysocki March 20, 2023, 5:37 p.m. UTC | #1
On Tue, Mar 14, 2023 at 1:13 PM Niklas Schnelle <schnelle@linux.ibm.com> wrote:
>
> In a future patch HAS_IOPORT=n will result in inb()/outb() and friends
> not being declared. We thus need to depend on HAS_IOPORT even when
> compile testing only.
>
> Co-developed-by: Arnd Bergmann <arnd@kernel.org>
> Signed-off-by: Niklas Schnelle <schnelle@linux.ibm.com>
> ---
>  drivers/pnp/isapnp/Kconfig | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/pnp/isapnp/Kconfig b/drivers/pnp/isapnp/Kconfig
> index d0479a563123..79bd48f1dd94 100644
> --- a/drivers/pnp/isapnp/Kconfig
> +++ b/drivers/pnp/isapnp/Kconfig
> @@ -4,7 +4,7 @@
>  #
>  config ISAPNP
>         bool "ISA Plug and Play support"
> -       depends on ISA || COMPILE_TEST
> +       depends on ISA || (HAS_IOPORT && COMPILE_TEST)
>         help
>           Say Y here if you would like support for ISA Plug and Play devices.
>           Some information is in <file:Documentation/driver-api/isapnp.rst>.
> --

Applied as 6.4 material, thanks!
  
Rafael J. Wysocki March 21, 2023, 1:56 p.m. UTC | #2
On Mon, Mar 20, 2023 at 6:37 PM Rafael J. Wysocki <rafael@kernel.org> wrote:
>
> On Tue, Mar 14, 2023 at 1:13 PM Niklas Schnelle <schnelle@linux.ibm.com> wrote:
> >
> > In a future patch HAS_IOPORT=n will result in inb()/outb() and friends
> > not being declared. We thus need to depend on HAS_IOPORT even when
> > compile testing only.
> >
> > Co-developed-by: Arnd Bergmann <arnd@kernel.org>
> > Signed-off-by: Niklas Schnelle <schnelle@linux.ibm.com>
> > ---
> >  drivers/pnp/isapnp/Kconfig | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/pnp/isapnp/Kconfig b/drivers/pnp/isapnp/Kconfig
> > index d0479a563123..79bd48f1dd94 100644
> > --- a/drivers/pnp/isapnp/Kconfig
> > +++ b/drivers/pnp/isapnp/Kconfig
> > @@ -4,7 +4,7 @@
> >  #
> >  config ISAPNP
> >         bool "ISA Plug and Play support"
> > -       depends on ISA || COMPILE_TEST
> > +       depends on ISA || (HAS_IOPORT && COMPILE_TEST)

This breaks code selecting ISAPNP and not depending on it.  See
https://lore.kernel.org/linux-acpi/202303211932.5gtCVHCz-lkp@intel.com/T/#u
for example.

I'm dropping the patch now, please fix and resend.

> >         help
> >           Say Y here if you would like support for ISA Plug and Play devices.
> >           Some information is in <file:Documentation/driver-api/isapnp.rst>.
> > --
>
> Applied as 6.4 material, thanks!
  
Niklas Schnelle March 23, 2023, 12:55 p.m. UTC | #3
On Tue, 2023-03-21 at 14:56 +0100, Rafael J. Wysocki wrote:
> On Mon, Mar 20, 2023 at 6:37 PM Rafael J. Wysocki <rafael@kernel.org> wrote:
> > 
> > On Tue, Mar 14, 2023 at 1:13 PM Niklas Schnelle <schnelle@linux.ibm.com> wrote:
> > > 
> > > In a future patch HAS_IOPORT=n will result in inb()/outb() and friends
> > > not being declared. We thus need to depend on HAS_IOPORT even when
> > > compile testing only.
> > > 
> > > Co-developed-by: Arnd Bergmann <arnd@kernel.org>
> > > Signed-off-by: Niklas Schnelle <schnelle@linux.ibm.com>
> > > ---
> > >  drivers/pnp/isapnp/Kconfig | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > 
> > > diff --git a/drivers/pnp/isapnp/Kconfig b/drivers/pnp/isapnp/Kconfig
> > > index d0479a563123..79bd48f1dd94 100644
> > > --- a/drivers/pnp/isapnp/Kconfig
> > > +++ b/drivers/pnp/isapnp/Kconfig
> > > @@ -4,7 +4,7 @@
> > >  #
> > >  config ISAPNP
> > >         bool "ISA Plug and Play support"
> > > -       depends on ISA || COMPILE_TEST
> > > +       depends on ISA || (HAS_IOPORT && COMPILE_TEST)
> 
> This breaks code selecting ISAPNP and not depending on it.  See
> https://lore.kernel.org/linux-acpi/202303211932.5gtCVHCz-lkp@intel.com/T/#u
> for example.
> 
> I'm dropping the patch now, please fix and resend.
> 
> > 

Sorry if this wasn't super clear but all patches in this series depend
on patch 1 which introduces the HAS_IOPORT Kconfig option. There's
really two options, either the whole series goes via e.g. Arnd's tree
at once or we first only merge patch 1 and then add the rest per
subsystem until finally the last patch can remove inb()/outb() when
HAS_IOPORT is unset.

That said I'm a little unsure about the linked error if that is just
due to missing HAS_IOPORT or something else. I'll still have to try
with the instructions in that mail and will report back if it is
something else.

Thanks,
Niklas
  
Wysocki, Rafael J March 24, 2023, 6:45 p.m. UTC | #4
On 3/23/2023 1:55 PM, Niklas Schnelle wrote:
> On Tue, 2023-03-21 at 14:56 +0100, Rafael J. Wysocki wrote:
>> On Mon, Mar 20, 2023 at 6:37 PM Rafael J. Wysocki <rafael@kernel.org> wrote:
>>> On Tue, Mar 14, 2023 at 1:13 PM Niklas Schnelle <schnelle@linux.ibm.com> wrote:
>>>> In a future patch HAS_IOPORT=n will result in inb()/outb() and friends
>>>> not being declared. We thus need to depend on HAS_IOPORT even when
>>>> compile testing only.
>>>>
>>>> Co-developed-by: Arnd Bergmann <arnd@kernel.org>
>>>> Signed-off-by: Niklas Schnelle <schnelle@linux.ibm.com>
>>>> ---
>>>>   drivers/pnp/isapnp/Kconfig | 2 +-
>>>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>>>
>>>> diff --git a/drivers/pnp/isapnp/Kconfig b/drivers/pnp/isapnp/Kconfig
>>>> index d0479a563123..79bd48f1dd94 100644
>>>> --- a/drivers/pnp/isapnp/Kconfig
>>>> +++ b/drivers/pnp/isapnp/Kconfig
>>>> @@ -4,7 +4,7 @@
>>>>   #
>>>>   config ISAPNP
>>>>          bool "ISA Plug and Play support"
>>>> -       depends on ISA || COMPILE_TEST
>>>> +       depends on ISA || (HAS_IOPORT && COMPILE_TEST)
>> This breaks code selecting ISAPNP and not depending on it.  See
>> https://lore.kernel.org/linux-acpi/202303211932.5gtCVHCz-lkp@intel.com/T/#u
>> for example.
>>
>> I'm dropping the patch now, please fix and resend.
>>
> Sorry if this wasn't super clear but all patches in this series depend
> on patch 1 which introduces the HAS_IOPORT Kconfig option. There's
> really two options, either the whole series goes via e.g. Arnd's tree
> at once or we first only merge patch 1 and then add the rest per
> subsystem until finally the last patch can remove inb()/outb() when
> HAS_IOPORT is unset.

Well, it looks like you need to decide on the approach then and tell 
people what it is.

If I see an individual patch without context, this is quite hard to 
figure out.


> That said I'm a little unsure about the linked error if that is just
> due to missing HAS_IOPORT or something else. I'll still have to try
> with the instructions in that mail and will report back if it is
> something else.
>
> Thanks,
> Niklas
  

Patch

diff --git a/drivers/pnp/isapnp/Kconfig b/drivers/pnp/isapnp/Kconfig
index d0479a563123..79bd48f1dd94 100644
--- a/drivers/pnp/isapnp/Kconfig
+++ b/drivers/pnp/isapnp/Kconfig
@@ -4,7 +4,7 @@ 
 #
 config ISAPNP
 	bool "ISA Plug and Play support"
-	depends on ISA || COMPILE_TEST
+	depends on ISA || (HAS_IOPORT && COMPILE_TEST)
 	help
 	  Say Y here if you would like support for ISA Plug and Play devices.
 	  Some information is in <file:Documentation/driver-api/isapnp.rst>.