Re: [PATCH v2] staging: comedi: ni_labpc: change VIRT_TO_BUS dependency

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2013-06-27 17:50, Ian Abbott wrote:
On 2013-06-27 17:08, Ian Abbott wrote:
The "ni_labpc" module acts as a low-level comedi driver for various
National Instruments Lab-PC ISA cards if `CONFIG_NI_LABPC_ISA` is
enabled, and also as a common module depended on by the "ni_labpc_cs"
and "ni_labpc_pci" modules.  For ISA cards, it optionally supports the
use of an ISA DMA channel if `CONFIG_ISA_DMA_API` is enabled, using
conditionally compiled code.  This conditionally compiled code also
relies on `virt_to_bus()`, which only exists if `CONFIG_VIRT_TO_BUS` is
enabled.  Therefore, support for ISA DMA should only be compiled in if
both `CONFIG_ISA_DMA_API` and `CONFIG_VIRT_TO_BUS` are defined.

The `CONFIG_NI_LABPC_ISA` option currently depends on `VIRT_TO_BUS` at
configure time and checks `CONFIG_ISA_DMA_API` at compile time.  It
seems better to check both options at compile time.

Conditionally define a new macro `NI_LABPC_ISA_DMA` iff both
`CONFIG_ISA_DMA_API` and `CONFIG_VIRT_TO_BUS` are defined, and change
the conditional compilation tests to use the new macro instead of
`CONFIG_ISA_DMA_API`.

Also, in the "Kconfig", remove the `VIRT_TO_BUS` dependency from the
`COMEDI_NI_LABPC_ISA` option since the dependency is now checked at
compile time.

On second thoughts, perhaps I should create a new module and header file
and a new conditionally selected config option to handle the ISA DMA
support in this module, as that would remove a bunch of #ifdefs (or at
least hide them in the header file).

Might as well dump this patch now. I've already split the ISA DMA support out into a separate module locally. I just need to split my patch up for submission.

--
-=( Ian Abbott @ MEV Ltd.    E-mail: <abbotti@xxxxxxxxx>        )=-
-=( Tel: +44 (0)161 477 1898   FAX: +44 (0)161 718 3587         )=-
_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel




[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux