04 Nov, 2011
7 commits
-
Most users of the header only need pixel code
definitions, which are now located in the generic
header. Switch over to reduce soc-camera dependencies.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
The most important change in this patch is direct linking to struct
soc_camera_link via the client->dev.platform_data pointer. This makes most
of the soc-camera client drivers also usable outside of the soc-camera
framework. After this change all what is needed for these drivers to
function are inclusions of soc-camera headers for some convenience macros,
suitably configured platform data, which is anyway always required, and
loaded soc-camera core module for library functions. If desired, these
library functions can be made generic in the future and moved to a more
neutral location.The only two client drivers, that still depend on soc-camera are:
mt9t031: it uses struct video_device for its PM. Since no hardware is
available, alternative methods cannot be tested.ov6650: it uses struct soc_camera_device to pass its sense data back to
the bridge driver. A generic v4l2-subdevice approach should be developed
to perform this.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Remove most trivial uses of struct soc_camera_device from most client
drivers, abstracting some of them inside inline functions. Next steps
will eliminate remaining uses and modify inline functions to not use
struct soc_camera_device.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Signed-off-by: Hans Verkuil
[g.liakhovetski@gmx.de: mt9m001 hunk moved to an earlier patch]
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Now that all soc-camera hosts have been ported to use V4L2 subdevice
mediabus-config operations and soc-camera client bus-parameter operations
have been made optional, they can be removed.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Extend the driver to also support [gs]_mbus_config() subdevice video
operations.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Cropping is not really correctly implemented by this driver and only
needlessly obfuscates the code. Remove it.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab
28 Jul, 2011
2 commits
-
Now that v4l2 subdevices have got their own device objects, having
one more device in soc-camera clients became redundant and confusing.
This patch removes those devices and the soc-camera bus, they used to
reside on.Signed-off-by: Guennadi Liakhovetski
Acked-by: Paul Mundt
Signed-off-by: Mauro Carvalho Chehab -
tw9910 is a TV decoder, it doesn't have a tuner. Besides, the
.enum_input soc-camera operation is optional and normally not needed.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab
21 Oct, 2010
1 commit
-
Replace direct access to the v4l2_subdev priv field with the inline
v4l2_get_subdevdata method.Signed-off-by: Laurent Pinchart
Acked-by: Hans Verkuil
Signed-off-by: Mauro Carvalho Chehab
03 Aug, 2010
1 commit
-
Endianness notation is meaningless for 8 bit YUYV codes. Switch pixel code
names to explicitly state the order of colour components in the data
stream.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab
05 Jun, 2010
1 commit
-
* 'v4l_for_2.6.35' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (87 commits)
V4L/DVB: ivtv: Timing tweaks and code re-order to try and improve stability
V4L/DVB: ivtv: Avoid accidental video standard change
V4L/DVB: ivtvfb : Module load / unload fixes
V4L/DVB: cx2341x: Report correct temporal setting for log-status
V4L/DVB: cx18, cx23885, v4l2 doc, MAINTAINERS: Update Andy Walls' email address
V4L/DVB: drivers/media: Eliminate a NULL pointer dereference
V4L/DVB: dvb-core: Fix ULE decapsulation bug
V4L/DVB: Bug fix: make IR work again for dm1105
V4L/DVB: media/IR: nec-decoder needs to select BITREV
V4L/DVB: video/saa7134: change dprintk() to i2cdprintk()
V4L/DVB: video/saa7134: remove duplicate break
V4L/DVB: IR/imon: add auto-config for 0xffdc rf device
V4L/DVB: IR/imon: clean up usage of bools
V4L/DVB: em28xx: remove unneeded null checks
V4L/DVB: ngene: remove unused #include
V4L/DVB: ak881x needs slab.h
V4L/DVB: FusionHDTV: Use quick reads for I2C IR device probing
V4L/DVB: Technotrend S2-3200 ships with a TT 1500 remote
V4L/DVB: drivers/media: Use kzalloc
V4L/DVB: m920x: Select simple tuner
...
03 Jun, 2010
1 commit
-
I2C drivers can use the clientdata-pointer to point to private data. As I2C
devices are not really unregistered, but merely detached from their driver, it
used to be the drivers obligation to clear this pointer during remove() or a
failed probe(). As a couple of drivers forgot to do this, it was agreed that it
was cleaner if the i2c-core does this clearance when appropriate, as there is
no guarantee for the lifetime of the clientdata-pointer after remove() anyhow.
This feature was added to the core with commit
e4a7b9b04de15f6b63da5ccdd373ffa3057a3681 to fix the faulty drivers.As there is no need anymore to clear the clientdata-pointer, remove all current
occurrences in the drivers to simplify the code and prevent confusion.Signed-off-by: Wolfram Sang
Acked-by: Mark Brown
Acked-by: Greg Kroah-Hartman
Acked-by: Richard Purdie
Acked-by: Dmitry Torokhov
Signed-off-by: Jean Delvare
01 Jun, 2010
1 commit
-
enum_mbus_fmt received an index argument that was defined as an int instead
of an unsigned int. This is now fixed. This had the knock-on effect that the
index argument in the callback get_formats in soc_camera.h also had to be
changed to unsigned int.Signed-off-by: Hans Verkuil
Acked-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab
27 Feb, 2010
1 commit
-
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab
16 Dec, 2009
15 commits
-
Signed-off-by: Kuninori Morimoto
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Cropping is used for data input, and it is not needed now
Signed-off-by: Kuninori Morimoto
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Correct tw9910 output format is Cb - Y - Cr - Y
which is defined in ITU-R BT.656.Signed-off-by: Kuninori Morimoto
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Signed-off-by: Kuninori Morimoto
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
tw9910 output is interlaced and its correct order is Bottom - Top
Signed-off-by: Kuninori Morimoto
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Convert soc-camera core and all soc-camera drivers to the new mediabus
API. This also takes soc-camera client drivers one step closer to also be
usable with generic v4l2-subdev host drivers.Signed-off-by: Guennadi Liakhovetski
Acked-by: Hans Verkuil
Signed-off-by: Mauro Carvalho Chehab -
Bits 10-3 of hsync control are the same for Rev0 and Rev1, but only Rev1
also has bits 2-0 for hsync. Account for this difference and also fix a
register name.Signed-off-by: Kuninori Morimoto
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
tw9910_set_hsync should use tw9910_mask_set to set bits 2-0
Signed-off-by: Kuninori Morimoto
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Power down internal blocks when not streaming.
Signed-off-by: Kuninori Morimoto
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Tri-state all pins when not streaming to save power.
Signed-off-by: Kuninori Morimoto
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Signed-off-by: Kuninori Morimoto
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Also fix a badly chosen macro name.
Signed-off-by: Kuninori Morimoto
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
After this change drivers can be further extended to not fail, if they don't
get platform data, but to use defaults.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Signed-off-by: Kuninori Morimoto
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab
19 Sep, 2009
9 commits
-
This makes the soc-camera interface for V4L2 subdevices thinner yet. Handle
gain and exposure internally in each driver just like all other controls.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
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
Signed-off-by: Mauro Carvalho Chehab -
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
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
Signed-off-by: Mauro Carvalho Chehab -
The current tw9910 driver does not implement cropping correctly. Therefore, and
also because various rectangles in struct soc_camera_device are in user scale,
we cannot and shall not use rect_current as window location.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Switch to using struct v4l2_rect in struct soc_camera_device for uniformity and
simplicity.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
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
Signed-off-by: Mauro Carvalho Chehab -
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
Signed-off-by: Mauro Carvalho Chehab
17 Jun, 2009
1 commit
-
Unify i2c camera device platform data to point to struct soc_camera_link
for a smooth transition to soc-camera as a platform driver.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Paul Mundt