2023-09-13 11:41:52

by Ian Abbott

[permalink] [raw]
Subject: Re: [PATCH 00/13] comedi: Re-do HAS_IOPORT dependencies

On 13/09/2023 12:20, Ian Abbott wrote:
> Commit b5c75b68b7de ("comedi: add HAS_IOPORT dependencies") was reverted
> because it made it impossible to select configuration options that
> depend on the COMEDI_8254, COMEDI_DAS08, COMEDI_NI_LABPC, or
> COMEDI_AMPLC_DIO200 options due to changing 'select' directives to
> 'depends on' directives and there being no other way to select those
> codependent configuration options.
>
> This patch series conditionally removes port I/O support from various
> comedi modules so they still be built when a future patch removes the
> port I/O functions (inb(), outb() and friends) unless the HAS_IOPORT
> configuration option is selected. The final patch 13 adds HAS_IOPORT
> dependencies to the configuration options as in the reverted patch, but
> there are now fewer options that need to depend on HAS_IOPORT, and the
> 'select' directives have not been replaced with 'depends on' directives.
>
> 01) comedi: Correct dependencies for COMEDI_NI_PCIDIO
> 02) comedi: comedi_8254: Use a call-back function for register access
> 03) comedi: comedi_8254: Replace comedi_8254_init() and comedi_8254_mm_init()
> 04) comedi: comedi_8254: Conditionally remove I/O port support
> 05) comedi: 8255_pci: Conditionally remove devices that use port I/O
> 06) comedi: comedi_8255: Rework subdevice initialization functions
> 07) comedi: comedi_8255: Conditionally remove I/O port support
> 08) comedi: ni_labpc_common: Conditionally remove I/O port support
> 09) comedi: ni_mio_common: Conditionally use I/O port or MMIO
> 10) comedi: amplc_dio200_pci: Conditionally remove devices that use port I/O
> 11) comedi: amplc_dio200_common: Refactor register access functions
> 12) comedi: amplc_dio200_common: Conditionally remove I/O port support
> 13) comedi: add HAS_IOPORT dependencies again
>
> drivers/comedi/Kconfig | 45 +++++-
> drivers/comedi/drivers.c | 3 +-
> drivers/comedi/drivers/8255.c | 2 +-
> drivers/comedi/drivers/8255_pci.c | 15 +-
> drivers/comedi/drivers/adl_pci9111.c | 8 +-
> drivers/comedi/drivers/adl_pci9118.c | 8 +-
> drivers/comedi/drivers/adv_pci1710.c | 8 +-
> drivers/comedi/drivers/adv_pci_dio.c | 14 +-
> drivers/comedi/drivers/aio_aio12_8.c | 10 +-
> drivers/comedi/drivers/amplc_dio200_common.c | 104 +++++++++---
> drivers/comedi/drivers/amplc_dio200_pci.c | 12 +-
> drivers/comedi/drivers/amplc_pc236_common.c | 2 +-
> drivers/comedi/drivers/amplc_pci224.c | 8 +-
> drivers/comedi/drivers/amplc_pci230.c | 10 +-
> drivers/comedi/drivers/cb_das16_cs.c | 8 +-
> drivers/comedi/drivers/cb_pcidas.c | 23 +--
> drivers/comedi/drivers/cb_pcidas64.c | 7 +-
> drivers/comedi/drivers/cb_pcidda.c | 2 +-
> drivers/comedi/drivers/cb_pcimdas.c | 12 +-
> drivers/comedi/drivers/cb_pcimdda.c | 2 +-
> drivers/comedi/drivers/comedi_8254.c | 234 ++++++++++++++++++---------
> drivers/comedi/drivers/comedi_8255.c | 123 +++++++-------
> drivers/comedi/drivers/daqboard2000.c | 4 +-
> drivers/comedi/drivers/das08.c | 11 +-
> drivers/comedi/drivers/das16.c | 10 +-
> drivers/comedi/drivers/das16m1.c | 22 +--
> drivers/comedi/drivers/das1800.c | 8 +-
> drivers/comedi/drivers/das6402.c | 8 +-
> drivers/comedi/drivers/das800.c | 8 +-
> drivers/comedi/drivers/dmm32at.c | 3 +-
> drivers/comedi/drivers/me4000.c | 6 +-
> drivers/comedi/drivers/ni_at_a2150.c | 8 +-
> drivers/comedi/drivers/ni_at_ao.c | 8 +-
> drivers/comedi/drivers/ni_atmio16d.c | 2 +-
> drivers/comedi/drivers/ni_daq_dio24.c | 2 +-
> drivers/comedi/drivers/ni_labpc_common.c | 51 +++---
> drivers/comedi/drivers/ni_mio_common.c | 74 ++++++---
> drivers/comedi/drivers/pcl711.c | 8 +-
> drivers/comedi/drivers/pcl724.c | 6 +-
> drivers/comedi/drivers/pcl812.c | 10 +-
> drivers/comedi/drivers/pcl816.c | 8 +-
> drivers/comedi/drivers/pcl818.c | 8 +-
> drivers/comedi/drivers/pcm3724.c | 2 +-
> drivers/comedi/drivers/rtd520.c | 6 +-
> include/linux/comedi/comedi_8254.h | 51 ++++--
> include/linux/comedi/comedi_8255.h | 24 ++-
> 46 files changed, 649 insertions(+), 359 deletions(-)
>

Sorry people, I need to repost this series with more Cc: entries because
I neglected the fact that the git send-email --cc option causes all cc
lines in the .gitconfig to be ignored!

--
-=( Ian Abbott <[email protected]> || MEV Ltd. is a company )=-
-=( registered in England & Wales. Regd. number: 02862268. )=-
-=( Regd. addr.: S11 & 12 Building 67, Europa Business Park, )=-
-=( Bird Hall Lane, STOCKPORT, SK3 0XA, UK. || http://www.mev.co.uk )=-