* [PATCH 0/1] i2c: Handle HAS_IOPORT dependencies @ 2024-04-04 14:33 Niklas Schnelle 2024-04-04 14:33 ` [PATCH 1/1] i2c: add " Niklas Schnelle 0 siblings, 1 reply; 5+ messages in thread From: Niklas Schnelle @ 2024-04-04 14:33 UTC (permalink / raw) To: Andi Shyti Cc: linux-i2c, Arnd Bergmann, Heiko Carstens, linux-kernel, Niklas Schnelle Hi Andi, 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): i2c: add HAS_IOPORT dependencies drivers/i2c/busses/Kconfig | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) -- 2.40.1 ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/1] i2c: add HAS_IOPORT dependencies 2024-04-04 14:33 [PATCH 0/1] i2c: Handle HAS_IOPORT dependencies Niklas Schnelle @ 2024-04-04 14:33 ` Niklas Schnelle 2024-04-05 9:09 ` Wolfram Sang 0 siblings, 1 reply; 5+ messages in thread From: Niklas Schnelle @ 2024-04-04 14:33 UTC (permalink / raw) To: Andi Shyti Cc: linux-i2c, Arnd Bergmann, Heiko Carstens, linux-kernel, Niklas Schnelle In a future patch HAS_IOPORT=n will disable inb()/outb() and friends at compile time. We thus need to add HAS_IOPORT as dependency for those drivers using them. 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> --- Note: This patch does not depend any not-yet-mainline HAS_IOPORT changes and may be merged via subsystem specific trees at your earliest convenience. drivers/i2c/busses/Kconfig | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig index 97989c914260..6bbfc52bf55b 100644 --- a/drivers/i2c/busses/Kconfig +++ b/drivers/i2c/busses/Kconfig @@ -18,7 +18,7 @@ config I2C_CCGX_UCSI config I2C_ALI1535 tristate "ALI 1535" - depends on PCI + depends on PCI && HAS_IOPORT help If you say yes to this option, support will be included for the SMB Host controller on Acer Labs Inc. (ALI) M1535 South Bridges. The SMB @@ -30,7 +30,7 @@ config I2C_ALI1535 config I2C_ALI1563 tristate "ALI 1563" - depends on PCI + depends on PCI && HAS_IOPORT help If you say yes to this option, support will be included for the SMB Host controller on Acer Labs Inc. (ALI) M1563 South Bridges. The SMB @@ -42,7 +42,7 @@ config I2C_ALI1563 config I2C_ALI15X3 tristate "ALI 15x3" - depends on PCI + depends on PCI && HAS_IOPORT help If you say yes to this option, support will be included for the Acer Labs Inc. (ALI) M1514 and M1543 motherboard I2C interfaces. @@ -52,7 +52,7 @@ config I2C_ALI15X3 config I2C_AMD756 tristate "AMD 756/766/768/8111 and nVidia nForce" - depends on PCI + depends on PCI && HAS_IOPORT help If you say yes to this option, support will be included for the AMD 756/766/768 mainboard I2C interfaces. The driver also includes @@ -77,7 +77,7 @@ config I2C_AMD756_S4882 config I2C_AMD8111 tristate "AMD 8111" - depends on PCI + depends on PCI && HAS_IOPORT help If you say yes to this option, support will be included for the second (SMBus 2.0) AMD 8111 mainboard I2C interface. @@ -107,7 +107,7 @@ config I2C_HIX5HD2 config I2C_I801 tristate "Intel 82801 (ICH/PCH)" - depends on PCI + depends on PCI && HAS_IOPORT select P2SB if X86 select CHECK_SIGNATURE if X86 && DMI select I2C_SMBUS @@ -165,7 +165,7 @@ config I2C_I801 config I2C_ISCH tristate "Intel SCH SMBus 1.0" - depends on PCI + depends on PCI && HAS_IOPORT select LPC_SCH help Say Y here if you want to use SMBus controller on the Intel SCH @@ -186,7 +186,7 @@ config I2C_ISMT config I2C_PIIX4 tristate "Intel PIIX4 and compatible (ATI/AMD/Serverworks/Broadcom/SMSC)" - depends on PCI + depends on PCI && HAS_IOPORT help If you say yes to this option, support will be included for the Intel PIIX4 family of mainboard I2C interfaces. Specifically, the following @@ -232,7 +232,7 @@ config I2C_CHT_WC config I2C_NFORCE2 tristate "Nvidia nForce2, nForce3 and nForce4" - depends on PCI + depends on PCI && HAS_IOPORT help If you say yes to this option, support will be included for the Nvidia nForce2, nForce3 and nForce4 families of mainboard I2C interfaces. @@ -265,7 +265,7 @@ config I2C_NVIDIA_GPU config I2C_SIS5595 tristate "SiS 5595" - depends on PCI + depends on PCI && HAS_IOPORT help If you say yes to this option, support will be included for the SiS5595 SMBus (a subset of I2C) interface. @@ -275,7 +275,7 @@ config I2C_SIS5595 config I2C_SIS630 tristate "SiS 630/730/964" - depends on PCI + depends on PCI && HAS_IOPORT help If you say yes to this option, support will be included for the SiS630, SiS730 and SiS964 SMBus (a subset of I2C) interface. @@ -285,7 +285,7 @@ config I2C_SIS630 config I2C_SIS96X tristate "SiS 96x" - depends on PCI + depends on PCI && HAS_IOPORT help If you say yes to this option, support will be included for the SiS 96x SMBus (a subset of I2C) interfaces. Specifically, the following @@ -303,7 +303,7 @@ config I2C_SIS96X config I2C_VIA tristate "VIA VT82C586B" - depends on PCI + depends on PCI && HAS_IOPORT select I2C_ALGOBIT help If you say yes to this option, support will be included for the VIA @@ -314,7 +314,7 @@ config I2C_VIA config I2C_VIAPRO tristate "VIA VT82C596/82C686/82xx and CX700/VX8xx/VX900" - depends on PCI + depends on PCI && HAS_IOPORT help If you say yes to this option, support will be included for the VIA VT82C596 and later SMBus interface. Specifically, the following @@ -885,6 +885,7 @@ config I2C_NPCM config I2C_OCORES tristate "OpenCores I2C Controller" + depends on HAS_IOPORT help If you say yes to this option, support will be included for the OpenCores I2C controller. For details see @@ -1289,6 +1290,7 @@ config I2C_CP2615 config I2C_PARPORT tristate "Parallel port adapter" depends on PARPORT + depends on HAS_IOPORT select I2C_ALGOBIT select I2C_SMBUS help @@ -1397,6 +1399,7 @@ config I2C_ICY config I2C_MLXCPLD tristate "Mellanox I2C driver" depends on X86_64 || (ARM64 && ACPI) || COMPILE_TEST + depends on HAS_IOPORT help This exposes the Mellanox platform I2C busses to the linux I2C layer for X86 and ARM64/ACPI based systems. -- 2.40.1 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1] i2c: add HAS_IOPORT dependencies 2024-04-04 14:33 ` [PATCH 1/1] i2c: add " Niklas Schnelle @ 2024-04-05 9:09 ` Wolfram Sang 2024-04-05 9:31 ` Niklas Schnelle 0 siblings, 1 reply; 5+ messages in thread From: Wolfram Sang @ 2024-04-05 9:09 UTC (permalink / raw) To: Niklas Schnelle Cc: Andi Shyti, linux-i2c, Arnd Bergmann, Heiko Carstens, linux-kernel [-- Attachment #1: Type: text/plain, Size: 767 bytes --] Hi, On Thu, Apr 04, 2024 at 04:33:51PM +0200, Niklas Schnelle wrote: > In a future patch HAS_IOPORT=n will disable inb()/outb() and friends at > compile time. We thus need to add HAS_IOPORT as dependency for those > drivers using them. > > 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> Basically OK, but I am asking this question since last June because I couldn't find that information in changelogs: In RFC v1, you agreed to drop PARPORT [1]. Is there a reason you haven't done this so far? [1] https://patchwork.ozlabs.org/project/linux-i2c/patch/20211227164317.4146918-11-schnelle@linux.ibm.com/ Happy hacking, Wolfram [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1] i2c: add HAS_IOPORT dependencies 2024-04-05 9:09 ` Wolfram Sang @ 2024-04-05 9:31 ` Niklas Schnelle 2024-04-05 10:33 ` Wolfram Sang 0 siblings, 1 reply; 5+ messages in thread From: Niklas Schnelle @ 2024-04-05 9:31 UTC (permalink / raw) To: Wolfram Sang Cc: Andi Shyti, linux-i2c, Arnd Bergmann, Heiko Carstens, linux-kernel On Fri, 2024-04-05 at 11:09 +0200, Wolfram Sang wrote: > Hi, > > On Thu, Apr 04, 2024 at 04:33:51PM +0200, Niklas Schnelle wrote: > > In a future patch HAS_IOPORT=n will disable inb()/outb() and friends at > > compile time. We thus need to add HAS_IOPORT as dependency for those > > drivers using them. > > > > 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> > > Basically OK, but I am asking this question since last June because I > couldn't find that information in changelogs: > > In RFC v1, you agreed to drop PARPORT [1]. Is there a reason you haven't > done this so far? Only reasons seems to be that I'm bad at juggling large patch series. i2c-partport.c builds fine with HAS_IOPORT=n and I don't see a reason why it wouldn't work with MMIO based parallel port drivers. Will send a v2 shortly. Thanks, Niklas ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1] i2c: add HAS_IOPORT dependencies 2024-04-05 9:31 ` Niklas Schnelle @ 2024-04-05 10:33 ` Wolfram Sang 0 siblings, 0 replies; 5+ messages in thread From: Wolfram Sang @ 2024-04-05 10:33 UTC (permalink / raw) To: Niklas Schnelle Cc: Andi Shyti, linux-i2c, Arnd Bergmann, Heiko Carstens, linux-kernel [-- Attachment #1: Type: text/plain, Size: 296 bytes --] > Only reasons seems to be that I'm bad at juggling large patch series. > i2c-partport.c builds fine with HAS_IOPORT=n and I don't see a reason > why it wouldn't work with MMIO based parallel port drivers. > > Will send a v2 shortly. Thanks for the update and thanks for doing this! [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2024-04-05 10:33 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-04-04 14:33 [PATCH 0/1] i2c: Handle HAS_IOPORT dependencies Niklas Schnelle 2024-04-04 14:33 ` [PATCH 1/1] i2c: add " Niklas Schnelle 2024-04-05 9:09 ` Wolfram Sang 2024-04-05 9:31 ` Niklas Schnelle 2024-04-05 10:33 ` Wolfram Sang
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox