Эх сурвалжийг харах

[media] v4l2: blackfin: convert ppi driver to a module

Other drivers can make use of it.

Signed-off-by: Scott Jiang <scott.jiang.linux@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Scott Jiang 12 жил өмнө
parent
commit
fab0e8fa43

+ 5 - 1
drivers/media/platform/blackfin/Kconfig

@@ -2,9 +2,13 @@ config VIDEO_BLACKFIN_CAPTURE
 	tristate "Blackfin Video Capture Driver"
 	tristate "Blackfin Video Capture Driver"
 	depends on VIDEO_V4L2 && BLACKFIN && I2C
 	depends on VIDEO_V4L2 && BLACKFIN && I2C
 	select VIDEOBUF2_DMA_CONTIG
 	select VIDEOBUF2_DMA_CONTIG
+	select VIDEO_BLACKFIN_PPI
 	help
 	help
 	  V4L2 bridge driver for Blackfin video capture device.
 	  V4L2 bridge driver for Blackfin video capture device.
 	  Choose PPI or EPPI as its interface.
 	  Choose PPI or EPPI as its interface.
 
 
 	  To compile this driver as a module, choose M here: the
 	  To compile this driver as a module, choose M here: the
-	  module will be called bfin_video_capture.
+	  module will be called bfin_capture.
+
+config VIDEO_BLACKFIN_PPI
+	tristate

+ 2 - 2
drivers/media/platform/blackfin/Makefile

@@ -1,2 +1,2 @@
-bfin_video_capture-objs := bfin_capture.o ppi.o
-obj-$(CONFIG_VIDEO_BLACKFIN_CAPTURE) += bfin_video_capture.o
+obj-$(CONFIG_VIDEO_BLACKFIN_CAPTURE) += bfin_capture.o
+obj-$(CONFIG_VIDEO_BLACKFIN_PPI)     += ppi.o

+ 7 - 0
drivers/media/platform/blackfin/ppi.c

@@ -17,6 +17,7 @@
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
  */
 
 
+#include <linux/module.h>
 #include <linux/slab.h>
 #include <linux/slab.h>
 
 
 #include <asm/bfin_ppi.h>
 #include <asm/bfin_ppi.h>
@@ -263,9 +264,15 @@ struct ppi_if *ppi_create_instance(const struct ppi_info *info)
 	pr_info("ppi probe success\n");
 	pr_info("ppi probe success\n");
 	return ppi;
 	return ppi;
 }
 }
+EXPORT_SYMBOL(ppi_create_instance);
 
 
 void ppi_delete_instance(struct ppi_if *ppi)
 void ppi_delete_instance(struct ppi_if *ppi)
 {
 {
 	peripheral_free_list(ppi->info->pin_req);
 	peripheral_free_list(ppi->info->pin_req);
 	kfree(ppi);
 	kfree(ppi);
 }
 }
+EXPORT_SYMBOL(ppi_delete_instance);
+
+MODULE_DESCRIPTION("Analog Devices PPI driver");
+MODULE_AUTHOR("Scott Jiang <Scott.Jiang.Linux@gmail.com>");
+MODULE_LICENSE("GPL v2");