linux-hexagon.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/1] hexagon: Handle HAS_IOPORT dependencies
@ 2024-04-03 13:24 Niklas Schnelle
  2024-04-03 13:24 ` [PATCH 1/1] hexagon: Don't select GENERIC_IOMAP without HAS_IOPORT support Niklas Schnelle
  0 siblings, 1 reply; 5+ messages in thread
From: Niklas Schnelle @ 2024-04-03 13:24 UTC (permalink / raw)
  To: Brian Cain
  Cc: linux-hexagon, Arnd Bergmann, Heiko Carstens, linux-kernel,
	Niklas Schnelle

Hi Brian,

This is a follow up in my ongoing effort of making inb()/outb() and
similar I/O port accessors compile-time optional. Previously I sent this
as a treewide series titled "treewide: Remove I/O port accessors for
HAS_IOPORT=n" with the latest being its 5th version[0]. With a significant
subset of patches merged I've changed over to per-subsystem series. These
series are stand alone and should be merged via the relevant tree such
that with all subsystems complete we can follow this up with the final
patch that will make the I/O port accessors compile-time optional.

The current state of the full series with changes to the remaining
subsystems and the aforementioned final patch can be found for your
convenience on my git.kernel.org tree in the has_ioport_v6 branch[1] with
signed tags. As for compile-time vs runtime see Linus' reply to my first
attempt[2].

Thanks,
Niklas

[0] https://lore.kernel.org/all/20230522105049.1467313-1-schnelle@linux.ibm.com/
[1] https://git.kernel.org/pub/scm/linux/kernel/git/niks/linux.git/log/?h=has_ioport_v6
[2] https://lore.kernel.org/lkml/CAHk-=wg80je=K7madF4e7WrRNp37e3qh6y10Svhdc7O8SZ_-8g@mail.gmail.com/

Niklas Schnelle (1):
  hexagon: Don't select GENERIC_IOMAP without HAS_IOPORT support

 arch/hexagon/Kconfig | 1 -
 1 file changed, 1 deletion(-)

-- 
2.40.1


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH 1/1] hexagon: Don't select GENERIC_IOMAP without HAS_IOPORT support
  2024-04-03 13:24 [PATCH 0/1] hexagon: Handle HAS_IOPORT dependencies Niklas Schnelle
@ 2024-04-03 13:24 ` Niklas Schnelle
  2024-04-03 14:51   ` Brian Cain
  0 siblings, 1 reply; 5+ messages in thread
From: Niklas Schnelle @ 2024-04-03 13:24 UTC (permalink / raw)
  To: Brian Cain
  Cc: linux-hexagon, Arnd Bergmann, Heiko Carstens, linux-kernel,
	Niklas Schnelle

In a future patch HAS_IOPORT=n will disable inb()/outb() and friends at
compile time. As hexagon does not support I/O port access it also
the GENERIC_IOMAP mechanism of dynamically choosing between I/O port and
MMIO access doesn't work so don't select it.

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

diff --git a/arch/hexagon/Kconfig b/arch/hexagon/Kconfig
index e233b5efa276..5ea1bf4b7d4f 100644
--- a/arch/hexagon/Kconfig
+++ b/arch/hexagon/Kconfig
@@ -31,7 +31,6 @@ config HEXAGON
 	select HAVE_ARCH_TRACEHOOK
 	select NEED_SG_DMA_LENGTH
 	select NO_IOPORT_MAP
-	select GENERIC_IOMAP
 	select GENERIC_IOREMAP
 	select GENERIC_SMP_IDLE_THREAD
 	select STACKTRACE_SUPPORT
-- 
2.40.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* RE: [PATCH 1/1] hexagon: Don't select GENERIC_IOMAP without HAS_IOPORT support
  2024-04-03 13:24 ` [PATCH 1/1] hexagon: Don't select GENERIC_IOMAP without HAS_IOPORT support Niklas Schnelle
@ 2024-04-03 14:51   ` Brian Cain
  2024-04-03 15:22     ` Niklas Schnelle
  0 siblings, 1 reply; 5+ messages in thread
From: Brian Cain @ 2024-04-03 14:51 UTC (permalink / raw)
  To: Niklas Schnelle
  Cc: linux-hexagon, Arnd Bergmann, Heiko Carstens, linux-kernel



> -----Original Message-----
> From: Niklas Schnelle <schnelle@linux.ibm.com>
> Sent: Wednesday, April 3, 2024 8:25 AM
> To: Brian Cain <bcain@quicinc.com>
> Cc: linux-hexagon@vger.kernel.org; Arnd Bergmann <arnd@kernel.org>;
> Heiko Carstens <hca@linux.ibm.com>; linux-kernel@vger.kernel.org; Niklas
> Schnelle <schnelle@linux.ibm.com>
> Subject: [PATCH 1/1] hexagon: Don't select GENERIC_IOMAP without
> HAS_IOPORT support
> 
> WARNING: This email originated from outside of Qualcomm. Please be wary
> of any links or attachments, and do not enable macros.
> 
> In a future patch HAS_IOPORT=n will disable inb()/outb() and friends at
> compile time. As hexagon does not support I/O port access it also
> the GENERIC_IOMAP mechanism of dynamically choosing between I/O port
> and
> MMIO access doesn't work so don't select it.
> 
> Co-developed-by: Arnd Bergmann <arnd@kernel.org>
> Signed-off-by: Arnd Bergmann <arnd@kernel.org>
> Signed-off-by: Niklas Schnelle <schnelle@linux.ibm.com>
> ---
>  arch/hexagon/Kconfig | 1 -
>  1 file changed, 1 deletion(-)
> 
> diff --git a/arch/hexagon/Kconfig b/arch/hexagon/Kconfig
> index e233b5efa276..5ea1bf4b7d4f 100644
> --- a/arch/hexagon/Kconfig
> +++ b/arch/hexagon/Kconfig
> @@ -31,7 +31,6 @@ config HEXAGON
>         select HAVE_ARCH_TRACEHOOK
>         select NEED_SG_DMA_LENGTH
>         select NO_IOPORT_MAP
> -       select GENERIC_IOMAP
>         select GENERIC_IOREMAP
>         select GENERIC_SMP_IDLE_THREAD
>         select STACKTRACE_SUPPORT

Reviewed-by: Brian Cain <bcain@quicinc.com>

> --
> 2.40.1


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/1] hexagon: Don't select GENERIC_IOMAP without HAS_IOPORT support
  2024-04-03 14:51   ` Brian Cain
@ 2024-04-03 15:22     ` Niklas Schnelle
  2024-04-03 15:37       ` Brian Cain
  0 siblings, 1 reply; 5+ messages in thread
From: Niklas Schnelle @ 2024-04-03 15:22 UTC (permalink / raw)
  To: Brian Cain; +Cc: linux-hexagon, Arnd Bergmann, Heiko Carstens, linux-kernel

On Wed, 2024-04-03 at 14:51 +0000, Brian Cain wrote:
> 
> > -----Original Message-----
> > From: Niklas Schnelle <schnelle@linux.ibm.com>
> > Sent: Wednesday, April 3, 2024 8:25 AM
> > To: Brian Cain <bcain@quicinc.com>
> > Cc: linux-hexagon@vger.kernel.org; Arnd Bergmann <arnd@kernel.org>;
> > Heiko Carstens <hca@linux.ibm.com>; linux-kernel@vger.kernel.org; Niklas
> > Schnelle <schnelle@linux.ibm.com>
> > Subject: [PATCH 1/1] hexagon: Don't select GENERIC_IOMAP without
> > HAS_IOPORT support
> > 
> > WARNING: This email originated from outside of Qualcomm. Please be wary
> > of any links or attachments, and do not enable macros.
> > 
> > In a future patch HAS_IOPORT=n will disable inb()/outb() and friends at
> > compile time. As hexagon does not support I/O port access it also
> > the GENERIC_IOMAP mechanism of dynamically choosing between I/O port
> > and
> > MMIO access doesn't work so don't select it.
> > 
> > Co-developed-by: Arnd Bergmann <arnd@kernel.org>
> > Signed-off-by: Arnd Bergmann <arnd@kernel.org>
> > Signed-off-by: Niklas Schnelle <schnelle@linux.ibm.com>
> > ---
> >  arch/hexagon/Kconfig | 1 -
> >  1 file changed, 1 deletion(-)
> > 
> > diff --git a/arch/hexagon/Kconfig b/arch/hexagon/Kconfig
> > index e233b5efa276..5ea1bf4b7d4f 100644
> > --- a/arch/hexagon/Kconfig
> > +++ b/arch/hexagon/Kconfig
> > @@ -31,7 +31,6 @@ config HEXAGON
> >         select HAVE_ARCH_TRACEHOOK
> >         select NEED_SG_DMA_LENGTH
> >         select NO_IOPORT_MAP
> > -       select GENERIC_IOMAP
> >         select GENERIC_IOREMAP
> >         select GENERIC_SMP_IDLE_THREAD
> >         select STACKTRACE_SUPPORT
> 
> Reviewed-by: Brian Cain <bcain@quicinc.com>
> 

Thanks for the R-b, which tree should take this? If you have other
hexagon changes for v6.10 I think it would be easiest to take this
together with those. As mentioned in the cover letter the per-subsystem
changes are all independent until HAS_IOPORT=n actually disables
inb()/outb() which Arnd will take once all the subsystems are covered.

Thanks,
Niklas

^ permalink raw reply	[flat|nested] 5+ messages in thread

* RE: [PATCH 1/1] hexagon: Don't select GENERIC_IOMAP without HAS_IOPORT support
  2024-04-03 15:22     ` Niklas Schnelle
@ 2024-04-03 15:37       ` Brian Cain
  0 siblings, 0 replies; 5+ messages in thread
From: Brian Cain @ 2024-04-03 15:37 UTC (permalink / raw)
  To: Niklas Schnelle
  Cc: linux-hexagon, Arnd Bergmann, Heiko Carstens, linux-kernel



> -----Original Message-----
> From: Niklas Schnelle <schnelle@linux.ibm.com>
> Sent: Wednesday, April 3, 2024 10:22 AM
> To: Brian Cain <bcain@quicinc.com>
> Cc: linux-hexagon@vger.kernel.org; Arnd Bergmann <arnd@kernel.org>;
> Heiko Carstens <hca@linux.ibm.com>; linux-kernel@vger.kernel.org
> Subject: Re: [PATCH 1/1] hexagon: Don't select GENERIC_IOMAP without
> HAS_IOPORT support
> 
> WARNING: This email originated from outside of Qualcomm. Please be wary
> of any links or attachments, and do not enable macros.
> 
> On Wed, 2024-04-03 at 14:51 +0000, Brian Cain wrote:
> >
> > > -----Original Message-----
> > > From: Niklas Schnelle <schnelle@linux.ibm.com>
> > > Sent: Wednesday, April 3, 2024 8:25 AM
> > > To: Brian Cain <bcain@quicinc.com>
> > > Cc: linux-hexagon@vger.kernel.org; Arnd Bergmann <arnd@kernel.org>;
> > > Heiko Carstens <hca@linux.ibm.com>; linux-kernel@vger.kernel.org;
> Niklas
> > > Schnelle <schnelle@linux.ibm.com>
> > > Subject: [PATCH 1/1] hexagon: Don't select GENERIC_IOMAP without
> > > HAS_IOPORT support
> > >
> > > WARNING: This email originated from outside of Qualcomm. Please be
> wary
> > > of any links or attachments, and do not enable macros.
> > >
> > > In a future patch HAS_IOPORT=n will disable inb()/outb() and friends at
> > > compile time. As hexagon does not support I/O port access it also
> > > the GENERIC_IOMAP mechanism of dynamically choosing between I/O
> port
> > > and
> > > MMIO access doesn't work so don't select it.
> > >
> > > Co-developed-by: Arnd Bergmann <arnd@kernel.org>
> > > Signed-off-by: Arnd Bergmann <arnd@kernel.org>
> > > Signed-off-by: Niklas Schnelle <schnelle@linux.ibm.com>
> > > ---
> > >  arch/hexagon/Kconfig | 1 -
> > >  1 file changed, 1 deletion(-)
> > >
> > > diff --git a/arch/hexagon/Kconfig b/arch/hexagon/Kconfig
> > > index e233b5efa276..5ea1bf4b7d4f 100644
> > > --- a/arch/hexagon/Kconfig
> > > +++ b/arch/hexagon/Kconfig
> > > @@ -31,7 +31,6 @@ config HEXAGON
> > >         select HAVE_ARCH_TRACEHOOK
> > >         select NEED_SG_DMA_LENGTH
> > >         select NO_IOPORT_MAP
> > > -       select GENERIC_IOMAP
> > >         select GENERIC_IOREMAP
> > >         select GENERIC_SMP_IDLE_THREAD
> > >         select STACKTRACE_SUPPORT
> >
> > Reviewed-by: Brian Cain <bcain@quicinc.com>
> >
> 
> Thanks for the R-b, which tree should take this? If you have other
> hexagon changes for v6.10 I think it would be easiest to take this
> together with those. As mentioned in the cover letter the per-subsystem

I don't have other changes planned for v6.10 but I'm happy to take the change in my tree.

> changes are all independent until HAS_IOPORT=n actually disables
> inb()/outb() which Arnd will take once all the subsystems are covered.
> 
> Thanks,
> Niklas

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-04-03 15:37 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-04-03 13:24 [PATCH 0/1] hexagon: Handle HAS_IOPORT dependencies Niklas Schnelle
2024-04-03 13:24 ` [PATCH 1/1] hexagon: Don't select GENERIC_IOMAP without HAS_IOPORT support Niklas Schnelle
2024-04-03 14:51   ` Brian Cain
2024-04-03 15:22     ` Niklas Schnelle
2024-04-03 15:37       ` Brian Cain

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).