Add support for M-5MOLS 8 Mega Pixel camera
PATCH v5 1/1 Add support for M-5MOLS 8 Mega Pixel camera
Add I2C/V4L2 subdev driver for M-5MOLS camera sensor with integrated image signal processor.
---
Hello,
This is fifth version of M-5MOLS 8 Mega Pixel camera sensor.
I missed one file at the just previous version fifth patch. I hope the previous one ignored, and I re-send the patch adding the missing file. And this patch would maintain as the same name, version and contents.
Sorry to make coufusing.
The fifth version changes are below:
1. remove dynmic regulator consumer name array
2. rename M5MOLS to M-5MOLS in the comments. M-5MOLS is original name.
3. remove unused type and register address definition
4. fix some typos.
The fourth version changes are below:
1. combine splitted i2c_transfer functions to single I2C operation
2. remove unneeded checking for control values
3. fix some typos and code clean
The third version changes are below:
1. the method to writing register accordint to state value
2. changing mdelay to usleep_range because of not hogging
The second versions changes are below:
1. remove I2C function macro, and use static inline for type-safe.
2. use the v4l2 control framework documented at v4l2-control.txt.
3. Add regulator enable/disable functions
4. fix any coding problems
The first version patch is here:
http://www.spinics.net/lists/linux-media/msg26246.html
This driver is tested on s5pc210 board using s5p-fimc driver.
Thanks for any ideas.
Regards,
Heungjun Kim
Samsung Electronics DMC R&D Center
--- drivers/media/video/Kconfig | 2 + drivers/media/video/Makefile | 1 + drivers/media/video/m5mols/Kconfig | 6 + drivers/media/video/m5mols/Makefile | 3 + drivers/media/video/m5mols/m5mols.h | 200 ++++++ drivers/media/video/m5mols/m5mols_controls.c | 163 +++++ drivers/media/video/m5mols/m5mols_core.c | 882 ++++++++++++++++++++++++++ drivers/media/video/m5mols/m5mols_reg.h | 103 +++ include/media/m5mols.h | 33 + 9 files changed, 1393 insertions(+), 0 deletions(-) create mode 100644 drivers/media/video/m5mols/Kconfig create mode 100644 drivers/media/video/m5mols/Makefile create mode 100644 drivers/media/video/m5mols/m5mols.h create mode 100644 drivers/media/video/m5mols/m5mols_controls.c create mode 100644 drivers/media/video/m5mols/m5mols_core.c create mode 100644 drivers/media/video/m5mols/m5mols_reg.h create mode 100644 include/media/m5mols.h
drivers/media/video/Kconfig +2 -0
@@ -746,6 +746,8 @@ config VIDEO_NOON010PC30 ---help--- This driver supports NOON010PC30 CIF camera from Siliconfile +source "drivers/media/video/m5mols/Kconfig" + config SOC_CAMERA tristate "SoC camera support" depends on VIDEO_V4L2 && HAS_DMA && I2C
drivers/media/video/Makefile +1 -0
@@ -68,6 +68,7 @@ obj-$(CONFIG_VIDEO_TVEEPROM) += tveeprom.o obj-$(CONFIG_VIDEO_MT9V011) += mt9v011.o obj-$(CONFIG_VIDEO_SR030PC30) += sr030pc30.o obj-$(CONFIG_VIDEO_NOON010PC30) += noon010pc30.o +obj-$(CONFIG_VIDEO_M5MOLS) += m5mols/ obj-$(CONFIG_SOC_CAMERA_IMX074) += imx074.o obj-$(CONFIG_SOC_CAMERA_MT9M001) += mt9m001.o
drivers/media/video/m5mols/Kconfig new file +6 -0
@@ -0,0 +1,6 @@ +config VIDEO_M5MOLS + tristate "Fujitsu M-5MOLS 8MP sensor support" + depends on I2C && VIDEO_V4L2 + ---help--- + This driver supports Fujitsu M-5MOLS camera sensor with ISP +
drivers/media/video/m5mols/Makefile new file +3 -0
@@ -0,0 +1,3 @@ +m5mols-objs := m5mols_core.o m5mols_controls.o + +obj-$(CONFIG_VIDEO_M5MOLS) += m5mols.o
drivers/media/video/m5mols/m5mols.h new file +200 -0
200 lines not on this page · raw message
drivers/media/video/m5mols/m5mols_controls.c new file +163 -0
163 lines not on this page · raw message
drivers/media/video/m5mols/m5mols_core.c new file +882 -0
882 lines not on this page · raw message
drivers/media/video/m5mols/m5mols_reg.h new file +103 -0
103 lines not on this page · raw message
include/media/m5mols.h new file +33 -0
@@ -0,0 +1,33 @@ +/* +* Driver for M-5MOLS 8M Pixel camera sensor with ISP +* +* Copyright (C) 2011 Samsung Electronics Co., Ltd +* Author: HeungJun Kim, [email protected] +* +* Copyright (C) 2009 Samsung Electronics Co., Ltd +* Author: Dongsoo Nathaniel Kim, [email protected] +* +* This program is free software; you can redistribute it and/or modify +* it under the terms of the GNU General Public License as published by +* the Free Software Foundation; either version 2 of the License, or +* (at your option) any later version. +*/ + +#ifndef MEDIA_M5MOLS_H +#define MEDIA_M5MOLS_H + +/** +* struct m5mols_platform_data - platform data for M-5MOLS driver +* @gpio_rst: GPIO driving the reset pin of M-5MOLS +* @enable_rst: in the negative or positive, which value is enabled the reset +* @set_power: an additional callback to a board setup code +* to be called after enabling and before disabling +* the sensor device supply regulators +*/ +struct m5mols_platform_data { +int gpio_rst; +bool enable_rst; +int (*set_power)(struct device *dev,int on); +}; + +#endif /* MEDIA_M5MOLS_H */
Signature · 1 line
1.7.0.4