Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
8e2cc1af
Commit
8e2cc1af
authored
Mar 03, 2006
by
Mauro Carvalho Chehab
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'work-fixes'
parents
c499ec24
be6f655d
Changes
20
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
105 additions
and
117 deletions
+105
-117
Documentation/dvb/bt8xx.txt
Documentation/dvb/bt8xx.txt
+5
-1
Documentation/video4linux/CARDLIST.saa7134
Documentation/video4linux/CARDLIST.saa7134
+2
-2
MAINTAINERS
MAINTAINERS
+0
-1
drivers/media/dvb/b2c2/flexcop-fe-tuner.c
drivers/media/dvb/b2c2/flexcop-fe-tuner.c
+1
-1
drivers/media/dvb/bt8xx/bt878.c
drivers/media/dvb/bt8xx/bt878.c
+1
-1
drivers/media/dvb/bt8xx/dst.c
drivers/media/dvb/bt8xx/dst.c
+1
-1
drivers/media/dvb/dvb-usb/cxusb.c
drivers/media/dvb/dvb-usb/cxusb.c
+4
-4
drivers/media/dvb/frontends/Kconfig
drivers/media/dvb/frontends/Kconfig
+1
-1
drivers/media/dvb/frontends/mt312.c
drivers/media/dvb/frontends/mt312.c
+44
-72
drivers/media/dvb/frontends/mt312.h
drivers/media/dvb/frontends/mt312.h
+2
-4
drivers/media/dvb/frontends/stv0297.c
drivers/media/dvb/frontends/stv0297.c
+0
-4
drivers/media/dvb/ttpci/av7110.c
drivers/media/dvb/ttpci/av7110.c
+4
-3
drivers/media/dvb/ttpci/av7110_ir.c
drivers/media/dvb/ttpci/av7110_ir.c
+2
-2
drivers/media/video/cx25840/cx25840-core.c
drivers/media/video/cx25840/cx25840-core.c
+2
-2
drivers/media/video/saa7115.c
drivers/media/video/saa7115.c
+2
-2
drivers/media/video/saa7134/saa7134-alsa.c
drivers/media/video/saa7134/saa7134-alsa.c
+3
-1
drivers/media/video/saa7134/saa7134-cards.c
drivers/media/video/saa7134/saa7134-cards.c
+15
-6
drivers/media/video/saa7134/saa7134-dvb.c
drivers/media/video/saa7134/saa7134-dvb.c
+8
-4
drivers/media/video/tda8290.c
drivers/media/video/tda8290.c
+5
-3
drivers/media/video/tuner-core.c
drivers/media/video/tuner-core.c
+3
-2
No files found.
Documentation/dvb/bt8xx.txt
View file @
8e2cc1af
...
...
@@ -111,4 +111,8 @@ source: linux/Documentation/video4linux/CARDLIST.bttv
If you have problems with this please do ask on the mailing list.
--
Authors: Richard Walker, Jamie Honan, Michael Hunold, Manu Abraham
Authors: Richard Walker,
Jamie Honan,
Michael Hunold,
Manu Abraham,
Michael Krufky
Documentation/video4linux/CARDLIST.saa7134
View file @
8e2cc1af
...
...
@@ -13,7 +13,7 @@
12 -> Medion 7134 [16be:0003]
13 -> Typhoon TV+Radio 90031
14 -> ELSA EX-VISION 300TV [1048:226b]
15 -> ELSA EX-VISION 500TV [1048:226
b
]
15 -> ELSA EX-VISION 500TV [1048:226
a
]
16 -> ASUS TV-FM 7134 [1043:4842,1043:4830,1043:4840]
17 -> AOPEN VA1000 POWER [1131:7133]
18 -> BMK MPEX No Tuner
...
...
@@ -75,7 +75,7 @@
74 -> LifeView FlyTV Platinum Mini2 [14c0:1212]
75 -> AVerMedia AVerTVHD MCE A180 [1461:1044]
76 -> SKNet MonsterTV Mobile [1131:4ee9]
77 -> Pinnacle PCTV
110i (saa7133)
[11bd:002e]
77 -> Pinnacle PCTV
40i/50i/110i (saa7133)
[11bd:002e]
78 -> ASUSTeK P7131 Dual [1043:4862]
79 -> Sedna/MuchTV PC TV Cardbus TV/Radio (ITO25 Rev:2B)
80 -> ASUS Digimatrix TV [1043:0210]
...
...
MAINTAINERS
View file @
8e2cc1af
...
...
@@ -838,7 +838,6 @@ S: Maintained
DVB SUBSYSTEM AND DRIVERS
P: LinuxTV.org Project
M: mchehab@infradead.org
M: v4l-dvb-maintainer@linuxtv.org
L: linux-dvb@linuxtv.org (subscription required)
W: http://linuxtv.org/
...
...
drivers/media/dvb/b2c2/flexcop-fe-tuner.c
View file @
8e2cc1af
...
...
@@ -526,7 +526,7 @@ int flexcop_frontend_init(struct flexcop_device *fc)
info
(
"found the stv0297 at i2c address: 0x%02x"
,
alps_tdee4_stv0297_config
.
demod_address
);
}
else
/* try the sky v2.3 (vp310/Samsung tbdu18132(tsa5059)) */
if
((
fc
->
fe
=
vp310_attach
(
&
skystar23_samsung_tbdu18132_config
,
&
fc
->
i2c_adap
))
!=
NULL
)
{
if
((
fc
->
fe
=
vp310_
mt312_
attach
(
&
skystar23_samsung_tbdu18132_config
,
&
fc
->
i2c_adap
))
!=
NULL
)
{
ops
=
fc
->
fe
->
ops
;
ops
->
diseqc_send_master_cmd
=
flexcop_diseqc_send_master_cmd
;
...
...
drivers/media/dvb/bt8xx/bt878.c
View file @
8e2cc1af
...
...
@@ -382,7 +382,7 @@ bt878_device_control(struct bt878 *bt, unsigned int cmd, union dst_gpio_packet *
EXPORT_SYMBOL
(
bt878_device_control
);
struct
cards
card_list
[]
__devinitdata
=
{
st
atic
st
ruct
cards
card_list
[]
__devinitdata
=
{
{
0x01010071
,
BTTV_BOARD_NEBULA_DIGITV
,
"Nebula Electronics DigiTV"
},
{
0x07611461
,
BTTV_BOARD_AVDVBT_761
,
"AverMedia AverTV DVB-T 761"
},
...
...
drivers/media/dvb/bt8xx/dst.c
View file @
8e2cc1af
...
...
@@ -602,7 +602,7 @@ static int dst_type_print(u8 type)
*/
struct
dst_types
dst_tlist
[]
=
{
st
atic
st
ruct
dst_types
dst_tlist
[]
=
{
{
.
device_id
=
"200103A"
,
.
offset
=
0
,
...
...
drivers/media/dvb/dvb-usb/cxusb.c
View file @
8e2cc1af
...
...
@@ -282,7 +282,7 @@ static struct cx22702_config cxusb_cx22702_config = {
.
pll_set
=
dvb_usb_pll_set_i2c
,
};
static
struct
lgdt330x_config
cxusb_lgdt330
x
_config
=
{
static
struct
lgdt330x_config
cxusb_lgdt330
3
_config
=
{
.
demod_address
=
0x0e
,
.
demod_chip
=
LGDT3303
,
.
pll_set
=
dvb_usb_pll_set_i2c
,
...
...
@@ -357,14 +357,14 @@ static int cxusb_cx22702_frontend_attach(struct dvb_usb_device *d)
return
-
EIO
;
}
static
int
cxusb_lgdt330
x
_frontend_attach
(
struct
dvb_usb_device
*
d
)
static
int
cxusb_lgdt330
3
_frontend_attach
(
struct
dvb_usb_device
*
d
)
{
if
(
usb_set_interface
(
d
->
udev
,
0
,
7
)
<
0
)
err
(
"set interface failed"
);
cxusb_ctrl_msg
(
d
,
CMD_DIGITAL
,
NULL
,
0
,
NULL
,
0
);
if
((
d
->
fe
=
lgdt330x_attach
(
&
cxusb_lgdt330
x
_config
,
&
d
->
i2c_adap
))
!=
NULL
)
if
((
d
->
fe
=
lgdt330x_attach
(
&
cxusb_lgdt330
3
_config
,
&
d
->
i2c_adap
))
!=
NULL
)
return
0
;
return
-
EIO
;
...
...
@@ -506,7 +506,7 @@ static struct dvb_usb_properties cxusb_bluebird_lgh064f_properties = {
.
streaming_ctrl
=
cxusb_streaming_ctrl
,
.
power_ctrl
=
cxusb_power_ctrl
,
.
frontend_attach
=
cxusb_lgdt330
x
_frontend_attach
,
.
frontend_attach
=
cxusb_lgdt330
3
_frontend_attach
,
.
tuner_attach
=
cxusb_lgh064f_tuner_attach
,
.
i2c_algo
=
&
cxusb_i2c_algo
,
...
...
drivers/media/dvb/frontends/Kconfig
View file @
8e2cc1af
...
...
@@ -29,7 +29,7 @@ config DVB_TDA8083
A DVB-S tuner module. Say Y when you want to support this frontend.
config DVB_MT312
tristate "Zarlink MT312 based"
tristate "Zarlink
VP310/
MT312 based"
depends on DVB_CORE
help
A DVB-S tuner module. Say Y when you want to support this frontend.
...
...
drivers/media/dvb/frontends/mt312.c
View file @
8e2cc1af
...
...
@@ -612,76 +612,6 @@ static void mt312_release(struct dvb_frontend* fe)
kfree
(
state
);
}
static
struct
dvb_frontend_ops
vp310_mt312_ops
;
struct
dvb_frontend
*
vp310_attach
(
const
struct
mt312_config
*
config
,
struct
i2c_adapter
*
i2c
)
{
struct
mt312_state
*
state
=
NULL
;
/* allocate memory for the internal state */
state
=
kmalloc
(
sizeof
(
struct
mt312_state
),
GFP_KERNEL
);
if
(
state
==
NULL
)
goto
error
;
/* setup the state */
state
->
config
=
config
;
state
->
i2c
=
i2c
;
memcpy
(
&
state
->
ops
,
&
vp310_mt312_ops
,
sizeof
(
struct
dvb_frontend_ops
));
strcpy
(
state
->
ops
.
info
.
name
,
"Zarlink VP310 DVB-S"
);
/* check if the demod is there */
if
(
mt312_readreg
(
state
,
ID
,
&
state
->
id
)
<
0
)
goto
error
;
if
(
state
->
id
!=
ID_VP310
)
{
goto
error
;
}
/* create dvb_frontend */
state
->
frequency
=
90
;
state
->
frontend
.
ops
=
&
state
->
ops
;
state
->
frontend
.
demodulator_priv
=
state
;
return
&
state
->
frontend
;
error:
kfree
(
state
);
return
NULL
;
}
struct
dvb_frontend
*
mt312_attach
(
const
struct
mt312_config
*
config
,
struct
i2c_adapter
*
i2c
)
{
struct
mt312_state
*
state
=
NULL
;
/* allocate memory for the internal state */
state
=
kmalloc
(
sizeof
(
struct
mt312_state
),
GFP_KERNEL
);
if
(
state
==
NULL
)
goto
error
;
/* setup the state */
state
->
config
=
config
;
state
->
i2c
=
i2c
;
memcpy
(
&
state
->
ops
,
&
vp310_mt312_ops
,
sizeof
(
struct
dvb_frontend_ops
));
strcpy
(
state
->
ops
.
info
.
name
,
"Zarlink MT312 DVB-S"
);
/* check if the demod is there */
if
(
mt312_readreg
(
state
,
ID
,
&
state
->
id
)
<
0
)
goto
error
;
if
(
state
->
id
!=
ID_MT312
)
{
goto
error
;
}
/* create dvb_frontend */
state
->
frequency
=
60
;
state
->
frontend
.
ops
=
&
state
->
ops
;
state
->
frontend
.
demodulator_priv
=
state
;
return
&
state
->
frontend
;
error:
kfree
(
state
);
return
NULL
;
}
static
struct
dvb_frontend_ops
vp310_mt312_ops
=
{
.
info
=
{
...
...
@@ -720,6 +650,49 @@ static struct dvb_frontend_ops vp310_mt312_ops = {
.
set_voltage
=
mt312_set_voltage
,
};
struct
dvb_frontend
*
vp310_mt312_attach
(
const
struct
mt312_config
*
config
,
struct
i2c_adapter
*
i2c
)
{
struct
mt312_state
*
state
=
NULL
;
/* allocate memory for the internal state */
state
=
kmalloc
(
sizeof
(
struct
mt312_state
),
GFP_KERNEL
);
if
(
state
==
NULL
)
goto
error
;
/* setup the state */
state
->
config
=
config
;
state
->
i2c
=
i2c
;
memcpy
(
&
state
->
ops
,
&
vp310_mt312_ops
,
sizeof
(
struct
dvb_frontend_ops
));
/* check if the demod is there */
if
(
mt312_readreg
(
state
,
ID
,
&
state
->
id
)
<
0
)
goto
error
;
switch
(
state
->
id
)
{
case
ID_VP310
:
strcpy
(
state
->
ops
.
info
.
name
,
"Zarlink VP310 DVB-S"
);
state
->
frequency
=
90
;
break
;
case
ID_MT312
:
strcpy
(
state
->
ops
.
info
.
name
,
"Zarlink MT312 DVB-S"
);
state
->
frequency
=
60
;
break
;
default:
printk
(
KERN_WARNING
"Only Zarlink VP310/MT312 are supported chips.
\n
"
);
goto
error
;
}
/* create dvb_frontend */
state
->
frontend
.
ops
=
&
state
->
ops
;
state
->
frontend
.
demodulator_priv
=
state
;
return
&
state
->
frontend
;
error:
kfree
(
state
);
return
NULL
;
}
module_param
(
debug
,
int
,
0644
);
MODULE_PARM_DESC
(
debug
,
"Turn on/off frontend debugging (default:off)."
);
...
...
@@ -727,5 +700,4 @@ MODULE_DESCRIPTION("Zarlink VP310/MT312 DVB-S Demodulator driver");
MODULE_AUTHOR
(
"Andreas Oberritter <obi@linuxtv.org>"
);
MODULE_LICENSE
(
"GPL"
);
EXPORT_SYMBOL
(
mt312_attach
);
EXPORT_SYMBOL
(
vp310_attach
);
EXPORT_SYMBOL
(
vp310_mt312_attach
);
drivers/media/dvb/frontends/mt312.h
View file @
8e2cc1af
...
...
@@ -38,10 +38,8 @@ struct mt312_config
int
(
*
pll_set
)(
struct
dvb_frontend
*
fe
,
struct
dvb_frontend_parameters
*
params
);
};
extern
struct
dvb_frontend
*
mt312_attach
(
const
struct
mt312_config
*
config
,
struct
i2c_adapter
*
i2c
);
struct
dvb_frontend
*
vp310_
mt312_attach
(
const
struct
mt312_config
*
config
,
struct
i2c_adapter
*
i2c
);
extern
struct
dvb_frontend
*
vp310_attach
(
const
struct
mt312_config
*
config
,
struct
i2c_adapter
*
i2c
);
#endif // MT312_H
drivers/media/dvb/frontends/stv0297.c
View file @
8e2cc1af
...
...
@@ -393,10 +393,6 @@ static int stv0297_set_frontend(struct dvb_frontend *fe, struct dvb_frontend_par
break
;
case
QAM_128
:
delay
=
150
;
sweeprate
=
1000
;
break
;
case
QAM_256
:
delay
=
200
;
sweeprate
=
500
;
...
...
drivers/media/dvb/ttpci/av7110.c
View file @
8e2cc1af
...
...
@@ -2477,7 +2477,8 @@ static int frontend_init(struct av7110 *av7110)
* The same behaviour of missing VSYNC can be duplicated on budget
* cards, by seting DD1_INIT trigger mode 7 in 3rd nibble.
*/
static
int
av7110_attach
(
struct
saa7146_dev
*
dev
,
struct
saa7146_pci_extension_data
*
pci_ext
)
static
int
__devinit
av7110_attach
(
struct
saa7146_dev
*
dev
,
struct
saa7146_pci_extension_data
*
pci_ext
)
{
const
int
length
=
TS_WIDTH
*
TS_HEIGHT
;
struct
pci_dev
*
pdev
=
dev
->
pci
;
...
...
@@ -2827,7 +2828,7 @@ static int av7110_attach(struct saa7146_dev* dev, struct saa7146_pci_extension_d
goto
out
;
}
static
int
av7110_detach
(
struct
saa7146_dev
*
saa
)
static
int
__devexit
av7110_detach
(
struct
saa7146_dev
*
saa
)
{
struct
av7110
*
av7110
=
saa
->
ext_priv
;
dprintk
(
4
,
"%p
\n
"
,
av7110
);
...
...
@@ -2974,7 +2975,7 @@ static struct saa7146_extension av7110_extension = {
.
module
=
THIS_MODULE
,
.
pci_tbl
=
&
pci_tbl
[
0
],
.
attach
=
av7110_attach
,
.
detach
=
av7110_detach
,
.
detach
=
__devexit_p
(
av7110_detach
)
,
.
irq_mask
=
MASK_19
|
MASK_03
|
MASK_10
,
.
irq_func
=
av7110_irq
,
...
...
drivers/media/dvb/ttpci/av7110_ir.c
View file @
8e2cc1af
...
...
@@ -208,7 +208,7 @@ static void ir_handler(struct av7110 *av7110, u32 ircom)
}
int
__init
av7110_ir_init
(
struct
av7110
*
av7110
)
int
__
dev
init
av7110_ir_init
(
struct
av7110
*
av7110
)
{
static
struct
proc_dir_entry
*
e
;
...
...
@@ -248,7 +248,7 @@ int __init av7110_ir_init(struct av7110 *av7110)
}
void
__exit
av7110_ir_exit
(
struct
av7110
*
av7110
)
void
__
dev
exit
av7110_ir_exit
(
struct
av7110
*
av7110
)
{
int
i
;
...
...
drivers/media/video/cx25840/cx25840-core.c
View file @
8e2cc1af
...
...
@@ -567,7 +567,7 @@ static struct v4l2_queryctrl cx25840_qctrl[] = {
.
type
=
V4L2_CTRL_TYPE_INTEGER
,
.
name
=
"Contrast"
,
.
minimum
=
0
,
.
maximum
=
255
,
.
maximum
=
127
,
.
step
=
1
,
.
default_value
=
64
,
.
flags
=
0
,
...
...
@@ -576,7 +576,7 @@ static struct v4l2_queryctrl cx25840_qctrl[] = {
.
type
=
V4L2_CTRL_TYPE_INTEGER
,
.
name
=
"Saturation"
,
.
minimum
=
0
,
.
maximum
=
255
,
.
maximum
=
127
,
.
step
=
1
,
.
default_value
=
64
,
.
flags
=
0
,
...
...
drivers/media/video/saa7115.c
View file @
8e2cc1af
...
...
@@ -1027,7 +1027,7 @@ static struct v4l2_queryctrl saa7115_qctrl[] = {
.
type
=
V4L2_CTRL_TYPE_INTEGER
,
.
name
=
"Contrast"
,
.
minimum
=
0
,
.
maximum
=
255
,
.
maximum
=
127
,
.
step
=
1
,
.
default_value
=
64
,
.
flags
=
0
,
...
...
@@ -1036,7 +1036,7 @@ static struct v4l2_queryctrl saa7115_qctrl[] = {
.
type
=
V4L2_CTRL_TYPE_INTEGER
,
.
name
=
"Saturation"
,
.
minimum
=
0
,
.
maximum
=
255
,
.
maximum
=
127
,
.
step
=
1
,
.
default_value
=
64
,
.
flags
=
0
,
...
...
drivers/media/video/saa7134/saa7134-alsa.c
View file @
8e2cc1af
...
...
@@ -54,10 +54,12 @@ MODULE_PARM_DESC(debug,"enable debug messages [alsa]");
static
int
index
[
SNDRV_CARDS
]
=
SNDRV_DEFAULT_IDX
;
/* Index 0-MAX */
static
char
*
id
[
SNDRV_CARDS
]
=
SNDRV_DEFAULT_STR
;
/* ID for this card */
static
int
enable
[
SNDRV_CARDS
]
=
{
1
,
[
1
...
(
SNDRV_CARDS
-
1
)]
=
0
};
static
int
enable
[
SNDRV_CARDS
]
=
{
1
,
[
1
...
(
SNDRV_CARDS
-
1
)]
=
1
};
module_param_array
(
index
,
int
,
NULL
,
0444
);
module_param_array
(
enable
,
int
,
NULL
,
0444
);
MODULE_PARM_DESC
(
index
,
"Index value for SAA7134 capture interface(s)."
);
MODULE_PARM_DESC
(
enable
,
"Enable (or not) the SAA7134 capture interface(s)."
);
#define dprintk(fmt, arg...) if (debug) \
printk(KERN_DEBUG "%s/alsa: " fmt, dev->name , ##arg)
...
...
drivers/media/video/saa7134/saa7134-cards.c
View file @
8e2cc1af
...
...
@@ -977,7 +977,7 @@ struct saa7134_board saa7134_boards[] = {
.
radio_type
=
UNSET
,
.
tuner_addr
=
ADDR_UNSET
,
.
radio_addr
=
ADDR_UNSET
,
.
tda9887_conf
=
TDA9887_PRESENT
|
TDA9887_INTERCARRIER
|
TDA9887_PORT2_ACTIVE
,
.
tda9887_conf
=
TDA9887_PRESENT
|
TDA9887_INTERCARRIER
|
TDA9887_PORT2_
IN
ACTIVE
,
.
inputs
=
{{
.
name
=
name_tv
,
.
vmux
=
3
,
...
...
@@ -1666,7 +1666,7 @@ struct saa7134_board saa7134_boards[] = {
.
radio_type
=
UNSET
,
.
tuner_addr
=
ADDR_UNSET
,
.
radio_addr
=
ADDR_UNSET
,
.
tda9887_conf
=
TDA9887_PRESENT
|
TDA9887_INTERCARRIER
|
TDA9887_PORT2_ACTIVE
,
.
tda9887_conf
=
TDA9887_PRESENT
|
TDA9887_INTERCARRIER
|
TDA9887_PORT2_
IN
ACTIVE
,
.
mpeg
=
SAA7134_MPEG_DVB
,
.
inputs
=
{{
.
name
=
name_tv
,
...
...
@@ -2187,7 +2187,7 @@ struct saa7134_board saa7134_boards[] = {
.
radio_type
=
UNSET
,
.
tuner_addr
=
0x61
,
.
radio_addr
=
ADDR_UNSET
,
.
tda9887_conf
=
TDA9887_PRESENT
,
.
tda9887_conf
=
TDA9887_PRESENT
|
TDA9887_PORT1_ACTIVE
,
.
mpeg
=
SAA7134_MPEG_DVB
,
.
inputs
=
{{
.
name
=
name_tv
,
...
...
@@ -2211,7 +2211,7 @@ struct saa7134_board saa7134_boards[] = {
.
radio_type
=
UNSET
,
.
tuner_addr
=
0x61
,
.
radio_addr
=
ADDR_UNSET
,
.
tda9887_conf
=
TDA9887_PRESENT
,
.
tda9887_conf
=
TDA9887_PRESENT
|
TDA9887_PORT1_ACTIVE
,
.
mpeg
=
SAA7134_MPEG_DVB
,
.
inputs
=
{{
.
name
=
name_tv
,
...
...
@@ -2392,7 +2392,7 @@ struct saa7134_board saa7134_boards[] = {
}},
},
[
SAA7134_BOARD_PINNACLE_PCTV_110i
]
=
{
.
name
=
"Pinnacle PCTV
110i (saa7133)"
,
.
name
=
"Pinnacle PCTV 40i/50i/
110i (saa7133)"
,
.
audio_clock
=
0x00187de7
,
.
tuner_type
=
TUNER_PHILIPS_TDA8290
,
.
radio_type
=
UNSET
,
...
...
@@ -2407,6 +2407,10 @@ struct saa7134_board saa7134_boards[] = {
},{
.
name
=
name_comp1
,
.
vmux
=
1
,
.
amux
=
LINE2
,
},{
.
name
=
name_comp2
,
.
vmux
=
0
,
.
amux
=
LINE2
,
},{
.
name
=
name_svideo
,
...
...
@@ -2745,7 +2749,7 @@ struct pci_device_id saa7134_pci_tbl[] = {
.
vendor
=
PCI_VENDOR_ID_PHILIPS
,
.
device
=
PCI_DEVICE_ID_PHILIPS_SAA7130
,
.
subvendor
=
0x1048
,
.
subdevice
=
0x226
b
,
.
subdevice
=
0x226
a
,
.
driver_data
=
SAA7134_BOARD_ELSA_500TV
,
},{
.
vendor
=
PCI_VENDOR_ID_PHILIPS
,
...
...
@@ -3201,6 +3205,11 @@ int saa7134_board_init1(struct saa7134_dev *dev)
/* power-up tuner chip */
saa_andorl
(
SAA7134_GPIO_GPMODE0
>>
2
,
0x00040000
,
0x00040000
);
saa_andorl
(
SAA7134_GPIO_GPSTATUS0
>>
2
,
0x00040000
,
0x00000000
);
case
SAA7134_BOARD_PINNACLE_300I_DVBT_PAL
:
/* this turns the remote control chip off to work around a bug in it */
saa_writeb
(
SAA7134_GPIO_GPMODE1
,
0x80
);
saa_writeb
(
SAA7134_GPIO_GPSTATUS1
,
0x80
);
break
;
case
SAA7134_BOARD_MONSTERTV_MOBILE
:
/* power-up tuner chip */
saa_andorl
(
SAA7134_GPIO_GPMODE0
>>
2
,
0x00040000
,
0x00040000
);
...
...
drivers/media/video/saa7134/saa7134-dvb.c
View file @
8e2cc1af
...
...
@@ -110,6 +110,7 @@ static int mt352_pinnacle_init(struct dvb_frontend* fe)
mt352_write
(
fe
,
fsm_ctl_cfg
,
sizeof
(
fsm_ctl_cfg
));
mt352_write
(
fe
,
scan_ctl_cfg
,
sizeof
(
scan_ctl_cfg
));
mt352_write
(
fe
,
irq_cfg
,
sizeof
(
irq_cfg
));
return
0
;
}
...
...
@@ -117,8 +118,10 @@ static int mt352_pinnacle_pll_set(struct dvb_frontend* fe,
struct
dvb_frontend_parameters
*
params
,
u8
*
pllbuf
)
{
static
int
on
=
TDA9887_PRESENT
|
TDA9887_PORT2_INACTIVE
;
static
int
off
=
TDA9887_PRESENT
|
TDA9887_PORT2_ACTIVE
;
u8
off
[]
=
{
0x00
,
0xf1
};
u8
on
[]
=
{
0x00
,
0x71
};
struct
i2c_msg
msg
=
{.
addr
=
0x43
,
.
flags
=
0
,
.
buf
=
off
,
.
len
=
sizeof
(
off
)};
struct
saa7134_dev
*
dev
=
fe
->
dvb
->
priv
;
struct
v4l2_frequency
f
;
...
...
@@ -126,9 +129,10 @@ static int mt352_pinnacle_pll_set(struct dvb_frontend* fe,
f
.
tuner
=
0
;
f
.
type
=
V4L2_TUNER_DIGITAL_TV
;
f
.
frequency
=
params
->
frequency
/
1000
*
16
/
1000
;
saa7134_i2c_call_clients
(
dev
,
TDA9887_SET_CONFIG
,
&
on
);
i2c_transfer
(
&
dev
->
i2c_adap
,
&
msg
,
1
);
saa7134_i2c_call_clients
(
dev
,
VIDIOC_S_FREQUENCY
,
&
f
);
saa7134_i2c_call_clients
(
dev
,
TDA9887_SET_CONFIG
,
&
off
);
msg
.
buf
=
on
;
i2c_transfer
(
&
dev
->
i2c_adap
,
&
msg
,
1
);
pinnacle_antenna_pwr
(
dev
,
antenna_pwr
);
...
...
drivers/media/video/tda8290.c
View file @
8e2cc1af
...
...
@@ -580,9 +580,10 @@ int tda8290_init(struct i2c_client *c)
int
tda8290_probe
(
struct
i2c_client
*
c
)
{
unsigned
char
soft_reset
[]
=
{
0x00
,
0x00
};
unsigned
char
easy_mode_b
[]
=
{
0x01
,
0x02
};
unsigned
char
easy_mode_g
[]
=
{
0x01
,
0x04
};
unsigned
char
soft_reset
[]
=
{
0x00
,
0x00
};
unsigned
char
easy_mode_b
[]
=
{
0x01
,
0x02
};
unsigned
char
easy_mode_g
[]
=
{
0x01
,
0x04
};
unsigned
char
restore_9886
[]
=
{
0x00
,
0xd6
,
0x30
};
unsigned
char
addr_dto_lsb
=
0x07
;
unsigned
char
data
;
...
...
@@ -599,6 +600,7 @@ int tda8290_probe(struct i2c_client *c)
return
0
;
}
}
i2c_master_send
(
c
,
restore_9886
,
3
);
return
-
1
;
}
...
...
drivers/media/video/tuner-core.c
View file @
8e2cc1af
...
...
@@ -713,8 +713,9 @@ static int tuner_command(struct i2c_client *client, unsigned int cmd, void *arg)
struct
v4l2_frequency
*
f
=
arg
;
switch_v4l2
();
if
(
V4L2_TUNER_RADIO
==
f
->
type
&&
V4L2_TUNER_RADIO
!=
t
->
mode
)
{
if
((
V4L2_TUNER_RADIO
==
f
->
type
&&
V4L2_TUNER_RADIO
!=
t
->
mode
)
||
(
V4L2_TUNER_DIGITAL_TV
==
f
->
type
&&
V4L2_TUNER_DIGITAL_TV
!=
t
->
mode
))
{
if
(
set_mode
(
client
,
t
,
f
->
type
,
"VIDIOC_S_FREQUENCY"
)
==
EINVAL
)
return
0
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment