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