V4L/DVB (13130): soc-camera: add a new driver for the RJ54N1CB0C camera sensor from Sharp

This adds an soc-camera / v4l2-subdev driver for the RJ54N1CB0C CMOS camera
sensor from Sharp. The sensor is very picky about initialisation and
configuration sequences. The driver limits artificially maximum window size by
800x600, although the sensor supports 1600x1200. Sizes above 800x600 don't seem
to work correctly, besides, examples from the system integrator use sizes above
640x480 only for still photography. Unfortunately, I had to use "magic"
register-value pairs for undocumented and "reserved" registers. This version of
the driver also omits some functionality, like cropping, which hasn't been
sufficiently tested yet and will be added later.

 create mode 100644 drivers/media/video/rj54n1cb0c.c

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
Guennadi Liakhovetski 2009-10-05 12:54:04 -03:00 коммит произвёл Mauro Carvalho Chehab
Родитель 5cf93f1dca
Коммит 8f37cf25ba
4 изменённых файлов: 1229 добавлений и 0 удалений

Просмотреть файл

@ -847,6 +847,12 @@ config SOC_CAMERA_MT9V022
help
This driver supports MT9V022 cameras from Micron
config SOC_CAMERA_RJ54N1
tristate "rj54n1cb0c support"
depends on SOC_CAMERA && I2C
help
This is a rj54n1cb0c video driver
config SOC_CAMERA_TW9910
tristate "tw9910 support"
depends on SOC_CAMERA && I2C

Просмотреть файл

@ -78,6 +78,7 @@ obj-$(CONFIG_SOC_CAMERA_MT9T031) += mt9t031.o
obj-$(CONFIG_SOC_CAMERA_MT9V022) += mt9v022.o
obj-$(CONFIG_SOC_CAMERA_OV772X) += ov772x.o
obj-$(CONFIG_SOC_CAMERA_OV9640) += ov9640.o
obj-$(CONFIG_SOC_CAMERA_RJ54N1) += rj54n1cb0c.o
obj-$(CONFIG_SOC_CAMERA_TW9910) += tw9910.o
# And now the v4l2 drivers:

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Просмотреть файл

@ -281,6 +281,9 @@ enum {
/* module m52790: just ident 52790 */
V4L2_IDENT_M52790 = 52790,
/* Sharp RJ54N1CB0C, 0xCB0C = 51980 */
V4L2_IDENT_RJ54N1CB0C = 51980,
};
#endif