19 Oct, 2011
1 commit
-
The change in 8280b66 does not cover the case when v4l2_dev is already
NULL, fix that.With a Kinect sensor, seen as an USB camera using GSPCA in this context,
a NULL pointer dereference BUG can be triggered by just unplugging the
device after the camera driver has been loaded.Signed-off-by: Antonio Ospite
Signed-off-by: Mauro Carvalho Chehab
22 Sep, 2011
6 commits
-
The following build error occurs with 3.1-rc5:
CC drivers/media/video/omap3isp/ispccdc.o
This patch adds the missing 'linux/slab.h' include to fix the problem.
Signed-off-by: Joerg Roedel
Acked-by: Laurent Pinchart
Signed-off-by: Mauro Carvalho Chehab -
The uvc_mc_register_entity() function wrongfully selects the
media_entity associated with a UVC entity when creating links. This
results in access to uninitialized media_entity structures and can hit a
BUG_ON statement in media_entity_create_link(). Fix it.Signed-off-by: Laurent Pinchart
Signed-off-by: Mauro Carvalho Chehab -
v4l2_device_disconnect() calls dev_get_drvdata() and dev_set_drvdata()
on the device it received in v4l2_device_register(). Get a reference to
the device in v4l2_device_register() to make sure it won't disappear as
long as we need it.Reported-by: Sitsofe Wheeler
Signed-off-by: Dave Young
Tested-by: Sitsofe Wheeler
Acked-by: Laurent Pinchart
Signed-off-by: Mauro Carvalho Chehab -
Drivers that have no v4l2_device release callback might free the
v4l2_device instance in the video_device release callback. Make sure we
don't access the v4l2_device instance after it gets freed.Signed-off-by: Laurent Pinchart
Signed-off-by: Mauro Carvalho Chehab -
If the bus has been reset on resume, set the alternate setting to 0.
This should be the default value, but some devices crash or otherwise
misbehave if they don't receive a SET_INTERFACE request before any other
video control request.Microdia's 0c45:6437 camera has been found to require this change or it
will stop sending video data after resume.uvc_video.c]
Signed-off-by: Ming Lei
Signed-off-by: Laurent Pinchart
Signed-off-by: Mauro Carvalho Chehab -
The DSS2 driver does not support the configuration of the update_mode of a
panel anymore. Remove the setting of update_mode done in omap_vout_probe().
Ignore configuration of TE since omap_vout driver doesn't support manual update
displays anyway.Signed-off-by: Archit Taneja
Tested-by: Koen Kooi
Signed-off-by: Vaibhav Hiremath
Signed-off-by: Mauro Carvalho Chehab
11 Sep, 2011
5 commits
-
In the unlikely case that pci_find_bus() should return NULL
viacam_serial_is_enabled() is going to dereference a NULL pointer and
blow up. Better safe than sorry, so be defensive and check the
pointer.Signed-off-by: Jesper Juhl
Acked-by: Jonathan Corbet
Signed-off-by: Mauro Carvalho Chehab -
The images are clearer with a lower bridge clock.
Signed-off-by: Jean-François Moine
Signed-off-by: Mauro Carvalho Chehab -
The bug was introduced by git commit 0e4d413af1a9d, giving very dark images.
Signed-off-by: Luiz Carlos Ramos
Signed-off-by: Jean-François Moine
Signed-off-by: Mauro Carvalho Chehab -
The list of the webcams which have LED inversion was rebuild scanning
ms-win .inf files.Signed-off-by: Jean-François Moine
Signed-off-by: Mauro Carvalho Chehab -
'!' has higher precedence than '&' so we need parenthesis here.
Signed-off-by: Dan Carpenter
Signed-off-by: Hans de Goede
Signed-off-by: Mauro Carvalho Chehab
30 Jul, 2011
1 commit
-
* 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (430 commits)
[media] ir-mce_kbd-decoder: include module.h for its facilities
[media] ov5642: include module.h for its facilities
[media] em28xx: Fix DVB-C maxsize for em2884
[media] tda18271c2dd: Fix saw filter configuration for DVB-C @6MHz
[media] v4l: mt9v032: Fix Bayer pattern
[media] V4L: mt9m111: rewrite set_pixfmt
[media] V4L: mt9m111: fix missing return value check mt9m111_reg_clear
[media] V4L: initial driver for ov5642 CMOS sensor
[media] V4L: sh_mobile_ceu_camera: fix Oops when USERPTR mapping fails
[media] V4L: soc-camera: remove soc-camera bus and devices on it
[media] V4L: soc-camera: un-export the soc-camera bus
[media] V4L: sh_mobile_csi2: switch away from using the soc-camera bus notifier
[media] V4L: add media bus configuration subdev operations
[media] V4L: soc-camera: group struct field initialisations together
[media] V4L: soc-camera: remove now unused soc-camera specific PM hooks
[media] V4L: pxa-camera: switch to using standard PM hooks
[media] NetUP Dual DVB-T/C CI RF: force card hardware revision by module param
[media] Don't OOPS if videobuf_dvb_get_frontend return NULL
[media] NetUP Dual DVB-T/C CI RF: load firmware according card revision
[media] omap3isp: Support configurable HS/VS polarities
...Fix up conflicts:
- arch/arm/mach-omap2/board-rx51-peripherals.c:
cleanup regulator supply definitions in mach-omap2
vs
OMAP3: RX-51: define vdds_csib regulator supply
- drivers/staging/tm6000/tm6000-alsa.c (trivial)
29 Jul, 2011
2 commits
-
drivers/media/video/ov5642.c:985:1: warning: data definition has no type or storage class
drivers/media/video/ov5642.c:985:1: warning: type defaults to 'int' in declaration of 'MODULE_DEVICE_TABLE'
drivers/media/video/ov5642.c:985:1: warning: parameter names (without types) in function declaration
drivers/media/video/ov5642.c: In function 'ov5642_mod_init':
drivers/media/video/ov5642.c:998:9: error: 'THIS_MODULE' undeclared (first use in this function)
drivers/media/video/ov5642.c:998:9: note: each undeclared identifier is reported only once for each function it appears in
drivers/media/video/ov5642.c: At top level:
drivers/media/video/ov5642.c:1009:20: error: expected declaration specifiers or '...' before string constant
drivers/media/video/ov5642.c:1009:1: warning: data definition has no type or storage class
drivers/media/video/ov5642.c:1009:1: warning: type defaults to 'int' in declaration of 'MODULE_DESCRIPTION'
drivers/media/video/ov5642.c:1009:20: warning: function declaration isn't a prototype
drivers/media/video/ov5642.c:1010:15: error: expected declaration specifiers or '...' before string constant
drivers/media/video/ov5642.c:1010:1: warning: data definition has no type or storage class
drivers/media/video/ov5642.c:1010:1: warning: type defaults to 'int' in declaration of 'MODULE_AUTHOR'
drivers/media/video/ov5642.c:1010:15: warning: function declaration isn't a prototype
drivers/media/video/ov5642.c:1011:16: error: expected declaration specifiers or '...' before string constant
drivers/media/video/ov5642.c:1011:1: warning: data definition has no type or storage class
drivers/media/video/ov5642.c:1011:1: warning: type defaults to 'int' in declaration of 'MODULE_LICENSE'
drivers/media/video/ov5642.c:1011:16: warning: function declaration isn't a prototype
drivers/media/video/ov5642.c: In function 'ov5642_mod_init':
drivers/media/video/ov5642.c:999:1: warning: control reaches end of non-void functionSigned-off-by: Stephen Rothwell
Signed-off-by: Mauro Carvalho Chehab -
The logic at em28xx_isoc_dvb_max_packetsize() sucks, at least for newer
the needed packet size. Yet, it is better than nothing.Rewrite the code in order to change the default to 752 for em2884 and
newer chips and provide a better way to handle per-chipset specifics.For em2874, the current default should be enough, as the only em2874
board is currently a 1-seg ISDB-T board, so, it needs only a limited
amount of bandwidth.Signed-off-by: Mauro Carvalho Chehab
28 Jul, 2011
25 commits
-
Compute crop rectangle boundaries to ensure a GRBG Bayer pattern.
Signed-off-by: Laurent Pinchart
Signed-off-by: Mauro Carvalho Chehab -
added new bit offset defines,
more supported BE colour formats
and also support BGR565 swapped pixel formatsremoved pixfmt helper functions and option flags
setting the configuration register directly in set_pixfmtadded reg_mask function
reg_mask is basically the same as clearing & setting registers,
but it is more convenient and faster (saves one rw cycle).Signed-off-by: Michael Grzeschik
Signed-off-by: Philipp Wiesner
Acked-by: Robert Jarzmik
[g.liakhovetski@gmx.de: remove Bayer swap, forward-port, rename macros]
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Signed-off-by: Michael Grzeschik
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
This is an initial driver release for the Omnivision 5642 CMOS sensor.
Signed-off-by: Bastian Hecht
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
If vb2_dma_contig_get_userptr() fails on a videobuffer, driver's
.buf_init() method will not be called and the list will not be
initialised. Trying to remove an uninitialised element from a list leads
to a NULL-dereference.Signed-off-by: Guennadi Liakhovetski
Tested-by: Bastian Hecht
Signed-off-by: Mauro Carvalho Chehab -
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 -
The soc-camera bus is now completely local again.
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
This moves us one more step closer to eliminating the soc-camera bus
and devices on it. Besides, as a side effect, CSI-2 runtime PM on
sh-mobile secomes finer grained now: we only have to power on the
interface, when the device nodes are open.Signed-off-by: Guennadi Liakhovetski
Acked-by: Paul Mundt
Signed-off-by: Mauro Carvalho Chehab -
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
soc-camera host drivers shall be implementing their PM, using standard
kernel methods, soc-camera specific hooks can die.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
The pxa-camera driver doesn't need soc-camera specific PM callbacks,
switch it to using the standard PM hooks instead.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Mauro Carvalho Chehab -
Currently available two hardware revision:
0x1 firmware filename: dvb-netup-altera-01.fw
0x4 firmware filename: dvb-netup-altera-04.fwSigned-off-by: Abylay Ospan
Signed-off-by: Mauro Carvalho Chehab -
Signed-off-by: Abylay Ospan
Signed-off-by: Mauro Carvalho Chehab -
Currently available two hardware revision:
0x1 firmware filename: dvb-netup-altera-01.fw
0x4 firmware filename: dvb-netup-altera-04.fwSigned-off-by: Abylay Ospan
Signed-off-by: Mauro Carvalho Chehab -
Add two fields to the ISP parallel platform data to set the HS and VS
signals polarities.Signed-off-by: Laurent Pinchart
Acked-by: Sakari Ailus
Signed-off-by: Mauro Carvalho Chehab -
The current omap3isp driver is missing regulator handling
for CSIb complex in omap34xx based devices. This patch
adds a mechanism for this to the omap3isp driver.Signed-off-by: Kalle Jokiniemi
Acked-by: Laurent Pinchart
Acked-by: Sakari Ailus
Signed-off-by: Mauro Carvalho Chehab -
Minor changes to remove the unused code from omap_vout driver.
Signed-off-by: Amber Jain
Signed-off-by: Samreen
Signed-off-by: Vaibhav Hiremath
Signed-off-by: Mauro Carvalho Chehab -
Add support to map the buffer using dma_map_single during qbuf which inturn
calls cache flush and unmap the same during dqbuf. This is done to prevent
the artifacts seen because of cache-coherency issues on OMAP4Signed-off-by: Amber Jain
Signed-off-by: Vaibhav Hiremath
Signed-off-by: Mauro Carvalho Chehab -
Extending the omap vout isr handling for:
- HDMI interface.These are the new interfaces added to OMAP4 DSS.
Signed-off-by: Amber Jain
Signed-off-by: Vaibhav Hiremath
Signed-off-by: Mauro Carvalho Chehab -
Introduce omap_vout_vrfb.c and omap_vout_vrfb.h, for all VRFB related API's,
making OMAP_VOUT driver independent from VRFB. This is required for OMAP4 DSS,
since OMAP4 doesn't have VRFB block.Added new enum vout_rotation_type and "rotation_type" member to omapvideo_info,
this is initialized based on the arch type in omap_vout_probe. The rotation_type
var is now used to choose between vrfb and non-vrfb calls.Signed-off-by: Archit Taneja
Signed-off-by: Vaibhav Hiremath
Signed-off-by: Mauro Carvalho Chehab -
Rename rotation_enabled() and rotate_90_or_270() to is_rotation_enabled()
and is_rotation_90_or_270() to make them more descriptive.Signed-off-by: Archit Taneja
Signed-off-by: Vaibhav Hiremath
Signed-off-by: Mauro Carvalho Chehab -
Move the inline functions rotate_90_or_270(), rotation_enabled(), and
calc_rotation() from omap_vout.c to omap_voutdef.h.Move the independent functions omap_vout_alloc_buffer() and
omap_vout_free_buffer() to omap_voutlib.c.Remove extern identifier from function definitions in omap_voutlib.h
Add static identifier to functions that are used locally in omap_vout.c
Signed-off-by: Archit Taneja
Signed-off-by: Vaibhav Hiremath
Signed-off-by: Mauro Carvalho Chehab -
Remove GFP_DMA from the __get_free_pages() call from omap24xxcam as ZONE_DMA
is not configured on OMAP. Earlier the page allocator used to return a page
from ZONE_NORMAL even when GFP_DMA is passed and CONFIG_ZONE_DMA is disabled.
As a result of commit a197b59ae6e8bee56fcef37ea2482dc08414e2ac, page allocator
returns null in such a scenario with a warning emitted to kernel log.Signed-off-by: Amber Jain
Acked-by: Sakari Ailus
Signed-off-by: Vaibhav Hiremath
Signed-off-by: Mauro Carvalho Chehab -
Remove GFP_DMA from the __get_free_pages() call from omap_vout as ZONE_DMA
is not configured on OMAP. Earlier the page allocator used to return a page
from ZONE_NORMAL even when GFP_DMA is passed and CONFIG_ZONE_DMA is disabled.
As a result of commit a197b59ae6e8bee56fcef37ea2482dc08414e2ac, page allocator
returns null in such a scenario with a warning emitted to kernel log.Signed-off-by: Amber Jain
Signed-off-by: Vaibhav Hiremath
Signed-off-by: Mauro Carvalho Chehab -
The camera there identifies itself as being manufactured by Cheng Uei
Precision Industry Co., Ltd (Foxlink), and product is titled as "HP
Webcam [2 MP Fixed]".I was trying to get 2 USB video capture devices to work simultaneously,
and noticed that the above mentioned webcam always requires packet size
= 3072 bytes per micro frame (~= 23.4 MB/s isoc bandwidth), which is far
more than enough to get standard NTSC 640x480x2x30 = ~17.6 MB/s isoc
bandwidth.As there are alt interfaces with smaller MxPS
T: Bus=01 Lev=01 Prnt=01 Port=03 Cnt=01 Dev#= 2 Spd=480 MxCh= 0
D: Ver= 2.00 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=05c8 ProdID=0403 Rev= 1.06
S: Manufacturer=Foxlink
S: Product=HP Webcam [2 MP Fixed]
S: SerialNumber=200909240102
C:* #Ifs= 2 Cfg#= 1 Atr=80 MxPwr=500mA
A: FirstIf#= 0 IfCount= 2 Cls=0e(video) Sub=03 Prot=00
I:* If#= 0 Alt= 0 #EPs= 1 Cls=0e(video) Sub=01 Prot=00 Driver=uvcvideo
E: Ad=83(I) Atr=03(Int.) MxPS= 16 Ivl=4ms
I:* If#= 1 Alt= 0 #EPs= 0 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo
I: If#= 1 Alt= 1 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo
E: Ad=81(I) Atr=05(Isoc) MxPS= 128 Ivl=125us
I: If#= 1 Alt= 2 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo
E: Ad=81(I) Atr=05(Isoc) MxPS= 512 Ivl=125us
I: If#= 1 Alt= 3 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo
E: Ad=81(I) Atr=05(Isoc) MxPS=1024 Ivl=125us
I: If#= 1 Alt= 4 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo
E: Ad=81(I) Atr=05(Isoc) MxPS=1536 Ivl=125us
I: If#= 1 Alt= 5 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo
E: Ad=81(I) Atr=05(Isoc) MxPS=2048 Ivl=125us
I: If#= 1 Alt= 6 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo
E: Ad=81(I) Atr=05(Isoc) MxPS=2688 Ivl=125us
I: If#= 1 Alt= 7 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo
E: Ad=81(I) Atr=05(Isoc) MxPS=3072 Ivl=125usUVC_QUIRK_FIX_BANDWIDTH helps here and NTSC video can be served with
MxPS=2688 i.e. 20.5 MB/s isoc bandwidth.In terms of microframe time allocation, before the quirk NTSC video
required 60 usecs / microframe and 53 usecs / microframe after.Acked-by: Laurent Pinchart
Signed-off-by: Kirill Smelkov
Signed-off-by: Mauro Carvalho Chehab