summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/cx88/cx88-cards.c
AgeCommit message (Collapse)Author
2007-08-15cx88: Move card core creation from cx88-core.c to cx88-cards.cTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> A lot of code in cx88-cards.c was only used by cx88-core.c when the core state is first allocated and initialized. Moving that task to cx88-cards makes the driver simpler and the files more self contained. - Module parameters tuner, radio, card, and latency move to cx88-cards.c - cx88_boards is made static - cx88_subids is made static and const - cx88_bcount is eliminated - cx88_idcount is eliminated - cx88_card_list() is made static - cx88_card_setup_pre_i2c() is made static - cx88_card_setup() is made static - cx88_pci_quirks() is moved from cx88-core to cx88-cards The function argument "char *name" is made const too - get_ressources() is moved from cx88-core to cx88-cards, and renamed to cx88_get_resources() - The code to allocate and initialize the core state struct and the chip is moved out of cx88-core.c:cx88_get_core() and into a new function in cx88-cards.c, cx88_core_create(). This makes both functions simpler. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-08-15cx88: Copy board information into card stateTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> The cx88 driver state stored the ID of the board type in core->board. Every time the driver need to get some information about the board configuration, it uses the board number as an index into board configuration array. This patch changes it so that the board number is in core->boardnr, and core->board is a copy of the board configuration information. This allows access to board information without the extra indirection. e.g. cx88_boards[core->board].mpeg becomes core->board.mpeg. This has a number of advantages: - The code is simpler to write. - It compiles to be smaller and faster, without needing the extra array lookup to get at the board information. - The cx88_boards array no longer needs to be exported to all cx88 modules. - The boards array can be made const - It should be possible to avoid keeping the (large) cx88_boards array around after the module is loaded. - If module parameters or eeprom info override some board configuration setting, it's not necessary to modify the boards array, which would affect all boards of the same type. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-07-31cx88: Wrong values used for HD-3000 radio modeTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> After some tedious work with a logic probe and a magnifying glass, I've determined that GPIO 7 is used to switch between the DTT7612's Sound 4.5 MHz IF output on pin 12 and the FM 10.7MHz If output on pin 11. GPIO 2 is used to switch the card's analog sound output from from the analog input connector to the CX23883's audio DACs. So, in radio mode GPIO2 = 1 and GPIO7 = 0. Add some comments about how the HD-3000's GPIOs are connected. Delete the vmux setting for the radio, as vmux doesn't apply to radio mode. Also delete the lines setting unused gpio words to zero; it's not necessary as 0 is the default value for uninitialized fields. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-05-17cx88: add support for ADS Tech Instant Video PCIMichael Krufky
From: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us> Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-04-19Reverting changeset 294b550d74f4ad567dfa7079555ab16250cbd602Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> This patch went applied at the wrong board. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-04-19Fix support for Winfast TV2000 XP GlobalMauro Carvalho Chehab
From: C.masoyras <agiofws@gmail.com> Fix GPIO to work with TV and Composite inputs. Signed-off-by: C.masoyras <agiofws@gmail.com> Signed-off-by: Alex Deucher <alexdeucher@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-03-31Cx88: Support the DTV1000 T analog inputsMauro Carvalho Chehab
From: Jean Delvare <khali@linux-fr.org> Add support for the S-Video and CVBS (composite) analog video inputs of the Leadtek WinFast DTV1000 T adapter. Signed-off-by: Jean Delvare <khali@linux-fr.org> Acked-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-03-28Use ARRAY_SIZE and a cleaner logic for initializing tunerMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> ATI HDTV Wonder needs to initialize some registers before allowing the tuner to start working. The current logic have lots of magic. This patch makes the code cleaner, using ARRAY_SIZE() for the initialization array and using a bidimensional array, instead of doing some stuff like: &buffer[i+2][0] Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-03-11cx88: whitespace cleanupMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> replace leading spaces with tabs Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-03-11cx88: autodetect ADS Tech InstantTV DVB-SMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> The ADS Tech InstantTV DVB-S is a clone of the KWorld DVB-S 100. This patch adds autodetection support for this card based on pci subsystem id. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-01-21cx88: Add support for svideo/composite input of the Terratec Cinergy 1400 DVB-TMichael Krufky
From: Heiko Baums <heiko@baums-on-web.de> Adds support for the combined S-Video/Composite input of the Terratec Cinergy 1400 DVB-T. Signed-off-by: Heiko Baums <heiko@baums-on-web.de> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-12-23cx88: Fix leadtek_eeprom taggingMichael Krufky
From: Jean Delvare <khali@linux-fr.org> WARNING: drivers/media/video/cx88/cx88xx.o - Section mismatch: reference to .init.text: from .text between 'cx88_card_setup' (at offset 0x68c) and 'cx88_risc_field' Caused by leadtek_eeprom() being declared __devinit and called from a non-devinit context. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-11-18Add support ptv-305Mauro Carvalho Chehab
From: Jelle Foks <jelle@foks.8m.com> Add subvendor/device of the ADSTech Instant TV Deluxe PTV-305 to the card list as card=45 (KWORLD_HARDWARE_MPEG_TV_XPERT). Signed-off-by: Jelle Foks <jelle@foks.8m.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-16cx88: use external adc for rca audio inputs on the ASUS PVR-416Michael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> For the ASUS PVR-416, the external adc must be used for the rca audio inputs, but television / radio inputs use the internal adc. Thanks to Alex Deucher for lending his card to me. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-10-16cx88: use external adc for svideo/composite on the KWorld HardwareMpegTV XPertMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> For the KWorld HardwareMpegTV XPert, the external adc must be used for svideo / composite inputs, but television / radio inputs use the internal adc. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-10-16cx88: determine whether or not to use external adc based on input settingMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Some cx88-blackbird boards use an external adc, but not necessarily for all inputs. Thus, this needs to be configurable on the card level for each input. This patch allows for the usage of the external adc to be determined by a bit setting in the cx88_input struct for cards based on the cx88 blackbird design. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-10-16cx88: cleanupsMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> - fixed whitespace, replaced leading spaces with tabs - moved .mpeg descriptor below input settings Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-09-29Add WinTV-HVR3000 DVB-T supportSteven Toth
From: Steven Toth <stoth@hauppauge.com> The WinTV-HVR3000 is currently defined for analog support only. This patch adds full DVB-T support. (DVB-S support will be added soon) Signed-off-by: Steven Toth <stoth@hauppauge.com>
2006-09-29Adding support for Nova-T-PCI PCI ID 0070:9000Steven Toth
From: Steven Toth <stoth@hauppauge.com> Adding support for Nova-T-PCI PCI ID 0070:9000 Signed-off-by: Steven Toth <stoth@hauppauge.com>
2006-09-27Dynamic cx88 mpeg port management for HVR1300 MPEG2/DVB-T support. Steven Toth
From: Steven Toth <stoth@hauppauge.com> A series of patches to change the cx88 framework to allow the PCI mpeg port to be shared dynamically between different types of drivers or applications. This patch changes the cx88-dvb and cx88-blackbird drivers to become 'sub drivers' of a higher single cx88-mpeg driver. The cx88-mpeg driver is a superset of the previous cx88-mpeg/blackbird drivers and now owns the IRQ. cx88-dvb/blackbird now become mini drivers, registering themselves with cx88-mpeg through a standard interface with callbacks. Sub drivers request access to hardware via the cx88-mpeg driver. In turn the cx88-mpeg driver determines whether the hardware is busy and accepts or refuses the request, grant access using callbacks into the sub drivers. The net effect is that you are no longer able to tamper with the mpeg port from multiple different applications at the same time, potentially breaking a live mpeg2 hardware encoding or dvb stream. The mechanism extends to enable multiple dvb frontends to be registered and share the single resource. Signed-off-by: Steven Toth <stoth@hauppauge.com>
2006-09-25cx88: autodetect Club3D Zap TV2100 by subsystem id 12ab:2300Michael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> The Club3D Zap TV2100 has been reported to be a clone of the Yuan PG300 and KWorld/VStream XPert DVB-T with cx22702 Thanks-to: Lars Gjesse Kjellberg <lars.g.kjellberg@get2net.dk> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-09-25cx88: rename mpeg capability flags from CX88_BOARD_FOO to CX88_MPEG_FOOMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> The flags for mpeg capabilities are sub-optimally named as CX88_BOARD_DVB and CX88_BOARD_BLACKBIRD, which creates some confusion. This patch renames the above to CX88_MPEG_DVB and CX88_MPEG_BLACKBIRD. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> CC: Steven Toth <stoth@hauppauge.com> Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2006-09-25Changed cx88_board .dvb and .register to an enum.Steven Toth
From: Steven Toth <stoth@hauppauge.com> Some basic cleanup in preperation for a future patch where the cx88-mpeg functions have to deal with the port being used by multiple frontends in (mpeg2 hw encoder and dvb demod). Signed-off-by: Steven Toth <stoth@hauppauge.com>
2006-09-25Ensure the WM8775 driver is loaded generically for any board.Steven Toth
From: Steven Toth <stoth@hauppauge.com> A generic change to cards to allow any board to specify whether it needs the wm8775 module loaded (by the core) or not. Signed-off-by: Steven Toth <stoth@hauppauge.com>
2006-09-16trivial: use lowercase letters in hex subsystem idsMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-09-15cx88: add autodetection for alternate revision of Leadtek PVRMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Add autodetection for PCI subsystem ID 107d:6632, to detect as a Leadtek PVR 2000 Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-09-14Basic DVB-T and analog TV support for the HVR1300.Steven Toth
From: Steven Toth <stoth@hauppauge.com> This is the first in a series of patches to add full WinTV-HVR1300 support to Linux. This first patch will enable analog TV support and DVB-T support. Later patches will add the hardware MPEG encoder support. Signed-off-by: Steven Toth <stoth@hauppauge.com>
2006-08-10Reset USB part of DViCO Dual Digital during PCI driver attachChris Pascoe
From: Chris Pascoe <c.pascoe@itee.uq.edu.au> If the FX2 does not reset properly during reboot, it can present an invalid USB device ID and fail to attach. Prevent this situation from occuring by resetting the USB part of the card when the PCI part probes. Also fix the GPIO configurations so that analog capture will not inadvertantly reset the USB part. Signed-off-by: Chris Pascoe <c.pascoe@itee.uq.edu.au>
2006-07-24cx88: Shenzhen Tungsten Ages Tech TE-DTV-250 / Swann PCI TV Tuner card supportMichael Krufky
From: David Bussenschutt <buzz@oska.com> Add support for Shenzhen Tungsten Ages Tech TE-DTV-250 OEM for Swann PCI TV Tuner Card Signed-off-by: David Bussenschutt <buzz@oska.com> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-07-24cx88: add support for Norwood PCI TV Tuner (non-pro)Michael Krufky
From: Peter Naulls <peter@chocky.org> This patch adds support for Norwood PCI TV Tuner (non-pro) Signed-off-by: Peter Naulls <peter@chocky.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-07-24cx88: add autodetection support for AverMedia M150-DMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> This patch adds autodetection support for the AverMedia M150-D blackbird MPEG encoder / analog video capture card. This board is known to work with the ASUS PVR 416 configuration. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-07-24cx88: add initial support for Hauppauge HVR3000 trimode cardMichael Krufky
From: Eric Thomas <ethomas@claranet.fr> add initial support for Hauppauge WinTV-HVR3000 TriMode Analog/DVB-S/DVB-T only analog is working for now Signed-off-by: Eric Thomas <ethomas@claranet.fr> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-06-29cx88: add support for Geniatech Digistar / Digiwave 103gMichael Krufky
From: Saqeb Akhter <johoja@gmail.com> This patch adds support for the Geniatech Digistar, aka Digiwave 103g DVB-S card. Signed-off-by: Saqeb Akhter <johoja@gmail.com> Acked-by: Andrew de Quincey <adq_dvb@lidskialf.net> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-06-24cx88: cleanupsMichael Krufky
From: Adrian Bunk <bunk@stusta.de> remove the following unused hooks: - cx88-blackbird.c: cx88_ioctl_hook() - cx88-blackbird.c: cx88_ioctl_translator() make the following needlessly global functions static: - cx88-tvaudio.c: cx88_detect_nicam() remove the following unused EXPORT_SYMBOL's: - cx88-cards.c: cx88_bcount - cx88-cards.c: cx88_subids - cx88-cards.c: cx88_idcount - cx88-cards.c: cx88_card_list - cx88-cards.c: cx88_card_setup - cx88-core.c: cx88_start_audio_dma - cx88-core.c: cx88_stop_audio_dma - cx88-i2c.c: cx88_i2c_init Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-06-21cx88: add support for FusionHDTV 3 Gold (original revision)Michael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Add support for FusionHDTV 3 Gold (original revision), using the card definition for FusionHDTV3 Gold-Q Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-06-08Fixes for card cx88 #50Ricardo Cerqueira
From: Ricardo Cerqueira <v4l@cerqueira.org> The description of the card has been updated to it's full name/model. The tuner has also been switched to a more compatible one (radio wasn't working, now it is) Signed-off-by: Ricardo Cerqueira <v4l@cerqueira.org>
2006-06-06cx88: whitespace cleanupMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-05-29cx88: Add basic support for Leadtek Winfast DTV2000H cardMichael Krufky
From: Malcolm Valentine <farkit@iinet.net.au> Add DVB-T and PAL-G television support for Winfast DTV2000H Signed-off-by: Malcolm Valentine <farkit@iinet.net.au> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-05-28KWorld HardwareMpegTV XPert: enable s-video/composite video inputsMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> - Enabled s-video and composite video inputs. - Updated comments to reflect the current support for this card. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-05-22New cx88 card #50: NPG Tech RealTVRicardo Cerqueira
From: Ricardo Cerqueira <v4l@cerqueira.org> Added support for a new cx88 card, including it's remote Signed-off-by: Ricardo Cerqueira <v4l@cerqueira.org>
2006-05-09cx88-blackbird: add support for ProLink Pixelview Playtv@P7000Michael Krufky
From: Angelo Marconi <am@massalombarda.net> - Add support for ProLink Pixelview Playtv@P7000 Raw video and MPEG encoded video confirmed to work properly. SVideo, Composite and FM inputs are untested - disabled for now. Signed-off-by: Angelo Marconi <am@massalombarda.net> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-05-06cx88: add autodetection for another Twinhan VP-3054 board.Michael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Added autodetection for PCI subsystem id 1822:0019 to use the card definition for CX88_BOARD_DNTV_LIVE_DVB_T_PRO Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-04-27v4l: rename TUNER_LG_TDVS_H062F to TUNER_LG_TDVS_H06XFMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-04-16KWorld HardwareMpegTV XPert: Enable Blackbird MPEG encoder supportMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> - clear I2SIN to deliver the audio stream to the cx23416 mpeg encoder. - enable blackbird support on the KWorld HardwareMpegTV XPert Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-04-13KWorld HardwareMpegTV XPert: update GPIO for s-video and compositeMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> - updated s-video and composite input GPIO settings. Thanks-to: Todd Duffin <nospam@tippyturtle.com> - s-video and composite inputs are still #if 0'd until we can get audio working properly on those inputs. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-04-13cx88: added support for KWorld MCE 200 DeluxeMichael Krufky
From: Valentin Zagura <puthre@gmail.com> This patch adds support for KWorld MCE 200 Deluxe. Raw video is working perfectly, MPEG capture using cx88-blackbird is also working, but the quality could be improved. FIXME: tested TV input only, disabled composite, svideo and radio until they can be tested also. Signed-off-by: Valentin Zagura <puthre@gmail.com> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-04-11Since we are not using CVS, $Id makes no sense anymoreMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-04-10bug fix: Wrong tuner was used pcHDTV HD-3000 cardMichael Krufky
From: Trent Piepho <xyzzy@speakeasy.org> It looks like the HD3000 was prototyped with the 7610 tuner when the driver was developed, but the cards appear to have always shipped with the 7612 tuner and the driver was never adjusted for it. The definition needs to be corrected. - The HD-3000 was prototyped with a Thomson DTT7610, but production versions used a DTT7612 tuner. - This patch changes both dvb-pll settings and V4L tuner type. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-04-07cx88 cleanup: move CX88_BOARD_PCHDTV_HD5500 to the end of the cards arrayMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> - new cards should always be added to the end of the list. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-04-07Add support for pcHDTV HD5500 ATSC/QAMRusty Scott
From: Rusty Scott <rustys@ieee.org> Added card definitions for the pcHDTV HD5500 ATSC/QAM card Signed-off-by: Rusty Scott <rustys@ieee.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>