summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/cx18
AgeCommit message (Collapse)Author
2008-08-17cx18: Add missing lock for when the irq handler manipulates the queuesAndy Walls
From: Andy Walls <awalls@radix.net> cx18: Add missing lock for when the irq handler manipulates the queues. This was a potential source of stream queue corruption. Also changed the name of cx18_queue_find_buf() to cx18_queue_get_buf_irq(). Priority: high Signed-off-by: Andy Walls <awalls@radix.net>
2008-07-27remove select's of FW_LOADERMauro Carvalho Chehab
From: Adrian Bunk <bunk@kernel.org> After commit d9b19199e4894089456aaad295023263b5225c1a (always enable FW_LOADER unless EMBEDDED=y) we can remove the FW_LOADER select's and corresponding dependencies on HOTPLUG. Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-26v4l2-dev: remove unused type and type2 field from video_deviceHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> The type and type2 fields were unused and so could be removed. Instead add a vfl_type field that contains the type of the video device. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-21videodev: move all ioctl callbacks to a new v4l2_ioctl_ops structHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> All ioctl callbacks are now stored in a new v4l2_ioctl_ops struct. Drivers fill in a const struct v4l2_ioctl_ops and video_device just contains a const pointer to it. This ensures a clean separation between the const ops struct and the non-const video_device struct. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-25cx18: Lock the aux PLL to the video pixle rate for analog capturesAndy Walls
From: Andy Walls <awalls@radix.net> cx18: Lock the aux PLL to the video pixel rate for analog captures. The datasheet for the CX25840 says this is important for MPEG encoding applications. To ensure the PLL locking was correct, also fixed the aux PLL's multiplier to be computed based on a precise crystal freq of 4.5 MHz/286 * 455/2 * 8 = 28636363.6363... instead of the imporperly rounded 28636363. Signed-off-by: Andy Walls <awalls@radix.net>
2008-07-23cx18: Fix 32 kHz audio sample output rate for analog tuner SIF inputAndy Walls
From: Andy Walls <awalls@radix.net> cx18: Fix 32 kHz audio sample output rate for analog tuner SIF input so it works. The AUX_PLL VCO was being operated at 196.6 MHz out of the spec'ed 200-600 MHz range. Fixed the multipler and post dividers to operate the VCO within specification and added comments on how magic numbers are derived. Thanks to Hans Verkuil for pointing out this interesting problem to solve. Signed-off-by: Andy Walls <awalls@radix.net>
2008-07-20merge: http://www.linuxtv.org/hg/~hverkuil/v4l-dvb-videodev2Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20videodev: move some functions from v4l2-dev.h to v4l2-common.h or v4l2-ioctl.hHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> The functions in a header should not belong to another module. The prio functions belong to v4l2-common.c, so move them to v4l2-common.h. The ioctl functions belong to v4l2-ioctl.c, so create a new v4l2-ioctl.h header and move those functions to it. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-20videodev: rename 'dev' to 'parent'Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> The field 'dev' is not the video device, but the parent of the video device. Rename accordingly. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-19cx18: remove firmware size checkHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> This check was an ivtv leftover that served no purpose for the cx18. Removed it, as this allows the user to load different firmware versions. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-18videodev/cx18: fix get_index bug and error-handling lock-upsHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Fix a bug in get_index that was introduced earlier. Also fix two error handling lock-ups in videodev and cx18 that where found thanks to that bug. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-17cx18/smsusb: fix compile errors when building for kernels < 2.6.19Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-17cx18: move cx18_av_vbi_setup to av-core.c and rename to cx18_av_std_setupHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Same issue as for cx25840: this function sets up the standard timings and has nothing to do with VBI setup. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-17ivtv/cx18: ensure the default control values are correctHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> For several MPEG controls and the volume control the default as returned by VIDIOC_QUERYCTRL was incorrect and did not match the actual initial value. This is now fixed for cx18 and ivtv. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-13cx18: Suport external reset of the Z8F0811 IR controller on HVR-1600 for lircAndy Walls
From: Andy Walls <awalls@radix.net> cx18: added in cx18_ir_reset_gpio function for lirc_pvr150 like module. Also added the ability to reset the IR chip via ioctl like ivtv. This needs the mutex to protect gpio_dir and gpio_val in struct cx18 as gpio changes can come from a few different asynchronous sources now. Signed-off-by: Andy Walls <awalls@radix.net>
2008-07-13cx18: Add locking for struct cx18 GPIO state variablesAndy Walls
From: Andy Walls <awalls@radix.net> cx18: Add locking for struct cx18 GPIO state variables in anticpation of adding IR microcontroller reset support for use by external IR modules. Signed-off-by: Andy Walls <awalls@radix.net>
2008-07-08Fix a const pointer error in the Conexant cx23418 MPEG encoder driverMauro Carvalho Chehab
From: David Howells <dhowells@redhat.com> Fix a const pointer to non-const pointer assignment error in the Conexant cx23418 MPEG encoder driver. This was introduces in patch 1c1e45d17b663d4749af456ab7c2fc1f36405ef8. Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-08v4l-dvb: remove support for kernels < 2.6.16Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Phase 4 removes the compatibility support for kernels < 2.6.16. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-08v4l-dvb: remove support for kernels < 2.6.13Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Phase 3 of the compat cleanup. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-08v4l-dvb: remove support for kernels < 2.6.10Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Phase 2 removes support for kernels < 2.6.10. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-07cx18: Use correct GPIO pin for resetting Xceive 3028 tuner on Yuan MPC718Andy Walls
From: Andy Walls <awalls@radix.net> Change the Yuan MPC718 cards entry to use the correct GPIO pin for resetting the Xceive 3028 tuner. Thanks to Brian Hope <brian@hopefamily.info> for taking the time and figuring out which pin to use. Signed-off-by: Andy Walls <awalls@radix.net>
2008-07-06cx18: Add missing reset recovery delay in cx18-i2c.cAndy Walls
From: Andy Walls <awalls@radix.net> cx18: Add a missing reset recovery delay in cx18-i2c.c after the final deassert. Signed-off-by: Andy Walls <awalls@radix.net>
2008-06-28cx18: enable TS supportHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-28cx18: Upgrade to newer firmware & update cx18 documentation.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Conexant graciously gave us permission to redistribute the firmware. Update the documentation where the firmware can be downloaded. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-28cx18: set correct audio inputs for tuner and line-in 2.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-28cx18: fix v4l-cx23418-dig.fw firmware load.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-28cx18/ivtv: choose a better initial TV standard for cards without eeprom.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-27cx18: fix PAL/SECAM supportHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Reverted the 'Fix unintended auto configurations in cx18-av-core' patch, instead disable the auto config completely. Fix a bug in cx18_av_vbi_setup() where the standard tests were done in the wrong order. Tested with NTSC-M, PAL-BG, PAL-I, PAL-DK, PAL-M, PAL-Nc, SECAM-DK, SECAM-L and SECAM-BG. The last one does not work at the moment due to a tda9887.c bug. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-29Fix whitespace diffs between -git and mercurialMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Kernel-sync: Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-06-25Merge: from http://linuxtv.org/hg/~awalls/v4l-dvbHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-25ivtv/cx18: remove s/g_ctrl, now all controls are handled through s/g_ext_ctrlHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> videodev converts old-style controls to an extended control so the ivtv and cx18 drivers no longer have to handle both. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-25ivtv/cx18: fix compile error when CONFIG_VIDEO_ADV_DEBUG is not defined.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Thanks to Randy Dunlap for reporting this. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-24cx18: Improve Raptor card audio input routing defintionsAndy Walls
From: Andy Walls <awalls@radix.net> cx18: Improved Raptor card audio input routing defintions, so that muxer values matched cx18_gpio() values for tuner, line in 1, and radio and added LED indication of selected audio input. Audio line in 2 doesn't work as it uses the not yet supported 2nd I2S port. Tuner/FM Radio AF is mono until SIF support is fixed. Signed-off-by: Andy Walls <awalls@radix.net>
2008-06-22cx18: improve support for the Raptor board.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> - add radio definition - reset the audio firmware (required for this board, harmless for the others) Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-22ivtv/cx18: improve tuner std check in card definitions.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-22cx2341x: add TS capabilityHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> The cx18 can support transport streams with newer firmwares. Add a TS capability to the generic cx2341x module. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-22cx18/ivtv: ioctl debugging improvementsHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Completely rely on the video_ioctl2 debugging facilities rather than doing it ourselves. Fill in some missing fields in ivtv with VIDIOC_G_FBUF. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-22merge: http://www.linuxtv.org/hg/~hverkuil/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Fixed a small merge conflicts at: merging linux/drivers/media/video/cx18/cx18-cards.h warning: conflicts during merge. merging linux/drivers/media/video/cx18/cx18-cards.h failed! Basically, two new structures were added bellow the same place Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-06-21cx18: fix prefix typoHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-21cx18: show GPIO pins when VIDIOC_LOG_STATUS is called.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-21cx18: add support for Conexant Raptor PAL/SECAM cardHans Verkuil
From: Sri Deevi <Srinivasa.Deevi@conexant.com> Patch provided courtesy of Conexant http://www.conexant.com. Signed-off-by: Srinivasa Deevi <srinivasa.deevi@conexant.com> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-21cx18: make sure all v4l2_format fields are filled inHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-21ivtv/cx18: fix video_temporal_filter handlingHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> If the capture is scaled, then the video_temporal_filter is set to 0 by the cx2341x.c module since otherwise you would get ghosting. However, this was also done in the VIDIOC_S_FMT ioctl which meant that the video_temporal_filter control was reset to 0 or 8 each time S_FMT was called. This was old code that should have been removed a long time ago. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-21ivtv/cx18: remove unnecessary memsets & KERNEL_VERSION testsHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-21cx18: convert to video_ioctl2()Hans Verkuil
From: Andy Walls <awalls@radix.net> cx18: convert driver to use video_ioctl2(). Pushed down ioctl debug messages and priority checks as well. Still left serialization lock in place for now. #if 0'ed out sliced vbi ioctl code for now. Patch heavily based on similar changes made to ivtv by Hans Verkuil. Signed-off-by: Andy Walls <awalls@radix.net> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-21cx18: Fix S-Video and Compsite inputs for the Yuan MPC718 and enable card entryAndy Walls
From: Andy Walls <awalls@radix.net> cx18: Fix S-Video and Compsite input settings for the Yuan MPC718 per user reports from Yuri Warczynski <Yuri.Warczynski@gmail.com> and Brian Hope <brian@hopefamily.info> and enable the card entry. The tuner reset GPIO pin is likely incorrect as the tuner firmware cannot be reloaded without a reboot. It is likely the audio routing is done via GPIO which is not implemented yet, as users report audio doesn't work for some inputs. Signed-off-by: Andy Walls <awalls@radix.net>
2008-06-21cx18: Add I2C slave reset via GPIO upon initializationAndy Walls
From: Andy Walls <awalls@radix.net> cx18: Add I2C slave reset via GPIO upon initialization. One user, Michael <msd4824@yahoo.com>, has reported this allows his HVR-1600 EEPROM to be consistently recognized when using (long,) 100 msec delays. The delays in this commit are nominal (10 & 40 msec) and need testing/tuning on boards with I2C problems to find the right values. Signed-off-by: Andy Walls <awalls@radix.net>
2008-06-21cx18: Fix firmware load for case when digital capture happens firstAndy Walls
From: Andy Walls <awalls@radix.net> This is a fix for the case when a digital capture from dvr0 happens first after modprobe, before access to any cx18 v4l2 device nodes. The initial dvb feed start has been changed to load the firmware if not already loaded. Also fixed a use counter to correct dvb feed accounting if starting the transport DMA fails. Signed-off-by: Andy Walls <awalls@radix.net>
2008-06-19cx18: Fix audio mux input definitions for HVR-1600 Line In 2 and FM radioAndy Walls
From: Andy Walls <awalls@radix.net> Fix the cx18-cards.c structures for the HVR-1600 to reflect that audio Line In 2 and FM radio audio go to AIN3 and AIN4 of the CS5345 mux respectively. Verified by physical inspection of an HVR-1600MCE, by listening to FM broadcasts with the HVR-1600MCE, and by comparing with the card definition for a PVR-150 in ivtv. Signed-off-by: Andy Walls <awalls@radix.net>
2008-06-13cx18: Fix unintended auto configurations in cx18-av-coreAndy Walls
From: Andy Walls <awalls@radix.net> Change the cx18-av-core code so that accesses to cx23418 av core that cause auto-configuration will be adjusted to emulate the auto-configuration behavior of the cx25843. This fixes the VBI displayed as video at the top of the frame for NTSC and probably other things. Signed-off-by: Andy Walls <awalls@radix.net>