/* SPDX-License-Identifier: GPL-2.0-or-later */ /* Functions to query card hardware Copyright (C) 2003-2004 Kevin Thayer <nufan_wfk at yahoo.com> Copyright (C) 2005-2007 Hans Verkuil <hverkuil@xs4all.nl>
*/
#ifndef IVTV_CARDS_H #define IVTV_CARDS_H
/* Supported cards */ #define IVTV_CARD_PVR_250 0/* WinTV PVR 250 */ #define IVTV_CARD_PVR_350 1/* encoder, decoder, tv-out */ #define IVTV_CARD_PVR_150 2/* WinTV PVR 150 and PVR 500 (really just two
PVR150s on one PCI board) */ #define IVTV_CARD_M179 3/* AVerMedia M179 (encoder only) */ #define IVTV_CARD_MPG600 4/* Kuroutoshikou ITVC16-STVLP/YUAN MPG600, encoder only */ #define IVTV_CARD_MPG160 5/* Kuroutoshikou ITVC15-STVLP/YUAN MPG160
cx23415 based, but does not have tv-out */ #define IVTV_CARD_PG600 6/* YUAN PG600/DIAMONDMM PVR-550 based on the CX Falcon 2 */ #define IVTV_CARD_AVC2410 7/* Adaptec AVC-2410 */ #define IVTV_CARD_AVC2010 8/* Adaptec AVD-2010 (No Tuner) */ #define IVTV_CARD_TG5000TV 9/* NAGASE TRANSGEAR 5000TV, encoder only */ #define IVTV_CARD_VA2000MAX_SNT6 10/* VA2000MAX-STN6 */ #define IVTV_CARD_CX23416GYC 11/* Kuroutoshikou CX23416GYC-STVLP (Yuan MPG600GR OEM) */ #define IVTV_CARD_GV_MVPRX 12/* I/O Data GV-MVP/RX, RX2, RX2W */ #define IVTV_CARD_GV_MVPRX2E 13/* I/O Data GV-MVP/RX2E */ #define IVTV_CARD_GOTVIEW_PCI_DVD 14/* GotView PCI DVD */ #define IVTV_CARD_GOTVIEW_PCI_DVD2 15/* GotView PCI DVD2 */ #define IVTV_CARD_YUAN_MPC622 16/* Yuan MPC622 miniPCI */ #define IVTV_CARD_DCTMTVP1 17/* DIGITAL COWBOY DCT-MTVP1 */ #define IVTV_CARD_PG600V2 18/* Yuan PG600V2/GotView PCI DVD Lite */ #define IVTV_CARD_CLUB3D 19/* Club3D ZAP-TV1x01 */ #define IVTV_CARD_AVERTV_MCE116 20/* AVerTV MCE 116 Plus */ #define IVTV_CARD_ASUS_FALCON2 21/* ASUS Falcon2 */ #define IVTV_CARD_AVER_PVR150PLUS 22/* AVerMedia PVR-150 Plus */ #define IVTV_CARD_AVER_EZMAKER 23/* AVerMedia EZMaker PCI Deluxe */ #define IVTV_CARD_AVER_M104 24/* AverMedia M104 miniPCI card */ #define IVTV_CARD_BUFFALO_MV5L 25/* Buffalo PC-MV5L/PCI card */ #define IVTV_CARD_AVER_ULTRA1500MCE 26/* AVerMedia UltraTV 1500 MCE */ #define IVTV_CARD_KIKYOU 27/* Sony VAIO Giga Pocket (ENX Kikyou) */ #define IVTV_CARD_LAST 27
/* Variants of existing cards but with the same PCI IDs. The driver detects these based on other device information. These cards must always come last. New cards must be inserted above, and the indices of the cards below
must be adjusted accordingly. */
/* The mask is the set of bits used by the operation */
struct ivtv_gpio_init { /* set initial GPIO DIR and OUT values */
u16 direction; /* DIR setting. Leave to 0 if no init is needed */
u16 initial_value;
};
struct ivtv_gpio_video_input { /* select tuner/line in input */
u16 mask; /* leave to 0 if not supported */
u16 tuner;
u16 composite;
u16 svideo;
};
struct ivtv_gpio_audio_input { /* select tuner/line in input */
u16 mask; /* leave to 0 if not supported */
u16 tuner;
u16 linein;
u16 radio;
};
struct ivtv_gpio_audio_mute {
u16 mask; /* leave to 0 if not supported */
u16 mute; /* set this value to mute, 0 to unmute */
};
struct ivtv_gpio_audio_mode {
u16 mask; /* leave to 0 if not supported */
u16 mono; /* set audio to mono */
u16 stereo; /* set audio to stereo */
u16 lang1; /* set audio to the first language */
u16 lang2; /* set audio to the second language */
u16 both; /* both languages are output */
};
struct ivtv_gpio_audio_freq {
u16 mask; /* leave to 0 if not supported */
u16 f32000;
u16 f44100;
u16 f48000;
};
struct ivtv_gpio_audio_detect {
u16 mask; /* leave to 0 if not supported */
u16 stereo; /* if the input matches this value then
stereo is detected */
};
struct ivtv_card_tuner {
v4l2_std_id std; /* standard for which the tuner is suitable */ int tuner; /* tuner ID (from tuner.h) */
};
struct ivtv_card_tuner_i2c { unsignedshort radio[2];/* radio tuner i2c address to probe */ unsignedshort demod[2];/* demodulator i2c address to probe */ unsignedshort tv[4]; /* tv tuner i2c addresses to probe */
};
/* for card information/parameters */ struct ivtv_card { int type; char *name; char *comment;
u32 v4l2_capabilities;
u32 hw_video; /* hardware used to process video */
u32 hw_audio; /* hardware used to process audio */
u32 hw_audio_ctrl; /* hardware used for the V4L2 controls (only 1 dev allowed) */
u32 hw_muxer; /* hardware used to multiplex audio input */
u32 hw_all; /* all hardware used by the board */ struct ivtv_card_video_input video_inputs[IVTV_CARD_MAX_VIDEO_INPUTS]; struct ivtv_card_audio_input audio_inputs[IVTV_CARD_MAX_AUDIO_INPUTS]; struct ivtv_card_audio_input radio_input; int nof_outputs; conststruct ivtv_card_output *video_outputs;
u8 gr_config; /* config byte for the ghost reduction device */
u8 xceive_pin; /* XCeive tuner GPIO reset pin */
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.