Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1405747 > unrolled thread

[PATCH v4 0/4] Allow ISA-style drivers on modern systems

Started byWilliam Breathitt Gray <vilhelm.gray@gmail.com>
First post2016-05-24 02:40 +0200
Last post2016-05-27 23:00 +0200
Articles 5 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH v4 0/4] Allow ISA-style drivers on modern systems William Breathitt Gray <vilhelm.gray@gmail.com> - 2016-05-24 02:40 +0200
    Re: [PATCH v4 2/4] gpio: Allow PC/104 devices on X86_64 Guenter Roeck <linux@roeck-us.net> - 2016-05-27 20:20 +0200
    Re: [PATCH v4 3/4] iio: stx104: Allow build for X86_64 Guenter Roeck <linux@roeck-us.net> - 2016-05-27 20:30 +0200
      Re: [PATCH v4 3/4] iio: stx104: Allow build for X86_64 William Breathitt Gray <vilhelm.gray@gmail.com> - 2016-05-27 22:00 +0200
        Re: [PATCH v4 3/4] iio: stx104: Allow build for X86_64 Guenter Roeck <linux@roeck-us.net> - 2016-05-27 23:00 +0200

#1405747 — [PATCH v4 0/4] Allow ISA-style drivers on modern systems

FromWilliam Breathitt Gray <vilhelm.gray@gmail.com>
Date2016-05-24 02:40 +0200
Subject[PATCH v4 0/4] Allow ISA-style drivers on modern systems
Message-ID<rC8y5-4qB-3@gated-at.bofh.it>
Changes in v4:
  - Remove unnecessary explicit "default n" from the X86 ISA_BUS Kconfig
    option since Kconfig options are disabled by default

Changes in v3:
  - Remove redundant X86 dependency from the X86 ISA_BUS Kconfig option

Changes in v2:
  - Adjusted preprocessor compilation conditional in include/linux/isa.h
    to use CONFIG_ISA_BUS_API in order to link the correct ISA bus
    driver function definitions when available
  - Move ISA_BUS_API Kconfig option to arch/Kconfig, thus making it
    available to all architectures instead of just X86
  - X86 ISA_BUS Kconfig option should be disabled by default; ISA
    devices typically do not have a way to be probed, so users should
    be required to explicitly enable ISA bus driver support, lest a
    selected driver be loaded with the misguided expectation of a safe
    hardware probe

Several modern devices, such as PC/104 cards, are expected to run on
modern systems via an ISA bus interface. Since ISA is a legacy interface
for most modern architectures, ISA support should remain disabled in
general. Support for ISA-style drivers should be enabled on a per driver
basis.

To allow ISA-style drivers on modern systems, this patchset introduces
the ISA_BUS_API and ISA_BUS Kconfig options. The ISA bus driver will now
build conditionally on the ISA_BUS_API Kconfig option, which defaults to
the legacy ISA Kconfig option. The ISA_BUS Kconfig option allows the
ISA_BUS_API Kconfig option to be selected on architectures which do not
enable ISA (e.g. X86_64).

The ISA_BUS Kconfig option is currently only implemented for X86
architectures. Other architectures may have their own ISA_BUS Kconfig
option added as required.

An earlier attempt to allow the ISA bus driver to build for X86_64 took
an inappropriate approach resulting in legacy ISA drivers becoming
enabled unconditionally on untested and unsupported architectures.
Commit 51e68d055cba ("x86 isa: add back X86_32 dependency on
CONFIG_ISA"), added to restrict the ISA bus driver to only X86_32,
causes several drivers intended for X86_64 to be restricted to X86_32 as
well.

This patchset replaces the ISA Kconfig option dependency of several
drivers to ISA_BUS_API, so that they may build for X86_64 as intended.
The respective drivers are as follows:
    * ACCES 104-IDIO-16 GPIO driver
    * ACCES 104-IDI-48 GPIO driver
    * ACCES 104-DIO-48E GPIO driver
    * Apex Embedded Systems STX104 DAC driver
    * WinSystems EBC-C384 watchdog timer driver
    * WinSystems WS16C48 GPIO driver

William Breathitt Gray (4):
  isa: Allow ISA-style drivers on modern systems
  gpio: Allow PC/104 devices on X86_64
  iio: stx104: Allow build for X86_64
  watchdog: ebc-c384_wdt: Allow build for X86_64

 arch/Kconfig             | 3 +++
 arch/x86/Kconfig         | 9 +++++++++
 drivers/base/Makefile    | 2 +-
 drivers/gpio/Kconfig     | 8 ++++----
 drivers/iio/dac/Kconfig  | 2 +-
 drivers/watchdog/Kconfig | 2 +-
 include/linux/isa.h      | 2 +-
 7 files changed, 20 insertions(+), 8 deletions(-)

-- 
2.7.3

[toc] | [next] | [standalone]


#1408226 — Re: [PATCH v4 2/4] gpio: Allow PC/104 devices on X86_64

FromGuenter Roeck <linux@roeck-us.net>
Date2016-05-27 20:20 +0200
SubjectRe: [PATCH v4 2/4] gpio: Allow PC/104 devices on X86_64
Message-ID<rDuwx-6Pt-15@gated-at.bofh.it>
In reply to#1405747
On Mon, May 23, 2016 at 08:30:55PM -0400, William Breathitt Gray wrote:
> With the introduction of the ISA_BUS_API Kconfig option, ISA-style
> drivers may be built for X86_64 architectures. This patch changes the
> ISA Kconfig option dependency of the PC/104 drivers to ISA_BUS_API, thus
> allowing them to build for X86_64 as they are expected to.
> 
> Cc: Guenter Roeck <linux@roeck-us.net>
> Cc: Linus Walleij <linus.walleij@linaro.org>
> Signed-off-by: William Breathitt Gray <vilhelm.gray@gmail.com>

Reviewed-by: Guenter Roeck <linux@roeck-us.net>

> ---
>  drivers/gpio/Kconfig | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
> index 48da857..dc6da77 100644
> --- a/drivers/gpio/Kconfig
> +++ b/drivers/gpio/Kconfig
> @@ -530,7 +530,7 @@ menu "Port-mapped I/O GPIO drivers"
>  
>  config GPIO_104_DIO_48E
>  	tristate "ACCES 104-DIO-48E GPIO support"
> -	depends on ISA
> +	depends on ISA_BUS_API
>  	select GPIOLIB_IRQCHIP
>  	help
>  	  Enables GPIO support for the ACCES 104-DIO-48E series (104-DIO-48E,
> @@ -540,7 +540,7 @@ config GPIO_104_DIO_48E
>  
>  config GPIO_104_IDIO_16
>  	tristate "ACCES 104-IDIO-16 GPIO support"
> -	depends on ISA
> +	depends on ISA_BUS_API
>  	select GPIOLIB_IRQCHIP
>  	help
>  	  Enables GPIO support for the ACCES 104-IDIO-16 family (104-IDIO-16,
> @@ -551,7 +551,7 @@ config GPIO_104_IDIO_16
>  
>  config GPIO_104_IDI_48
>  	tristate "ACCES 104-IDI-48 GPIO support"
> -	depends on ISA
> +	depends on ISA_BUS_API
>  	select GPIOLIB_IRQCHIP
>  	help
>  	  Enables GPIO support for the ACCES 104-IDI-48 family (104-IDI-48A,
> @@ -627,7 +627,7 @@ config GPIO_TS5500
>  
>  config GPIO_WS16C48
>  	tristate "WinSystems WS16C48 GPIO support"
> -	depends on ISA
> +	depends on ISA_BUS_API
>  	select GPIOLIB_IRQCHIP
>  	help
>  	  Enables GPIO support for the WinSystems WS16C48. The base port
> -- 
> 2.7.3
> 

[toc] | [prev] | [next] | [standalone]


#1408231 — Re: [PATCH v4 3/4] iio: stx104: Allow build for X86_64

FromGuenter Roeck <linux@roeck-us.net>
Date2016-05-27 20:30 +0200
SubjectRe: [PATCH v4 3/4] iio: stx104: Allow build for X86_64
Message-ID<rDuGe-6SR-17@gated-at.bofh.it>
In reply to#1405747
On Mon, May 23, 2016 at 08:31:07PM -0400, William Breathitt Gray wrote:
> With the introduction of the ISA_BUS_API Kconfig option, ISA-style
> drivers may be built for X86_64 architectures. This patch changes the
> ISA Kconfig option dependency of the Apex Embedded Systems STX104 DAC
> driver to ISA_BUS_API, thus allowing it to build for X86_64 as it is
> expected to.
> 
> Cc: Hartmut Knaack <knaack.h@gmx.de>
> Cc: Lars-Peter Clausen <lars@metafoo.de>
> Cc: Peter Meerwald-Stadler <pmeerw@pmeerw.net>
> Cc: Jonathan Cameron <jic23@kernel.org>
> Signed-off-by: William Breathitt Gray <vilhelm.gray@gmail.com>
> ---
>  drivers/iio/dac/Kconfig | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/iio/dac/Kconfig b/drivers/iio/dac/Kconfig
> index e63b957..315442f 100644
> --- a/drivers/iio/dac/Kconfig
> +++ b/drivers/iio/dac/Kconfig
> @@ -247,7 +247,7 @@ config MCP4922
>  
>  config STX104
>  	tristate "Apex Embedded Systems STX104 DAC driver"
> -	depends on X86 && ISA
> +	depends on ISA_BUS_API

Assuming the dropped dependency on X86 is intentional:

Reviewed-by: Guenter Roeck <linux@roeck-us.net>

>  	help
>  	  Say yes here to build support for the 2-channel DAC on the Apex
>  	  Embedded Systems STX104 integrated analog PC/104 card. The base port
> -- 
> 2.7.3
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-watchdog" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

[toc] | [prev] | [next] | [standalone]


#1408269 — Re: [PATCH v4 3/4] iio: stx104: Allow build for X86_64

FromWilliam Breathitt Gray <vilhelm.gray@gmail.com>
Date2016-05-27 22:00 +0200
SubjectRe: [PATCH v4 3/4] iio: stx104: Allow build for X86_64
Message-ID<rDw5l-7Db-37@gated-at.bofh.it>
In reply to#1408231
On Fri, May 27, 2016 at 11:20:57AM -0700, Guenter Roeck wrote:
>On Mon, May 23, 2016 at 08:31:07PM -0400, William Breathitt Gray wrote:
>> With the introduction of the ISA_BUS_API Kconfig option, ISA-style
>> drivers may be built for X86_64 architectures. This patch changes the
>> ISA Kconfig option dependency of the Apex Embedded Systems STX104 DAC
>> driver to ISA_BUS_API, thus allowing it to build for X86_64 as it is
>> expected to.
>> 
>> Cc: Hartmut Knaack <knaack.h@gmx.de>
>> Cc: Lars-Peter Clausen <lars@metafoo.de>
>> Cc: Peter Meerwald-Stadler <pmeerw@pmeerw.net>
>> Cc: Jonathan Cameron <jic23@kernel.org>
>> Signed-off-by: William Breathitt Gray <vilhelm.gray@gmail.com>
>> ---
>>  drivers/iio/dac/Kconfig | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>> 
>> diff --git a/drivers/iio/dac/Kconfig b/drivers/iio/dac/Kconfig
>> index e63b957..315442f 100644
>> --- a/drivers/iio/dac/Kconfig
>> +++ b/drivers/iio/dac/Kconfig
>> @@ -247,7 +247,7 @@ config MCP4922
>>  
>>  config STX104
>>  	tristate "Apex Embedded Systems STX104 DAC driver"
>> -	depends on X86 && ISA
>> +	depends on ISA_BUS_API
>
>Assuming the dropped dependency on X86 is intentional:
>
>Reviewed-by: Guenter Roeck <linux@roeck-us.net>

Thanks for the review Guenter: losing the X86 dependency was not
intentional; it looks like I forgot to adjust this when I made
ISA_BUS_API available to all architectures. I'll submit version 5 with
the explicit X86 dependency back in place for CONFIG_STX104 and
CONFIG_EBC_C384_WDT.

William Breathitt Gray

[toc] | [prev] | [next] | [standalone]


#1408315 — Re: [PATCH v4 3/4] iio: stx104: Allow build for X86_64

FromGuenter Roeck <linux@roeck-us.net>
Date2016-05-27 23:00 +0200
SubjectRe: [PATCH v4 3/4] iio: stx104: Allow build for X86_64
Message-ID<rDx1o-8ea-9@gated-at.bofh.it>
In reply to#1408269
On Fri, May 27, 2016 at 03:54:00PM -0400, William Breathitt Gray wrote:
> On Fri, May 27, 2016 at 11:20:57AM -0700, Guenter Roeck wrote:
> >On Mon, May 23, 2016 at 08:31:07PM -0400, William Breathitt Gray wrote:
> >> With the introduction of the ISA_BUS_API Kconfig option, ISA-style
> >> drivers may be built for X86_64 architectures. This patch changes the
> >> ISA Kconfig option dependency of the Apex Embedded Systems STX104 DAC
> >> driver to ISA_BUS_API, thus allowing it to build for X86_64 as it is
> >> expected to.
> >> 
> >> Cc: Hartmut Knaack <knaack.h@gmx.de>
> >> Cc: Lars-Peter Clausen <lars@metafoo.de>
> >> Cc: Peter Meerwald-Stadler <pmeerw@pmeerw.net>
> >> Cc: Jonathan Cameron <jic23@kernel.org>
> >> Signed-off-by: William Breathitt Gray <vilhelm.gray@gmail.com>
> >> ---
> >>  drivers/iio/dac/Kconfig | 2 +-
> >>  1 file changed, 1 insertion(+), 1 deletion(-)
> >> 
> >> diff --git a/drivers/iio/dac/Kconfig b/drivers/iio/dac/Kconfig
> >> index e63b957..315442f 100644
> >> --- a/drivers/iio/dac/Kconfig
> >> +++ b/drivers/iio/dac/Kconfig
> >> @@ -247,7 +247,7 @@ config MCP4922
> >>  
> >>  config STX104
> >>  	tristate "Apex Embedded Systems STX104 DAC driver"
> >> -	depends on X86 && ISA
> >> +	depends on ISA_BUS_API
> >
> >Assuming the dropped dependency on X86 is intentional:
> >
> >Reviewed-by: Guenter Roeck <linux@roeck-us.net>
> 
> Thanks for the review Guenter: losing the X86 dependency was not
> intentional; it looks like I forgot to adjust this when I made
> ISA_BUS_API available to all architectures. I'll submit version 5 with
> the explicit X86 dependency back in place for CONFIG_STX104 and
> CONFIG_EBC_C384_WDT.
> 
Ok. Feel free to keep my Reviewed-by: tag unless you make further changes.

Guenter

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web