Age | Commit message (Collapse) | Author |
|
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
The initial soc-camera scaling and cropping implementation turned out to be
incompliant with the V4L2 API, e.g., it expected the user to specify cropping
in output window pixels, instead of input window pixels. This patch converts
the soc-camera core and all drivers to comply with the standard.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Priority: low
|
|
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Use v4l2_subdev_call() instead of v4l2_device_call_until_err() in all host
drivers and in soc-camera core.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Priority: low
---
drivers/media/video/mx1_camera.c | 12 ++++------
drivers/media/video/mx3_camera.c | 10 ++++----
drivers/media/video/pxa_camera.c | 9 ++++---
drivers/media/video/sh_mobile_ceu_camera.c | 17 ++++++---------
drivers/media/video/soc_camera.c | 30 ++++++++++++++-------------
include/media/soc_camera.h | 14 +++++++++---
6 files changed, 48 insertions(+), 44 deletions(-)
|
|
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Remove set_crop soc-camera device method and switch to s_crop from v4l2-subdev
video operations. Also extend non-i2c drivers to also hold a pointer to their
v4l2-subdev instance in control device driver-data, i.e., in
dev_get_drvdata((struct device *)to_soc_camera_control(icd))
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Priority: low
---
drivers/media/video/mt9m001.c | 23 +++---
drivers/media/video/mt9m111.c | 9 +-
drivers/media/video/mt9t031.c | 9 +-
drivers/media/video/mt9v022.c | 23 +++---
drivers/media/video/mx1_camera.c | 8 ++-
drivers/media/video/mx3_camera.c | 7 +-
drivers/media/video/ov772x.c | 19 -----
drivers/media/video/pxa_camera.c | 7 +-
drivers/media/video/sh_mobile_ceu_camera.c | 110 ++++++++++++++-------------
drivers/media/video/soc_camera.c | 4 +-
drivers/media/video/soc_camera_platform.c | 28 ++++----
drivers/media/video/tw9910.c | 31 ++++----
include/media/soc_camera.h | 3 +-
13 files changed, 142 insertions(+), 139 deletions(-)
|
|
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Remove .set_std() method from struct soc_camera_ops, use .s_std() from
struct v4l2_subdev_core_ops instead.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Priority: low
---
drivers/media/video/soc_camera.c | 7 ++-----
include/media/soc_camera.h | 1 -
2 files changed, 2 insertions(+), 6 deletions(-)
|
|
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
The move of format translation initialisation into soc_camera_open() was
temporary for the soc-camera as platform driver intermediate step, put it back
into soc_camera_probe(). Also add a .put_formats() method to
soc_camera_host_ops to free any resources host driver might have allocated in
.get_formats().
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Priority: low
---
drivers/media/video/soc_camera.c | 50 ++++++++++++++++++++++++++-----------
include/media/soc_camera.h | 7 +++++
2 files changed, 42 insertions(+), 15 deletions(-)
|
|
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Switch to using struct v4l2_rect in struct soc_camera_device for uniformity and
simplicity.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Priority: low
|
|
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Until now soc-camera only supported client (sensor) controls. This patch
enables camera-host drivers to implement their own controls too.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Priority: low
---
drivers/media/video/soc_camera.c | 24 ++++++++++++++++++++++++
include/media/soc_camera.h | 4 ++++
2 files changed, 28 insertions(+), 0 deletions(-)
|
|
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Convert the soc-camera framework to use the v4l2-(sub)dev API. Start using
v4l2-subdev operations. Only a part of the interface between the
soc_camera core, soc_camera host drivers on one side and soc_camera device
drivers on the other side is replaced so far. The rest of the interface
will be replaced in incremental steps, and will require extensions and,
possibly, modifications to the v4l2-subdev code.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Priority: low
|
|
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Priority: low
---
include/media/soc_camera_platform.h | 1 -
1 files changed, 0 insertions(+), 1 deletions(-)
|
|
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Convert soc-camera core and all drivers to platform device API. We already
converted platforms to register a platform device for each soc-camera client,
now we remove the compatibility code and switch completely to the new scheme.
This is a preparatory step for the v4l2-subdev conversion.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Priority: low
|
|
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Add a struct device pointer to struct soc_camera_platform_info and let the user
(ap325rxa) pass it down to soc_camera_platform.c in its .add_device() method.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Cc: Paul Mundt <lethal@linux-sh.org>
Acked-by: Paul Mundt <lethal@linux-sh.org>
Priority: low
---
arch/sh/boards/board-ap325rxa.c | 2 ++
include/media/soc_camera_platform.h | 3 +++
2 files changed, 5 insertions(+), 0 deletions(-)
|
|
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
soc_camera_platform.c is only used by y SuperH ap325rxa board. This patch
converts soc_camera_platform.c and its users for the soc-camera platform-
device conversion and also extends soc-camera core to handle non-I2C cameras.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Cc: Paul Mundt <lethal@linux-sh.org>
Acked-by: Paul Mundt <lethal@linux-sh.org>
Priority: low
---
arch/sh/boards/board-ap325rxa.c | 43 ++++++++++++++++++------
drivers/media/video/soc_camera.c | 61 ++++++++++++++++++++++++++--------
include/media/soc_camera.h | 6 +++
include/media/soc_camera_platform.h | 2 +
4 files changed, 86 insertions(+), 26 deletions(-)
|
|
From: Igor M. Liplianin <liplianin@me.by>
Add Compro VideoMate S350 DVB-S driver.
The card uses zl10313, zl10039, saa7130 integrated circuits.
Signed-off-by: Igor M. Liplianin <liplianin@me.by>
|
|
From: Devin Heitmueller <dheitmueller@linuxtv.org>
Add support for the remote control that comes with the Cinergy Hybrid T USB XS
Thanks to Jelle de Jong for providing sample hardware to test with.
Priority: normal
Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org>
Cc: Jelle de Jong <jelledejong@powercraft.nl>
|
|
From: Andy Walls <awalls@radix.net>
This patch augments the init data passed by bridge drivers to
ir-kbd-i2c, so that the ir_type can be set explicitly, and so
ir-kbd-i2c internal get_key functions can be reused without
requiring symbols from ir-kbd-i2c in the bridge driver.
Priority: normal
Signed-off-by: Andy Walls <awalls@radix.net>
Reviewed-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Andy Walls <awalls@radix.net>
Priority: normal
Signed-off-by: Andy Walls <awalls@radix.net>
|
|
From: Brian Johnson <brijohn@gmail.com>
Priority: high
Signed-off-by: Brian Johnson <brijohn@gmail.com>
Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
|
|
From: Muralidharan Karicheri <m-karicheri2@ti.com>
This is a new module added for vpss library functions that are
used for configuring vpss system module. All video drivers will
include vpss.h header file and call functions defined in this
module to configure vpss system module.
Reviewed by: Hans Verkuil <hverkuil@xs4all.nl>
Reviewed by: Laurent Pinchart <laurent.pinchart@skynet.be>
Reviewed by: Alexey Klimov <klimov.linux@gmail.com>
Priority: normal
Signed-off-by: Muralidharan Karicheri <m-karicheri2@ti.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Muralidharan Karicheri <m-karicheri2@ti.com>
common types used across CCDC modules
Reviewed by: Hans Verkuil <hverkuil@xs4all.nl>
Reviewed by: Laurent Pinchart <laurent.pinchart@skynet.be>
Priority: normal
Signed-off-by: Muralidharan Karicheri <m-karicheri2@ti.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Muralidharan Karicheri <m-karicheri2@ti.com>
This is the hw module for DM644x CCDC. This registers with the
vpfe capture driver and provides a set of hw_ops to configure
CCDC for a specific decoder device connected to the VPFE.
Reviewed by: Hans Verkuil <hverkuil@xs4all.nl>
Reviewed by: Laurent Pinchart <laurent.pinchart@skynet.be>
Priority: normal
Signed-off-by: Muralidharan Karicheri <m-karicheri2@ti.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Muralidharan Karicheri <m-karicheri2@ti.com>
Adds ccdc hw module for DM355 CCDC. This registers with the bridge
driver a set of hw_ops for configuring the CCDC for a specific
decoder device connected to vpfe.
Reviewed by: Hans Verkuil <hverkuil@xs4all.nl>
Reviewed by: Laurent Pinchart <laurent.pinchart@skynet.be>
Reviewed by: Mauro Carvalho Chehab <mchehab@infradead.org>
Priority: normal
Signed-off-by: Muralidharan Karicheri <m-karicheri2@ti.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Muralidharan Karicheri <m-karicheri2@ti.com>
This the vpfe capture bridge driver for doing video
capture on DM355 and DM6446 evms. The ccdc hw modules register with the
driver and are used for configuring the CCD Controller for a specific
decoder interface. The driver also registers the sub devices required
for a specific evm. More than one sub devices can be registered.
This allows driver to switch dynamically to capture video from
any sub device that is registered. Currently only one sub device
(tvp5146) is supported. But in future this driver is expected
to do capture from sensor devices such as Micron's MT9T001, MT9T031
and MT9P031 etc. The driver currently supports MMAP based IO.
Reviewed by: Laurent Pinchart <laurent.pinchart@skynet.be>
Reviewed by: Alexey Klimov <klimov.linux@gmail.com>
Priority: normal
Signed-off-by: Muralidharan Karicheri <m-karicheri2@ti.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Muralidharan Karicheri <m-karicheri2@ti.com>
This patch converts TVP514x driver to sub-device framework
from V4L2-int framework.
Priority: normal
Signed-off-by: Brijesh Jadav <brijesh.j@ti.com>
Signed-off-by: Hardik Shah <hardik.shah@ti.com>
Signed-off-by: Vaibhav Hiremath <hvaibhav@ti.com>
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
[hverkuil@xs4all.nl: remove inline from the dump_reg function]
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Adds driver for mt9v011 based on its datasheet, available at:
http://download.micron.com/pdf/datasheets/imaging/MT9V011.pdf
The driver was tested with a webcam that will be added on a next patch.
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Guennadi Liakhovetski <lyakh@axis700.grange>
Add g_crop, s_crop and cropcap methods to video v4l2-subdev operations.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Reviewed-by: Hans Verkuil <hverkuil@xs4all.nl>
---
include/media/v4l2-subdev.h | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Make it very clear that this header should not be used for i2c drivers that
do not need to be compiled for pre-2.6.26 kernels.
As soon as the minimum supported kernel in the v4l-dvb repository becomes
2.6.26 or up, then this header should be removed entirely.
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Devin Heitmueller <dheitmueller@kernellabs.com>
Add an IR profile for the EVGA inDtube remote control (which is an NEC type
remote)
Priority: normal
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Add a new s_config core ops call: this is called with the irq and platform
data to be used to initialize the subdev.
Added new v4l2_i2c_new_subdev_cfg and v4l2_i2c_new_subdev_board calls
that allows you to pass these new arguments.
The existing v4l2_i2c_new_subdev functions were modified to also call
s_config.
In the future the existing v4l2_i2c_new_subdev functions will be replaced
by a single v4l2_i2c_new_subdev function similar to v4l2_i2c_new_subdev_cfg
but without the irq and platform_data arguments.
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
Most hardware has limits on minimum and maximum image dimensions and also
requirements about alignment. For example, image width must be even or a
multiple of four. Some hardware has requirements that the total image size
(width * height) be a multiple of some power of two.
v4l_bound_align_image() will enforce min and max width and height, power of
two alignment on width and height, and power of two alignment on total
image size.
It uses an efficient algorithm that will try to find the "closest" image
size that meets the requirements.
Priority: normal
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Mostly due to ir-kdb-i2c, but also due to two new drivers, compilation
with kernels older than 2.6.29 were broken.
This quick and dirty changeset, generated semi-automatically, restaures
backport to the subsystem by adding lots of #ifs.
It is possible to write a much more small changeset that would restore
backport without adding so many ifs, but, due to the lack of time, this
will also solve it.
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Jean Delvare <khali@linux-fr.org>
For specific boards, pass initialization data to ir-kbd-i2c instead
of modifying the settings after the device is initialized. This is
more efficient and easier to read.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Jean Delvare <khali@linux-fr.org>
Let card drivers probe for IR receiver devices and instantiate them if
found. Ultimately it would be better if we could stop probing
completely, but I suspect this won't be possible for all card types.
There's certainly room for cleanups. For example, some drivers are
sharing I2C adapter IDs, so they also had to share the list of I2C
addresses being probed for an IR receiver. Now that each driver
explicitly says which addresses should be probed, maybe some addresses
can be dropped from some drivers.
Also, the special cases in saa7134-i2c should probably be handled on a
per-board basis. This would be more efficient and less risky than always
probing extra addresses on all boards. I'll give it a try later.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Jean Delvare <khali@linux-fr.org>
In the standard device driver binding model, the name field of
struct i2c_client is used to match devices to their drivers, so we
must stop using it for internal purposes. Define a separate field
in struct IR_i2c as a replacement, and use it.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Dmitri Belimov <d.belimov@gmail.com>
Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov <d.belimov@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Andy Walls <awalls@radix.net>
Priority: normal
Signed-off-by: Andy Walls <awalls@radix.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Chaithrika U S <chaithrika@ti.com>
Add ADV7343 I2C based video encoder driver. This follows the
v4l2-subdev framework. This driver has been tested on TI DM646x EVM. It
has been tested for Composite and Component outputs.
Updates as per review by Mauro Chehab, added support for more standards
supported by the encoder. Also adding the missed out signed-offs.Tested
only NTSC and PAL standards.
Signed-off-by: Manjunath Hadli <mrh@ti.com>
Signed-off-by: Brijesh Jadav <brijesh.j@ti.com>
Signed-off-by: Chaithrika U S <chaithrika@ti.com>
[hverkuil@xs4all.nl: s_routing API changed, updated driver to use new API]
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Chaithrika U S <chaithrika@ti.com>
This patch adds driver for TI THS7303 video amplifier. This driver is
implemented as a v4l2 sub device. Tested on TI DM646x EVM.
This version has updates based on review comments by Mauro Chehab.
Signed-off-by: Chaithrika U S <chaithrika@ti.com>
Reviewed-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
Add a platform driver to soc_camera.c. This way we preserve backwards
compatibility with existing platforms and can start converting them one by one
to the new platform-device soc-camera interface.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Until now I relied on i2c_del_adapter to unregister the i2c_clients for
me, however, if the i2c bus is a platform bus then it is never deleted.
So instead I need to unregister i2c clients when unregistering the
v4l2_device.
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Add a utility function that can be used to setup the v4l2_device's name
field in a standard manner.
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Make camera devices direct children of host platform devices, move the
inheritance management into the soc_camera.c core driver.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
---
drivers/media/video/mx1_camera.c | 35 +++++-----
drivers/media/video/mx3_camera.c | 40 ++++++------
drivers/media/video/pxa_camera.c | 97 ++++++++++++++--------------
drivers/media/video/sh_mobile_ceu_camera.c | 21 +++---
drivers/media/video/soc_camera.c | 35 +++-------
include/media/soc_camera.h | 4 +-
6 files changed, 107 insertions(+), 125 deletions(-)
|
|
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Currently pcm990 camera bus-width management functions request a GPIO and never
free it again. With this approach the GPIO extender driver cannot be unloaded
once camera drivers have been loaded, also unloading theb i2c-pxa bus driver
produces errors, because the GPIO extender driver cannot unregister properly.
Another problem is, that if camera drivers are once loaded before the GPIO
extender driver, the platform code marks the GPIO unavailable and only a reboot
helps to recover. Adding an explicit free_bus method and using it in mt9m001
and mt9v022 drivers fixes these problems.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Eric Miao <eric.miao@marvell.com>
---
arch/arm/mach-pxa/pcm990-baseboard.c | 23 ++++++++++++++++-------
drivers/media/video/mt9m001.c | 3 +++
drivers/media/video/mt9v022.c | 3 +++
include/media/soc_camera.h | 1 +
4 files changed, 23 insertions(+), 7 deletions(-)
|
|
From: Kay Sievers <kay.sievers@vrfy.org>
The name size limit is gone from the driver core, the BUS_ID_SIZE
value will be removed.
Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
kernel-sync:
Priority: normal
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Remove support for the debug call VIDIOC_INT_S_AUDIO_ROUTING from cx18
and ivtv. These internal ioctls shouldn't be exposed. These were only
used through the cx18-ctl and ivtv-ctl utilities, and only when testing
a new card variant.
This cleanup allows the removal of this ioctl from v4l2-common.h.
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
CC: Andy Walls <awalls@radix.net>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
It is no longer needed to use a struct pointer as argument, since v4l2_subdev
doesn't require that ioctl-like approach anymore. Instead just pass the input,
output and config (new!) arguments directly.
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Remove intermediate v4l2_crystal_freq struct. This is no longer needed
with the v4l2_subdev API.
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|