* [PATCH 1/3] iio: Change ISA_BUS_API dependency to selection
2017-12-28 16:01 [PATCH 0/3] Change ISA_BUS_API dependency to selection William Breathitt Gray
@ 2017-12-28 16:01 ` William Breathitt Gray
2017-12-28 16:02 ` [PATCH 2/3] watchdog: " William Breathitt Gray
` (3 subsequent siblings)
4 siblings, 0 replies; 10+ messages in thread
From: William Breathitt Gray @ 2017-12-28 16:01 UTC (permalink / raw)
To: linus.walleij
Cc: mail, linux-gpio, linux-iio, linux-watchdog, linux-kernel,
William Breathitt Gray, Jonathan Cameron, Hartmut Knaack,
Lars-Peter Clausen, Peter Meerwald-Stadler
The ISA_BUS_API Kconfig option enables the compilation of the ISA bus
driver. The ISA bus driver does not perform any hardware interaction,
and is instead just a thin layer of software abstraction to eliminate
boilerplate code common to ISA-style device drivers. Since ISA_BUS_API
has no dependencies and does not jeopardize the integrity of the system
when enabled, drivers should select it when the ISA bus driver
functionality is needed.
Cc: Jonathan Cameron <jic23@kernel.org>
Cc: Hartmut Knaack <knaack.h@gmx.de>
Cc: Lars-Peter Clausen <lars@metafoo.de>
Cc: Peter Meerwald-Stadler <pmeerw@pmeerw.net>
Signed-off-by: William Breathitt Gray <vilhelm.gray@gmail.com>
---
drivers/iio/adc/Kconfig | 3 ++-
drivers/iio/counter/Kconfig | 3 ++-
drivers/iio/dac/Kconfig | 3 ++-
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/drivers/iio/adc/Kconfig b/drivers/iio/adc/Kconfig
index ef86296b8b0d..7c00e5858693 100644
--- a/drivers/iio/adc/Kconfig
+++ b/drivers/iio/adc/Kconfig
@@ -658,7 +658,8 @@ config STM32_ADC
config STX104
tristate "Apex Embedded Systems STX104 driver"
- depends on PC104 && X86 && ISA_BUS_API
+ depends on PC104 && X86
+ select ISA_BUS_API
select GPIOLIB
help
Say yes here to build support for the Apex Embedded Systems STX104
diff --git a/drivers/iio/counter/Kconfig b/drivers/iio/counter/Kconfig
index 474e1ac4e7c0..bf1e559ad7cd 100644
--- a/drivers/iio/counter/Kconfig
+++ b/drivers/iio/counter/Kconfig
@@ -7,7 +7,8 @@ menu "Counters"
config 104_QUAD_8
tristate "ACCES 104-QUAD-8 driver"
- depends on PC104 && X86 && ISA_BUS_API
+ depends on PC104 && X86
+ select ISA_BUS_API
help
Say yes here to build support for the ACCES 104-QUAD-8 quadrature
encoder counter/interface device family (104-QUAD-8, 104-QUAD-4).
diff --git a/drivers/iio/dac/Kconfig b/drivers/iio/dac/Kconfig
index 965d5c0d2468..76db0768e454 100644
--- a/drivers/iio/dac/Kconfig
+++ b/drivers/iio/dac/Kconfig
@@ -195,7 +195,8 @@ config AD7303
config CIO_DAC
tristate "Measurement Computing CIO-DAC IIO driver"
- depends on X86 && ISA_BUS_API
+ depends on X86 && (ISA_BUS || PC104)
+ select ISA_BUS_API
help
Say yes here to build support for the Measurement Computing CIO-DAC
analog output device family (CIO-DAC16, CIO-DAC08, PC104-DAC06). The
--
2.15.1
^ permalink raw reply related [flat|nested] 10+ messages in thread* [PATCH 2/3] watchdog: Change ISA_BUS_API dependency to selection
2017-12-28 16:01 [PATCH 0/3] Change ISA_BUS_API dependency to selection William Breathitt Gray
2017-12-28 16:01 ` [PATCH 1/3] iio: " William Breathitt Gray
@ 2017-12-28 16:02 ` William Breathitt Gray
2017-12-28 18:37 ` Guenter Roeck
2017-12-28 16:02 ` [PATCH 3/3] gpio: " William Breathitt Gray
` (2 subsequent siblings)
4 siblings, 1 reply; 10+ messages in thread
From: William Breathitt Gray @ 2017-12-28 16:02 UTC (permalink / raw)
To: linus.walleij
Cc: mail, linux-gpio, linux-iio, linux-watchdog, linux-kernel,
William Breathitt Gray, Wim Van Sebroeck, Guenter Roeck
The ISA_BUS_API Kconfig option enables the compilation of the ISA bus
driver. The ISA bus driver does not perform any hardware interaction,
and is instead just a thin layer of software abstraction to eliminate
boilerplate code common to ISA-style device drivers. Since ISA_BUS_API
has no dependencies and does not jeopardize the integrity of the system
when enabled, drivers should select it when the ISA bus driver
functionality is needed.
Cc: Wim Van Sebroeck <wim@iguana.be>
Cc: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: William Breathitt Gray <vilhelm.gray@gmail.com>
---
drivers/watchdog/Kconfig | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
index ca200d1f310a..c05d5d20eebf 100644
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
@@ -864,7 +864,8 @@ config ALIM7101_WDT
config EBC_C384_WDT
tristate "WinSystems EBC-C384 Watchdog Timer"
- depends on X86 && ISA_BUS_API
+ depends on X86
+ select ISA_BUS_API
select WATCHDOG_CORE
help
Enables watchdog timer support for the watchdog timer on the
--
2.15.1
^ permalink raw reply related [flat|nested] 10+ messages in thread* Re: [PATCH 2/3] watchdog: Change ISA_BUS_API dependency to selection
2017-12-28 16:02 ` [PATCH 2/3] watchdog: " William Breathitt Gray
@ 2017-12-28 18:37 ` Guenter Roeck
0 siblings, 0 replies; 10+ messages in thread
From: Guenter Roeck @ 2017-12-28 18:37 UTC (permalink / raw)
To: William Breathitt Gray, linus.walleij
Cc: mail, linux-gpio, linux-iio, linux-watchdog, linux-kernel,
Wim Van Sebroeck
On 12/28/2017 08:02 AM, William Breathitt Gray wrote:
> The ISA_BUS_API Kconfig option enables the compilation of the ISA bus
> driver. The ISA bus driver does not perform any hardware interaction,
> and is instead just a thin layer of software abstraction to eliminate
> boilerplate code common to ISA-style device drivers. Since ISA_BUS_API
> has no dependencies and does not jeopardize the integrity of the system
> when enabled, drivers should select it when the ISA bus driver
> functionality is needed.
>
> Cc: Wim Van Sebroeck <wim@iguana.be>
> Cc: Guenter Roeck <linux@roeck-us.net>
> Signed-off-by: William Breathitt Gray <vilhelm.gray@gmail.com>
Acked-by: Guenter Roeck <linux@roeck-us.net>
> ---
> drivers/watchdog/Kconfig | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
> index ca200d1f310a..c05d5d20eebf 100644
> --- a/drivers/watchdog/Kconfig
> +++ b/drivers/watchdog/Kconfig
> @@ -864,7 +864,8 @@ config ALIM7101_WDT
>
> config EBC_C384_WDT
> tristate "WinSystems EBC-C384 Watchdog Timer"
> - depends on X86 && ISA_BUS_API
> + depends on X86
> + select ISA_BUS_API
> select WATCHDOG_CORE
> help
> Enables watchdog timer support for the watchdog timer on the
>
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 3/3] gpio: Change ISA_BUS_API dependency to selection
2017-12-28 16:01 [PATCH 0/3] Change ISA_BUS_API dependency to selection William Breathitt Gray
2017-12-28 16:01 ` [PATCH 1/3] iio: " William Breathitt Gray
2017-12-28 16:02 ` [PATCH 2/3] watchdog: " William Breathitt Gray
@ 2017-12-28 16:02 ` William Breathitt Gray
2018-01-02 9:18 ` Linus Walleij
2017-12-28 17:03 ` [PATCH 0/3] " Guenter Roeck
2017-12-28 22:53 ` Maciej S. Szmigiero
4 siblings, 1 reply; 10+ messages in thread
From: William Breathitt Gray @ 2017-12-28 16:02 UTC (permalink / raw)
To: linus.walleij
Cc: mail, linux-gpio, linux-iio, linux-watchdog, linux-kernel,
William Breathitt Gray
The ISA_BUS_API Kconfig option enables the compilation of the ISA bus
driver. The ISA bus driver does not perform any hardware interaction,
and is instead just a thin layer of software abstraction to eliminate
boilerplate code common to ISA-style device drivers. Since ISA_BUS_API
has no dependencies and does not jeopardize the integrity of the system
when enabled, drivers should select it when the ISA bus driver
functionality is needed.
Cc: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: William Breathitt Gray <vilhelm.gray@gmail.com>
---
drivers/gpio/Kconfig | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)
diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
index 395669bfcc26..36ad9ce3dc58 100644
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
@@ -590,7 +590,8 @@ menu "Port-mapped I/O GPIO drivers"
config GPIO_104_DIO_48E
tristate "ACCES 104-DIO-48E GPIO support"
- depends on PC104 && ISA_BUS_API
+ depends on PC104
+ select ISA_BUS_API
select GPIOLIB_IRQCHIP
help
Enables GPIO support for the ACCES 104-DIO-48E series (104-DIO-48E,
@@ -600,7 +601,8 @@ config GPIO_104_DIO_48E
config GPIO_104_IDIO_16
tristate "ACCES 104-IDIO-16 GPIO support"
- depends on PC104 && ISA_BUS_API
+ depends on PC104
+ select ISA_BUS_API
select GPIOLIB_IRQCHIP
help
Enables GPIO support for the ACCES 104-IDIO-16 family (104-IDIO-16,
@@ -611,7 +613,8 @@ config GPIO_104_IDIO_16
config GPIO_104_IDI_48
tristate "ACCES 104-IDI-48 GPIO support"
- depends on PC104 && ISA_BUS_API
+ depends on PC104
+ select ISA_BUS_API
select GPIOLIB_IRQCHIP
help
Enables GPIO support for the ACCES 104-IDI-48 family (104-IDI-48A,
@@ -631,7 +634,8 @@ config GPIO_F7188X
config GPIO_GPIO_MM
tristate "Diamond Systems GPIO-MM GPIO support"
- depends on PC104 && ISA_BUS_API
+ depends on PC104
+ select ISA_BUS_API
help
Enables GPIO support for the Diamond Systems GPIO-MM and GPIO-MM-12.
@@ -700,7 +704,7 @@ config GPIO_TS5500
config GPIO_WS16C48
tristate "WinSystems WS16C48 GPIO support"
- depends on ISA_BUS_API
+ select ISA_BUS_API
select GPIOLIB_IRQCHIP
help
Enables GPIO support for the WinSystems WS16C48. The base port
--
2.15.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH 3/3] gpio: Change ISA_BUS_API dependency to selection
2017-12-28 16:02 ` [PATCH 3/3] gpio: " William Breathitt Gray
@ 2018-01-02 9:18 ` Linus Walleij
2018-01-02 9:19 ` Linus Walleij
0 siblings, 1 reply; 10+ messages in thread
From: Linus Walleij @ 2018-01-02 9:18 UTC (permalink / raw)
To: William Breathitt Gray
Cc: Maciej S. Szmigiero, linux-gpio, linux-iio, LINUXWATCHDOG,
linux-kernel@vger.kernel.org
On Thu, Dec 28, 2017 at 5:02 PM, William Breathitt Gray
<vilhelm.gray@gmail.com> wrote:
> The ISA_BUS_API Kconfig option enables the compilation of the ISA bus
> driver. The ISA bus driver does not perform any hardware interaction,
> and is instead just a thin layer of software abstraction to eliminate
> boilerplate code common to ISA-style device drivers. Since ISA_BUS_API
> has no dependencies and does not jeopardize the integrity of the system
> when enabled, drivers should select it when the ISA bus driver
> functionality is needed.
>
> Cc: Linus Walleij <linus.walleij@linaro.org>
> Signed-off-by: William Breathitt Gray <vilhelm.gray@gmail.com>
Patch applied.
Yours,
Linus Walleij
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 3/3] gpio: Change ISA_BUS_API dependency to selection
2018-01-02 9:18 ` Linus Walleij
@ 2018-01-02 9:19 ` Linus Walleij
0 siblings, 0 replies; 10+ messages in thread
From: Linus Walleij @ 2018-01-02 9:19 UTC (permalink / raw)
To: William Breathitt Gray
Cc: Maciej S. Szmigiero, linux-gpio, linux-iio, LINUXWATCHDOG,
linux-kernel@vger.kernel.org
On Tue, Jan 2, 2018 at 10:18 AM, Linus Walleij <linus.walleij@linaro.org> wrote:
> On Thu, Dec 28, 2017 at 5:02 PM, William Breathitt Gray
> <vilhelm.gray@gmail.com> wrote:
>
>> The ISA_BUS_API Kconfig option enables the compilation of the ISA bus
>> driver. The ISA bus driver does not perform any hardware interaction,
>> and is instead just a thin layer of software abstraction to eliminate
>> boilerplate code common to ISA-style device drivers. Since ISA_BUS_API
>> has no dependencies and does not jeopardize the integrity of the system
>> when enabled, drivers should select it when the ISA bus driver
>> functionality is needed.
>>
>> Cc: Linus Walleij <linus.walleij@linaro.org>
>> Signed-off-by: William Breathitt Gray <vilhelm.gray@gmail.com>
>
> Patch applied.
Ooops there are newer patches, backed it out.
Yours,
Linus Walleij
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 0/3] Change ISA_BUS_API dependency to selection
2017-12-28 16:01 [PATCH 0/3] Change ISA_BUS_API dependency to selection William Breathitt Gray
` (2 preceding siblings ...)
2017-12-28 16:02 ` [PATCH 3/3] gpio: " William Breathitt Gray
@ 2017-12-28 17:03 ` Guenter Roeck
2017-12-29 4:25 ` William Breathitt Gray
2017-12-28 22:53 ` Maciej S. Szmigiero
4 siblings, 1 reply; 10+ messages in thread
From: Guenter Roeck @ 2017-12-28 17:03 UTC (permalink / raw)
To: William Breathitt Gray, linus.walleij
Cc: mail, linux-gpio, linux-iio, linux-watchdog, linux-kernel
On 12/28/2017 08:01 AM, William Breathitt Gray wrote:
> The ISA_BUS_API Kconfig option enables the compilation of the ISA bus
> driver. The ISA bus driver does not perform any hardware interaction,
> and is instead just a thin layer of software abstraction to eliminate
> boilerplate code common to ISA-style device drivers. Since ISA_BUS_API
> has no dependencies and does not jeopardize the integrity of the system
> when enabled, drivers should select it when the ISA bus driver
> functionality is needed.
>
> Originally, when the ISA_BUS_API Kconfig option was introduced, it
> served a dual-purpose of masking drivers ISA-style devices not commonly
> found for desktop systems, such as the PC/104 device drivers. This
> secondary semantic was inappropriate for the ISA_BUS_API option, and
> proper masking of these device drivers is now accomplished via dedicated
> Kconfig options such as CONFIG_PC104.
>
> Linus, please pickup this entire patchset through your GPIO subsystem
> tree; a recursive dependency error is present if these patches are
> cherry-picked (see https://lkml.org/lkml/2017/12/26/235), so they should
> be merged together in the same tree.
>
> Maciej, this patchset resolves the recursive dependency issue you
> encountered, so now you should be able to submit your Winbond GPIO
> driver with the ISA_BUS_API selection as desired.
>
> William Breathitt Gray (3):
> iio: Change ISA_BUS_API dependency to selection
> watchdog: Change ISA_BUS_API dependency to selection
> gpio: Change ISA_BUS_API dependency to selection
>
> drivers/gpio/Kconfig | 14 +++++++++-----
> drivers/iio/adc/Kconfig | 3 ++-
> drivers/iio/counter/Kconfig | 3 ++-
> drivers/iio/dac/Kconfig | 3 ++-
> drivers/watchdog/Kconfig | 3 ++-
> 5 files changed, 17 insertions(+), 9 deletions(-)
>
But why keep "config ISA_BUS" ? Its only purpose is to select ISA_BUS_API.
Guenter
^ permalink raw reply [flat|nested] 10+ messages in thread* Re: [PATCH 0/3] Change ISA_BUS_API dependency to selection
2017-12-28 17:03 ` [PATCH 0/3] " Guenter Roeck
@ 2017-12-29 4:25 ` William Breathitt Gray
0 siblings, 0 replies; 10+ messages in thread
From: William Breathitt Gray @ 2017-12-29 4:25 UTC (permalink / raw)
To: Guenter Roeck
Cc: linus.walleij, mail, linux-gpio, linux-iio, linux-watchdog,
linux-kernel
On Thu, Dec 28, 2017 at 09:03:22AM -0800, Guenter Roeck wrote:
>On 12/28/2017 08:01 AM, William Breathitt Gray wrote:
>> The ISA_BUS_API Kconfig option enables the compilation of the ISA bus
>> driver. The ISA bus driver does not perform any hardware interaction,
>> and is instead just a thin layer of software abstraction to eliminate
>> boilerplate code common to ISA-style device drivers. Since ISA_BUS_API
>> has no dependencies and does not jeopardize the integrity of the system
>> when enabled, drivers should select it when the ISA bus driver
>> functionality is needed.
>>
>> Originally, when the ISA_BUS_API Kconfig option was introduced, it
>> served a dual-purpose of masking drivers ISA-style devices not commonly
>> found for desktop systems, such as the PC/104 device drivers. This
>> secondary semantic was inappropriate for the ISA_BUS_API option, and
>> proper masking of these device drivers is now accomplished via dedicated
>> Kconfig options such as CONFIG_PC104.
>>
>> Linus, please pickup this entire patchset through your GPIO subsystem
>> tree; a recursive dependency error is present if these patches are
>> cherry-picked (see https://lkml.org/lkml/2017/12/26/235), so they should
>> be merged together in the same tree.
>>
>> Maciej, this patchset resolves the recursive dependency issue you
>> encountered, so now you should be able to submit your Winbond GPIO
>> driver with the ISA_BUS_API selection as desired.
>>
>> William Breathitt Gray (3):
>> iio: Change ISA_BUS_API dependency to selection
>> watchdog: Change ISA_BUS_API dependency to selection
>> gpio: Change ISA_BUS_API dependency to selection
>>
>> drivers/gpio/Kconfig | 14 +++++++++-----
>> drivers/iio/adc/Kconfig | 3 ++-
>> drivers/iio/counter/Kconfig | 3 ++-
>> drivers/iio/dac/Kconfig | 3 ++-
>> drivers/watchdog/Kconfig | 3 ++-
>> 5 files changed, 17 insertions(+), 9 deletions(-)
>>
>But why keep "config ISA_BUS" ? Its only purpose is to select ISA_BUS_API.
I intend to have CONFIG_ISA_BUS now serve purely as a mask for true ISA
device drivers (e.g. CIO_DAC within this patchset). The legacy
CONFIG_ISA has a X86_32 dependency which prevents its use for X86_64
builds -- and unfortunately existing drivers depending on CONFIG_ISA
expect the X86_32 arch, thus making the task of decoupling that arch
dependency difficult. I'm hoping CONFIG_ISA_BUS can therefore supersede
the legacy CONFIG_ISA because an ISA bus can physically exist on a
non-X86_32 system.
However, there is no longer a need to select ISA_BUS_API, so that should
be removed, as well as the help text updated to match the changes. I'll
make these updates and submit a version 2 of this patchset some time
tomorrow then.
William Breathitt Gray
>
>Guenter
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 0/3] Change ISA_BUS_API dependency to selection
2017-12-28 16:01 [PATCH 0/3] Change ISA_BUS_API dependency to selection William Breathitt Gray
` (3 preceding siblings ...)
2017-12-28 17:03 ` [PATCH 0/3] " Guenter Roeck
@ 2017-12-28 22:53 ` Maciej S. Szmigiero
4 siblings, 0 replies; 10+ messages in thread
From: Maciej S. Szmigiero @ 2017-12-28 22:53 UTC (permalink / raw)
To: William Breathitt Gray
Cc: linus.walleij, linux-gpio, linux-iio, linux-watchdog,
linux-kernel
On 28.12.2017 17:01, William Breathitt Gray wrote:
(..)
>
> Linus, please pickup this entire patchset through your GPIO subsystem
> tree; a recursive dependency error is present if these patches are
> cherry-picked (see https://lkml.org/lkml/2017/12/26/235), so they should
> be merged together in the same tree.
>
> Maciej, this patchset resolves the recursive dependency issue you
> encountered, so now you should be able to submit your Winbond GPIO
> driver with the ISA_BUS_API selection as desired.
Thanks for these patches, will submit the driver as soon as I
integrate Andy's comments.
Maciej
^ permalink raw reply [flat|nested] 10+ messages in thread