public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
From: Michael Krufky <mkrufky@linuxtv.org>
To: Mauro Carvalho Chehab <mchehab@infradead.org>
Cc: video4linux-list@redhat.com, linux-dvb@linuxtv.org, fragabr@gmail.com
Subject: Re: [linux-dvb] [EXPERIMENTAL] cx88+xc3028 - tests are required - was: Re: Wh en xc3028/xc2028 will be supported?
Date: Fri, 22 Feb 2008 09:13:44 -0500	[thread overview]
Message-ID: <47BED898.4070902@linuxtv.org> (raw)
In-Reply-To: <47BED1E4.1010806@linuxtv.org>

Michael Krufky wrote:
> Mauro Carvalho Chehab wrote:
>   
>> On Thu, 21 Feb 2008 20:38:09 -0500
>> Michael Krufky <mkrufky@linuxtv.org> wrote:
>>
>>   
>>     
>>> Mauro Carvalho Chehab wrote:
>>>     
>>>       
>>>>>> It is not that simple. Steven patch works for DTV on PCI Nano; Christopher
>>>>>> patches for some other DiVCO boards (DTV also); my port of Markus patch
>>>>>>       
>>>>>>           
>>>>>>             
>>>>> for
>>>>>     
>>>>>         
>>>>>           
>>>>>> other boards (tested by Dâniel Fraga - Analog TV).
>>>>>>   
>>>>>>       
>>>>>>           
>>>>>>             
>>>>> What does one board have to do with another?  Just because these boards 
>>>>> all use xceive tuners does not mean that they should be grouped together.
>>>>>     
>>>>>         
>>>>>           
>>>> No, but we have patches for all of them.
>>>>
>>>>   
>>>>       
>>>>         
>>>>> Because the user has the ability to load cx8800 without cx88-dvb, and 
>>>>> likewise, the user has the ability to load cx88-dvb without cx8800, the 
>>>>> attach call must be fully qualified such that the other side of the 
>>>>> driver is not required to be loaded in order for the tuner to work.
>>>>>     
>>>>>         
>>>>>           
>>>> If you take a look at the code, you'll see that all code is at cx88xx. This
>>>> module is loaded by cx8800, if you're using analog, or by cx8802, if you're
>>>> using cx88-dvb or cx88-blackbird.
>>>>
>>>> The code initializes xc3028 before tuner attach.
>>>>
>>>>   
>>>>       
>>>>         
>>>>> In the case of FusionHDTV5 pci nano, there will never be an attach call 
>>>>> from the analog side of the driver, since the tuner is hidden behind the 
>>>>> s5h1409's i2c gate, and analog mode is not supported with the current 
>>>>> driver.  If you set i2c_scan=1 on the PCI nano, the xceive tuner will 
>>>>> not even show up in the scan.
>>>>>     
>>>>>         
>>>>>           
>>>> The proper fix is to open the i2c gate before loading tuner. This will allow
>>>> i2c_scan to work and both analog and digital modes will work. Btw, this
>>>> somewhat similar to what dvico_fusionhdtv_hybrid_init() does on cx88-cards.
>>>>
>>>> I've added a patch that should open the bridge for s5h1409. Please test. 
>>>>       
>>>>         
>>> Mauro,
>>>
>>> It does not work.  See my prior email in this thread for the explanation.
>>>
>>> [ 2912.355967] Linux video capture interface: v2.00
>>> [ 2912.373470] cx88/0: cx2388x v4l2 driver version 0.0.6 loaded
>>> [ 2912.373536] ACPI: PCI Interrupt 0000:02:07.0[A] -> GSI 19 (level,
>>> low) -> IRQ 17
>>> [ 2912.373601] cx88[0]: subsystem: 18ac:d530, board: DVICO HDTV5 PCI
>>> Nano [card=59,autodetected]
>>> [ 2912.373607] cx88[0]: TV tuner type 71, Radio tuner type -1
>>> [ 2912.555088] cx88[0]: Asking xc2028/3028 to load firmware xc3028-v27.fw
>>>     
>>>       
>> 		          ^^^^
>> The above message were generated by cx88-cards. So, as I said before, this were
>> called _before_ running dvb_register, defined at cx88-dvb.
>>
>> The issue is simple: the i2c gate code were wrong. So, xc3028 is not visible on
>> that point of the code. With this, analog support will never work. The proper
>> fix is to enable xc3028 before enabling i2c, meaning to correct the code at
>> cx88_pci_nano_init().
>>
>> After re-visiting s5h1409 code, I noticed that I've used the wrong sequence for
>> the gate. The state should be i2c closed, for xc3028 to work. The following
>> patch should fix:
>>
>> http://linuxtv.org/hg/~mchehab/cx88-xc2028/rev/871db4e0451c
>>
>> Please test it, with i2c_scan=1, and post the results.
>>   
>>     
>
> Doesn't work.
>
> [  795.056020] Linux video capture interface: v2.00
> [  798.235564] cx88/0: cx2388x v4l2 driver version 0.0.6 loaded
> [  798.235643] ACPI: PCI Interrupt 0000:02:07.0[A] -> GSI 19 (level,
> low) -> IRQ 18
> [  798.235718] cx88[0]: subsystem: 18ac:d530, board: DVICO HDTV5 PCI
> Nano [card=59,autodetected]
> [  798.235722] cx88[0]: TV tuner type 71, Radio tuner type -1
> [  798.371224] cx88[0]: i2c scan: found device @ 0x32  [???]
> [  798.371391] cx88[0]: i2c scan: found device @ 0x34  [???]
> [  798.399887] cx88[0]: i2c scan: found device @ 0xa0  [eeprom]
> [  798.400319] cx88[0]: i2c scan: found device @ 0xa2  [???]
> [  798.400482] cx88[0]: i2c scan: found device @ 0xa4  [???]
> [  798.400642] cx88[0]: i2c scan: found device @ 0xa6  [???]
> [  798.400800] cx88[0]: i2c scan: found device @ 0xa8  [???]
> [  798.400957] cx88[0]: i2c scan: found device @ 0xaa  [???]
> [  798.401116] cx88[0]: i2c scan: found device @ 0xac  [???]
> [  798.401272] cx88[0]: i2c scan: found device @ 0xae  [???]
> [  798.411996] cx88[0]: i2c scan: found device @ 0xd6  [???]
> [  798.488821] Closing s5h1409 i2c gate to allow xc3028 detection
> [  798.489283] cx88[0]: Asking xc2028/3028 to load firmware xc3028-v27.fw
> [  798.489301] cx88[0]/0: found at 0000:02:07.0, rev: 5, irq: 18,
> latency: 64, mmio: 0xe4000000
> [  798.489376] cx88[0]/0: registered device video0 [v4l2]
> [  798.489408] cx88[0]/0: registered device vbi0
> [  818.236239] cx88/2: cx2388x MPEG-TS Driver Manager version 0.0.6 loaded
> [  818.236443] cx88[0]/2: cx2388x 8802 Driver Manager
> [  818.236465] ACPI: PCI Interrupt 0000:02:07.2[A] -> GSI 19 (level,
> low) -> IRQ 18
> [  818.236480] cx88[0]/2: found at 0000:02:07.2, rev: 5, irq: 18,
> latency: 64, mmio: 0xe6000000
> [  818.254906] cx88/2: cx2388x dvb driver version 0.0.6 loaded
> [  818.254913] cx88/2: registering cx8802 driver, type: dvb access: shared
> [  818.254918] cx88[0]/2: subsystem: 18ac:d530, board: DVICO HDTV5 PCI
> Nano [card=59]
> [  818.254922] cx88[0]/2: cx2388x based DVB/ATSC card
> [  818.309763] xc2028 1-0061: type set to XCeive xc2028/xc3028 tuner
> [  818.309768] cx88[0]/2: xc3028 attached
> [  818.310968] DVB: registering new adapter (cx88[0])
> [  818.311080] DVB: registering frontend 0 (Samsung S5H1409 QAM/8VSB
> Frontend)...
> [  826.542292] xc2028 1-0061: xc2028/3028 firmware name not set!
> [  827.643657] xc2028 1-0061: xc2028/3028 firmware name not set!
> [  828.745093] xc2028 1-0061: xc2028/3028 firmware name not set!
> [  829.846543] xc2028 1-0061: xc2028/3028 firmware name not set!
> [  830.844337] xc2028 1-0061: Error on line 1068: -121
>
> -Mike
>
>   


BTW, there was a build error -- I had to change your,

warn_printk("Closing s5h1409 i2c gate to allow xc3028 detection\n");

to:

warn_printk("Closing s5h1409 i2c gate to allow xc3028 detection\n");



-Mike


--
video4linux-list mailing list
Unsubscribe mailto:video4linux-list-request@redhat.com?subject=unsubscribe
https://www.redhat.com/mailman/listinfo/video4linux-list

  reply	other threads:[~2008-02-22 14:14 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20080127173132.551401d9@tux.abusar.org.br>
     [not found] ` <20080128165403.1f7137e0@gaivota>
     [not found]   ` <20080128182634.345bd4e8@tux.abusar.org.br>
     [not found]     ` <20080128184534.7af7a41b@gaivota>
     [not found]       ` <20080128192230.59921445@tux.abusar.org.br>
     [not found]         ` <20080129004104.17e20224@gaivota>
     [not found]           ` <20080129021904.1d3047d1@tux.abusar.org.br>
     [not found]             ` <20080129025020.60fa33de@gaivota>
     [not found]               ` <20080129050103.2fae9d61@tux.abusar.org.br>
     [not found]                 ` <20080129122547.63214371@gaivota>
2008-02-16 19:30                   ` [EXPERIMENTAL] cx88+xc3028 - tests are required - was: Re: When xc3028/xc2028 will be supported? Daniel Gimpelevich
2008-02-17 15:35                     ` Markus Rechberger
2008-02-19  4:44                   ` Michael Krufky
2008-02-19  9:51                     ` Mauro Carvalho Chehab
2008-02-19 16:38                       ` Mauro Carvalho Chehab
2008-02-19 17:24                         ` Daniel Gimpelevich
2008-02-19 21:20                           ` Mauro Carvalho Chehab
2008-02-19 22:27                             ` Dâniel Fraga
2008-02-19 20:43                       ` [EXPERIMENTAL] cx88+xc3028 - tests are required - was: Re: Wh en " mkrufky
2008-02-19 21:20                         ` Mauro Carvalho Chehab
2008-02-22  1:38                           ` Michael Krufky
2008-02-22 12:13                             ` Mauro Carvalho Chehab
2008-02-22 13:45                               ` [linux-dvb] " Michael Krufky
2008-02-22 14:13                                 ` Michael Krufky [this message]
2008-02-22 14:47                                   ` Vanessa Ezekowitz
2008-02-21 13:48                     ` [EXPERIMENTAL] cx88+xc3028 - tests are required - was: Re: When " Adam Pribyl

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=47BED898.4070902@linuxtv.org \
    --to=mkrufky@linuxtv.org \
    --cc=fragabr@gmail.com \
    --cc=linux-dvb@linuxtv.org \
    --cc=mchehab@infradead.org \
    --cc=video4linux-list@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox