diff options
author | Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us> | 2008-01-25 04:02:42 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2008-01-25 16:05:15 -0500 |
commit | 132c3188433bcb149ee764be1ca9a69f6d719dfe (patch) | |
tree | 71dcc6e0d549f9f6236fa059b5b3975ba431e6df /drivers/media | |
parent | 7999a8161d06326f3c4cb797fcf0de8b2eb08253 (diff) |
V4L/DVB (7066): ASUS My Cinema U3000 Mini DVBT Tuner
Adding support for ASUS My Cinema U3000 Mini DVBT Tuner
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media')
-rw-r--r-- | drivers/media/dvb/dvb-usb/dib0700_devices.c | 55 | ||||
-rw-r--r-- | drivers/media/dvb/dvb-usb/dvb-usb-ids.h | 3 |
2 files changed, 53 insertions, 5 deletions
diff --git a/drivers/media/dvb/dvb-usb/dib0700_devices.c b/drivers/media/dvb/dvb-usb/dib0700_devices.c index a7088cee1ef9..de36790899b3 100644 --- a/drivers/media/dvb/dvb-usb/dib0700_devices.c +++ b/drivers/media/dvb/dvb-usb/dib0700_devices.c | |||
@@ -230,6 +230,27 @@ static struct mt2266_config stk7700d_mt2266_config[2] = { | |||
230 | } | 230 | } |
231 | }; | 231 | }; |
232 | 232 | ||
233 | static int stk7700P2_frontend_attach(struct dvb_usb_adapter *adap) | ||
234 | { | ||
235 | if (adap->id == 0) { | ||
236 | dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); | ||
237 | msleep(10); | ||
238 | dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); | ||
239 | dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); | ||
240 | dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); | ||
241 | dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); | ||
242 | msleep(10); | ||
243 | dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); | ||
244 | msleep(10); | ||
245 | dib7000p_i2c_enumeration(&adap->dev->i2c_adap,1,18,stk7700d_dib7000p_mt2266_config); | ||
246 | } | ||
247 | |||
248 | adap->fe = dvb_attach(dib7000p_attach, &adap->dev->i2c_adap,0x80+(adap->id << 1), | ||
249 | &stk7700d_dib7000p_mt2266_config[adap->id]); | ||
250 | |||
251 | return adap->fe == NULL ? -ENODEV : 0; | ||
252 | } | ||
253 | |||
233 | static int stk7700d_frontend_attach(struct dvb_usb_adapter *adap) | 254 | static int stk7700d_frontend_attach(struct dvb_usb_adapter *adap) |
234 | { | 255 | { |
235 | if (adap->id == 0) { | 256 | if (adap->id == 0) { |
@@ -850,8 +871,10 @@ struct usb_device_id dib0700_usb_id_table[] = { | |||
850 | { USB_DEVICE(USB_VID_PINNACLE, USB_PID_PINNACLE_PCTV_DUAL_DIVERSITY_DVB_T) }, | 871 | { USB_DEVICE(USB_VID_PINNACLE, USB_PID_PINNACLE_PCTV_DUAL_DIVERSITY_DVB_T) }, |
851 | { USB_DEVICE(USB_VID_COMPRO, USB_PID_COMPRO_VIDEOMATE_U500_PC) }, | 872 | { USB_DEVICE(USB_VID_COMPRO, USB_PID_COMPRO_VIDEOMATE_U500_PC) }, |
852 | /* 20 */{ USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_EXPRESS) }, | 873 | /* 20 */{ USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_EXPRESS) }, |
853 | /* 21 */{ USB_DEVICE(USB_VID_GIGABYTE, USB_PID_GIGABYTE_U7000) }, | 874 | { USB_DEVICE(USB_VID_GIGABYTE, USB_PID_GIGABYTE_U7000) }, |
854 | /* 22 */{ USB_DEVICE(USB_VID_ULTIMA_ELECTRONIC, USB_PID_ARTEC_T14BR) }, | 875 | { USB_DEVICE(USB_VID_ULTIMA_ELECTRONIC, USB_PID_ARTEC_T14BR) }, |
876 | { USB_DEVICE(USB_VID_ASUS, USB_PID_ASUS_U3000) }, | ||
877 | { USB_DEVICE(USB_VID_ASUS, USB_PID_ASUS_U3100) }, | ||
855 | { 0 } /* Terminating entry */ | 878 | { 0 } /* Terminating entry */ |
856 | }; | 879 | }; |
857 | MODULE_DEVICE_TABLE(usb, dib0700_usb_id_table); | 880 | MODULE_DEVICE_TABLE(usb, dib0700_usb_id_table); |
@@ -923,7 +946,6 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
923 | { &dib0700_usb_id_table[20] }, | 946 | { &dib0700_usb_id_table[20] }, |
924 | { NULL }, | 947 | { NULL }, |
925 | }, | 948 | }, |
926 | /* dom : pour Gigabyte U7000 */ | ||
927 | { "Gigabyte U7000", | 949 | { "Gigabyte U7000", |
928 | { &dib0700_usb_id_table[21], NULL }, | 950 | { &dib0700_usb_id_table[21], NULL }, |
929 | { NULL }, | 951 | { NULL }, |
@@ -1010,6 +1032,25 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
1010 | .num_adapters = 1, | 1032 | .num_adapters = 1, |
1011 | .adapter = { | 1033 | .adapter = { |
1012 | { | 1034 | { |
1035 | .frontend_attach = stk7700P2_frontend_attach, | ||
1036 | .tuner_attach = stk7700d_tuner_attach, | ||
1037 | |||
1038 | DIB0700_DEFAULT_STREAMING_CONFIG(0x02), | ||
1039 | }, | ||
1040 | }, | ||
1041 | |||
1042 | .num_device_descs = 1, | ||
1043 | .devices = { | ||
1044 | { "ASUS My Cinema U3000 Mini DVBT Tuner", | ||
1045 | { &dib0700_usb_id_table[23], NULL }, | ||
1046 | { NULL }, | ||
1047 | }, | ||
1048 | } | ||
1049 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, | ||
1050 | |||
1051 | .num_adapters = 1, | ||
1052 | .adapter = { | ||
1053 | { | ||
1013 | .frontend_attach = stk7070p_frontend_attach, | 1054 | .frontend_attach = stk7070p_frontend_attach, |
1014 | .tuner_attach = dib7070p_tuner_attach, | 1055 | .tuner_attach = dib7070p_tuner_attach, |
1015 | 1056 | ||
@@ -1019,7 +1060,7 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
1019 | }, | 1060 | }, |
1020 | }, | 1061 | }, |
1021 | 1062 | ||
1022 | .num_device_descs = 3, | 1063 | .num_device_descs = 4, |
1023 | .devices = { | 1064 | .devices = { |
1024 | { "DiBcom STK7070P reference design", | 1065 | { "DiBcom STK7070P reference design", |
1025 | { &dib0700_usb_id_table[15], NULL }, | 1066 | { &dib0700_usb_id_table[15], NULL }, |
@@ -1032,7 +1073,11 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
1032 | { "Artec T14BR DVB-T", | 1073 | { "Artec T14BR DVB-T", |
1033 | { &dib0700_usb_id_table[22], NULL }, | 1074 | { &dib0700_usb_id_table[22], NULL }, |
1034 | { NULL }, | 1075 | { NULL }, |
1035 | } | 1076 | }, |
1077 | { "ASUS My Cinema U3100 Mini DVBT Tuner", | ||
1078 | { &dib0700_usb_id_table[24], NULL }, | ||
1079 | { NULL }, | ||
1080 | }, | ||
1036 | } | 1081 | } |
1037 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, | 1082 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, |
1038 | 1083 | ||
diff --git a/drivers/media/dvb/dvb-usb/dvb-usb-ids.h b/drivers/media/dvb/dvb-usb/dvb-usb-ids.h index 36aeda2b1716..a411430f827b 100644 --- a/drivers/media/dvb/dvb-usb/dvb-usb-ids.h +++ b/drivers/media/dvb/dvb-usb/dvb-usb-ids.h | |||
@@ -17,6 +17,7 @@ | |||
17 | #define USB_VID_ANCHOR 0x0547 | 17 | #define USB_VID_ANCHOR 0x0547 |
18 | #define USB_VID_ANSONIC 0x10b9 | 18 | #define USB_VID_ANSONIC 0x10b9 |
19 | #define USB_VID_ANUBIS_ELECTRONIC 0x10fd | 19 | #define USB_VID_ANUBIS_ELECTRONIC 0x10fd |
20 | #define USB_VID_ASUS 0x0b05 | ||
20 | #define USB_VID_AVERMEDIA 0x07ca | 21 | #define USB_VID_AVERMEDIA 0x07ca |
21 | #define USB_VID_COMPRO 0x185b | 22 | #define USB_VID_COMPRO 0x185b |
22 | #define USB_VID_COMPRO_UNK 0x145f | 23 | #define USB_VID_COMPRO_UNK 0x145f |
@@ -182,5 +183,7 @@ | |||
182 | #define USB_PID_LIFEVIEW_TV_WALKER_TWIN_WARM 0x0513 | 183 | #define USB_PID_LIFEVIEW_TV_WALKER_TWIN_WARM 0x0513 |
183 | /* dom pour gigabyte u7000 */ | 184 | /* dom pour gigabyte u7000 */ |
184 | #define USB_PID_GIGABYTE_U7000 0x7001 | 185 | #define USB_PID_GIGABYTE_U7000 0x7001 |
186 | #define USB_PID_ASUS_U3000 0x171f | ||
187 | #define USB_PID_ASUS_U3100 0x173f | ||
185 | 188 | ||
186 | #endif | 189 | #endif |