diff options
| author | Jonathan Cameron <jic23@kernel.org> | 2012-04-25 10:54:59 -0400 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-04-25 14:11:38 -0400 |
| commit | a980e046098b0a40eaff5e4e7fcde6cf035b7c06 (patch) | |
| tree | 23375fc2bba39f088974cf621f7abf006d43d087 /drivers | |
| parent | 06458e277eac2b8761b0a04d3c808d57be281a2e (diff) | |
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>
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/Kconfig | 2 | ||||
| -rw-r--r-- | drivers/Makefile | 1 | ||||
| -rw-r--r-- | drivers/iio/Kconfig | 51 | ||||
| -rw-r--r-- | drivers/iio/Makefile | 10 | ||||
| -rw-r--r-- | drivers/iio/iio_core.h (renamed from drivers/staging/iio/iio_core.h) | 0 | ||||
| -rw-r--r-- | drivers/iio/iio_core_trigger.h (renamed from drivers/staging/iio/iio_core_trigger.h) | 0 | ||||
| -rw-r--r-- | drivers/iio/industrialio-buffer.c (renamed from drivers/staging/iio/industrialio-buffer.c) | 0 | ||||
| -rw-r--r-- | drivers/iio/industrialio-core.c (renamed from drivers/staging/iio/industrialio-core.c) | 0 | ||||
| -rw-r--r-- | drivers/iio/industrialio-event.c (renamed from drivers/staging/iio/industrialio-event.c) | 0 | ||||
| -rw-r--r-- | drivers/iio/industrialio-trigger.c (renamed from drivers/staging/iio/industrialio-trigger.c) | 0 | ||||
| -rw-r--r-- | drivers/iio/inkern.c (renamed from drivers/staging/iio/inkern.c) | 0 | ||||
| -rw-r--r-- | drivers/iio/kfifo_buf.c (renamed from drivers/staging/iio/kfifo_buf.c) | 0 | ||||
| -rw-r--r-- | drivers/staging/iio/Kconfig | 44 | ||||
| -rw-r--r-- | drivers/staging/iio/Makefile | 6 |
14 files changed, 67 insertions, 47 deletions
diff --git a/drivers/Kconfig b/drivers/Kconfig index d236aef7e59f..0265cb12cdaa 100644 --- a/drivers/Kconfig +++ b/drivers/Kconfig | |||
| @@ -140,4 +140,6 @@ source "drivers/virt/Kconfig" | |||
| 140 | 140 | ||
| 141 | source "drivers/devfreq/Kconfig" | 141 | source "drivers/devfreq/Kconfig" |
| 142 | 142 | ||
| 143 | source "drivers/iio/Kconfig" | ||
| 144 | |||
| 143 | endmenu | 145 | endmenu |
diff --git a/drivers/Makefile b/drivers/Makefile index 95952c82bf16..cdbe362df0ec 100644 --- a/drivers/Makefile +++ b/drivers/Makefile | |||
| @@ -134,3 +134,4 @@ obj-$(CONFIG_VIRT_DRIVERS) += virt/ | |||
| 134 | obj-$(CONFIG_HYPERV) += hv/ | 134 | obj-$(CONFIG_HYPERV) += hv/ |
| 135 | 135 | ||
| 136 | obj-$(CONFIG_PM_DEVFREQ) += devfreq/ | 136 | obj-$(CONFIG_PM_DEVFREQ) += devfreq/ |
| 137 | obj-$(CONFIG_IIO) += iio/ | ||
diff --git a/drivers/iio/Kconfig b/drivers/iio/Kconfig new file mode 100644 index 000000000000..3ab7d48d0b0a --- /dev/null +++ b/drivers/iio/Kconfig | |||
| @@ -0,0 +1,51 @@ | |||
| 1 | # | ||
| 2 | # Industrial I/O subsytem configuration | ||
| 3 | # | ||
| 4 | |||
| 5 | menuconfig IIO | ||
| 6 | tristate "Industrial I/O support" | ||
| 7 | depends on GENERIC_HARDIRQS | ||
| 8 | help | ||
| 9 | The industrial I/O subsystem provides a unified framework for | ||
| 10 | drivers for many different types of embedded sensors using a | ||
| 11 | number of different physical interfaces (i2c, spi, etc). See | ||
| 12 | Documentation/iio for more information. | ||
| 13 | |||
| 14 | if IIO | ||
| 15 | |||
| 16 | config IIO_BUFFER | ||
| 17 | bool "Enable buffer support within IIO" | ||
| 18 | help | ||
| 19 | Provide core support for various buffer based data | ||
| 20 | acquisition methods. | ||
| 21 | |||
| 22 | if IIO_BUFFER | ||
| 23 | |||
| 24 | config IIO_KFIFO_BUF | ||
| 25 | select IIO_TRIGGER | ||
| 26 | tristate "Industrial I/O buffering based on kfifo" | ||
| 27 | help | ||
| 28 | A simple fifo based on kfifo. Use this if you want a fifo | ||
| 29 | rather than a ring buffer. Note that this currently provides | ||
| 30 | no buffer events so it is up to userspace to work out how | ||
| 31 | often to read from the buffer. | ||
| 32 | |||
| 33 | endif # IIO_BUFFER | ||
| 34 | |||
| 35 | config IIO_TRIGGER | ||
| 36 | boolean "Enable triggered sampling support" | ||
| 37 | help | ||
| 38 | Provides IIO core support for triggers. Currently these | ||
| 39 | are used to initialize capture of samples to push into | ||
| 40 | ring buffers. The triggers are effectively a 'capture | ||
| 41 | data now' interrupt. | ||
| 42 | |||
| 43 | config IIO_CONSUMERS_PER_TRIGGER | ||
| 44 | int "Maximum number of consumers per trigger" | ||
| 45 | depends on IIO_TRIGGER | ||
| 46 | default "2" | ||
| 47 | help | ||
| 48 | This value controls the maximum number of consumers that a | ||
| 49 | given trigger may handle. Default is 2. | ||
| 50 | |||
| 51 | endif # IIO | ||
diff --git a/drivers/iio/Makefile b/drivers/iio/Makefile new file mode 100644 index 000000000000..d5fc57d12eac --- /dev/null +++ b/drivers/iio/Makefile | |||
| @@ -0,0 +1,10 @@ | |||
| 1 | # | ||
| 2 | # Makefile for the industrial I/O core. | ||
| 3 | # | ||
| 4 | |||
| 5 | obj-$(CONFIG_IIO) += industrialio.o | ||
| 6 | industrialio-y := industrialio-core.o industrialio-event.o inkern.o | ||
| 7 | industrialio-$(CONFIG_IIO_BUFFER) += industrialio-buffer.o | ||
| 8 | industrialio-$(CONFIG_IIO_TRIGGER) += industrialio-trigger.o | ||
| 9 | |||
| 10 | obj-$(CONFIG_IIO_KFIFO_BUF) += kfifo_buf.o | ||
diff --git a/drivers/staging/iio/iio_core.h b/drivers/iio/iio_core.h index f652e6ae5a35..f652e6ae5a35 100644 --- a/drivers/staging/iio/iio_core.h +++ b/drivers/iio/iio_core.h | |||
diff --git a/drivers/staging/iio/iio_core_trigger.h b/drivers/iio/iio_core_trigger.h index 6f7c56fcbe78..6f7c56fcbe78 100644 --- a/drivers/staging/iio/iio_core_trigger.h +++ b/drivers/iio/iio_core_trigger.h | |||
diff --git a/drivers/staging/iio/industrialio-buffer.c b/drivers/iio/industrialio-buffer.c index b5b2c38045c5..b5b2c38045c5 100644 --- a/drivers/staging/iio/industrialio-buffer.c +++ b/drivers/iio/industrialio-buffer.c | |||
diff --git a/drivers/staging/iio/industrialio-core.c b/drivers/iio/industrialio-core.c index dd1a6a2e81c0..dd1a6a2e81c0 100644 --- a/drivers/staging/iio/industrialio-core.c +++ b/drivers/iio/industrialio-core.c | |||
diff --git a/drivers/staging/iio/industrialio-event.c b/drivers/iio/industrialio-event.c index 5fcf50b1ae5a..5fcf50b1ae5a 100644 --- a/drivers/staging/iio/industrialio-event.c +++ b/drivers/iio/industrialio-event.c | |||
diff --git a/drivers/staging/iio/industrialio-trigger.c b/drivers/iio/industrialio-trigger.c index 03fee2e097ca..03fee2e097ca 100644 --- a/drivers/staging/iio/industrialio-trigger.c +++ b/drivers/iio/industrialio-trigger.c | |||
diff --git a/drivers/staging/iio/inkern.c b/drivers/iio/inkern.c index 22ddf62b107c..22ddf62b107c 100644 --- a/drivers/staging/iio/inkern.c +++ b/drivers/iio/inkern.c | |||
diff --git a/drivers/staging/iio/kfifo_buf.c b/drivers/iio/kfifo_buf.c index 6bf9d05f4841..6bf9d05f4841 100644 --- a/drivers/staging/iio/kfifo_buf.c +++ b/drivers/iio/kfifo_buf.c | |||
diff --git a/drivers/staging/iio/Kconfig b/drivers/staging/iio/Kconfig index fe1586718880..c1054a1c65f1 100644 --- a/drivers/staging/iio/Kconfig +++ b/drivers/staging/iio/Kconfig | |||
| @@ -1,16 +1,9 @@ | |||
| 1 | # | 1 | # |
| 2 | # Industrial I/O subsytem configuration | 2 | # Industrial I/O subsytem configuration |
| 3 | # | 3 | # |
| 4 | menu "IIO staging drivers" | ||
| 5 | depends on IIO | ||
| 4 | 6 | ||
| 5 | menuconfig IIO | ||
| 6 | tristate "Industrial I/O support" | ||
| 7 | depends on GENERIC_HARDIRQS | ||
| 8 | help | ||
| 9 | The industrial I/O subsystem provides a unified framework for | ||
| 10 | drivers for many different types of embedded sensors using a | ||
| 11 | number of different physical interfaces (i2c, spi, etc). See | ||
| 12 | drivers/staging/iio/Documentation for more information. | ||
| 13 | if IIO | ||
| 14 | config IIO_ST_HWMON | 7 | config IIO_ST_HWMON |
| 15 | tristate "Hwmon driver that uses channels specified via iio maps" | 8 | tristate "Hwmon driver that uses channels specified via iio maps" |
| 16 | depends on HWMON | 9 | depends on HWMON |
| @@ -19,12 +12,6 @@ config IIO_ST_HWMON | |||
| 19 | map allows IIO devices to provide basic hwmon functionality | 12 | map allows IIO devices to provide basic hwmon functionality |
| 20 | for those channels specified in the map. | 13 | for those channels specified in the map. |
| 21 | 14 | ||
| 22 | config IIO_BUFFER | ||
| 23 | bool "Enable buffer support within IIO" | ||
| 24 | help | ||
| 25 | Provide core support for various buffer based data | ||
| 26 | acquisition methods. | ||
| 27 | |||
| 28 | if IIO_BUFFER | 15 | if IIO_BUFFER |
| 29 | 16 | ||
| 30 | config IIO_SW_RING | 17 | config IIO_SW_RING |
| @@ -36,33 +23,8 @@ config IIO_SW_RING | |||
| 36 | with the intention that some devices would be able to write | 23 | with the intention that some devices would be able to write |
| 37 | in interrupt context. | 24 | in interrupt context. |
| 38 | 25 | ||
| 39 | config IIO_KFIFO_BUF | ||
| 40 | select IIO_TRIGGER | ||
| 41 | tristate "Industrial I/O buffering based on kfifo" | ||
| 42 | help | ||
| 43 | A simple fifo based on kfifo. Use this if you want a fifo | ||
| 44 | rather than a ring buffer. Note that this currently provides | ||
| 45 | no buffer events so it is up to userspace to work out how | ||
| 46 | often to read from the buffer. | ||
| 47 | |||
| 48 | endif # IIO_BUFFER | 26 | endif # IIO_BUFFER |
| 49 | 27 | ||
| 50 | config IIO_TRIGGER | ||
| 51 | boolean "Enable triggered sampling support" | ||
| 52 | help | ||
| 53 | Provides IIO core support for triggers. Currently these | ||
| 54 | are used to initialize capture of samples to push into | ||
| 55 | ring buffers. The triggers are effectively a 'capture | ||
| 56 | data now' interrupt. | ||
| 57 | |||
| 58 | config IIO_CONSUMERS_PER_TRIGGER | ||
| 59 | int "Maximum number of consumers per trigger" | ||
| 60 | depends on IIO_TRIGGER | ||
| 61 | default "2" | ||
| 62 | help | ||
| 63 | This value controls the maximum number of consumers that a | ||
| 64 | given trigger may handle. Default is 2. | ||
| 65 | |||
| 66 | source "drivers/staging/iio/accel/Kconfig" | 28 | source "drivers/staging/iio/accel/Kconfig" |
| 67 | source "drivers/staging/iio/adc/Kconfig" | 29 | source "drivers/staging/iio/adc/Kconfig" |
| 68 | source "drivers/staging/iio/addac/Kconfig" | 30 | source "drivers/staging/iio/addac/Kconfig" |
| @@ -104,4 +66,4 @@ config IIO_SIMPLE_DUMMY_BUFFER | |||
| 104 | 66 | ||
| 105 | endif # IIO_SIMPLE_DUMMY | 67 | endif # IIO_SIMPLE_DUMMY |
| 106 | 68 | ||
| 107 | endif # IIO | 69 | endmenu |
diff --git a/drivers/staging/iio/Makefile b/drivers/staging/iio/Makefile index 5075291dda7a..2acd42f27e73 100644 --- a/drivers/staging/iio/Makefile +++ b/drivers/staging/iio/Makefile | |||
| @@ -2,13 +2,7 @@ | |||
| 2 | # Makefile for the industrial I/O core. | 2 | # Makefile for the industrial I/O core. |
| 3 | # | 3 | # |
| 4 | 4 | ||
| 5 | obj-$(CONFIG_IIO) += industrialio.o | ||
| 6 | industrialio-y := industrialio-core.o industrialio-event.o inkern.o | ||
| 7 | industrialio-$(CONFIG_IIO_BUFFER) += industrialio-buffer.o | ||
| 8 | industrialio-$(CONFIG_IIO_TRIGGER) += industrialio-trigger.o | ||
| 9 | |||
| 10 | obj-$(CONFIG_IIO_SW_RING) += ring_sw.o | 5 | obj-$(CONFIG_IIO_SW_RING) += ring_sw.o |
| 11 | obj-$(CONFIG_IIO_KFIFO_BUF) += kfifo_buf.o | ||
| 12 | 6 | ||
| 13 | obj-$(CONFIG_IIO_SIMPLE_DUMMY) += iio_dummy.o | 7 | obj-$(CONFIG_IIO_SIMPLE_DUMMY) += iio_dummy.o |
| 14 | iio_dummy-y := iio_simple_dummy.o | 8 | iio_dummy-y := iio_simple_dummy.o |
