public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
* [linux-dvb] Pinnacle PCTV HD pro USB stick 801e
@ 2008-04-11  4:05 Jernej Tonejc
  2008-04-11  9:26 ` Albert Comerma
  0 siblings, 1 reply; 8+ messages in thread
From: Jernej Tonejc @ 2008-04-11  4:05 UTC (permalink / raw)
  To: linux-dvb

Hi,

I was wondering if anyone is working on enabling this device under linux. 
I took it apart and it contains the following chips:

DIBcom 0700C-XCCXa-G
USB 2.0 D3LTK.1
0804-0100-C
-----------------
SAMSUNG
S5H1411X01-Y0
NOTKRSUI H0801
-----------------
XCeive
XC5000AQ
BK66326.1
0802MYE3
-----------------
Cirrus
5340CZZ
0748
-----------------
CONEXANT
CX25843-24Z
71035657
0742 KOREA
-----------------

It seems that all parts should be more or less supported. I played around 
with the code and managed to get the IR receiver to work, however the 
frontend and tuner do not get attached no matter what kind of combination 
I try. The firmware for DiBcom chip  gets loaded successfully. Output in 
dmesg:
dvb-usb: downloading firmware from file 'dvb-usb-dib0700-1.10.fw'
dib0700: firmware started successfully.
...
input: IR-receiver inside an USB DVB receiver as 
/devices/pci0000:00/0000:00:1d.7/usb7/7-2/input/input20

The output of lsusb -v is

Bus 007 Device 023: ID 2304:023a Pinnacle Systems, Inc. [hex] 
Device Descriptor:
   bLength                18
   bDescriptorType         1
   bcdUSB               2.00
   bDeviceClass            0 (Defined at Interface level)
   bDeviceSubClass         0
   bDeviceProtocol         0
   bMaxPacketSize0        64
   idVendor           0x2304 Pinnacle Systems, Inc. [hex]
   idProduct          0x023a
   bcdDevice            1.00
   iManufacturer           1 YUANRD
   iProduct                2 PCTV 801e
   iSerial                 3 01004E0F9F
   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)


Thanks,

   Jernej

_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [linux-dvb] Pinnacle PCTV HD pro USB stick 801e
  2008-04-11  4:05 [linux-dvb] Pinnacle PCTV HD pro USB stick 801e Jernej Tonejc
@ 2008-04-11  9:26 ` Albert Comerma
  2008-04-11 13:38   ` Steven Toth
  0 siblings, 1 reply; 8+ messages in thread
From: Albert Comerma @ 2008-04-11  9:26 UTC (permalink / raw)
  To: Jernej Tonejc; +Cc: linux-dvb


[-- Attachment #1.1: Type: text/plain, Size: 4786 bytes --]

For the chips you list it seems to be an hybrid card, with a dibcom bridge.
In this case, what's more easy is to make dvb-t working (dib0700 + xc5000)
as you have tried. But there's no frontend which uses xc5000, so a new one
must be specified. In theory xc5000 is supported.... I hope this helps.

Albert

2008/4/11 Jernej Tonejc <tonejc@math.wisc.edu>:

> Hi,
>
> I was wondering if anyone is working on enabling this device under linux.
> I took it apart and it contains the following chips:
>
> DIBcom 0700C-XCCXa-G
> USB 2.0 D3LTK.1
> 0804-0100-C
> -----------------
> SAMSUNG
> S5H1411X01-Y0
> NOTKRSUI H0801
> -----------------
> XCeive
> XC5000AQ
> BK66326.1
> 0802MYE3
> -----------------
> Cirrus
> 5340CZZ
> 0748
> -----------------
> CONEXANT
> CX25843-24Z
> 71035657
> 0742 KOREA
> -----------------
>
> It seems that all parts should be more or less supported. I played around
> with the code and managed to get the IR receiver to work, however the
> frontend and tuner do not get attached no matter what kind of combination
> I try. The firmware for DiBcom chip  gets loaded successfully. Output in
> dmesg:
> dvb-usb: downloading firmware from file 'dvb-usb-dib0700-1.10.fw'
> dib0700: firmware started successfully.
> ...
> input: IR-receiver inside an USB DVB receiver as
> /devices/pci0000:00/0000:00:1d.7/usb7/7-2/input/input20
>
> The output of lsusb -v is
>
> Bus 007 Device 023: ID 2304:023a Pinnacle Systems, Inc. [hex]
> Device Descriptor:
>   bLength                18
>   bDescriptorType         1
>   bcdUSB               2.00
>   bDeviceClass            0 (Defined at Interface level)
>   bDeviceSubClass         0
>   bDeviceProtocol         0
>   bMaxPacketSize0        64
>   idVendor           0x2304 Pinnacle Systems, Inc. [hex]
>   idProduct          0x023a
>   bcdDevice            1.00
>   iManufacturer           1 YUANRD
>   iProduct                2 PCTV 801e
>   iSerial                 3 01004E0F9F
>   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)
>
>
> Thanks,
>
>   Jernej
>
> _______________________________________________
> linux-dvb mailing list
> linux-dvb@linuxtv.org
> http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
>

[-- Attachment #1.2: Type: text/html, Size: 8825 bytes --]

[-- Attachment #2: Type: text/plain, Size: 150 bytes --]

_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [linux-dvb] Pinnacle PCTV HD pro USB stick 801e
  2008-04-11  9:26 ` Albert Comerma
@ 2008-04-11 13:38   ` Steven Toth
  2008-04-11 14:15     ` Jernej Tonejc
  0 siblings, 1 reply; 8+ messages in thread
From: Steven Toth @ 2008-04-11 13:38 UTC (permalink / raw)
  To: Albert Comerma, Jernej Tonejc; +Cc: linux-dvb

Albert Comerma wrote:
> For the chips you list it seems to be an hybrid card, with a dibcom 
> bridge. In this case, what's more easy is to make dvb-t working (dib0700 
> + xc5000)  as you have tried. But there's no frontend which uses xc5000, 
> so a new one must be specified. In theory xc5000 is supported.... I hope 
> this helps.


Lots of frontends use the xc5005. stoth/hvr950q uses the au8522 and the 
xc5000. The cx23885 tree has concrete examples of the s5h1409 using the 
xc5000 (hvr1500q).


> 
> Albert
> 
> 2008/4/11 Jernej Tonejc <tonejc@math.wisc.edu 
> <mailto:tonejc@math.wisc.edu>>:
> 
>     Hi,
> 
>     I was wondering if anyone is working on enabling this device under
>     linux.
>     I took it apart and it contains the following chips:
> 
>     DIBcom 0700C-XCCXa-G
>     USB 2.0 D3LTK.1
>     0804-0100-C
>     -----------------

Hmm. I haven't really used the dibcom src but I think this is already 
supported.

>     SAMSUNG
>     S5H1411X01-Y0
>     NOTKRSUI H0801

I have a driver for this, I hope to release it shortly.

>     -----------------
>     XCeive
>     XC5000AQ
>     BK66326.1
>     0802MYE3
>     -----------------

I did a driver for this, it's already in the kernel.

>     Cirrus
>     5340CZZ
>     0748
>     -----------------

Already exists.

>     CONEXANT
>     CX25843-24Z
>     71035657
>     0742 KOREA
>     -----------------

Already exists

> 
>     It seems that all parts should be more or less supported. I played
>     around

No, see my comment above.

Why not get involved and scratch your own itch? :)

The community could use more developers, why not roll up your sleeves 
and help solve your problem - and the problem for others? Everyone has 
to start somewhere and usually when would-be developers ask questions - 
everyone is willing to help.

Regards,

Steve




_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [linux-dvb] Pinnacle PCTV HD pro USB stick 801e
  2008-04-11 13:38   ` Steven Toth
@ 2008-04-11 14:15     ` Jernej Tonejc
  2008-04-11 16:14       ` Steven Toth
  0 siblings, 1 reply; 8+ messages in thread
From: Jernej Tonejc @ 2008-04-11 14:15 UTC (permalink / raw)
  To: Steven Toth; +Cc: linux-dvb

>>
>>     DIBcom 0700C-XCCXa-G
>>     USB 2.0 D3LTK.1
>>     0804-0100-C
>>     -----------------
>
> Hmm. I haven't really used the dibcom src but I think this is already 
> supported.
Yes, this part works (I think this is responsible for attaching the IR 
remote controler and the remote works).

>
>>     SAMSUNG
>>     S5H1411X01-Y0
>>     NOTKRSUI H0801
>
> I have a driver for this, I hope to release it shortly.

I think this is the main problem for me so far. Without a frontend 
attached it doesn't try to attach the tuner and the code for s5h1409 just 
doesn't find the demod at any address (I tried everything from 0x00-0x7F 
on i2c bus). For some reason the i2c bus on the device doesn't seem to 
support anything, here's the output of  i2cdetect -F 4
(i2c-4       i2c             Pinnacle USB HDTV pro 801e)
I2C                              yes
SMBus Quick Command              no
SMBus Send Byte                  no
SMBus Receive Byte               no
SMBus Write Byte                 no
SMBus Read Byte                  no
SMBus Write Word                 no
SMBus Read Word                  no
SMBus Process Call               no
SMBus Block Write                no
SMBus Block Read                 no
SMBus Block Process Call         no
SMBus PEC                        no
I2C Block Write                  no
I2C Block Read                   no

>>     -----------------
>>     XCeive
>>     XC5000AQ
>>     BK66326.1
>>     0802MYE3
>>     -----------------
>
> I did a driver for this, it's already in the kernel.
I know, I added the code to attach this tuner but as I said before, it 
doesn't even try if there's no frontend.

> Why not get involved and scratch your own itch? :)
>
> The community could use more developers, why not roll up your sleeves and 
> help solve your problem - and the problem for others? Everyone has to start 
> somewhere and usually when would-be developers ask questions - everyone is 
> willing to help.

I'll try to do my best - the problem is that I don't know where to begin
and which parts are needed for the thing to work. It seems to me that 
getting the code for s5h1411 would be the start since the dib0700 part 
does work up to attaching the frontend. The /dev/dvb/adapter0/ folder 
contains:
crw-rw---- 1 root video 212, 4 2008-04-11 09:02 demux0
crw-rw---- 1 root video 212, 5 2008-04-11 09:02 dvr0
crw-rw---- 1 root video 212, 7 2008-04-11 09:02 net0


I think the s5h1409 code is just not compatible with s5h1411. Also, the 
GPIO settings are currently just copied from some other frontend attaching 
function (stk7070pd_frontend_attach0):

static int s5h1411_frontend_attach(struct dvb_usb_adapter *adap)
{
         dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1);
         msleep(10);
         dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1);
         dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1);
         dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1);
         dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0);

         dib0700_ctrl_clock(adap->dev, 72, 1);

         msleep(10);
         dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1);
         msleep(10);
         dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1);

         /*dib7000p_i2c_enumeration(&adap->dev->i2c_adap, 1, 18,
                 &dib7070p_dib7000p_config); */

         adap->fe = dvb_attach(s5h1409_attach, &pinnacle_801e_config,
                         &adap->dev->i2c_adap );
         return adap->fe == NULL ? -ENODEV : 0;
}

I have NO idea what should be set to what values. Also, what is the 
equivalent of dib7000p_i2c_enumeration for s5h14xx family? (it's commented 
out in the above code as it does not work.
Also, I have no previous experience with DVB stuff so I really don't know 
which parts are independent from each other and how to test various things 
on the device.

Regards,
  Jernej


_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [linux-dvb] Pinnacle PCTV HD pro USB stick 801e
  2008-04-11 14:15     ` Jernej Tonejc
@ 2008-04-11 16:14       ` Steven Toth
  2008-04-11 17:18         ` Jernej Tonejc
  2008-05-03 17:02         ` Jernej Tonejc
  0 siblings, 2 replies; 8+ messages in thread
From: Steven Toth @ 2008-04-11 16:14 UTC (permalink / raw)
  To: Jernej Tonejc; +Cc: linux-dvb

Jernej Tonejc wrote:
>>>
>>>     DIBcom 0700C-XCCXa-G
>>>     USB 2.0 D3LTK.1
>>>     0804-0100-C
>>>     -----------------
>>
>> Hmm. I haven't really used the dibcom src but I think this is already 
>> supported.
> Yes, this part works (I think this is responsible for attaching the IR 
> remote controler and the remote works).
> 
>>
>>>     SAMSUNG
>>>     S5H1411X01-Y0
>>>     NOTKRSUI H0801
>>
>> I have a driver for this, I hope to release it shortly.
> 
> I think this is the main problem for me so far. Without a frontend 
> attached it doesn't try to attach the tuner and the code for s5h1409 
> just doesn't find the demod at any address (I tried everything from 

Yeah, don't use the s5h1409, you're wasting your time.

...


>> The community could use more developers, why not roll up your sleeves 
>> and help solve your problem - and the problem for others? Everyone has 
>> to start somewhere and usually when would-be developers ask questions 
>> - everyone is willing to help.
> 
> I'll try to do my best - the problem is that I don't know where to begin
> and which parts are needed for the thing to work. It seems to me that 
> getting the code for s5h1411 would be the start since the dib0700 part 
> does work up to attaching the frontend. The /dev/dvb/adapter0/ folder 
> contains:
> crw-rw---- 1 root video 212, 4 2008-04-11 09:02 demux0
> crw-rw---- 1 root video 212, 5 2008-04-11 09:02 dvr0
> crw-rw---- 1 root video 212, 7 2008-04-11 09:02 net0
> 
> 
> I think the s5h1409 code is just not compatible with s5h1411. Also, the 
> GPIO settings are currently just copied from some other frontend 
> attaching function (stk7070pd_frontend_attach0):
> 
> static int s5h1411_frontend_attach(struct dvb_usb_adapter *adap)
> {
>         dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1);
>         msleep(10);
>         dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1);
>         dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1);
>         dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1);
>         dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0);
> 
>         dib0700_ctrl_clock(adap->dev, 72, 1);
> 
>         msleep(10);
>         dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1);
>         msleep(10);
>         dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1);
> 
>         /*dib7000p_i2c_enumeration(&adap->dev->i2c_adap, 1, 18,
>                 &dib7070p_dib7000p_config); */
> 
>         adap->fe = dvb_attach(s5h1409_attach, &pinnacle_801e_config,
>                         &adap->dev->i2c_adap );
>         return adap->fe == NULL ? -ENODEV : 0;
> }

Wow, is this how the attach code inside the dibcom driver really looks? Eek.


> 
> I have NO idea what should be set to what values. Also, what is the 
> equivalent of dib7000p_i2c_enumeration for s5h14xx family? (it's 
> commented out in the above code as it does not work.
> Also, I have no previous experience with DVB stuff so I really don't 
> know which parts are independent from each other and how to test various 
> things on the device.

Hi Jernej,

The s5h1409 is a different beast to the s5h1411, so you're wasting your 
time trying to make that work.

That being said, I'm kinda surprised you're having i2c scan issues. I 
don't work with the dibcom src so maybe that's a true limitation of the 
part, or maybe something else is just plain broken on your design.

Googling/searching the mailing list, or reading the wiki's at 
linuxtv.org might show a reason why I2C scanning isn't supported.

In terms og the GPIO's, you'll need to understand which GPIO the xc5000 
tuner is attached to (because the xc5000 needs to toggle this). You 
might also need to drive other gpio's to bring the tuner, demod or any 
other parts out of reset - and able to respond to i2c commands. I tend 
to add /* comments */ around the GPIO code for each product detailing 
any gpio's I know (or suspect), which helps other devs maintain the code 
later in it's life.

Maybe you could make some progress with understanding why I2C scanning 
doesn't work, and perhaps dig deeping and try to establish which gpio's 
are connected to what.

With these two things, and a s5h1411 driver we should be able to get 
support for this product pretty easily.

Regards,

- Steve





_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [linux-dvb] Pinnacle PCTV HD pro USB stick 801e
  2008-04-11 16:14       ` Steven Toth
@ 2008-04-11 17:18         ` Jernej Tonejc
  2008-05-03 17:02         ` Jernej Tonejc
  1 sibling, 0 replies; 8+ messages in thread
From: Jernej Tonejc @ 2008-04-11 17:18 UTC (permalink / raw)
  To: Steven Toth; +Cc: linux-dvb

On Fri, 11 Apr 2008, Steven Toth wrote:

>
> The s5h1409 is a different beast to the s5h1411, so you're wasting your time 
> trying to make that work.

Hi Steve,

is there any way you could send me at least the preliminary version of the 
s5h1411 driver or tell me where I could get one? This would make it easier 
to test whether the frontend attaching code works or not - right now I 
have no way of knowing since it doesn't recognize the part. I will focus 
on getting the xc5000 tuner to work later. With the frontend it should be 
possible to watch/test digital stuff, right?

> That being said, I'm kinda surprised you're having i2c scan issues. I don't 
> work with the dibcom src so maybe that's a true limitation of the part, or 
> maybe something else is just plain broken on your design.

> Googling/searching the mailing list, or reading the wiki's at linuxtv.org 
> might show a reason why I2C scanning isn't supported.

I'll do that.

Regards,
  Jernej

_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [linux-dvb] Pinnacle PCTV HD pro USB stick 801e
  2008-04-11 16:14       ` Steven Toth
  2008-04-11 17:18         ` Jernej Tonejc
@ 2008-05-03 17:02         ` Jernej Tonejc
  2008-05-03 17:21           ` Matthias Schwarzott
  1 sibling, 1 reply; 8+ messages in thread
From: Jernej Tonejc @ 2008-05-03 17:02 UTC (permalink / raw)
  To: Steven Toth; +Cc: linux-dvb

On Fri, 11 Apr 2008, Steven Toth wrote:

> Hi Jernej,
>
> The s5h1409 is a different beast to the s5h1411, so you're wasting your time 
> trying to make that work.
>
> That being said, I'm kinda surprised you're having i2c scan issues. I don't 
> work with the dibcom src so maybe that's a true limitation of the part, or 
> maybe something else is just plain broken on your design.
>
> Googling/searching the mailing list, or reading the wiki's at linuxtv.org 
> might show a reason why I2C scanning isn't supported.
>
> In terms og the GPIO's, you'll need to understand which GPIO the xc5000 tuner 
> is attached to (because the xc5000 needs to toggle this). You might also need 
> to drive other gpio's to bring the tuner, demod or any other parts out of 
> reset - and able to respond to i2c commands. I tend to add /* comments */ 
> around the GPIO code for each product detailing any gpio's I know (or 
> suspect), which helps other devs maintain the code later in it's life.
>
> Maybe you could make some progress with understanding why I2C scanning 
> doesn't work, and perhaps dig deeping and try to establish which gpio's are 
> connected to what.
>
> With these two things, and a s5h1411 driver we should be able to get support 
> for this product pretty easily.

Hi Steve,

I managed to get the s5h1411 frontend attached for the Pinnacle HDTV PRO 
801e USB stick. I scanned through all i2c ports (in the code, command-line 
utils like i2cdump, i2cdetect don't work for some reason) and I got 
response on addresses 0x19, 0x1a, 0x44, 0x50. The first two are almost 
certainly related to the s5h1411 frontend. I suspect that xc5000 is 
sitting on 0x50. The problem however is that the reply to the 
XREG_PRODUCT_ID command is not one of the two replies that you have in 
your xc5000.c code. Originally it returned 0x423. After adding that as one 
of the replies (both for loading the fw and for not loading it), I tried 
to tune to some frequency but the tuning failed. Also, the USB device ID 
changed the next time I plugged it in, it's 10b8:0066 now (it was 
2304:0231 before). I have no idea what caused this. The device is still 
recognized (after I updated the IDs in the code) and the frontend gets 
attached and seems to work - the device accepts all commands for the 
s5h1411 part. But strangely, everytime I try to tune, the reply on 0x50 
i2c port changes. It only changes between unplugging and plugging in the 
card, not between repeated attempts to tune while the stick stays in. The 
few different replies I got so far are: 0x423 (original, with the 
original USB IDs, it never reappeared), 0x34d1, 0x14d1, 0x0f51, 0x0dd1.

The IR receiver works all the time and the dibcom firmware successfully 
loads every time.

What could be the reason for the USB device ID to change? It went from 
Pinnacle to DibCOM, so it is not completely random, but I have no idea how 
to get it back.

Jernej

_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [linux-dvb] Pinnacle PCTV HD pro USB stick 801e
  2008-05-03 17:02         ` Jernej Tonejc
@ 2008-05-03 17:21           ` Matthias Schwarzott
  0 siblings, 0 replies; 8+ messages in thread
From: Matthias Schwarzott @ 2008-05-03 17:21 UTC (permalink / raw)
  To: linux-dvb; +Cc: Jernej Tonejc

On Samstag, 3. Mai 2008, Jernej Tonejc wrote:
> On Fri, 11 Apr 2008, Steven Toth wrote:
> > Hi Jernej,
> >
> > The s5h1409 is a different beast to the s5h1411, so you're wasting your
> > time trying to make that work.
> >
> > That being said, I'm kinda surprised you're having i2c scan issues. I
> > don't work with the dibcom src so maybe that's a true limitation of the
> > part, or maybe something else is just plain broken on your design.
> >
> > Googling/searching the mailing list, or reading the wiki's at linuxtv.org
> > might show a reason why I2C scanning isn't supported.
> >
> > In terms og the GPIO's, you'll need to understand which GPIO the xc5000
> > tuner is attached to (because the xc5000 needs to toggle this). You might
> > also need to drive other gpio's to bring the tuner, demod or any other
> > parts out of reset - and able to respond to i2c commands. I tend to add
> > /* comments */ around the GPIO code for each product detailing any gpio's
> > I know (or suspect), which helps other devs maintain the code later in
> > it's life.
> >
> > Maybe you could make some progress with understanding why I2C scanning
> > doesn't work, and perhaps dig deeping and try to establish which gpio's
> > are connected to what.
> >
> > With these two things, and a s5h1411 driver we should be able to get
> > support for this product pretty easily.
>
> Hi Steve,
>
> I managed to get the s5h1411 frontend attached for the Pinnacle HDTV PRO
> 801e USB stick. I scanned through all i2c ports (in the code, command-line
> utils like i2cdump, i2cdetect don't work for some reason) and I got
> response on addresses 0x19, 0x1a, 0x44, 0x50. The first two are almost
> certainly related to the s5h1411 frontend. I suspect that xc5000 is
> sitting on 0x50. The problem however is that the reply to the
> XREG_PRODUCT_ID command is not one of the two replies that you have in
> your xc5000.c code. Originally it returned 0x423. After adding that as one
> of the replies (both for loading the fw and for not loading it), I tried
> to tune to some frequency but the tuning failed. Also, the USB device ID
> changed the next time I plugged it in, it's 10b8:0066 now (it was
> 2304:0231 before). I have no idea what caused this. The device is still

First: I having absolutely no clue about this device.
But I do on i2c: I guess the device you found at 0x50 is an eeprom. So you may 
have overwritten the subvendor/subdevice id there.

> recognized (after I updated the IDs in the code) and the frontend gets
> attached and seems to work - the device accepts all commands for the
> s5h1411 part. But strangely, everytime I try to tune, the reply on 0x50
> i2c port changes. It only changes between unplugging and plugging in the
> card, not between repeated attempts to tune while the stick stays in. The
> few different replies I got so far are: 0x423 (original, with the
> original USB IDs, it never reappeared), 0x34d1, 0x14d1, 0x0f51, 0x0dd1.

As you wrote: Originally it returned 0x423 - that is just endian swapped the 
original vendor id of 0x2304.

Matthias

_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2008-05-03 17:21 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-04-11  4:05 [linux-dvb] Pinnacle PCTV HD pro USB stick 801e Jernej Tonejc
2008-04-11  9:26 ` Albert Comerma
2008-04-11 13:38   ` Steven Toth
2008-04-11 14:15     ` Jernej Tonejc
2008-04-11 16:14       ` Steven Toth
2008-04-11 17:18         ` Jernej Tonejc
2008-05-03 17:02         ` Jernej Tonejc
2008-05-03 17:21           ` Matthias Schwarzott

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox