"DVICO Fusion HDTV DVB Plus" tv tuner card will not lock on to channel

Bug #33096 reported by Barney
8
Affects Status Importance Assigned to Milestone
linux-source-2.6.15 (Ubuntu)
Fix Released
Medium
Ben Collins

Bug Description

Upgrade from 2.16.12 in Breezy to 2.6.15-14/15/16 in Dapper (amd64-generic/k8) broke the driver for the DVICO Fusion HDTV Plus. Driver starts but the card cannot tune to any channels.

Investigation of source shows that drivers/media/video/cx88/cx88-dvb.c has been altered at this point, from the version working in 2.6.12:

(2.6.15-16.23 version)

510 case CX88_BOARD_DVICO_FUSIONHDTV_DVB_T_PLUS:
511 dev->core->pll_addr = 0x61;
512 dev->core->pll_desc = &dvb_pll_thomson_dtt7579;
513 dev->dvb.frontend = mt352_attach(&dvico_fusionhdtv,
514 &dev->core->i2c_adap);

line 511 should read as follows:

                 dev->core->pll_addr = 0x60;

A rebuild of the linux-image package with this change fixed the problem.

Matt Zimmerman (mdz)
Changed in linux-source-2.6.15:
assignee: nobody → ben-collins
Revision history for this message
Stuart Dalton (badcdev) wrote :

I recently upgraded to Dapper, and had the same problems with my DVICO Fusion HDTV Plus card. The same driver modification appears to have fixed the problem.

Revision history for this message
Ben Collins (ben-collins) wrote :

This is sort of crappy though. This change can break or fix other cards. So either way I am breaking something for someone.

Is there a better fix for this, maybe in upstream?

Revision history for this message
Barney (bmw-internode) wrote :

Upstream doesn't address the issue of the 0x61, or didn't at the time I raised the bug. I didn't find the previous bugs that changed the value until after I rasied this one - I just thought it was a typo in the dapper because I couldn't find a version of the kernel tree that had the change in it.

The whole issue of the same card type having different versions with the same id is annoying, my other tv card has the same problem - It is a low profile version with a totally different tuner module, but the card id is the same as the non low profile version.

Probably the fix would be to have both versions in the code and one version needs to be explicitly defined by passing the card type to the module at run time. This is how I get around the issue with my other card, because the reference card config works for it.

eg:
case CX88_BOARD_DVICO_FUSIONHDTV_DVB_T_PLUS_V2:
dev->core->pll_addr = 0x61;
...

Then you manually specify the corresponding number for V2 as a parameter when the module is loaded, if you have the card that needs the alternate configuration.

I wonder if upstream even know if there are 2 versions of this card...

Revision history for this message
Michael Krufky (mkrufky) wrote :

This bug is due to UBUNTU commit: 3a580f39df8937f54976b2e7ce2ef54294da06f9

http://www.kernel.org/git/?p=linux/kernel/git/bcollins/ubuntu-2.6.git;a=blobdiff;h=3a580f39df8937f54976b2e7ce2ef54294da06f9;hp=99ea955f5987c058a50dabacee8b2377c3fbc75a;hb=30fbd96c515f7ad612486dbd94099b0a461e406a;f=drivers/media/video/cx88/cx88-dvb.c

In the commit message, James Gregory refers to Ubuntu Bugzilla #5773, which is bug#12162 on Launchpad.net:

https://launchpad.net/distros/ubuntu/+source/linux-source-2.6.15/+bug/12162

bug#12162 (bugzilla #5773) is bogus, and the git commit shown above should be reverted.

I have confirmed with the DViCO systems engineer that the FusionHDTV DVB-T Plus does in fact use Thomson DTT7579 at i2c address 0x60, and that there is no alternate version of this card using 0x61 . Instead of patching the card definition for FusionHDTV DVB-T Plus (rendering the actual card useless), the user should let the cx88 module autodetect his CX88_BOARD_DVICO_FUSIONHDTV_DVB_T1, which uses LG Z201 at 0x61.

Revision history for this message
Michael Krufky (mkrufky) wrote : revert bogus commit: 3a580f39df8937f54976b2e7ce2ef54294da06f9

This patch reverts commit 3a580f39df8937f54976b2e7ce2ef54294da06f9,
which was intended as a "fix" to bug #12162 (Bugzilla Bug 5773)

Bug #12162 is bogus. I have confirmed with the DViCO systems engineer that the FusionHDTV DVB-T Plus does in fact use Thomson DTT7579 at i2c address 0x60, and that there is no alternate version of this card using 0x61 . Instead of patching the card definition for FusionHDTV DVB-T Plus (rendering the actual card useless), the user should let the cx88 module autodetect his CX88_BOARD_DVICO_FUSIONHDTV_DVB_T1, which uses LG Z201 at 0x61.

Changed in linux-source-2.6.15:
status: Unconfirmed → Fix Committed
Revision history for this message
Marco Rodrigues (gothicx) wrote :

Isn't this one already fix released ?

Changed in linux-source-2.6.15:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.