Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
linux-arm
linux-vm
Commits
593195f9
Commit
593195f9
authored
Jan 11, 2006
by
Linus Torvalds
Browse files
Merge master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb
parents
983d5dbd
f9cfc08d
Changes
108
Show whitespace changes
Inline
Side-by-side
drivers/media/video/mxb.c
View file @
593195f9
...
...
@@ -177,12 +177,11 @@ static int mxb_probe(struct saa7146_dev* dev)
return
-
ENODEV
;
}
mxb
=
(
struct
mxb
*
)
km
alloc
(
sizeof
(
struct
mxb
),
GFP_KERNEL
);
mxb
=
kz
alloc
(
sizeof
(
struct
mxb
),
GFP_KERNEL
);
if
(
NULL
==
mxb
)
{
DEB_D
((
"not enough kernel memory.
\n
"
));
return
-
ENOMEM
;
}
memset
(
mxb
,
0x0
,
sizeof
(
struct
mxb
));
mxb
->
i2c_adapter
=
(
struct
i2c_adapter
)
{
.
class
=
I2C_CLASS_TV_ANALOG
,
...
...
drivers/media/video/ovcamchip/ov6x20.c
View file @
593195f9
...
...
@@ -178,10 +178,9 @@ static int ov6x20_init(struct i2c_client *c)
if
(
rc
<
0
)
return
rc
;
ov
->
spriv
=
s
=
k
m
alloc
(
sizeof
*
s
,
GFP_KERNEL
);
ov
->
spriv
=
s
=
k
z
alloc
(
sizeof
*
s
,
GFP_KERNEL
);
if
(
!
s
)
return
-
ENOMEM
;
memset
(
s
,
0
,
sizeof
*
s
);
s
->
auto_brt
=
1
;
s
->
auto_exp
=
1
;
...
...
drivers/media/video/ovcamchip/ov6x30.c
View file @
593195f9
...
...
@@ -141,10 +141,9 @@ static int ov6x30_init(struct i2c_client *c)
if
(
rc
<
0
)
return
rc
;
ov
->
spriv
=
s
=
k
m
alloc
(
sizeof
*
s
,
GFP_KERNEL
);
ov
->
spriv
=
s
=
k
z
alloc
(
sizeof
*
s
,
GFP_KERNEL
);
if
(
!
s
)
return
-
ENOMEM
;
memset
(
s
,
0
,
sizeof
*
s
);
s
->
auto_brt
=
1
;
s
->
auto_exp
=
1
;
...
...
drivers/media/video/ovcamchip/ov76be.c
View file @
593195f9
...
...
@@ -105,10 +105,9 @@ static int ov76be_init(struct i2c_client *c)
if
(
rc
<
0
)
return
rc
;
ov
->
spriv
=
s
=
k
m
alloc
(
sizeof
*
s
,
GFP_KERNEL
);
ov
->
spriv
=
s
=
k
z
alloc
(
sizeof
*
s
,
GFP_KERNEL
);
if
(
!
s
)
return
-
ENOMEM
;
memset
(
s
,
0
,
sizeof
*
s
);
s
->
auto_brt
=
1
;
s
->
auto_exp
=
1
;
...
...
drivers/media/video/ovcamchip/ov7x10.c
View file @
593195f9
...
...
@@ -115,10 +115,9 @@ static int ov7x10_init(struct i2c_client *c)
if
(
rc
<
0
)
return
rc
;
ov
->
spriv
=
s
=
k
m
alloc
(
sizeof
*
s
,
GFP_KERNEL
);
ov
->
spriv
=
s
=
k
z
alloc
(
sizeof
*
s
,
GFP_KERNEL
);
if
(
!
s
)
return
-
ENOMEM
;
memset
(
s
,
0
,
sizeof
*
s
);
s
->
auto_brt
=
1
;
s
->
auto_exp
=
1
;
...
...
drivers/media/video/ovcamchip/ov7x20.c
View file @
593195f9
...
...
@@ -232,10 +232,9 @@ static int ov7x20_init(struct i2c_client *c)
if
(
rc
<
0
)
return
rc
;
ov
->
spriv
=
s
=
k
m
alloc
(
sizeof
*
s
,
GFP_KERNEL
);
ov
->
spriv
=
s
=
k
z
alloc
(
sizeof
*
s
,
GFP_KERNEL
);
if
(
!
s
)
return
-
ENOMEM
;
memset
(
s
,
0
,
sizeof
*
s
);
s
->
auto_brt
=
1
;
s
->
auto_exp
=
DFL_AUTO_EXP
;
...
...
drivers/media/video/ovcamchip/ovcamchip_core.c
View file @
593195f9
...
...
@@ -316,12 +316,11 @@ static int ovcamchip_attach(struct i2c_adapter *adap)
c
->
adapter
=
adap
;
strcpy
(
c
->
name
,
"OV????"
);
ov
=
k
m
alloc
(
sizeof
*
ov
,
GFP_KERNEL
);
ov
=
k
z
alloc
(
sizeof
*
ov
,
GFP_KERNEL
);
if
(
!
ov
)
{
rc
=
-
ENOMEM
;
goto
no_ov
;
}
memset
(
ov
,
0
,
sizeof
*
ov
);
i2c_set_clientdata
(
c
,
ov
);
rc
=
ovcamchip_detect
(
c
);
...
...
drivers/media/video/saa5246a.c
View file @
593195f9
...
...
@@ -83,13 +83,12 @@ static int saa5246a_attach(struct i2c_adapter *adap, int addr, int kind)
client_template
.
adapter
=
adap
;
client_template
.
addr
=
addr
;
memcpy
(
client
,
&
client_template
,
sizeof
(
*
client
));
t
=
k
m
alloc
(
sizeof
(
*
t
),
GFP_KERNEL
);
t
=
k
z
alloc
(
sizeof
(
*
t
),
GFP_KERNEL
);
if
(
t
==
NULL
)
{
kfree
(
client
);
return
-
ENOMEM
;
}
memset
(
t
,
0
,
sizeof
(
*
t
));
strlcpy
(
client
->
name
,
IF_NAME
,
I2C_NAME_SIZE
);
init_MUTEX
(
&
t
->
lock
);
...
...
drivers/media/video/saa5249.c
View file @
593195f9
...
...
@@ -151,13 +151,12 @@ static int saa5249_attach(struct i2c_adapter *adap, int addr, int kind)
client_template
.
adapter
=
adap
;
client_template
.
addr
=
addr
;
memcpy
(
client
,
&
client_template
,
sizeof
(
*
client
));
t
=
k
m
alloc
(
sizeof
(
*
t
),
GFP_KERNEL
);
t
=
k
z
alloc
(
sizeof
(
*
t
),
GFP_KERNEL
);
if
(
t
==
NULL
)
{
kfree
(
client
);
return
-
ENOMEM
;
}
memset
(
t
,
0
,
sizeof
(
*
t
));
strlcpy
(
client
->
name
,
IF_NAME
,
I2C_NAME_SIZE
);
init_MUTEX
(
&
t
->
lock
);
...
...
@@ -165,7 +164,7 @@ static int saa5249_attach(struct i2c_adapter *adap, int addr, int kind)
* Now create a video4linux device
*/
vd
=
(
struct
video_device
*
)
kmalloc
(
sizeof
(
struct
video_device
),
GFP_KERNEL
);
vd
=
kmalloc
(
sizeof
(
struct
video_device
),
GFP_KERNEL
);
if
(
vd
==
NULL
)
{
kfree
(
t
);
...
...
drivers/media/video/saa7110.c
View file @
593195f9
...
...
@@ -494,21 +494,19 @@ saa7110_detect_client (struct i2c_adapter *adapter,
I2C_FUNC_SMBUS_READ_BYTE
|
I2C_FUNC_SMBUS_WRITE_BYTE_DATA
))
return
0
;
client
=
k
m
alloc
(
sizeof
(
struct
i2c_client
),
GFP_KERNEL
);
client
=
k
z
alloc
(
sizeof
(
struct
i2c_client
),
GFP_KERNEL
);
if
(
client
==
0
)
return
-
ENOMEM
;
memset
(
client
,
0
,
sizeof
(
struct
i2c_client
));
client
->
addr
=
address
;
client
->
adapter
=
adapter
;
client
->
driver
=
&
i2c_driver_saa7110
;
strlcpy
(
I2C_NAME
(
client
),
"saa7110"
,
sizeof
(
I2C_NAME
(
client
)));
decoder
=
k
m
alloc
(
sizeof
(
struct
saa7110
),
GFP_KERNEL
);
decoder
=
k
z
alloc
(
sizeof
(
struct
saa7110
),
GFP_KERNEL
);
if
(
decoder
==
0
)
{
kfree
(
client
);
return
-
ENOMEM
;
}
memset
(
decoder
,
0
,
sizeof
(
struct
saa7110
));
decoder
->
norm
=
VIDEO_MODE_PAL
;
decoder
->
input
=
0
;
decoder
->
enable
=
1
;
...
...
drivers/media/video/saa7111.c
View file @
593195f9
...
...
@@ -511,21 +511,19 @@ saa7111_detect_client (struct i2c_adapter *adapter,
if
(
!
i2c_check_functionality
(
adapter
,
I2C_FUNC_SMBUS_BYTE_DATA
))
return
0
;
client
=
k
m
alloc
(
sizeof
(
struct
i2c_client
),
GFP_KERNEL
);
client
=
k
z
alloc
(
sizeof
(
struct
i2c_client
),
GFP_KERNEL
);
if
(
client
==
0
)
return
-
ENOMEM
;
memset
(
client
,
0
,
sizeof
(
struct
i2c_client
));
client
->
addr
=
address
;
client
->
adapter
=
adapter
;
client
->
driver
=
&
i2c_driver_saa7111
;
strlcpy
(
I2C_NAME
(
client
),
"saa7111"
,
sizeof
(
I2C_NAME
(
client
)));
decoder
=
k
m
alloc
(
sizeof
(
struct
saa7111
),
GFP_KERNEL
);
decoder
=
k
z
alloc
(
sizeof
(
struct
saa7111
),
GFP_KERNEL
);
if
(
decoder
==
NULL
)
{
kfree
(
client
);
return
-
ENOMEM
;
}
memset
(
decoder
,
0
,
sizeof
(
struct
saa7111
));
decoder
->
norm
=
VIDEO_MODE_NTSC
;
decoder
->
input
=
0
;
decoder
->
enable
=
1
;
...
...
drivers/media/video/saa7114.c
View file @
593195f9
...
...
@@ -852,21 +852,19 @@ saa7114_detect_client (struct i2c_adapter *adapter,
if
(
!
i2c_check_functionality
(
adapter
,
I2C_FUNC_SMBUS_BYTE_DATA
))
return
0
;
client
=
k
m
alloc
(
sizeof
(
struct
i2c_client
),
GFP_KERNEL
);
client
=
k
z
alloc
(
sizeof
(
struct
i2c_client
),
GFP_KERNEL
);
if
(
client
==
0
)
return
-
ENOMEM
;
memset
(
client
,
0
,
sizeof
(
struct
i2c_client
));
client
->
addr
=
address
;
client
->
adapter
=
adapter
;
client
->
driver
=
&
i2c_driver_saa7114
;
strlcpy
(
I2C_NAME
(
client
),
"saa7114"
,
sizeof
(
I2C_NAME
(
client
)));
decoder
=
k
m
alloc
(
sizeof
(
struct
saa7114
),
GFP_KERNEL
);
decoder
=
k
z
alloc
(
sizeof
(
struct
saa7114
),
GFP_KERNEL
);
if
(
decoder
==
NULL
)
{
kfree
(
client
);
return
-
ENOMEM
;
}
memset
(
decoder
,
0
,
sizeof
(
struct
saa7114
));
decoder
->
norm
=
VIDEO_MODE_NTSC
;
decoder
->
input
=
-
1
;
decoder
->
enable
=
1
;
...
...
drivers/media/video/saa7115.c
View file @
593195f9
...
...
@@ -549,7 +549,7 @@ static int saa7115_set_audio_clock_freq(struct i2c_client *client, u32 freq)
u32
hz
;
u64
f
;
v4l_dbg
(
1
,
client
,
"set audio clock freq: %d
\n
"
,
freq
);
v4l_dbg
(
1
,
debug
,
client
,
"set audio clock freq: %d
\n
"
,
freq
);
/* sanity check */
if
(
freq
<
32000
||
freq
>
48000
)
...
...
@@ -670,10 +670,10 @@ static void saa7115_set_v4lstd(struct i2c_client *client, v4l2_std_id std)
// This works for NTSC-M, SECAM-L and the 50Hz PAL variants.
if
(
std
&
V4L2_STD_525_60
)
{
v4l_dbg
(
1
,
client
,
"decoder set standard 60 Hz
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"decoder set standard 60 Hz
\n
"
);
saa7115_writeregs
(
client
,
saa7115_cfg_60hz_video
);
}
else
{
v4l_dbg
(
1
,
client
,
"decoder set standard 50 Hz
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"decoder set standard 50 Hz
\n
"
);
saa7115_writeregs
(
client
,
saa7115_cfg_50hz_video
);
}
...
...
@@ -863,7 +863,7 @@ static int saa7115_set_v4lfmt(struct i2c_client *client, struct v4l2_format *fmt
pix
=
&
(
fmt
->
fmt
.
pix
);
v4l_dbg
(
1
,
client
,
"decoder set size
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"decoder set size
\n
"
);
/* FIXME need better bounds checking here */
if
((
pix
->
width
<
1
)
||
(
pix
->
width
>
1440
))
...
...
@@ -889,7 +889,7 @@ static int saa7115_set_v4lfmt(struct i2c_client *client, struct v4l2_format *fmt
HPSC
=
HPSC
?
HPSC
:
1
;
HFSC
=
(
int
)((
1024
*
720
)
/
(
HPSC
*
pix
->
width
));
v4l_dbg
(
1
,
client
,
"Hpsc: 0x%05x, Hfsc: 0x%05x
\n
"
,
HPSC
,
HFSC
);
v4l_dbg
(
1
,
debug
,
client
,
"Hpsc: 0x%05x, Hfsc: 0x%05x
\n
"
,
HPSC
,
HFSC
);
/* FIXME hardcodes to "Task B"
* write H prescaler integer */
saa7115_write
(
client
,
0xd0
,
(
u8
)
(
HPSC
&
0x3f
));
...
...
@@ -903,10 +903,10 @@ static int saa7115_set_v4lfmt(struct i2c_client *client, struct v4l2_format *fmt
saa7115_write
(
client
,
0xDD
,
(
u8
)
((
HFSC
>>
9
)
&
0xff
));
}
else
{
if
(
is_50hz
)
{
v4l_dbg
(
1
,
client
,
"Setting full 50hz width
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"Setting full 50hz width
\n
"
);
saa7115_writeregs
(
client
,
saa7115_cfg_50hz_fullres_x
);
}
else
{
v4l_dbg
(
1
,
client
,
"Setting full 60hz width
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"Setting full 60hz width
\n
"
);
saa7115_writeregs
(
client
,
saa7115_cfg_60hz_fullres_x
);
}
}
...
...
@@ -915,7 +915,7 @@ static int saa7115_set_v4lfmt(struct i2c_client *client, struct v4l2_format *fmt
if
(
pix
->
height
!=
Vsrc
)
{
VSCY
=
(
int
)((
1024
*
Vsrc
)
/
pix
->
height
);
v4l_dbg
(
1
,
client
,
"Vsrc: %d, Vscy: 0x%05x
\n
"
,
Vsrc
,
VSCY
);
v4l_dbg
(
1
,
debug
,
client
,
"Vsrc: %d, Vscy: 0x%05x
\n
"
,
Vsrc
,
VSCY
);
/* Correct Contrast and Luminance */
saa7115_write
(
client
,
0xd5
,
(
u8
)
(
64
*
1024
/
VSCY
));
...
...
@@ -929,10 +929,10 @@ static int saa7115_set_v4lfmt(struct i2c_client *client, struct v4l2_format *fmt
saa7115_write
(
client
,
0xe3
,
(
u8
)
((
VSCY
>>
8
)
&
0xff
));
}
else
{
if
(
is_50hz
)
{
v4l_dbg
(
1
,
client
,
"Setting full 50Hz height
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"Setting full 50Hz height
\n
"
);
saa7115_writeregs
(
client
,
saa7115_cfg_50hz_fullres_y
);
}
else
{
v4l_dbg
(
1
,
client
,
"Setting full 60hz height
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"Setting full 60hz height
\n
"
);
saa7115_writeregs
(
client
,
saa7115_cfg_60hz_fullres_y
);
}
}
...
...
@@ -1079,7 +1079,7 @@ static int saa7115_command(struct i2c_client *client, unsigned int cmd, void *ar
break
;
status
=
saa7115_read
(
client
,
0x1f
);
v4l_dbg
(
1
,
client
,
"status: 0x%02x
\n
"
,
status
);
v4l_dbg
(
1
,
debug
,
client
,
"status: 0x%02x
\n
"
,
status
);
vt
->
signal
=
((
status
&
(
1
<<
6
))
==
0
)
?
0xffff
:
0x0
;
break
;
}
...
...
@@ -1125,7 +1125,7 @@ static int saa7115_command(struct i2c_client *client, unsigned int cmd, void *ar
break
;
case
VIDIOC_S_INPUT
:
v4l_dbg
(
1
,
client
,
"decoder set input %d
\n
"
,
*
iarg
);
v4l_dbg
(
1
,
debug
,
client
,
"decoder set input %d
\n
"
,
*
iarg
);
/* inputs from 0-9 are available */
if
(
*
iarg
<
0
||
*
iarg
>
9
)
{
return
-
EINVAL
;
...
...
@@ -1133,7 +1133,7 @@ static int saa7115_command(struct i2c_client *client, unsigned int cmd, void *ar
if
(
state
->
input
==
*
iarg
)
break
;
v4l_dbg
(
1
,
client
,
"now setting %s input
\n
"
,
v4l_dbg
(
1
,
debug
,
client
,
"now setting %s input
\n
"
,
*
iarg
>=
6
?
"S-Video"
:
"Composite"
);
state
->
input
=
*
iarg
;
...
...
@@ -1150,7 +1150,7 @@ static int saa7115_command(struct i2c_client *client, unsigned int cmd, void *ar
case
VIDIOC_STREAMON
:
case
VIDIOC_STREAMOFF
:
v4l_dbg
(
1
,
client
,
"%s output
\n
"
,
v4l_dbg
(
1
,
debug
,
client
,
"%s output
\n
"
,
(
cmd
==
VIDIOC_STREAMON
)
?
"enable"
:
"disable"
);
if
(
state
->
enable
!=
(
cmd
==
VIDIOC_STREAMON
))
{
...
...
@@ -1164,7 +1164,7 @@ static int saa7115_command(struct i2c_client *client, unsigned int cmd, void *ar
break
;
case
VIDIOC_INT_RESET
:
v4l_dbg
(
1
,
client
,
"decoder RESET
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"decoder RESET
\n
"
);
saa7115_writeregs
(
client
,
saa7115_cfg_reset_scaler
);
break
;
...
...
@@ -1249,21 +1249,20 @@ static int saa7115_attach(struct i2c_adapter *adapter, int address, int kind)
if
(
!
i2c_check_functionality
(
adapter
,
I2C_FUNC_SMBUS_BYTE_DATA
))
return
0
;
client
=
k
m
alloc
(
sizeof
(
struct
i2c_client
),
GFP_KERNEL
);
client
=
k
z
alloc
(
sizeof
(
struct
i2c_client
),
GFP_KERNEL
);
if
(
client
==
0
)
return
-
ENOMEM
;
memset
(
client
,
0
,
sizeof
(
struct
i2c_client
));
client
->
addr
=
address
;
client
->
adapter
=
adapter
;
client
->
driver
=
&
i2c_driver_saa7115
;
snprintf
(
client
->
name
,
sizeof
(
client
->
name
)
-
1
,
"saa7115"
);
v4l_dbg
(
1
,
client
,
"detecting saa7115 client on address 0x%x
\n
"
,
address
<<
1
);
v4l_dbg
(
1
,
debug
,
client
,
"detecting saa7115 client on address 0x%x
\n
"
,
address
<<
1
);
saa7115_write
(
client
,
0
,
5
);
chip_id
=
saa7115_read
(
client
,
0
)
&
0x0f
;
if
(
chip_id
!=
4
&&
chip_id
!=
5
)
{
v4l_dbg
(
1
,
client
,
"saa7115 not found
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"saa7115 not found
\n
"
);
kfree
(
client
);
return
0
;
}
...
...
@@ -1272,13 +1271,12 @@ static int saa7115_attach(struct i2c_adapter *adapter, int address, int kind)
}
v4l_info
(
client
,
"saa711%d found @ 0x%x (%s)
\n
"
,
chip_id
,
address
<<
1
,
adapter
->
name
);
state
=
k
m
alloc
(
sizeof
(
struct
saa7115_state
),
GFP_KERNEL
);
state
=
k
z
alloc
(
sizeof
(
struct
saa7115_state
),
GFP_KERNEL
);
i2c_set_clientdata
(
client
,
state
);
if
(
state
==
NULL
)
{
kfree
(
client
);
return
-
ENOMEM
;
}
memset
(
state
,
0
,
sizeof
(
struct
saa7115_state
));
state
->
std
=
V4L2_STD_NTSC
;
state
->
input
=
-
1
;
state
->
enable
=
1
;
...
...
@@ -1290,7 +1288,7 @@ static int saa7115_attach(struct i2c_adapter *adapter, int address, int kind)
state
->
ident
=
(
chip_id
==
4
)
?
V4L2_IDENT_SAA7114
:
V4L2_IDENT_SAA7115
;
state
->
audclk_freq
=
48000
;
v4l_dbg
(
1
,
client
,
"writing init values
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"writing init values
\n
"
);
/* init to 60hz/48khz */
saa7115_writeregs
(
client
,
saa7115_init_auto_input
);
...
...
@@ -1303,7 +1301,7 @@ static int saa7115_attach(struct i2c_adapter *adapter, int address, int kind)
i2c_attach_client
(
client
);
v4l_dbg
(
1
,
client
,
"status: (1E) 0x%02x, (1F) 0x%02x
\n
"
,
v4l_dbg
(
1
,
debug
,
client
,
"status: (1E) 0x%02x, (1F) 0x%02x
\n
"
,
saa7115_read
(
client
,
0x1e
),
saa7115_read
(
client
,
0x1f
));
return
0
;
...
...
drivers/media/video/saa711x.c
View file @
593195f9
...
...
@@ -487,20 +487,18 @@ saa711x_detect_client (struct i2c_adapter *adapter,
if
(
!
i2c_check_functionality
(
adapter
,
I2C_FUNC_SMBUS_BYTE_DATA
))
return
0
;
client
=
k
m
alloc
(
sizeof
(
struct
i2c_client
),
GFP_KERNEL
);
client
=
k
z
alloc
(
sizeof
(
struct
i2c_client
),
GFP_KERNEL
);
if
(
client
==
0
)
return
-
ENOMEM
;
memset
(
client
,
0
,
sizeof
(
struct
i2c_client
));
client
->
addr
=
address
;
client
->
adapter
=
adapter
;
client
->
driver
=
&
i2c_driver_saa711x
;
strlcpy
(
I2C_NAME
(
client
),
"saa711x"
,
sizeof
(
I2C_NAME
(
client
)));
decoder
=
k
m
alloc
(
sizeof
(
struct
saa711x
),
GFP_KERNEL
);
decoder
=
k
z
alloc
(
sizeof
(
struct
saa711x
),
GFP_KERNEL
);
if
(
decoder
==
NULL
)
{
kfree
(
client
);
return
-
ENOMEM
;
}
memset
(
decoder
,
0
,
sizeof
(
struct
saa711x
));
decoder
->
norm
=
VIDEO_MODE_NTSC
;
decoder
->
input
=
0
;
decoder
->
enable
=
1
;
...
...
drivers/media/video/saa7127.c
View file @
593195f9
...
...
@@ -338,7 +338,7 @@ static int saa7127_set_vps(struct i2c_client *client, struct v4l2_sliced_vbi_dat
if
(
enable
&&
(
data
->
field
!=
0
||
data
->
line
!=
16
))
return
-
EINVAL
;
if
(
state
->
vps_enable
!=
enable
)
{
v4l_dbg
(
1
,
client
,
"Turn VPS Signal %s
\n
"
,
enable
?
"on"
:
"off"
);
v4l_dbg
(
1
,
debug
,
client
,
"Turn VPS Signal %s
\n
"
,
enable
?
"on"
:
"off"
);
saa7127_write
(
client
,
0x54
,
enable
<<
7
);
state
->
vps_enable
=
enable
;
}
...
...
@@ -350,7 +350,7 @@ static int saa7127_set_vps(struct i2c_client *client, struct v4l2_sliced_vbi_dat
state
->
vps_data
[
2
]
=
data
->
data
[
11
];
state
->
vps_data
[
3
]
=
data
->
data
[
12
];
state
->
vps_data
[
4
]
=
data
->
data
[
13
];
v4l_dbg
(
1
,
client
,
"Set VPS data %02x %02x %02x %02x %02x
\n
"
,
v4l_dbg
(
1
,
debug
,
client
,
"Set VPS data %02x %02x %02x %02x %02x
\n
"
,
state
->
vps_data
[
0
],
state
->
vps_data
[
1
],
state
->
vps_data
[
2
],
state
->
vps_data
[
3
],
state
->
vps_data
[
4
]);
...
...
@@ -373,7 +373,7 @@ static int saa7127_set_cc(struct i2c_client *client, struct v4l2_sliced_vbi_data
if
(
enable
&&
(
data
->
field
!=
0
||
data
->
line
!=
21
))
return
-
EINVAL
;
if
(
state
->
cc_enable
!=
enable
)
{
v4l_dbg
(
1
,
client
,
"Turn CC %s
\n
"
,
enable
?
"on"
:
"off"
);
v4l_dbg
(
1
,
debug
,
client
,
"Turn CC %s
\n
"
,
enable
?
"on"
:
"off"
);
saa7127_write
(
client
,
SAA7127_REG_CLOSED_CAPTION
,
(
state
->
xds_enable
<<
7
)
|
(
enable
<<
6
)
|
0x11
);
state
->
cc_enable
=
enable
;
...
...
@@ -381,7 +381,7 @@ static int saa7127_set_cc(struct i2c_client *client, struct v4l2_sliced_vbi_data
if
(
!
enable
)
return
0
;
v4l_dbg
(
2
,
client
,
"CC data: %04x
\n
"
,
cc
);
v4l_dbg
(
2
,
debug
,
client
,
"CC data: %04x
\n
"
,
cc
);
saa7127_write
(
client
,
SAA7127_REG_LINE_21_ODD_0
,
cc
&
0xff
);
saa7127_write
(
client
,
SAA7127_REG_LINE_21_ODD_1
,
cc
>>
8
);
state
->
cc_data
=
cc
;
...
...
@@ -399,7 +399,7 @@ static int saa7127_set_xds(struct i2c_client *client, struct v4l2_sliced_vbi_dat
if
(
enable
&&
(
data
->
field
!=
1
||
data
->
line
!=
21
))
return
-
EINVAL
;
if
(
state
->
xds_enable
!=
enable
)
{
v4l_dbg
(
1
,
client
,
"Turn XDS %s
\n
"
,
enable
?
"on"
:
"off"
);
v4l_dbg
(
1
,
debug
,
client
,
"Turn XDS %s
\n
"
,
enable
?
"on"
:
"off"
);
saa7127_write
(
client
,
SAA7127_REG_CLOSED_CAPTION
,
(
enable
<<
7
)
|
(
state
->
cc_enable
<<
6
)
|
0x11
);
state
->
xds_enable
=
enable
;
...
...
@@ -407,7 +407,7 @@ static int saa7127_set_xds(struct i2c_client *client, struct v4l2_sliced_vbi_dat
if
(
!
enable
)
return
0
;
v4l_dbg
(
2
,
client
,
"XDS data: %04x
\n
"
,
xds
);
v4l_dbg
(
2
,
debug
,
client
,
"XDS data: %04x
\n
"
,
xds
);
saa7127_write
(
client
,
SAA7127_REG_LINE_21_EVEN_0
,
xds
&
0xff
);
saa7127_write
(
client
,
SAA7127_REG_LINE_21_EVEN_1
,
xds
>>
8
);
state
->
xds_data
=
xds
;
...
...
@@ -424,7 +424,7 @@ static int saa7127_set_wss(struct i2c_client *client, struct v4l2_sliced_vbi_dat
if
(
enable
&&
(
data
->
field
!=
0
||
data
->
line
!=
23
))
return
-
EINVAL
;
if
(
state
->
wss_enable
!=
enable
)
{
v4l_dbg
(
1
,
client
,
"Turn WSS %s
\n
"
,
enable
?
"on"
:
"off"
);
v4l_dbg
(
1
,
debug
,
client
,
"Turn WSS %s
\n
"
,
enable
?
"on"
:
"off"
);
saa7127_write
(
client
,
0x27
,
enable
<<
7
);
state
->
wss_enable
=
enable
;
}
...
...
@@ -433,7 +433,7 @@ static int saa7127_set_wss(struct i2c_client *client, struct v4l2_sliced_vbi_dat
saa7127_write
(
client
,
0x26
,
data
->
data
[
0
]);
saa7127_write
(
client
,
0x27
,
0x80
|
(
data
->
data
[
1
]
&
0x3f
));
v4l_dbg
(
1
,
client
,
"WSS mode: %s
\n
"
,
wss_strs
[
data
->
data
[
0
]
&
0xf
]);
v4l_dbg
(
1
,
debug
,
client
,
"WSS mode: %s
\n
"
,
wss_strs
[
data
->
data
[
0
]
&
0xf
]);
state
->
wss_mode
=
(
data
->
data
[
1
]
&
0x3f
)
<<
8
|
data
->
data
[
0
];
return
0
;
}
...
...
@@ -445,11 +445,11 @@ static int saa7127_set_video_enable(struct i2c_client *client, int enable)
struct
saa7127_state
*
state
=
i2c_get_clientdata
(
client
);
if
(
enable
)
{
v4l_dbg
(
1
,
client
,
"Enable Video Output
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"Enable Video Output
\n
"
);
saa7127_write
(
client
,
0x2d
,
state
->
reg_2d
);
saa7127_write
(
client
,
0x61
,
state
->
reg_61
);
}
else
{
v4l_dbg
(
1
,
client
,
"Disable Video Output
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"Disable Video Output
\n
"
);
saa7127_write
(
client
,
0x2d
,
(
state
->
reg_2d
&
0xf0
));
saa7127_write
(
client
,
0x61
,
(
state
->
reg_61
|
0xc0
));
}
...
...
@@ -465,11 +465,11 @@ static int saa7127_set_std(struct i2c_client *client, v4l2_std_id std)
const
struct
i2c_reg_value
*
inittab
;
if
(
std
&
V4L2_STD_525_60
)
{
v4l_dbg
(
1
,
client
,
"Selecting 60 Hz video Standard
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"Selecting 60 Hz video Standard
\n
"
);
inittab
=
saa7127_init_config_60hz
;
state
->
reg_61
=
SAA7127_60HZ_DAC_CONTROL
;
}
else
{
v4l_dbg
(
1
,
client
,
"Selecting 50 Hz video Standard
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"Selecting 50 Hz video Standard
\n
"
);
inittab
=
saa7127_init_config_50hz
;
state
->
reg_61
=
SAA7127_50HZ_DAC_CONTROL
;
}
...
...
@@ -520,7 +520,7 @@ static int saa7127_set_output_type(struct i2c_client *client, int output)
default:
return
-
EINVAL
;
}
v4l_dbg
(
1
,
client
,
"Selecting %s output type
\n
"
,
output_strs
[
output
]);
v4l_dbg
(
1
,
debug
,
client
,
"Selecting %s output type
\n
"
,
output_strs
[
output
]);
/* Configure Encoder */
saa7127_write
(
client
,
0x2d
,
state
->
reg_2d
);
...
...
@@ -537,12 +537,12 @@ static int saa7127_set_input_type(struct i2c_client *client, int input)
switch
(
input
)
{
case
SAA7127_INPUT_TYPE_NORMAL
:
/* avia */
v4l_dbg
(
1
,
client
,
"Selecting Normal Encoder Input
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"Selecting Normal Encoder Input
\n
"
);
state
->
reg_3a_cb
=
0
;
break
;
case
SAA7127_INPUT_TYPE_TEST_IMAGE
:
/* color bar */
v4l_dbg
(
1
,
client
,
"Selecting Color Bar generator
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"Selecting Color Bar generator
\n
"
);
state
->
reg_3a_cb
=
0x80
;
break
;
...
...
@@ -689,17 +689,16 @@ static int saa7127_attach(struct i2c_adapter *adapter, int address, int kind)
if
(
!
i2c_check_functionality
(
adapter
,
I2C_FUNC_SMBUS_BYTE_DATA
))
return
0
;
client
=
k
m
alloc
(
sizeof
(
struct
i2c_client
),
GFP_KERNEL
);
client
=
k
z
alloc
(
sizeof
(
struct
i2c_client
),
GFP_KERNEL
);
if
(
client
==
0
)
return
-
ENOMEM
;
memset
(
client
,
0
,
sizeof
(
struct
i2c_client
));
client
->
addr
=
address
;
client
->
adapter
=
adapter
;
client
->
driver
=
&
i2c_driver_saa7127
;
snprintf
(
client
->
name
,
sizeof
(
client
->
name
)
-
1
,
"saa7127"
);
v4l_dbg
(
1
,
client
,
"detecting saa7127 client on address 0x%x
\n
"
,
address
<<
1
);
v4l_dbg
(
1
,
debug
,
client
,
"detecting saa7127 client on address 0x%x
\n
"
,
address
<<
1
);
/* First test register 0: Bits 5-7 are a version ID (should be 0),
and bit 2 should also be 0.
...
...
@@ -708,11 +707,11 @@ static int saa7127_attach(struct i2c_adapter *adapter, int address, int kind)
0x1d after a reset and not expected to ever change. */
if
((
saa7127_read
(
client
,
0
)
&
0xe4
)
!=
0
||
(
saa7127_read
(
client
,
0x29
)
&
0x3f
)
!=
0x1d
)
{
v4l_dbg
(
1
,
client
,
"saa7127 not found
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"saa7127 not found
\n
"
);
kfree
(
client
);
return
0
;
}
state
=
k
m
alloc
(
sizeof
(
struct
saa7127_state
),
GFP_KERNEL
);
state
=
k
z
alloc
(
sizeof
(
struct
saa7127_state
),
GFP_KERNEL
);
if
(
state
==
NULL
)
{
kfree
(
client
);
...
...
@@ -720,11 +719,10 @@ static int saa7127_attach(struct i2c_adapter *adapter, int address, int kind)
}
i2c_set_clientdata
(
client
,
state
);
memset
(
state
,
0
,
sizeof
(
struct
saa7127_state
));
/* Configure Encoder */
v4l_dbg
(
1
,
client
,
"Configuring encoder
\n
"
);
v4l_dbg
(
1
,
debug
,
client
,
"Configuring encoder
\n
"
);
saa7127_write_inittab
(
client
,
saa7127_init_config_common
);
saa7127_set_std
(
client
,
V4L2_STD_NTSC
);
saa7127_set_output_type
(
client
,
SAA7127_OUTPUT_TYPE_BOTH
);
...
...
drivers/media/video/saa7134/Kconfig
View file @
593195f9
...
...
@@ -15,7 +15,7 @@ config VIDEO_SAA7134
config VIDEO_SAA7134_ALSA
tristate "Philips SAA7134 DMA audio support"
depends on VIDEO_SAA7134 && SND
select SND_PCM
_OSS
select SND_PCM
---help---
This is a video4linux driver for direct (DMA) audio in
Philips SAA713x based TV cards using ALSA
...
...
drivers/media/video/saa7134/saa6752hs.c
View file @
593195f9
...
...
@@ -511,9 +511,8 @@ static int saa6752hs_attach(struct i2c_adapter *adap, int addr, int kind)
struct
saa6752hs_state
*
h
;
if
(
NULL
==
(
h
=
k
m
alloc
(
sizeof
(
*
h
),
GFP_KERNEL
)))
if
(
NULL
==
(
h
=
k
z
alloc
(
sizeof
(
*
h
),
GFP_KERNEL
)))
return
-
ENOMEM
;
memset
(
h
,
0
,
sizeof
(
*
h
));
h
->
client
=
client_template
;
h
->
params
=
param_defaults
;
h
->
client
.
adapter
=
adap
;
...
...
drivers/media/video/saa7134/saa7134-cards.c