Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xiphi1978
linux
提交
ad552692
L
linux
项目概览
xiphi1978
/
linux
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
L
linux
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
ad552692
编写于
8月 08, 2006
作者:
G
Greg Kroah-Hartman
浏览文件
操作
浏览文件
下载
差异文件
Merge gregkh@master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb
上级
20dbfad8
0851fb48
变更
22
隐藏空白更改
内联
并排
Showing
22 changed file
with
138 addition
and
110 deletion
+138
-110
drivers/media/dvb/bt8xx/dst.c
drivers/media/dvb/bt8xx/dst.c
+27
-31
drivers/media/dvb/dvb-core/Makefile
drivers/media/dvb/dvb-core/Makefile
+3
-3
drivers/media/radio/Kconfig
drivers/media/radio/Kconfig
+11
-1
drivers/media/radio/Makefile
drivers/media/radio/Makefile
+1
-0
drivers/media/radio/dsbr100.c
drivers/media/radio/dsbr100.c
+0
-0
drivers/media/video/Kconfig
drivers/media/video/Kconfig
+0
-12
drivers/media/video/Makefile
drivers/media/video/Makefile
+1
-1
drivers/media/video/compat_ioctl32.c
drivers/media/video/compat_ioctl32.c
+28
-4
drivers/media/video/cx25840/cx25840-core.c
drivers/media/video/cx25840/cx25840-core.c
+2
-2
drivers/media/video/cx88/cx88-video.c
drivers/media/video/cx88/cx88-video.c
+2
-2
drivers/media/video/msp3400-kthreads.c
drivers/media/video/msp3400-kthreads.c
+2
-2
drivers/media/video/pwc/Kconfig
drivers/media/video/pwc/Kconfig
+1
-1
drivers/media/video/pwc/pwc-if.c
drivers/media/video/pwc/pwc-if.c
+1
-0
drivers/media/video/saa7134/saa7134-video.c
drivers/media/video/saa7134/saa7134-video.c
+1
-1
drivers/media/video/tuner-types.c
drivers/media/video/tuner-types.c
+8
-6
drivers/media/video/v4l1-compat.c
drivers/media/video/v4l1-compat.c
+4
-0
drivers/media/video/v4l2-common.c
drivers/media/video/v4l2-common.c
+3
-3
drivers/media/video/videodev.c
drivers/media/video/videodev.c
+1
-1
drivers/media/video/vivi.c
drivers/media/video/vivi.c
+2
-2
include/media/v4l2-dev.h
include/media/v4l2-dev.h
+1
-1
sound/oss/Kconfig
sound/oss/Kconfig
+3
-3
sound/pci/Kconfig
sound/pci/Kconfig
+36
-34
未找到文件。
drivers/media/dvb/bt8xx/dst.c
浏览文件 @
ad552692
...
...
@@ -393,7 +393,7 @@ static int dst_set_bandwidth(struct dst_state *state, fe_bandwidth_t bandwidth)
state
->
bandwidth
=
bandwidth
;
if
(
state
->
dst_type
!=
DST_TYPE_IS_TERR
)
return
0
;
return
-
EOPNOTSUPP
;
switch
(
bandwidth
)
{
case
BANDWIDTH_6_MHZ
:
...
...
@@ -462,7 +462,7 @@ static int dst_set_symbolrate(struct dst_state *state, u32 srate)
state
->
symbol_rate
=
srate
;
if
(
state
->
dst_type
==
DST_TYPE_IS_TERR
)
{
return
0
;
return
-
EOPNOTSUPP
;
}
dprintk
(
verbose
,
DST_INFO
,
1
,
"set symrate %u"
,
srate
);
srate
/=
1000
;
...
...
@@ -504,7 +504,7 @@ static int dst_set_symbolrate(struct dst_state *state, u32 srate)
static
int
dst_set_modulation
(
struct
dst_state
*
state
,
fe_modulation_t
modulation
)
{
if
(
state
->
dst_type
!=
DST_TYPE_IS_CABLE
)
return
0
;
return
-
EOPNOTSUPP
;
state
->
modulation
=
modulation
;
switch
(
modulation
)
{
...
...
@@ -1234,7 +1234,7 @@ int dst_command(struct dst_state *state, u8 *data, u8 len)
goto
error
;
}
if
(
write_dst
(
state
,
data
,
len
))
{
dprintk
(
verbose
,
DST_INFO
,
1
,
"Tring to recover.. "
);
dprintk
(
verbose
,
DST_INFO
,
1
,
"Tr
y
ing to recover.. "
);
if
((
dst_error_recovery
(
state
))
<
0
)
{
dprintk
(
verbose
,
DST_ERROR
,
1
,
"Recovery Failed."
);
goto
error
;
...
...
@@ -1328,15 +1328,13 @@ static int dst_tone_power_cmd(struct dst_state *state)
{
u8
paket
[
8
]
=
{
0x00
,
0x09
,
0xff
,
0xff
,
0x01
,
0x00
,
0x00
,
0x00
};
if
(
state
->
dst_type
==
DST_TYPE_IS_TERR
)
return
0
;
if
(
state
->
dst_type
!=
DST_TYPE_IS_SAT
)
return
-
EOPNOTSUPP
;
paket
[
4
]
=
state
->
tx_tuna
[
4
];
paket
[
2
]
=
state
->
tx_tuna
[
2
];
paket
[
3
]
=
state
->
tx_tuna
[
3
];
paket
[
7
]
=
dst_check_sum
(
paket
,
7
);
dst_command
(
state
,
paket
,
8
);
return
0
;
return
dst_command
(
state
,
paket
,
8
);
}
static
int
dst_get_tuna
(
struct
dst_state
*
state
)
...
...
@@ -1465,7 +1463,7 @@ static int dst_set_diseqc(struct dvb_frontend *fe, struct dvb_diseqc_master_cmd
u8
paket
[
8
]
=
{
0x00
,
0x08
,
0x04
,
0xe0
,
0x10
,
0x38
,
0xf0
,
0xec
};
if
(
state
->
dst_type
!=
DST_TYPE_IS_SAT
)
return
0
;
return
-
EOPNOTSUPP
;
if
(
cmd
->
msg_len
>
0
&&
cmd
->
msg_len
<
5
)
memcpy
(
&
paket
[
3
],
cmd
->
msg
,
cmd
->
msg_len
);
else
if
(
cmd
->
msg_len
==
5
&&
state
->
dst_hw_cap
&
DST_TYPE_HAS_DISEQC5
)
...
...
@@ -1473,18 +1471,17 @@ static int dst_set_diseqc(struct dvb_frontend *fe, struct dvb_diseqc_master_cmd
else
return
-
EINVAL
;
paket
[
7
]
=
dst_check_sum
(
&
paket
[
0
],
7
);
dst_command
(
state
,
paket
,
8
);
return
0
;
return
dst_command
(
state
,
paket
,
8
);
}
static
int
dst_set_voltage
(
struct
dvb_frontend
*
fe
,
fe_sec_voltage_t
voltage
)
{
int
need_cmd
;
int
need_cmd
,
retval
=
0
;
struct
dst_state
*
state
=
fe
->
demodulator_priv
;
state
->
voltage
=
voltage
;
if
(
state
->
dst_type
!=
DST_TYPE_IS_SAT
)
return
0
;
return
-
EOPNOTSUPP
;
need_cmd
=
0
;
...
...
@@ -1506,9 +1503,9 @@ static int dst_set_voltage(struct dvb_frontend *fe, fe_sec_voltage_t voltage)
}
if
(
need_cmd
)
dst_tone_power_cmd
(
state
);
retval
=
dst_tone_power_cmd
(
state
);
return
0
;
return
retval
;
}
static
int
dst_set_tone
(
struct
dvb_frontend
*
fe
,
fe_sec_tone_mode_t
tone
)
...
...
@@ -1517,7 +1514,7 @@ static int dst_set_tone(struct dvb_frontend *fe, fe_sec_tone_mode_t tone)
state
->
tone
=
tone
;
if
(
state
->
dst_type
!=
DST_TYPE_IS_SAT
)
return
0
;
return
-
EOPNOTSUPP
;
switch
(
tone
)
{
case
SEC_TONE_OFF
:
...
...
@@ -1533,9 +1530,7 @@ static int dst_set_tone(struct dvb_frontend *fe, fe_sec_tone_mode_t tone)
default:
return
-
EINVAL
;
}
dst_tone_power_cmd
(
state
);
return
0
;
return
dst_tone_power_cmd
(
state
);
}
static
int
dst_send_burst
(
struct
dvb_frontend
*
fe
,
fe_sec_mini_cmd_t
minicmd
)
...
...
@@ -1543,7 +1538,7 @@ static int dst_send_burst(struct dvb_frontend *fe, fe_sec_mini_cmd_t minicmd)
struct
dst_state
*
state
=
fe
->
demodulator_priv
;
if
(
state
->
dst_type
!=
DST_TYPE_IS_SAT
)
return
0
;
return
-
EOPNOTSUPP
;
state
->
minicmd
=
minicmd
;
switch
(
minicmd
)
{
case
SEC_MINI_A
:
...
...
@@ -1553,9 +1548,7 @@ static int dst_send_burst(struct dvb_frontend *fe, fe_sec_mini_cmd_t minicmd)
state
->
tx_tuna
[
3
]
=
0xff
;
break
;
}
dst_tone_power_cmd
(
state
);
return
0
;
return
dst_tone_power_cmd
(
state
);
}
...
...
@@ -1608,28 +1601,31 @@ static int dst_read_signal_strength(struct dvb_frontend *fe, u16 *strength)
{
struct
dst_state
*
state
=
fe
->
demodulator_priv
;
dst_get_signal
(
state
);
int
retval
=
dst_get_signal
(
state
);
*
strength
=
state
->
decode_strength
;
return
0
;
return
retval
;
}
static
int
dst_read_snr
(
struct
dvb_frontend
*
fe
,
u16
*
snr
)
{
struct
dst_state
*
state
=
fe
->
demodulator_priv
;
dst_get_signal
(
state
);
int
retval
=
dst_get_signal
(
state
);
*
snr
=
state
->
decode_snr
;
return
0
;
return
retval
;
}
static
int
dst_set_frontend
(
struct
dvb_frontend
*
fe
,
struct
dvb_frontend_parameters
*
p
)
{
int
retval
=
-
EINVAL
;
struct
dst_state
*
state
=
fe
->
demodulator_priv
;
if
(
p
!=
NULL
)
{
dst_set_freq
(
state
,
p
->
frequency
);
retval
=
dst_set_freq
(
state
,
p
->
frequency
);
if
(
retval
!=
0
)
return
retval
;
dprintk
(
verbose
,
DST_DEBUG
,
1
,
"Set Frequency=[%d]"
,
p
->
frequency
);
if
(
state
->
dst_type
==
DST_TYPE_IS_SAT
)
{
...
...
@@ -1647,10 +1643,10 @@ static int dst_set_frontend(struct dvb_frontend *fe, struct dvb_frontend_paramet
dst_set_symbolrate
(
state
,
p
->
u
.
qam
.
symbol_rate
);
dst_set_modulation
(
state
,
p
->
u
.
qam
.
modulation
);
}
dst_write_tuna
(
fe
);
retval
=
dst_write_tuna
(
fe
);
}
return
0
;
return
retval
;
}
static
int
dst_tune_frontend
(
struct
dvb_frontend
*
fe
,
...
...
drivers/media/dvb/dvb-core/Makefile
浏览文件 @
ad552692
...
...
@@ -2,8 +2,8 @@
# Makefile for the kernel DVB device drivers.
#
dvb-core-objs
=
dvbdev.o dmxdev.o dvb_demux.o dvb_filter.o
\
dvb_ca_en50221.o dvb_frontend.o
\
dvb_net.o dvb_ringbuffer.o dvb_math.o
dvb-core-objs
:
=
dvbdev.o dmxdev.o dvb_demux.o dvb_filter.o
\
dvb_ca_en50221.o dvb_frontend.o
\
dvb_net.o dvb_ringbuffer.o dvb_math.o
obj-$(CONFIG_DVB_CORE)
+=
dvb-core.o
drivers/media/radio/Kconfig
浏览文件 @
ad552692
...
...
@@ -350,5 +350,15 @@ config RADIO_ZOLTRIX_PORT
help
Enter the I/O port of your Zoltrix radio card.
endmenu
config USB_DSBR
tristate "D-Link USB FM radio support (EXPERIMENTAL)"
depends on USB && VIDEO_V4L1 && EXPERIMENTAL
---help---
Say Y here if you want to connect this type of radio to your
computer's USB port. Note that the audio is not digital, and
you must connect the line out connector to a sound card or a
set of speakers.
To compile this driver as a module, choose M here: the
module will be called dsbr100.
endmenu
drivers/media/radio/Makefile
浏览文件 @
ad552692
...
...
@@ -20,5 +20,6 @@ obj-$(CONFIG_RADIO_GEMTEK) += radio-gemtek.o
obj-$(CONFIG_RADIO_GEMTEK_PCI)
+=
radio-gemtek-pci.o
obj-$(CONFIG_RADIO_TRUST)
+=
radio-trust.o
obj-$(CONFIG_RADIO_MAESTRO)
+=
radio-maestro.o
obj-$(CONFIG_USB_DSBR)
+=
dsbr100.o
EXTRA_CFLAGS
+=
-Isound
drivers/media/
vide
o/dsbr100.c
→
drivers/media/
radi
o/dsbr100.c
浏览文件 @
ad552692
文件已移动
drivers/media/video/Kconfig
浏览文件 @
ad552692
...
...
@@ -449,18 +449,6 @@ source "drivers/media/video/pvrusb2/Kconfig"
source "drivers/media/video/em28xx/Kconfig"
config USB_DSBR
tristate "D-Link USB FM radio support (EXPERIMENTAL)"
depends on USB && VIDEO_V4L1 && EXPERIMENTAL
---help---
Say Y here if you want to connect this type of radio to your
computer's USB port. Note that the audio is not digital, and
you must connect the line out connector to a sound card or a
set of speakers.
To compile this driver as a module, choose M here: the
module will be called dsbr100.
source "drivers/media/video/usbvideo/Kconfig"
source "drivers/media/video/et61x251/Kconfig"
...
...
drivers/media/video/Makefile
浏览文件 @
ad552692
...
...
@@ -77,7 +77,6 @@ obj-$(CONFIG_VIDEO_UPD64083) += upd64083.o
obj-$(CONFIG_VIDEO_CX2341X)
+=
cx2341x.o
obj-$(CONFIG_USB_DABUSB)
+=
dabusb.o
obj-$(CONFIG_USB_DSBR)
+=
dsbr100.o
obj-$(CONFIG_USB_OV511)
+=
ov511.o
obj-$(CONFIG_USB_SE401)
+=
se401.o
obj-$(CONFIG_USB_STV680)
+=
stv680.o
...
...
@@ -91,6 +90,7 @@ obj-$(CONFIG_USB_ZC0301) += zc0301/
obj-$(CONFIG_USB_IBMCAM)
+=
usbvideo/
obj-$(CONFIG_USB_KONICAWC)
+=
usbvideo/
obj-$(CONFIG_USB_VICAM)
+=
usbvideo/
obj-$(CONFIG_USB_QUICKCAM_MESSENGER)
+=
usbvideo/
obj-$(CONFIG_VIDEO_VIVI)
+=
vivi.o
...
...
drivers/media/video/compat_ioctl32.c
浏览文件 @
ad552692
...
...
@@ -21,7 +21,7 @@
#ifdef CONFIG_COMPAT
#ifdef CONFIG_VIDEO_V4L1_COMPAT
struct
video_tuner32
{
compat_int_t
tuner
;
char
name
[
32
];
...
...
@@ -107,6 +107,7 @@ struct video_window32 {
compat_caddr_t
clips
;
compat_int_t
clipcount
;
};
#endif
static
int
native_ioctl
(
struct
file
*
file
,
unsigned
int
cmd
,
unsigned
long
arg
)
{
...
...
@@ -124,6 +125,7 @@ static int native_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
}
#ifdef CONFIG_VIDEO_V4L1_COMPAT
/* You get back everything except the clips... */
static
int
put_video_window32
(
struct
video_window
*
kp
,
struct
video_window32
__user
*
up
)
{
...
...
@@ -138,6 +140,7 @@ static int put_video_window32(struct video_window *kp, struct video_window32 __u
return
-
EFAULT
;
return
0
;
}
#endif
struct
v4l2_clip32
{
...
...
@@ -490,6 +493,7 @@ static inline int put_v4l2_input(struct v4l2_input *kp, struct v4l2_input __user
return
0
;
}
#ifdef CONFIG_VIDEO_V4L1_COMPAT
struct
video_code32
{
char
loadwhat
[
16
];
/* name or tag of file being passed */
...
...
@@ -517,6 +521,8 @@ static inline int microcode32(struct video_code *kp, struct video_code32 __user
#define VIDIOCSFREQ32 _IOW('v',15, u32)
#define VIDIOCSMICROCODE32 _IOW('v',27, struct video_code32)
#endif
/* VIDIOC_ENUMINPUT32 is VIDIOC_ENUMINPUT minus 4 bytes of padding alignement */
#define VIDIOC_ENUMINPUT32 VIDIOC_ENUMINPUT - _IOC(0, 0, 0, 4)
#define VIDIOC_G_FMT32 _IOWR ('V', 4, struct v4l2_format32)
...
...
@@ -537,6 +543,7 @@ static inline int microcode32(struct video_code *kp, struct video_code32 __user
#define VIDIOC_S_INPUT32 _IOWR ('V', 39, compat_int_t)
#define VIDIOC_TRY_FMT32 _IOWR ('V', 64, struct v4l2_format32)
#ifdef CONFIG_VIDEO_V4L1_COMPAT
enum
{
MaxClips
=
(
~
0U
-
sizeof
(
struct
video_window
))
/
sizeof
(
struct
video_clip
)
};
...
...
@@ -601,14 +608,17 @@ static int do_set_window(struct file *file, unsigned int cmd, unsigned long arg)
return
native_ioctl
(
file
,
VIDIOCSWIN
,
(
unsigned
long
)
vw
);
}
#endif
static
int
do_video_ioctl
(
struct
file
*
file
,
unsigned
int
cmd
,
unsigned
long
arg
)
{
union
{
#ifdef CONFIG_VIDEO_V4L1_COMPAT
struct
video_tuner
vt
;
struct
video_buffer
vb
;
struct
video_window
vw
;
struct
video_code
vc
;
#endif
struct
v4l2_format
v2f
;
struct
v4l2_buffer
v2b
;
struct
v4l2_framebuffer
v2fb
;
...
...
@@ -624,6 +634,7 @@ static int do_video_ioctl(struct file *file, unsigned int cmd, unsigned long arg
/* First, convert the command. */
switch
(
cmd
)
{
#ifdef CONFIG_VIDEO_V4L1_COMPAT
case
VIDIOCGTUNER32
:
cmd
=
VIDIOCGTUNER
;
break
;
case
VIDIOCSTUNER32
:
cmd
=
VIDIOCSTUNER
;
break
;
case
VIDIOCGWIN32
:
cmd
=
VIDIOCGWIN
;
break
;
...
...
@@ -631,6 +642,8 @@ static int do_video_ioctl(struct file *file, unsigned int cmd, unsigned long arg
case
VIDIOCSFBUF32
:
cmd
=
VIDIOCSFBUF
;
break
;
case
VIDIOCGFREQ32
:
cmd
=
VIDIOCGFREQ
;
break
;
case
VIDIOCSFREQ32
:
cmd
=
VIDIOCSFREQ
;
break
;
case
VIDIOCSMICROCODE32
:
cmd
=
VIDIOCSMICROCODE
;
break
;
#endif
case
VIDIOC_G_FMT32
:
cmd
=
VIDIOC_G_FMT
;
break
;
case
VIDIOC_S_FMT32
:
cmd
=
VIDIOC_S_FMT
;
break
;
case
VIDIOC_QUERYBUF32
:
cmd
=
VIDIOC_QUERYBUF
;
break
;
...
...
@@ -647,10 +660,10 @@ static int do_video_ioctl(struct file *file, unsigned int cmd, unsigned long arg
case
VIDIOC_G_INPUT32
:
cmd
=
VIDIOC_G_INPUT
;
break
;
case
VIDIOC_S_INPUT32
:
cmd
=
VIDIOC_S_INPUT
;
break
;
case
VIDIOC_TRY_FMT32
:
cmd
=
VIDIOC_TRY_FMT
;
break
;
case
VIDIOCSMICROCODE32
:
cmd
=
VIDIOCSMICROCODE
;
break
;
};
switch
(
cmd
)
{
#ifdef CONFIG_VIDEO_V4L1_COMPAT
case
VIDIOCSTUNER
:
case
VIDIOCGTUNER
:
err
=
get_video_tuner32
(
&
karg
.
vt
,
up
);
...
...
@@ -664,6 +677,7 @@ static int do_video_ioctl(struct file *file, unsigned int cmd, unsigned long arg
break
;
case
VIDIOCSFREQ
:
#endif
case
VIDIOC_S_INPUT
:
case
VIDIOC_OVERLAY
:
case
VIDIOC_STREAMON
:
...
...
@@ -717,18 +731,21 @@ static int do_video_ioctl(struct file *file, unsigned int cmd, unsigned long arg
compatible_arg
=
0
;
break
;
#ifdef CONFIG_VIDEO_V4L1_COMPAT
case
VIDIOCGWIN
:
case
VIDIOCGFBUF
:
case
VIDIOCGFREQ
:
#endif
case
VIDIOC_G_FBUF
:
case
VIDIOC_G_INPUT
:
compatible_arg
=
0
;
#ifdef CONFIG_VIDEO_V4L1_COMPAT
case
VIDIOCSMICROCODE
:
err
=
microcode32
(
&
karg
.
vc
,
up
);
compatible_arg
=
0
;
break
;
#endif
};
if
(
err
)
goto
out
;
...
...
@@ -743,6 +760,7 @@ static int do_video_ioctl(struct file *file, unsigned int cmd, unsigned long arg
}
if
(
err
==
0
)
{
switch
(
cmd
)
{
#ifdef CONFIG_VIDEO_V4L1_COMPAT
case
VIDIOCGTUNER
:
err
=
put_video_tuner32
(
&
karg
.
vt
,
up
);
break
;
...
...
@@ -754,7 +772,7 @@ static int do_video_ioctl(struct file *file, unsigned int cmd, unsigned long arg
case
VIDIOCGFBUF
:
err
=
put_video_buffer32
(
&
karg
.
vb
,
up
);
break
;
#endif
case
VIDIOC_G_FBUF
:
err
=
put_v4l2_framebuffer32
(
&
karg
.
v2fb
,
up
);
break
;
...
...
@@ -792,7 +810,9 @@ static int do_video_ioctl(struct file *file, unsigned int cmd, unsigned long arg
err
=
put_v4l2_input32
(
&
karg
.
v2i
,
up
);
break
;
#ifdef CONFIG_VIDEO_V4L1_COMPAT
case
VIDIOCGFREQ
:
#endif
case
VIDIOC_G_INPUT
:
err
=
put_user
(((
u32
)
karg
.
vx
),
(
u32
__user
*
)
up
);
break
;
...
...
@@ -810,6 +830,7 @@ long v4l_compat_ioctl32(struct file *file, unsigned int cmd, unsigned long arg)
return
ret
;
switch
(
cmd
)
{
#ifdef CONFIG_VIDEO_V4L1_COMPAT
case
VIDIOCSWIN32
:
ret
=
do_set_window
(
file
,
cmd
,
arg
);
break
;
...
...
@@ -820,6 +841,7 @@ long v4l_compat_ioctl32(struct file *file, unsigned int cmd, unsigned long arg)
case
VIDIOCSFBUF32
:
case
VIDIOCGFREQ32
:
case
VIDIOCSFREQ32
:
#endif
case
VIDIOC_QUERYCAP
:
case
VIDIOC_ENUM_FMT
:
case
VIDIOC_G_FMT32
:
...
...
@@ -851,6 +873,7 @@ long v4l_compat_ioctl32(struct file *file, unsigned int cmd, unsigned long arg)
ret
=
do_video_ioctl
(
file
,
cmd
,
arg
);
break
;
#ifdef CONFIG_VIDEO_V4L1_COMPAT
/* Little v, the video4linux ioctls (conflict?) */
case
VIDIOCGCAP
:
case
VIDIOCGCHAN
:
...
...
@@ -879,6 +902,7 @@ long v4l_compat_ioctl32(struct file *file, unsigned int cmd, unsigned long arg)
case
_IOR
(
'v'
,
BASE_VIDIOCPRIVATE
+
7
,
int
):
ret
=
native_ioctl
(
file
,
cmd
,
(
unsigned
long
)
compat_ptr
(
arg
));
break
;
#endif
default:
v4l_print_ioctl
(
"compat_ioctl32"
,
cmd
);
}
...
...
drivers/media/video/cx25840/cx25840-core.c
浏览文件 @
ad552692
...
...
@@ -104,8 +104,8 @@ u32 cx25840_read4(struct i2c_client * client, u16 addr)
if
(
i2c_master_recv
(
client
,
buffer
,
4
)
<
4
)
return
0
;
return
(
buffer
[
0
]
<<
24
)
|
(
buffer
[
1
]
<<
16
)
|
(
buffer
[
2
]
<<
8
)
|
buffer
[
3
];
return
(
buffer
[
3
]
<<
24
)
|
(
buffer
[
2
]
<<
16
)
|
(
buffer
[
1
]
<<
8
)
|
buffer
[
0
];
}
int
cx25840_and_or
(
struct
i2c_client
*
client
,
u16
addr
,
unsigned
and_mask
,
...
...
drivers/media/video/cx88/cx88-video.c
浏览文件 @
ad552692
...
...
@@ -1225,7 +1225,7 @@ static int video_do_ioctl(struct inode *inode, struct file *file,
struct
v4l2_format
*
f
=
arg
;
return
cx8800_try_fmt
(
dev
,
fh
,
f
);
}
#ifdef CONFIG_V4L1_COMPAT
#ifdef CONFIG_V
IDEO_V
4L1_COMPAT
/* --- streaming capture ------------------------------------- */
case
VIDIOCGMBUF
:
{
...
...
@@ -1584,7 +1584,7 @@ static int radio_do_ioctl(struct inode *inode, struct file *file,
*
id
=
0
;
return
0
;
}
#ifdef CONFIG_V4L1_COMPAT
#ifdef CONFIG_V
IDEO_V
4L1_COMPAT
case
VIDIOCSTUNER
:
{
struct
video_tuner
*
v
=
arg
;
...
...
drivers/media/video/msp3400-kthreads.c
浏览文件 @
ad552692
...
...
@@ -961,10 +961,10 @@ int msp34xxg_thread(void *data)
/* setup the chip*/
msp34xxg_reset
(
client
);
state
->
std
=
state
->
radio
?
0x40
:
msp_standard
;
if
(
state
->
std
!=
1
)
goto
unmute
;
/* start autodetect */
msp_write_dem
(
client
,
0x20
,
state
->
std
);
if
(
state
->
std
!=
1
)
goto
unmute
;
/* watch autodetect */
v4l_dbg
(
1
,
msp_debug
,
client
,
"started autodetect, waiting for result
\n
"
);
...
...
drivers/media/video/pwc/Kconfig
浏览文件 @
ad552692
...
...
@@ -30,7 +30,7 @@ config USB_PWC
config USB_PWC_DEBUG
bool "USB Philips Cameras verbose debug"
depends USB_PWC
depends
on
USB_PWC
help
Say Y here in order to have the pwc driver generate verbose debugging
messages.
...
...
drivers/media/video/pwc/pwc-if.c
浏览文件 @
ad552692
...
...
@@ -160,6 +160,7 @@ static struct file_operations pwc_fops = {
.
poll
=
pwc_video_poll
,
.
mmap
=
pwc_video_mmap
,
.
ioctl
=
pwc_video_ioctl
,
.
compat_ioctl
=
v4l_compat_ioctl32
,
.
llseek
=
no_llseek
,
};
static
struct
video_device
pwc_template
=
{
...
...
drivers/media/video/saa7134/saa7134-video.c
浏览文件 @
ad552692
...
...
@@ -2087,7 +2087,7 @@ static int video_do_ioctl(struct inode *inode, struct file *file,
struct
v4l2_format
*
f
=
arg
;
return
saa7134_try_fmt
(
dev
,
fh
,
f
);
}
#ifdef CONFIG_V4L1_COMPAT
#ifdef CONFIG_V
IDEO_V
4L1_COMPAT
case
VIDIOCGMBUF
:
{
struct
video_mbuf
*
mbuf
=
arg
;
...
...
drivers/media/video/tuner-types.c
浏览文件 @
ad552692
...
...
@@ -1027,10 +1027,11 @@ static struct tuner_params tuner_tnf_5335mf_params[] = {
/* 70-79 */
/* ------------ TUNER_SAMSUNG_TCPN_2121P30A - Samsung NTSC ------------ */
/* '+ 4' turns on the Low Noise Amplifier */
static
struct
tuner_range
tuner_samsung_tcpn_2121p30a_ntsc_ranges
[]
=
{
{
16
*
130
.
00
/*MHz*/
,
0xce
,
0x01
,
},
{
16
*
364
.
50
/*MHz*/
,
0xce
,
0x02
,
},
{
16
*
999
.
99
,
0xce
,
0x08
,
},
{
16
*
130
.
00
/*MHz*/
,
0xce
,
0x01
+
4
,
},
{
16
*
364
.
50
/*MHz*/
,
0xce
,
0x02
+
4
,
},
{
16
*
999
.
99
,
0xce
,
0x08
+
4
,
},
};
static
struct
tuner_params
tuner_samsung_tcpn_2121p30a_params
[]
=
{
...
...
@@ -1060,10 +1061,11 @@ static struct tuner_params tuner_thomson_fe6600_params[] = {
/* ------------ TUNER_SAMSUNG_TCPG_6121P30A - Samsung PAL ------------ */
/* '+ 4' turns on the Low Noise Amplifier */
static
struct
tuner_range
tuner_samsung_tcpg_6121p30a_pal_ranges
[]
=
{
{
16
*
146
.
25
/*MHz*/
,
0xce
,
0x01
,
},
{
16
*
428
.
50
/*MHz*/
,
0xce
,
0x02
,
},
{
16
*
999
.
99
,
0xce
,
0x08
,
},
{
16
*
146
.
25
/*MHz*/
,
0xce
,
0x01
+
4
,
},
{
16
*
428
.
50
/*MHz*/
,
0xce
,
0x02
+
4
,
},
{
16
*
999
.
99
,
0xce
,
0x08
+
4
,
},
};
static
struct
tuner_params
tuner_samsung_tcpg_6121p30a_params
[]
=
{
...
...
drivers/media/video/v4l1-compat.c
浏览文件 @
ad552692
...
...
@@ -599,6 +599,10 @@ v4l_compat_translate_ioctl(struct inode *inode,
dprintk
(
"VIDIOCGPICT / VIDIOC_G_FMT: %d
\n
"
,
err
);
break
;
}
pict
->
depth
=
((
fmt2
->
fmt
.
pix
.
bytesperline
<<
3
)
+
(
fmt2
->
fmt
.
pix
.
width
-
1
)
)
/
fmt2
->
fmt
.
pix
.
width
;
pict
->
palette
=
pixelformat_to_palette
(
fmt2
->
fmt
.
pix
.
pixelformat
);
break
;
...
...
drivers/media/video/v4l2-common.c
浏览文件 @
ad552692
...
...
@@ -202,7 +202,7 @@ static char *v4l2_memory_names[] = {
/* ------------------------------------------------------------------ */
/* debug help functions */
#ifdef CONFIG_V4L1_COMPAT
#ifdef CONFIG_V
IDEO_V
4L1_COMPAT
static
const
char
*
v4l1_ioctls
[]
=
{
[
_IOC_NR
(
VIDIOCGCAP
)]
=
"VIDIOCGCAP"
,
[
_IOC_NR
(
VIDIOCGCHAN
)]
=
"VIDIOCGCHAN"
,
...
...
@@ -301,7 +301,7 @@ static const char *v4l2_ioctls[] = {
#define V4L2_IOCTLS ARRAY_SIZE(v4l2_ioctls)
static
const
char
*
v4l2_int_ioctls
[]
=
{
#ifdef CONFIG_V4L1_COMPAT
#ifdef CONFIG_V
IDEO_V
4L1_COMPAT
[
_IOC_NR
(
DECODER_GET_CAPABILITIES
)]
=
"DECODER_GET_CAPABILITIES"
,
[
_IOC_NR
(
DECODER_GET_STATUS
)]
=
"DECODER_GET_STATUS"
,
[
_IOC_NR
(
DECODER_SET_NORM
)]
=
"DECODER_SET_NORM"
,
...
...
@@ -367,7 +367,7 @@ void v4l_printk_ioctl(unsigned int cmd)
(
_IOC_NR
(
cmd
)
<
V4L2_INT_IOCTLS
)
?
v4l2_int_ioctls
[
_IOC_NR
(
cmd
)]
:
"UNKNOWN"
,
dir
,
cmd
);
break
;
#ifdef CONFIG_V4L1_COMPAT
#ifdef CONFIG_V
IDEO_V
4L1_COMPAT
case
'v'
:
printk
(
"v4l1 ioctl %s, dir=%s (0x%08x)
\n
"
,
(
_IOC_NR
(
cmd
)
<
V4L1_IOCTLS
)
?
...
...
drivers/media/video/videodev.c
浏览文件 @
ad552692
...
...
@@ -760,7 +760,7 @@ static int __video_do_ioctl(struct inode *inode, struct file *file,
ret
=
vfd
->
vidioc_overlay
(
file
,
fh
,
*
i
);
break
;
}
#ifdef CONFIG_V4L1_COMPAT
#ifdef CONFIG_V
IDEO_V
4L1_COMPAT
/* --- streaming capture ------------------------------------- */
case
VIDIOCGMBUF
:
{
...
...
drivers/media/video/vivi.c
浏览文件 @
ad552692
...
...
@@ -986,7 +986,7 @@ static int vidioc_dqbuf (struct file *file, void *priv, struct v4l2_buffer *p)
file
->
f_flags
&
O_NONBLOCK
));
}
#ifdef CONFIG_V4L1_COMPAT
#ifdef CONFIG_V
IDEO_V
4L1_COMPAT
static
int
vidiocgmbuf
(
struct
file
*
file
,
void
*
priv
,
struct
video_mbuf
*
mbuf
)
{
struct
vivi_fh
*
fh
=
priv
;
...
...
@@ -1328,7 +1328,7 @@ static struct video_device vivi = {
.
vidioc_s_ctrl
=
vidioc_s_ctrl
,
.
vidioc_streamon
=
vidioc_streamon
,
.
vidioc_streamoff
=
vidioc_streamoff
,
#ifdef CONFIG_V4L1_COMPAT
#ifdef CONFIG_V
IDEO_V
4L1_COMPAT
.
vidiocgmbuf
=
vidiocgmbuf
,
#endif
.
tvnorms
=
tvnorms
,
...
...
include/media/v4l2-dev.h
浏览文件 @
ad552692
...
...
@@ -16,7 +16,7 @@
#include <linux/device.h>
#include <linux/mutex.h>
#include <linux/compiler.h>
/* need __user */
#ifdef CONFIG_VIDEO_V4L1
#ifdef CONFIG_VIDEO_V4L1
_COMPAT
#include <linux/videodev.h>
#else
#include <linux/videodev2.h>
...
...
sound/oss/Kconfig
浏览文件 @
ad552692
...
...
@@ -31,7 +31,7 @@ config SOUND_EMU10K1
For more information on this driver and the degree of support for
the different card models please check:
<http://sourceforge.net/projects/emu10k1/>
<http://sourceforge.net/projects/emu10k1/>
It is now possible to load dsp microcode patches into the EMU10K1
chip. These patches are used to implement real time sound
...
...
@@ -140,7 +140,7 @@ config SOUND_TRIDENT
system support" and "Sysctl support", and after the /proc file
system has been mounted, executing the command
command what is enabled
command what is enabled
echo 0>/proc/ALi5451 pcm out is also set to S/PDIF out. (Default).
...
...
@@ -838,7 +838,7 @@ config SOUND_WAVEARTIST
config SOUND_TVMIXER
tristate "TV card (bt848) mixer support"
depends on SOUND_PRIME && I2C
depends on SOUND_PRIME && I2C
&& VIDEO_V4L1
help
Support for audio mixer facilities on the BT848 TV frame-grabber
card.
...
...
sound/pci/Kconfig
浏览文件 @
ad552692
...
...
@@ -16,16 +16,16 @@ config SND_AD1889
will be called snd-ad1889.
config SND_ALS300
tristate "Avance Logic ALS300/ALS300+"
depends on SND
select SND_PCM
select SND_AC97_CODEC
select SND_OPL3_LIB
help
Say 'Y' or 'M' to include support for Avance Logic ALS300/ALS300+
tristate "Avance Logic ALS300/ALS300+"
depends on SND
select SND_PCM
select SND_AC97_CODEC
select SND_OPL3_LIB
help
Say 'Y' or 'M' to include support for Avance Logic ALS300/ALS300+
To compile this driver as a module, choose M here: the module
will be called snd-als300
To compile this driver as a module, choose M here: the module
will be called snd-als300
config SND_ALS4000
tristate "Avance Logic ALS4000"
...
...
@@ -78,49 +78,49 @@ config SND_ATIIXP_MODEM
will be called snd-atiixp-modem.
config SND_AU8810
tristate "Aureal Advantage"
depends on SND
tristate "Aureal Advantage"
depends on SND
select SND_MPU401_UART
select SND_AC97_CODEC
help
help
Say Y here to include support for Aureal Advantage soundcards.
Supported features: Hardware Mixer, SRC, EQ and SPDIF output.
3D support code is in place, but not yet useable. For more info,
email the ALSA developer list, or <mjander@users.sourceforge.net>.
3D support code is in place, but not yet useable. For more info,
email the ALSA developer list, or <mjander@users.sourceforge.net>.
To compile this driver as a module, choose M here: the module
will be called snd-au8810.
config SND_AU8820
tristate "Aureal Vortex"
depends on SND
tristate "Aureal Vortex"
depends on SND
select SND_MPU401_UART
select SND_AC97_CODEC
help
help
Say Y here to include support for Aureal Vortex soundcards.
Supported features: Hardware Mixer and SRC. For more info, email
the ALSA developer list, or <mjander@users.sourceforge.net>.
Supported features: Hardware Mixer and SRC. For more info, email
the ALSA developer list, or <mjander@users.sourceforge.net>.
To compile this driver as a module, choose M here: the module
will be called snd-au8820.
config SND_AU8830
tristate "Aureal Vortex 2"
depends on SND
tristate "Aureal Vortex 2"
depends on SND
select SND_MPU401_UART
select SND_AC97_CODEC
help
help
Say Y here to include support for Aureal Vortex 2 soundcards.
Supported features: Hardware Mixer, SRC, EQ and SPDIF output.
3D support code is in place, but not yet useable. For more info,
email the ALSA developer list, or <mjander@users.sourceforge.net>.
Supported features: Hardware Mixer, SRC, EQ and SPDIF output.
3D support code is in place, but not yet useable. For more info,
email the ALSA developer list, or <mjander@users.sourceforge.net>.
To compile this driver as a module, choose M here: the module
will be called snd-au8830.
config SND_AZT3328
tristate "Aztech AZF3328 / PCI168 (EXPERIMENTAL)"
depends on SND && EXPERIMENTAL
...
...
@@ -135,10 +135,10 @@ config SND_AZT3328
will be called snd-azt3328.
config SND_BT87X
tristate "Bt87x Audio Capture"
depends on SND
tristate "Bt87x Audio Capture"
depends on SND
select SND_PCM
help
help
If you want to record audio from TV cards based on
Brooktree Bt878/Bt879 chips, say Y here and read
<file:Documentation/sound/alsa/Bt87x.txt>.
...
...
@@ -209,7 +209,7 @@ config SND_CS46XX
config SND_CS46XX_NEW_DSP
bool "Cirrus Logic (Sound Fusion) New DSP support"
depends on SND_CS46XX
default y
default y
help
Say Y here to use a new DSP image for SPDIF and dual codecs.
...
...
@@ -225,7 +225,7 @@ config SND_CS5535AUDIO
referred to as NS CS5535 IO or AMD CS5535 IO companion in
various literature. This driver also supports the CS5536 audio
device. However, for both chips, on certain boards, you may
need to use ac97_quirk=hp_only if your board has physically
need to use ac97_quirk=hp_only if your board has physically
mapped headphone out to master output. If that works for you,
send lspci -vvv output to the mailing list so that your board
can be identified in the quirks list.
...
...
@@ -468,11 +468,13 @@ config SND_FM801_TEA575X_BOOL
FM801 chip with a TEA5757 tuner connected to GPIO1-3 pins (Media
Forte SF256-PCS-02) into the snd-fm801 driver.
This will enable support for the old V4L1 API.
config SND_FM801_TEA575X
tristate
depends on SND_FM801_TEA575X_BOOL
default SND_FM801
select VIDEO_
DEV
select VIDEO_
V4L1
config SND_HDA_INTEL
tristate "Intel HD Audio"
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录