Hi,
I've recently buyed a Emtec 810S DVB-T usb dongle and tried to make it work,
operation which ended quite satisfactory.
So i would like to share my knowledge with your team as your drivers
development effort also helped
me to render my Usb Stick usable.
I've downloaded the actual status of the mercurial at :
http://linuxtv.org/hg/v4l-dvb
and modified the source to add the usb ids to the driver :
- At the time of doing "hg clone", the head was :
changeset: 7115:3f704aa9d92e
tag: tip
date: Tue Jan 29 16:32:35 2008 -0200
- The patch is attached (if you don't like attachments in this mailing list,
all my apologies)
I'm running linux kernel 2.6.23.14, using distro Debian Etch, kaffeine as a TV
viewer.
So I compiled the drivers and did overwrite (make install) the current kernel
modules.
I placed the firmware file dvb-usb-dib0700-03-pre1.fw from Patrick Boettcher in
/lib/firmware,
following the renaming recommendation (dvb-usb-dib0700-1.10.fw).
So now everything is working quite fine.
The only issue is that after some channel zapping or even immediately, the
tuner does no longer respond,
kaffeine hangs, modules cannot be unloaded even with rmmod -f (the dongle being
disconnected).
The lsusb command hangs also.
Only rebooting helps (and sucks).
kernel messages at startup are :
Feb 1 17:34:47 aroos kernel: usb 1-5: new high speed USB device using ehci_hcd
and address 5
Feb 1 17:34:47 aroos kernel: usb 1-5: configuration #1 chosen from 1 choice
Feb 1 17:34:48 aroos kernel: dib0700: loaded with support for 7 different
device-types
Feb 1 17:34:48 aroos kernel: dvb-usb: found a 'Emtec S810' in cold state, will
try to load a firmware
Feb 1 17:34:48 aroos kernel: dvb-usb: downloading firmware from file
'dvb-usb-dib0700-1.10.fw'
Feb 1 17:34:48 aroos kernel: dib0700: firmware started successfully.
Feb 1 17:34:49 aroos kernel: dvb-usb: found a 'Emtec S810' in warm state.
Feb 1 17:34:49 aroos kernel: dvb-usb: will pass the complete MPEG2 transport
stream to the software demuxer.
Feb 1 17:34:49 aroos kernel: DVB: registering new adapter (Emtec S810)
Feb 1 17:34:49 aroos kernel: DVB: registering frontend 0 (DiBcom 7000PC)...
Feb 1 17:34:49 aroos kernel: DiB0070: successfully identified
Feb 1 17:34:49 aroos kernel: dvb-usb: Emtec S810 successfully initialized and
connected.
Feb 1 17:34:49 aroos kernel: usbcore: registered new interface driver
dvb_usb_dib0700p
The lsusb output is attached.
The chips on the board are :
DIBcom 7070PB1-AXGXba-G-a
and
DIBcom 0700C-XCXXa-G
I would be most grateful if someone has an idea about improving the stability
of the driver.
Also I've found in the archives a thread :
http://www.linuxtv.org/pipermail/linux-dvb/2007-January/015525.html
involving Patrick Boettcher and Michael Wünscher about a similar device (I had
the same driver information
under Windows).
Maybe the conclusions here would also help that other topic, however I did not
see the USB Ids from these messages
in dvb-usb-ids.h
Thank in advance for your help and time !
Best regards,
Alain Roos (Alsace / France)
diff -r 3f704aa9d92e linux/drivers/media/dvb/dvb-usb/dib0700_devices.c
--- a/linux/drivers/media/dvb/dvb-usb/dib0700_devices.c Tue Jan 29 16:32:35 2008 -0200
+++ b/linux/drivers/media/dvb/dvb-usb/dib0700_devices.c Fri Feb 01 17:33:52 2008 +0100
@@ -794,7 +794,7 @@ static struct dib7000p_config dib7070p_d
/* STK7070P */
static int stk7070p_frontend_attach(struct dvb_usb_adapter *adap)
{
- dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1);
+ dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1);//mod_AR
msleep(10);
dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1);
dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1);
@@ -905,6 +905,7 @@ struct usb_device_id dib0700_usb_id_tabl
{ USB_DEVICE(USB_VID_ASUS, USB_PID_ASUS_U3100) },
/* 25 */ { USB_DEVICE(USB_VID_HAUPPAUGE, USB_PID_HAUPPAUGE_NOVA_T_STICK_3) },
{ USB_DEVICE(USB_VID_HAUPPAUGE, USB_PID_HAUPPAUGE_MYTV_T) },
+ { USB_DEVICE(USB_VID_YUANRD, USB_PID_YUANRD_STK7700D) },
{ 0 } /* Terminating entry */
};
MODULE_DEVICE_TABLE(usb, dib0700_usb_id_table);
@@ -1121,7 +1122,29 @@ struct dvb_usb_device_properties dib0700
.rc_interval = DEFAULT_RC_INTERVAL,
.rc_key_map = dib0700_rc_keys,
.rc_key_map_size = ARRAY_SIZE(dib0700_rc_keys),
- .rc_query = dib0700_rc_query
+ .rc_query = dib0700_rc_query
+
+ }, { DIB0700_DEFAULT_DEVICE_PROPERTIES,
+
+ .num_adapters = 1,
+ .adapter = {
+ {
+ .frontend_attach = stk7070p_frontend_attach,
+ .tuner_attach = dib7070p_tuner_attach,
+
+ DIB0700_DEFAULT_STREAMING_CONFIG(0x02),
+
+ .size_of_priv = sizeof(struct dib0700_adapter_state),
+ },
+ },
+
+ .num_device_descs = 1,
+ .devices = {
+ { "Emtec S810",
+ { &dib0700_usb_id_table[27], NULL },
+ { NULL },
+ },
+ },
}, { DIB0700_DEFAULT_DEVICE_PROPERTIES,
diff -r 3f704aa9d92e linux/drivers/media/dvb/dvb-usb/dvb-usb-ids.h
--- a/linux/drivers/media/dvb/dvb-usb/dvb-usb-ids.h Tue Jan 29 16:32:35 2008 -0200
+++ b/linux/drivers/media/dvb/dvb-usb/dvb-usb-ids.h Wed Jan 30 22:29:16 2008 +0100
@@ -48,6 +48,7 @@
#define USB_VID_WIDEVIEW 0x14aa
/* dom : pour gigabyte u7000 */
#define USB_VID_GIGABYTE 0x1044
+#define USB_VID_YUANRD 0x1164
/* Product IDs */
@@ -187,5 +188,6 @@
#define USB_PID_GIGABYTE_U7000 0x7001
#define USB_PID_ASUS_U3000 0x171f
#define USB_PID_ASUS_U3100 0x173f
+#define USB_PID_YUANRD_STK7700D 0x2edc
#endif
Bus 001 Device 005: ID 1164:2edc YUAN High-Tech Development Co., Ltd
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x1164 YUAN High-Tech Development Co., Ltd
idProduct 0x2edc
bcdDevice 1.00
iManufacturer 1 YUANRD
iProduct 2 STK7700D
iSerial 3 0000000001
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 46
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xa0
(Bus Powered)
Remote Wakeup
MaxPower 500mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 4
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
bNumConfigurations 1
Device Status: 0x0000
(Bus Powered)
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb