Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
c23f5949
cloud-kernel
项目概览
openanolis
/
cloud-kernel
1 年多 前同步成功
通知
160
Star
36
Fork
7
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
10
列表
看板
标记
里程碑
合并请求
2
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
cloud-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
10
Issue
10
列表
看板
标记
里程碑
合并请求
2
合并请求
2
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
c23f5949
编写于
11月 23, 2007
作者:
M
Mauro Carvalho Chehab
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
V4L/DVB (6665): Fix CodingStyle
thanks to checkpatch.pl Signed-off-by:
N
Mauro Carvalho Chehab
<
mchehab@infradead.org
>
上级
5a9dfc34
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
113 addition
and
90 deletion
+113
-90
drivers/media/video/em28xx/em28xx-cards.c
drivers/media/video/em28xx/em28xx-cards.c
+113
-90
未找到文件。
drivers/media/video/em28xx/em28xx-cards.c
浏览文件 @
c23f5949
/*
em28xx-cards.c - driver for Empia EM2800/EM2820/2840 USB video capture devices
em28xx-cards.c - driver for Empia EM2800/EM2820/2840 USB
video capture devices
Copyright (C) 2005 Ludovico Cavedon <cavedon@sssup.it>
Markus Rechberger <mrechberger@gmail.com>
...
...
@@ -55,15 +56,15 @@ struct em28xx_board em28xx_boards[] = {
.
tda9887_conf
=
TDA9887_PRESENT
,
.
has_tuner
=
1
,
.
decoder
=
EM28XX_SAA7113
,
.
input
=
{{
.
input
=
{
{
.
type
=
EM28XX_VMUX_COMPOSITE1
,
.
vmux
=
SAA7115_COMPOSITE0
,
.
amux
=
1
,
},{
},
{
.
type
=
EM28XX_VMUX_SVIDEO
,
.
vmux
=
SAA7115_SVIDEO3
,
.
amux
=
1
,
}},
}
},
},
[
EM2820_BOARD_UNKNOWN
]
=
{
.
name
=
"Unknown EM2750/28xx video grabber"
,
...
...
@@ -76,15 +77,15 @@ struct em28xx_board em28xx_boards[] = {
.
tda9887_conf
=
TDA9887_PRESENT
,
.
has_tuner
=
1
,
.
decoder
=
EM28XX_SAA7113
,
.
input
=
{{
.
input
=
{
{
.
type
=
EM28XX_VMUX_COMPOSITE1
,
.
vmux
=
SAA7115_COMPOSITE0
,
.
amux
=
1
,
},{
},
{
.
type
=
EM28XX_VMUX_SVIDEO
,
.
vmux
=
SAA7115_SVIDEO3
,
.
amux
=
1
,
}},
}
},
},
[
EM2820_BOARD_TERRATEC_CINERGY_250
]
=
{
.
name
=
"Terratec Cinergy 250 USB"
,
...
...
@@ -93,19 +94,19 @@ struct em28xx_board em28xx_boards[] = {
.
tda9887_conf
=
TDA9887_PRESENT
,
.
has_tuner
=
1
,
.
decoder
=
EM28XX_SAA7113
,
.
input
=
{{
.
input
=
{
{
.
type
=
EM28XX_VMUX_TELEVISION
,
.
vmux
=
SAA7115_COMPOSITE2
,
.
amux
=
1
,
},{
},
{
.
type
=
EM28XX_VMUX_COMPOSITE1
,
.
vmux
=
SAA7115_COMPOSITE0
,
.
amux
=
1
,
},{
},
{
.
type
=
EM28XX_VMUX_SVIDEO
,
.
vmux
=
SAA7115_SVIDEO3
,
.
amux
=
1
,
}},
}
},
},
[
EM2820_BOARD_PINNACLE_USB_2
]
=
{
.
name
=
"Pinnacle PCTV USB 2"
,
...
...
@@ -114,39 +115,41 @@ struct em28xx_board em28xx_boards[] = {
.
tda9887_conf
=
TDA9887_PRESENT
,
.
has_tuner
=
1
,
.
decoder
=
EM28XX_SAA7113
,
.
input
=
{{
.
input
=
{
{
.
type
=
EM28XX_VMUX_TELEVISION
,
.
vmux
=
SAA7115_COMPOSITE2
,
.
amux
=
0
,
},{
},
{
.
type
=
EM28XX_VMUX_COMPOSITE1
,
.
vmux
=
SAA7115_COMPOSITE0
,
.
amux
=
1
,
},{
},
{
.
type
=
EM28XX_VMUX_SVIDEO
,
.
vmux
=
SAA7115_SVIDEO3
,
.
amux
=
1
,
}},
}
},
},
[
EM2820_BOARD_HAUPPAUGE_WINTV_USB_2
]
=
{
.
name
=
"Hauppauge WinTV USB 2"
,
.
vchannels
=
3
,
.
tuner_type
=
TUNER_PHILIPS_FM1236_MK3
,
.
tda9887_conf
=
TDA9887_PRESENT
|
TDA9887_PORT1_ACTIVE
|
TDA9887_PORT2_ACTIVE
,
.
tda9887_conf
=
TDA9887_PRESENT
|
TDA9887_PORT1_ACTIVE
|
TDA9887_PORT2_ACTIVE
,
.
has_tuner
=
1
,
.
decoder
=
EM28XX_TVP5150
,
.
has_msp34xx
=
1
,
/*FIXME: S-Video not tested */
.
input
=
{{
.
input
=
{
{
.
type
=
EM28XX_VMUX_TELEVISION
,
.
vmux
=
TVP5150_COMPOSITE0
,
.
amux
=
MSP_INPUT_DEFAULT
,
},{
},
{
.
type
=
EM28XX_VMUX_SVIDEO
,
.
vmux
=
TVP5150_SVIDEO
,
.
amux
=
MSP_INPUT
(
MSP_IN_SCART1
,
MSP_IN_TUNER1
,
MSP_DSP_IN_SCART
,
MSP_DSP_IN_SCART
),
}},
}
},
},
[
EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900
]
=
{
.
name
=
"Hauppauge WinTV HVR 900"
,
...
...
@@ -156,19 +159,19 @@ struct em28xx_board em28xx_boards[] = {
.
has_tuner
=
1
,
.
mts_firmware
=
1
,
.
decoder
=
EM28XX_TVP5150
,
.
input
=
{{
.
input
=
{
{
.
type
=
EM28XX_VMUX_TELEVISION
,
.
vmux
=
TVP5150_COMPOSITE0
,
.
amux
=
0
,
},{
},
{
.
type
=
EM28XX_VMUX_COMPOSITE1
,
.
vmux
=
TVP5150_COMPOSITE1
,
.
amux
=
1
,
},{
},
{
.
type
=
EM28XX_VMUX_SVIDEO
,
.
vmux
=
TVP5150_SVIDEO
,
.
amux
=
1
,
}},
}
},
},
[
EM2880_BOARD_HAUPPAUGE_WINTV_HVR_950
]
=
{
.
name
=
"Hauppauge WinTV HVR 950"
,
...
...
@@ -177,19 +180,19 @@ struct em28xx_board em28xx_boards[] = {
.
tuner_type
=
TUNER_XC2028
,
.
has_tuner
=
1
,
.
decoder
=
EM28XX_TVP5150
,
.
input
=
{{
.
input
=
{
{
.
type
=
EM28XX_VMUX_TELEVISION
,
.
vmux
=
TVP5150_COMPOSITE0
,
.
amux
=
0
,
},{
},
{
.
type
=
EM28XX_VMUX_COMPOSITE1
,
.
vmux
=
TVP5150_COMPOSITE1
,
.
amux
=
1
,
},{
},
{
.
type
=
EM28XX_VMUX_SVIDEO
,
.
vmux
=
TVP5150_SVIDEO
,
.
amux
=
1
,
}},
}
},
},
[
EM2880_BOARD_TERRATEC_HYBRID_XS
]
=
{
.
name
=
"Terratec Hybrid XS"
,
...
...
@@ -198,22 +201,23 @@ struct em28xx_board em28xx_boards[] = {
.
has_tuner
=
1
,
.
tuner_type
=
TUNER_XC2028
,
.
decoder
=
EM28XX_TVP5150
,
.
input
=
{{
.
input
=
{
{
.
type
=
EM28XX_VMUX_TELEVISION
,
.
vmux
=
TVP5150_COMPOSITE0
,
.
amux
=
0
,
},{
},
{
.
type
=
EM28XX_VMUX_COMPOSITE1
,
.
vmux
=
TVP5150_COMPOSITE1
,
.
amux
=
1
,
},{
},
{
.
type
=
EM28XX_VMUX_SVIDEO
,
.
vmux
=
TVP5150_SVIDEO
,
.
amux
=
1
,
}},
}
},
},
/* maybe there's a reason behind it why Terratec sells the Hybrid XS as Prodigy XS with a
* different PID, let's keep it separated for now maybe we'll need it lateron */
/* maybe there's a reason behind it why Terratec sells the Hybrid XS
as Prodigy XS with a different PID, let's keep it separated for now
maybe we'll need it lateron */
[
EM2880_BOARD_TERRATEC_PRODIGY_XS
]
=
{
.
name
=
"Terratec Prodigy XS"
,
.
vchannels
=
3
,
...
...
@@ -221,40 +225,42 @@ struct em28xx_board em28xx_boards[] = {
.
has_tuner
=
1
,
.
tuner_type
=
TUNER_XC2028
,
.
decoder
=
EM28XX_TVP5150
,
.
input
=
{{
.
input
=
{
{
.
type
=
EM28XX_VMUX_TELEVISION
,
.
vmux
=
TVP5150_COMPOSITE0
,
.
amux
=
0
,
},{
},
{
.
type
=
EM28XX_VMUX_COMPOSITE1
,
.
vmux
=
TVP5150_COMPOSITE1
,
.
amux
=
1
,
},{
},
{
.
type
=
EM28XX_VMUX_SVIDEO
,
.
vmux
=
TVP5150_SVIDEO
,
.
amux
=
1
,
}},
}
},
},
[
EM2820_BOARD_MSI_VOX_USB_2
]
=
{
.
name
=
"MSI VOX USB 2.0"
,
.
vchannels
=
3
,
.
tuner_type
=
TUNER_LG_PAL_NEW_TAPC
,
.
tda9887_conf
=
TDA9887_PRESENT
|
TDA9887_PORT1_ACTIVE
|
TDA9887_PORT2_ACTIVE
,
.
tda9887_conf
=
TDA9887_PRESENT
|
TDA9887_PORT1_ACTIVE
|
TDA9887_PORT2_ACTIVE
,
.
has_tuner
=
1
,
.
decoder
=
EM28XX_SAA7114
,
.
input
=
{{
.
input
=
{
{
.
type
=
EM28XX_VMUX_TELEVISION
,
.
vmux
=
SAA7115_COMPOSITE4
,
.
amux
=
0
,
},{
},
{
.
type
=
EM28XX_VMUX_COMPOSITE1
,
.
vmux
=
SAA7115_COMPOSITE0
,
.
amux
=
1
,
},{
},
{
.
type
=
EM28XX_VMUX_SVIDEO
,
.
vmux
=
SAA7115_SVIDEO3
,
.
amux
=
1
,
}},
}
},
},
[
EM2800_BOARD_TERRATEC_CINERGY_200
]
=
{
.
name
=
"Terratec Cinergy 200 USB"
,
...
...
@@ -264,19 +270,19 @@ struct em28xx_board em28xx_boards[] = {
.
tda9887_conf
=
TDA9887_PRESENT
,
.
has_tuner
=
1
,
.
decoder
=
EM28XX_SAA7113
,
.
input
=
{{
.
input
=
{
{
.
type
=
EM28XX_VMUX_TELEVISION
,
.
vmux
=
SAA7115_COMPOSITE2
,
.
amux
=
0
,
},{
},
{
.
type
=
EM28XX_VMUX_COMPOSITE1
,
.
vmux
=
SAA7115_COMPOSITE0
,
.
amux
=
1
,
},{
},
{
.
type
=
EM28XX_VMUX_SVIDEO
,
.
vmux
=
SAA7115_SVIDEO3
,
.
amux
=
1
,
}},
}
},
},
[
EM2800_BOARD_LEADTEK_WINFAST_USBII
]
=
{
.
name
=
"Leadtek Winfast USB II"
,
...
...
@@ -286,19 +292,19 @@ struct em28xx_board em28xx_boards[] = {
.
tda9887_conf
=
TDA9887_PRESENT
,
.
has_tuner
=
1
,
.
decoder
=
EM28XX_SAA7113
,
.
input
=
{{
.
input
=
{
{
.
type
=
EM28XX_VMUX_TELEVISION
,
.
vmux
=
SAA7115_COMPOSITE2
,
.
amux
=
0
,
},{
},
{
.
type
=
EM28XX_VMUX_COMPOSITE1
,
.
vmux
=
SAA7115_COMPOSITE0
,
.
amux
=
1
,
},{
},
{
.
type
=
EM28XX_VMUX_SVIDEO
,
.
vmux
=
SAA7115_SVIDEO3
,
.
amux
=
1
,
}},
}
},
},
[
EM2800_BOARD_KWORLD_USB2800
]
=
{
.
name
=
"Kworld USB2800"
,
...
...
@@ -308,34 +314,34 @@ struct em28xx_board em28xx_boards[] = {
.
tda9887_conf
=
TDA9887_PRESENT
,
.
has_tuner
=
1
,
.
decoder
=
EM28XX_SAA7113
,
.
input
=
{{
.
input
=
{
{
.
type
=
EM28XX_VMUX_TELEVISION
,
.
vmux
=
SAA7115_COMPOSITE2
,
.
amux
=
0
,
},{
},
{
.
type
=
EM28XX_VMUX_COMPOSITE1
,
.
vmux
=
SAA7115_COMPOSITE0
,
.
amux
=
1
,
},{
},
{
.
type
=
EM28XX_VMUX_SVIDEO
,
.
vmux
=
SAA7115_SVIDEO3
,
.
amux
=
1
,
}},
}
},
},
[
EM2820_BOARD_PINNACLE_DVC_90
]
=
{
.
name
=
"Pinnacle Dazzle DVC 90"
,
.
vchannels
=
3
,
.
has_tuner
=
0
,
.
decoder
=
EM28XX_SAA7113
,
.
input
=
{{
.
input
=
{
{
.
type
=
EM28XX_VMUX_COMPOSITE1
,
.
vmux
=
SAA7115_COMPOSITE0
,
.
amux
=
1
,
},{
},
{
.
type
=
EM28XX_VMUX_SVIDEO
,
.
vmux
=
SAA7115_SVIDEO3
,
.
amux
=
1
,
}},
}
},
},
[
EM2800_BOARD_VGEAR_POCKETTV
]
=
{
.
name
=
"V-Gear PocketTV"
,
...
...
@@ -345,19 +351,19 @@ struct em28xx_board em28xx_boards[] = {
.
tda9887_conf
=
TDA9887_PRESENT
,
.
has_tuner
=
1
,
.
decoder
=
EM28XX_SAA7113
,
.
input
=
{{
.
input
=
{
{
.
type
=
EM28XX_VMUX_TELEVISION
,
.
vmux
=
SAA7115_COMPOSITE2
,
.
amux
=
0
,
},{
},
{
.
type
=
EM28XX_VMUX_COMPOSITE1
,
.
vmux
=
SAA7115_COMPOSITE0
,
.
amux
=
1
,
},{
},
{
.
type
=
EM28XX_VMUX_SVIDEO
,
.
vmux
=
SAA7115_SVIDEO3
,
.
amux
=
1
,
}},
}
},
},
[
EM2820_BOARD_PROLINK_PLAYTV_USB2
]
=
{
.
name
=
"Pixelview Prolink PlayTV USB 2.0"
,
...
...
@@ -365,56 +371,73 @@ struct em28xx_board em28xx_boards[] = {
.
tda9887_conf
=
TDA9887_PRESENT
,
.
has_tuner
=
1
,
.
decoder
=
EM28XX_SAA7113
,
.
input
=
{{
.
input
=
{
{
.
type
=
EM28XX_VMUX_TELEVISION
,
.
vmux
=
SAA7115_COMPOSITE2
,
.
amux
=
1
,
},{
},
{
.
type
=
EM28XX_VMUX_COMPOSITE1
,
.
vmux
=
SAA7115_COMPOSITE0
,
.
amux
=
1
,
},{
},
{
.
type
=
EM28XX_VMUX_SVIDEO
,
.
vmux
=
SAA7115_SVIDEO3
,
.
amux
=
1
,
}},
}
},
},
};
const
unsigned
int
em28xx_bcount
=
ARRAY_SIZE
(
em28xx_boards
);
/* table of devices that work with this driver */
struct
usb_device_id
em28xx_id_table
[]
=
{
{
USB_DEVICE
(
0xeb1a
,
0x2750
),
.
driver_info
=
EM2820_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0xeb1a
,
0x2800
),
.
driver_info
=
EM2800_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0xeb1a
,
0x2820
),
.
driver_info
=
EM2820_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0xeb1a
,
0x2821
),
.
driver_info
=
EM2820_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0xeb1a
,
0x2860
),
.
driver_info
=
EM2820_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0xeb1a
,
0x2861
),
.
driver_info
=
EM2820_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0xeb1a
,
0x2870
),
.
driver_info
=
EM2820_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0xeb1a
,
0x2881
),
.
driver_info
=
EM2820_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0xeb1a
,
0x2883
),
.
driver_info
=
EM2820_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0x0ccd
,
0x0036
),
.
driver_info
=
EM2820_BOARD_TERRATEC_CINERGY_250
},
{
USB_DEVICE
(
0x2304
,
0x0208
),
.
driver_info
=
EM2820_BOARD_PINNACLE_USB_2
},
{
USB_DEVICE
(
0x2040
,
0x4200
),
.
driver_info
=
EM2820_BOARD_HAUPPAUGE_WINTV_USB_2
},
{
USB_DEVICE
(
0x2304
,
0x0207
),
.
driver_info
=
EM2820_BOARD_PINNACLE_DVC_90
},
{
USB_DEVICE
(
0x2040
,
0x6500
),
.
driver_info
=
EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900
},
{
USB_DEVICE
(
0x2040
,
0x6513
),
.
driver_info
=
EM2880_BOARD_HAUPPAUGE_WINTV_HVR_950
},
{
USB_DEVICE
(
0x0ccd
,
0x0042
),
.
driver_info
=
EM2880_BOARD_TERRATEC_HYBRID_XS
},
{
USB_DEVICE
(
0x0ccd
,
0x0047
),
.
driver_info
=
EM2880_BOARD_TERRATEC_PRODIGY_XS
},
{
USB_DEVICE
(
0xeb1a
,
0x2750
),
.
driver_info
=
EM2820_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0xeb1a
,
0x2800
),
.
driver_info
=
EM2800_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0xeb1a
,
0x2820
),
.
driver_info
=
EM2820_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0xeb1a
,
0x2821
),
.
driver_info
=
EM2820_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0xeb1a
,
0x2860
),
.
driver_info
=
EM2820_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0xeb1a
,
0x2861
),
.
driver_info
=
EM2820_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0xeb1a
,
0x2870
),
.
driver_info
=
EM2820_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0xeb1a
,
0x2881
),
.
driver_info
=
EM2820_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0xeb1a
,
0x2883
),
.
driver_info
=
EM2820_BOARD_UNKNOWN
},
{
USB_DEVICE
(
0x0ccd
,
0x0036
),
.
driver_info
=
EM2820_BOARD_TERRATEC_CINERGY_250
},
{
USB_DEVICE
(
0x2304
,
0x0208
),
.
driver_info
=
EM2820_BOARD_PINNACLE_USB_2
},
{
USB_DEVICE
(
0x2040
,
0x4200
),
.
driver_info
=
EM2820_BOARD_HAUPPAUGE_WINTV_USB_2
},
{
USB_DEVICE
(
0x2304
,
0x0207
),
.
driver_info
=
EM2820_BOARD_PINNACLE_DVC_90
},
{
USB_DEVICE
(
0x2040
,
0x6500
),
.
driver_info
=
EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900
},
{
USB_DEVICE
(
0x2040
,
0x6513
),
.
driver_info
=
EM2880_BOARD_HAUPPAUGE_WINTV_HVR_950
},
{
USB_DEVICE
(
0x0ccd
,
0x0042
),
.
driver_info
=
EM2880_BOARD_TERRATEC_HYBRID_XS
},
{
USB_DEVICE
(
0x0ccd
,
0x0047
),
.
driver_info
=
EM2880_BOARD_TERRATEC_PRODIGY_XS
},
{
},
};
MODULE_DEVICE_TABLE
(
usb
,
em28xx_id_table
);
MODULE_DEVICE_TABLE
(
usb
,
em28xx_id_table
);
/* EEPROM hash table for devices with generic USB IDs */
static
struct
em28xx_hash_table
em28xx_eeprom_hash
[]
=
{
/* P/N: SA 60002070465 Tuner: TVF7533-MF */
{
0x6ce05a8f
,
EM2820_BOARD_PROLINK_PLAYTV_USB2
,
TUNER_YMEC_TVF_5533MF
},
{
0x6ce05a8f
,
EM2820_BOARD_PROLINK_PLAYTV_USB2
,
TUNER_YMEC_TVF_5533MF
},
};
/* I2C devicelist hash table for devices with generic USB IDs */
static
struct
em28xx_hash_table
em28xx_i2c_hash
[]
=
{
{
0xb06a32c3
,
EM2800_BOARD_TERRATEC_CINERGY_200
,
TUNER_LG_PAL_NEW_TAPC
},
{
0xf51200e3
,
EM2800_BOARD_VGEAR_POCKETTV
,
TUNER_LG_PAL_NEW_TAPC
},
{
0xb06a32c3
,
EM2800_BOARD_TERRATEC_CINERGY_200
,
TUNER_LG_PAL_NEW_TAPC
},
{
0xf51200e3
,
EM2800_BOARD_VGEAR_POCKETTV
,
TUNER_LG_PAL_NEW_TAPC
},
};
/* Since em28xx_pre_card_setup() requires a proper dev->model,
...
...
@@ -423,7 +446,7 @@ static struct em28xx_hash_table em28xx_i2c_hash[] = {
void
em28xx_pre_card_setup
(
struct
em28xx
*
dev
)
{
/* request some modules */
switch
(
dev
->
model
)
{
switch
(
dev
->
model
)
{
case
EM2880_BOARD_TERRATEC_PRODIGY_XS
:
case
EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900
:
case
EM2880_BOARD_HAUPPAUGE_WINTV_HVR_950
:
...
...
@@ -454,7 +477,7 @@ static int em28xx_tuner_callback(void *ptr, int command, int arg)
return
rc
;
}
static
void
em28xx_config_tuner
(
struct
em28xx
*
dev
)
static
void
em28xx_config_tuner
(
struct
em28xx
*
dev
)
{
struct
v4l2_priv_tun_config
xc2028_cfg
;
struct
xc2028_ctrl
ctl
;
...
...
@@ -472,7 +495,7 @@ static void em28xx_config_tuner (struct em28xx *dev)
em28xx_i2c_call_clients
(
dev
,
TUNER_SET_TYPE_ADDR
,
&
tun_setup
);
if
(
dev
->
tuner_type
==
TUNER_XC2028
)
{
memset
(
&
ctl
,
0
,
sizeof
(
ctl
));
memset
(
&
ctl
,
0
,
sizeof
(
ctl
));
ctl
.
fname
=
XC2028_DEFAULT_FIRMWARE
;
ctl
.
max_len
=
64
;
...
...
@@ -648,5 +671,5 @@ void em28xx_card_setup(struct em28xx *dev)
request_module
(
"tuner"
);
#endif
em28xx_config_tuner
(
dev
);
em28xx_config_tuner
(
dev
);
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录