diff options
Diffstat (limited to 'linux')
-rw-r--r-- | linux/Documentation/dvb/README.dibusb | 35 | ||||
-rw-r--r-- | linux/drivers/media/dvb/dibusb/Kconfig | 9 | ||||
-rw-r--r-- | linux/drivers/media/dvb/dibusb/dvb-dibusb.c | 2 | ||||
-rw-r--r-- | linux/drivers/media/dvb/dibusb/dvb-dibusb.h | 16 |
4 files changed, 51 insertions, 11 deletions
diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index 9ddd53974..a19154501 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -16,6 +16,9 @@ The drivers should work with - DiBcom USB DVB-T reference device +- Ultima Electronic/Artec T1 USB TVBOX + http://www.arteceuro.com/products-tvbox.html + Copyright (C) 2004 Patrick Boettcher (patrick.boettcher@desy.de), @@ -29,7 +32,8 @@ published by the Free Software Foundation, version 2. NEWS: - + 2004-09-13 - added support for a new device (Artec T1 USB TVBOX), thanks + to Christian Motschke for reporting 2004-09-05 - released the dibusb device and dib3000mb-frontend driver (old news for vp7041.c) @@ -97,7 +101,34 @@ as a slave device in vdr, was not working for me. Some work has to be done 2. Known problems and bugs -again, patches and comments are very very welcome +TODO: +- add some additional URBs for USB data transfer +- due a firmware bug no write access destroys the USB mpeg transfers -> no + writes during streaming, stop streaming, when adding another pid + +2.1. Adding new devices + +It is not possible to determine the range of devices based on the DiBcom +reference design. This is because the reference design of DiBcom can be sold +to third persons, without telling DiBcom (so done with the Twinhan VP7041 and +the HAMA device). + +When you think you have a device like this and the driver does not recognizes it, +please send the ****load.inf and the ****cap.inf of the Windows driver to me. + +Sometimes the Vendor or Product ID is identical to the ones of Twinhan, even +though it is not a Twinhan device (e.g. HAMA), then please send me the name +of the device. I will add it to this list in order to make this clear to +others. + +If you are familar with C you can also add the VID and PID of the device to +the dvb-dibusb.[hc]-files and create a patch and send it over to me or to +the linux-dvb mailing list, _after_ you have tried compiling and modprobing +it. + +2.2. Comments + +Patches, comments and suggestions are very very welcome 3. Acknowledgements Amaury Demol (ademol@dibcom.fr) and Francois Kanounnikoff from DiBcom for diff --git a/linux/drivers/media/dvb/dibusb/Kconfig b/linux/drivers/media/dvb/dibusb/Kconfig index f328ab5b3..a6d6329f2 100644 --- a/linux/drivers/media/dvb/dibusb/Kconfig +++ b/linux/drivers/media/dvb/dibusb/Kconfig @@ -1,5 +1,5 @@ config DVB_DIBUSB - tristate "Twinhan/KWorld/Hama USB DVB-T devices" + tristate "Twinhan/KWorld/Hama/Artec USB DVB-T devices" depends on DVB_CORE && USB select FW_LOADER help @@ -12,13 +12,18 @@ config DVB_DIBUSB KWorld V-Stream XPERT DTV - DVB-T USB Hama DVB-T USB-Box DiBcom reference device (non-public) - + Ultima Electronic/Artec T1 USB TVBOX + The VP7041 seems to be identical to "CTS Portable" (Chinese Television System). These devices can be understood as budget ones, they "only" deliver the MPEG data. + Currently all known copies of the DiBcom reference design have the DiBcom 3000MB + frontend onboard. Please enable and load this one manually in order to use this + device. + A firmware is needed to use the device. See Documentation/dvb/README.dibusb details. diff --git a/linux/drivers/media/dvb/dibusb/dvb-dibusb.c b/linux/drivers/media/dvb/dibusb/dvb-dibusb.c index 12e4c4343..6c0ee84e8 100644 --- a/linux/drivers/media/dvb/dibusb/dvb-dibusb.c +++ b/linux/drivers/media/dvb/dibusb/dvb-dibusb.c @@ -71,6 +71,8 @@ static struct usb_device_id dibusb_table [] = { { USB_DEVICE(USB_KWORLD_VENDOR_ID, USB_VSTREAM_PRODUCT_ID) }, { USB_DEVICE(USB_DIBCOM_VENDOR_ID, USB_DIBCOM_PRODUCT_PREFW_ID) }, { USB_DEVICE(USB_DIBCOM_VENDOR_ID, USB_DIBCOM_PRODUCT_ID) }, + { USB_DEVICE(USB_ULTIMA_ELECTRONIC_ID, USB_ULTIMA_ELEC_PROD_PREFW_ID) }, + { USB_DEVICE(USB_ULTIMA_ELECTRONIC_ID, USB_ULTIMA_ELEC_PROD_ID) }, { } /* Terminating entry */ }; diff --git a/linux/drivers/media/dvb/dibusb/dvb-dibusb.h b/linux/drivers/media/dvb/dibusb/dvb-dibusb.h index 1b1ff4678..a04e8d8cf 100644 --- a/linux/drivers/media/dvb/dibusb/dvb-dibusb.h +++ b/linux/drivers/media/dvb/dibusb/dvb-dibusb.h @@ -19,17 +19,19 @@ #define USB_IMC_NETWORKS_VENDOR_ID 0x13d3 #define USB_KWORLD_VENDOR_ID 0xeb1a #define USB_DIBCOM_VENDOR_ID 0x10b8 +#define USB_ULTIMA_ELECTRONIC_ID 0x05d8 /* Product IDs before loading the firmware */ #define USB_VP7041_PRODUCT_PREFW_ID 0x3201 #define USB_VSTREAM_PRODUCT_PREFW_ID 0x17de #define USB_DIBCOM_PRODUCT_PREFW_ID 0x0bb8 - +#define USB_ULTIMA_ELEC_PROD_PREFW_ID 0x8105 /* product ID afterwards */ #define USB_VP7041_PRODUCT_ID 0x3202 #define USB_VSTREAM_PRODUCT_ID 0x17df #define USB_DIBCOM_PRODUCT_ID 0x0bb9 +#define USB_ULTIMA_ELEC_PROD_ID 0x8106 /* CS register start/stop the usb controller cpu */ #define DIBUSB_CPU_CSREG 0x7F92 @@ -94,7 +96,7 @@ static const char * valid_firmware_filenames[] = { "dvb-dibusb-5.0.0.11.fw", }; -#define DIBUSB_SUPPORTED_DEVICES 3 +#define DIBUSB_SUPPORTED_DEVICES 4 /* USB Driver stuff */ static struct dibusb_device dibusb_devices[DIBUSB_SUPPORTED_DEVICES] = { @@ -113,12 +115,12 @@ static struct dibusb_device dibusb_devices[DIBUSB_SUPPORTED_DEVICES] = { .name = "DiBcom USB reference design", .demod_addr = DIBUSB_DEMOD_I2C_ADDR_DEFAULT, }, -/* { - .cold_product_id = USB_HAMA_PRODUCT_PREFW_ID, - .warm_product_id = USB HAMA_PRODUCT_ID, - .name = "HAMA USB DVB-T device", + { + .cold_product_id = USB_ULTIMA_ELEC_PROD_PREFW_ID, + .warm_product_id = USB_ULTIMA_ELEC_PROD_ID, + .name = "Ultima Electronic/Artec T1 USB TVBOX", .demod_addr = DIBUSB_DEMOD_I2C_ADDR_DEFAULT, - }, */ + }, }; #define COMMAND_PIPE usb_sndbulkpipe(dib->udev, 0x01) |