forked from Minki/linux
IIO: Move the core files to drivers/iio
Take the core support + the kfifo buffer implentation out of staging. Whilst we are far from done in improving this subsystem it is now at a stage where the userspae interfaces (provided by the core) can be considered stable. Drivers will follow over a longer time scale. Signed-off-by: Jonathan Cameron <jic23@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
06458e277e
commit
a980e04609
@ -140,4 +140,6 @@ source "drivers/virt/Kconfig"
|
||||
|
||||
source "drivers/devfreq/Kconfig"
|
||||
|
||||
source "drivers/iio/Kconfig"
|
||||
|
||||
endmenu
|
||||
|
@ -134,3 +134,4 @@ obj-$(CONFIG_VIRT_DRIVERS) += virt/
|
||||
obj-$(CONFIG_HYPERV) += hv/
|
||||
|
||||
obj-$(CONFIG_PM_DEVFREQ) += devfreq/
|
||||
obj-$(CONFIG_IIO) += iio/
|
||||
|
51
drivers/iio/Kconfig
Normal file
51
drivers/iio/Kconfig
Normal file
@ -0,0 +1,51 @@
|
||||
#
|
||||
# Industrial I/O subsytem configuration
|
||||
#
|
||||
|
||||
menuconfig IIO
|
||||
tristate "Industrial I/O support"
|
||||
depends on GENERIC_HARDIRQS
|
||||
help
|
||||
The industrial I/O subsystem provides a unified framework for
|
||||
drivers for many different types of embedded sensors using a
|
||||
number of different physical interfaces (i2c, spi, etc). See
|
||||
Documentation/iio for more information.
|
||||
|
||||
if IIO
|
||||
|
||||
config IIO_BUFFER
|
||||
bool "Enable buffer support within IIO"
|
||||
help
|
||||
Provide core support for various buffer based data
|
||||
acquisition methods.
|
||||
|
||||
if IIO_BUFFER
|
||||
|
||||
config IIO_KFIFO_BUF
|
||||
select IIO_TRIGGER
|
||||
tristate "Industrial I/O buffering based on kfifo"
|
||||
help
|
||||
A simple fifo based on kfifo. Use this if you want a fifo
|
||||
rather than a ring buffer. Note that this currently provides
|
||||
no buffer events so it is up to userspace to work out how
|
||||
often to read from the buffer.
|
||||
|
||||
endif # IIO_BUFFER
|
||||
|
||||
config IIO_TRIGGER
|
||||
boolean "Enable triggered sampling support"
|
||||
help
|
||||
Provides IIO core support for triggers. Currently these
|
||||
are used to initialize capture of samples to push into
|
||||
ring buffers. The triggers are effectively a 'capture
|
||||
data now' interrupt.
|
||||
|
||||
config IIO_CONSUMERS_PER_TRIGGER
|
||||
int "Maximum number of consumers per trigger"
|
||||
depends on IIO_TRIGGER
|
||||
default "2"
|
||||
help
|
||||
This value controls the maximum number of consumers that a
|
||||
given trigger may handle. Default is 2.
|
||||
|
||||
endif # IIO
|
10
drivers/iio/Makefile
Normal file
10
drivers/iio/Makefile
Normal file
@ -0,0 +1,10 @@
|
||||
#
|
||||
# Makefile for the industrial I/O core.
|
||||
#
|
||||
|
||||
obj-$(CONFIG_IIO) += industrialio.o
|
||||
industrialio-y := industrialio-core.o industrialio-event.o inkern.o
|
||||
industrialio-$(CONFIG_IIO_BUFFER) += industrialio-buffer.o
|
||||
industrialio-$(CONFIG_IIO_TRIGGER) += industrialio-trigger.o
|
||||
|
||||
obj-$(CONFIG_IIO_KFIFO_BUF) += kfifo_buf.o
|
@ -1,16 +1,9 @@
|
||||
#
|
||||
# Industrial I/O subsytem configuration
|
||||
#
|
||||
menu "IIO staging drivers"
|
||||
depends on IIO
|
||||
|
||||
menuconfig IIO
|
||||
tristate "Industrial I/O support"
|
||||
depends on GENERIC_HARDIRQS
|
||||
help
|
||||
The industrial I/O subsystem provides a unified framework for
|
||||
drivers for many different types of embedded sensors using a
|
||||
number of different physical interfaces (i2c, spi, etc). See
|
||||
drivers/staging/iio/Documentation for more information.
|
||||
if IIO
|
||||
config IIO_ST_HWMON
|
||||
tristate "Hwmon driver that uses channels specified via iio maps"
|
||||
depends on HWMON
|
||||
@ -19,12 +12,6 @@ config IIO_ST_HWMON
|
||||
map allows IIO devices to provide basic hwmon functionality
|
||||
for those channels specified in the map.
|
||||
|
||||
config IIO_BUFFER
|
||||
bool "Enable buffer support within IIO"
|
||||
help
|
||||
Provide core support for various buffer based data
|
||||
acquisition methods.
|
||||
|
||||
if IIO_BUFFER
|
||||
|
||||
config IIO_SW_RING
|
||||
@ -36,33 +23,8 @@ config IIO_SW_RING
|
||||
with the intention that some devices would be able to write
|
||||
in interrupt context.
|
||||
|
||||
config IIO_KFIFO_BUF
|
||||
select IIO_TRIGGER
|
||||
tristate "Industrial I/O buffering based on kfifo"
|
||||
help
|
||||
A simple fifo based on kfifo. Use this if you want a fifo
|
||||
rather than a ring buffer. Note that this currently provides
|
||||
no buffer events so it is up to userspace to work out how
|
||||
often to read from the buffer.
|
||||
|
||||
endif # IIO_BUFFER
|
||||
|
||||
config IIO_TRIGGER
|
||||
boolean "Enable triggered sampling support"
|
||||
help
|
||||
Provides IIO core support for triggers. Currently these
|
||||
are used to initialize capture of samples to push into
|
||||
ring buffers. The triggers are effectively a 'capture
|
||||
data now' interrupt.
|
||||
|
||||
config IIO_CONSUMERS_PER_TRIGGER
|
||||
int "Maximum number of consumers per trigger"
|
||||
depends on IIO_TRIGGER
|
||||
default "2"
|
||||
help
|
||||
This value controls the maximum number of consumers that a
|
||||
given trigger may handle. Default is 2.
|
||||
|
||||
source "drivers/staging/iio/accel/Kconfig"
|
||||
source "drivers/staging/iio/adc/Kconfig"
|
||||
source "drivers/staging/iio/addac/Kconfig"
|
||||
@ -104,4 +66,4 @@ config IIO_SIMPLE_DUMMY_BUFFER
|
||||
|
||||
endif # IIO_SIMPLE_DUMMY
|
||||
|
||||
endif # IIO
|
||||
endmenu
|
||||
|
@ -2,13 +2,7 @@
|
||||
# Makefile for the industrial I/O core.
|
||||
#
|
||||
|
||||
obj-$(CONFIG_IIO) += industrialio.o
|
||||
industrialio-y := industrialio-core.o industrialio-event.o inkern.o
|
||||
industrialio-$(CONFIG_IIO_BUFFER) += industrialio-buffer.o
|
||||
industrialio-$(CONFIG_IIO_TRIGGER) += industrialio-trigger.o
|
||||
|
||||
obj-$(CONFIG_IIO_SW_RING) += ring_sw.o
|
||||
obj-$(CONFIG_IIO_KFIFO_BUF) += kfifo_buf.o
|
||||
|
||||
obj-$(CONFIG_IIO_SIMPLE_DUMMY) += iio_dummy.o
|
||||
iio_dummy-y := iio_simple_dummy.o
|
||||
|
Loading…
Reference in New Issue
Block a user