work together.
     </para>
     <sect2 id="iiotrigbufsetup"> <title> IIO triggered buffer setup</title>
-!Edrivers/iio/industrialio-triggered-buffer.c
+!Edrivers/iio/buffer/industrialio-triggered-buffer.c
 !Finclude/linux/iio/iio.h iio_buffer_setup_ops
 
 
 
          acquisition methods.
 
 if IIO_BUFFER
-
-config IIO_BUFFER_CB
-       tristate "IIO callback buffer used for push in-kernel interfaces"
-       help
-         Should be selected by any drivers that do in-kernel push
-         usage.  That is, those where the data is pushed to the consumer.
-
-config IIO_KFIFO_BUF
-       tristate "Industrial I/O buffering based on kfifo"
-       help
-         A simple fifo based on kfifo.  Note that this currently provides
-         no buffer events so it is up to userspace to work out how
-         often to read from the buffer.
-
-config IIO_TRIGGERED_BUFFER
-       tristate
-       select IIO_TRIGGER
-       select IIO_KFIFO_BUF
-       help
-         Provides helper functions for setting up triggered buffers.
-
+       source "drivers/iio/buffer/Kconfig"
 endif # IIO_BUFFER
 
 config IIO_TRIGGER
 
 industrialio-$(CONFIG_IIO_BUFFER) += industrialio-buffer.o
 industrialio-$(CONFIG_IIO_TRIGGER) += industrialio-trigger.o
 
-obj-$(CONFIG_IIO_BUFFER_CB) += industrialio-buffer-cb.o
-obj-$(CONFIG_IIO_TRIGGERED_BUFFER) += industrialio-triggered-buffer.o
-obj-$(CONFIG_IIO_KFIFO_BUF) += kfifo_buf.o
-
 obj-y += accel/
 obj-y += adc/
 obj-y += amplifiers/
+obj-y += buffer/
 obj-y += common/
 obj-y += dac/
 obj-y += gyro/
 
--- /dev/null
+#
+# Industrial I/O generic buffer implementations
+#
+# When adding new entries keep the list in alphabetical order
+
+config IIO_BUFFER_CB
+       tristate "IIO callback buffer used for push in-kernel interfaces"
+       help
+         Should be selected by any drivers that do in-kernel push
+         usage.  That is, those where the data is pushed to the consumer.
+
+config IIO_KFIFO_BUF
+       tristate "Industrial I/O buffering based on kfifo"
+       help
+         A simple fifo based on kfifo.  Note that this currently provides
+         no buffer events so it is up to userspace to work out how
+         often to read from the buffer.
+
+config IIO_TRIGGERED_BUFFER
+       tristate
+       select IIO_TRIGGER
+       select IIO_KFIFO_BUF
+       help
+         Provides helper functions for setting up triggered buffers.
 
--- /dev/null
+#
+# Makefile for the industrial I/O buffer implementations
+#
+
+# When adding new entries keep the list in alphabetical order
+obj-$(CONFIG_IIO_BUFFER_CB) += industrialio-buffer-cb.o
+obj-$(CONFIG_IIO_TRIGGERED_BUFFER) += industrialio-triggered-buffer.o
+obj-$(CONFIG_IIO_KFIFO_BUF) += kfifo_buf.o