Dennis Noordsij wrote: > Hi list, > > I am writing a driver for the TerraTec Piranha DVB-T USB stick (actually > the Sanio SMS-1000 chipset). From reading USB logs I have a working > libusb prototype which can tune and receive the transport stream, and > use the hardware PID filter. > > Porting it to a proper linux DVB driver I have the following question: > > This device has exactly 2 bulk endpoints, as follows: > > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x81 EP 1 IN > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0040 1x 64 bytes > bInterval 0 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x02 EP 2 OUT > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0040 1x 64 bytes > bInterval 0 > > All control messages go out over EP2. All responses, as well as the > transport stream, come in over EP1. uh, very crazy solution :o > All incoming packets have a small header which allows it to be mapped > back to the corresponding request (excepting TS data which can be read > spontaneously, but which is still marked with an additional header). > > Does this mean that I can not really use the dvb-usb framework ? (since > there is no generic_bulk_ctrl_endpoint, and since the TS stream also > does not come on its own endpoint and even needs additional depackatizing). Looks like it is not possible to use dvb-framework very much... ...But you can use generic_bulk_ctrl_endpoint & generic_write to write data if you can use dvb-framework partially. But reading data could be very hard to implement. > Since incoming data is mixed with TS packets, you can no longer just > write a command and read the next response. TS data will be streaming in > and every time you make some request you will probably get some TS data > first, and only then your response. How to solve? > > Any pointers in the right direction? :-) Other thoughts, wMaxPacketSize 0x0040 1x 64 bytes looks rather small for TS. Can you provide sample usb-sniff from windows? Parsed with usb-replay parser.pl -script would be enough if whole sniff is very large. > Cheers, > Dennis regards Antti -- http://palosaari.fi/ _______________________________________________ linux-dvb mailing list linux-dvb@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb