linux-next.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 0/4] Allow ISA-style drivers on modern systems
@ 2016-05-27 22:08 William Breathitt Gray
  2016-05-27 22:08 ` [PATCH v5 1/4] isa: " William Breathitt Gray
                   ` (3 more replies)
  0 siblings, 4 replies; 16+ messages in thread
From: William Breathitt Gray @ 2016-05-27 22:08 UTC (permalink / raw)
  To: gregkh, akpm
  Cc: x86, linux-next, linux-gpio, linux-iio, linux-kernel,
	linux-watchdog, sfr, linux, William Breathitt Gray

Changes in v5:
  - Add explicit X86 dependency to CONFIG_STX104 and CONFIG_EBC_C384_WDT
    since these drivers were developed with X86 architectures in mind

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


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

end of thread, other threads:[~2016-06-18  3:47 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-05-27 22:08 [PATCH v5 0/4] Allow ISA-style drivers on modern systems William Breathitt Gray
2016-05-27 22:08 ` [PATCH v5 1/4] isa: " William Breathitt Gray
2016-05-28 19:35   ` Linus Torvalds
2016-05-27 22:08 ` [PATCH v5 2/4] gpio: Allow PC/104 devices on X86_64 William Breathitt Gray
     [not found]   ` <61880bededb77bbc3ea3422e48ce717d2a2ff489.1464380034.git.vilhelm.gray-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2016-05-31  8:41     ` Linus Walleij
2016-05-31 11:23       ` William Breathitt Gray
2016-05-31 15:25         ` Greg KH
2016-06-17 10:47           ` Thorsten Leemhuis
     [not found]             ` <057d8c0b-074c-609a-35da-5a01f07b6d31-rCxcAJFjeRkk+I/owrrOrA@public.gmane.org>
2016-06-18  2:36               ` Greg KH
2016-06-18  2:49                 ` William Breathitt Gray
2016-06-18  3:18                   ` Greg KH
2016-06-18  3:39                     ` William Breathitt Gray
2016-06-18  3:47                       ` Greg KH
     [not found] ` <cover.1464380034.git.vilhelm.gray-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2016-05-27 22:09   ` [PATCH v5 3/4] iio: stx104: Allow build for X86_64 William Breathitt Gray
2016-05-28 17:15     ` Jonathan Cameron
2016-05-27 22:09 ` [PATCH v5 4/4] watchdog: ebc-c384_wdt: " William Breathitt Gray

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).