Bug #70
Need drivers added to DVB package for Dvico dual cards
Status: | No user feedback | Start date: | ||
---|---|---|---|---|
Priority: | Normal | Due date: | ||
Assignee: | - | % Done: | 0% |
|
Category: | Packages: Core | Spent time: | - | |
Target version: | - |
Description
Need DVB driver package for Chris Pascoe's Dvico drivers. Otherwise current Dvico DVB dual cards will not work.
Compilation instructions are (from http://www.itee.uq.edu.au/~chrisp/Linux-DVB/DVICO/):
hg clone http://linuxtv.org/hg/~pascoe/xc-test/
cd xc-test
make
Also required is the following /lib/firmware:
wget http://www.linuxtv.org/downloads/firmware/dvb-usb-bluebird-01.fw
wget http://www.itee.uq.edu.au/~chrisp/Linux-DVB/DVICO/xc3028-dvico-au-01.fw
wget http://www.itee.uq.edu.au/~chrisp/Linux-DVB/DVICO/dvb-usb-bluebird-02.fw
History
Updated by cecil almost 16 years ago
Needed firmware is already in place.
Updated by cecil almost 16 years ago
Modules fail to build with 2.6.27 with the following:
4l/../linux/include/media/v4l2-i2c-drv-legacy.h: In function 'v4l2_i2c_drv_init':
/data/LinHES-PKGBUILD/abs/extra-testing/v4l-dvb-dvico/src/xc-test-d4f7804a393c/v4l/../linux/include/media/v4l2-i2c-drv-legacy.h:197: warning: assignment from incompatible pointer type
/data/LinHES-PKGBUILD/abs/extra-testing/v4l-dvb-dvico/src/xc-test-d4f7804a393c/v4l/cx25840-core.c: At top level:
/data/LinHES-PKGBUILD/abs/extra-testing/v4l-dvb-dvico/src/xc-test-d4f7804a393c/v4l/cx25840-core.c:69: error: conflicting type qualifiers for 'addr_data'
/data/LinHES-PKGBUILD/abs/extra-testing/v4l-dvb-dvico/src/xc-test-d4f7804a393c/v4l/../linux/include/media/v4l2-i2c-drv-legacy.h:41: error: previous declaration of 'addr_data' was here
make3: * [/data/LinHES-PKGBUILD/abs/extra-testing/v4l-dvb-dvico/src/xc-test-d4f7804a393c/v4l/cx25840-core.o] Error 1
make2: [_module_/data/LinHES-PKGBUILD/abs/extra-testing/v4l-dvb-dvico/src/xc-test-d4f7804a393c/v4l] Error 2
make2: Leaving directory `/usr/src/linux-2.6.27-ARCH'
make1: [default] Error 2
make1: Leaving directory `/data/LinHES-PKGBUILD/abs/extra-testing/v4l-dvb-dvico/src/xc-test-d4f7804a393c/v4l'
make: * [all] Error 2
==> ERROR: Build Failed.
Aborting..
Updated by cecil almost 16 years ago
Found a patch for the above error (http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.24-rc4/2.6.24-rc4-mm1/broken-out/fix-jdelvare-i2c-i2c-constify-client-address-data.patch), however it is still erroring out further down the line:
CC [M] /data/LinHES-PKGBUILD/abs/extra-testing/v4l-dvb-dvico/src/xc-test-d4f7804a393c/v4l/au6610.o
CC [M] /data/LinHES-PKGBUILD/abs/extra-testing/v4l-dvb-dvico/src/xc-test-d4f7804a393c/v4l/cxusb.o
/data/LinHES-PKGBUILD/abs/extra-testing/v4l-dvb-dvico/src/xc-test-d4f7804a393c/v4l/cxusb.c: In function 'bluebird_patch_dvico_firmware_download':
/data/LinHES-PKGBUILD/abs/extra-testing/v4l-dvb-dvico/src/xc-test-d4f7804a393c/v4l/cxusb.c:699: error: assignment of read-only location '*(fw->data + ((unsigned int)idoff + 2u))'
/data/LinHES-PKGBUILD/abs/extra-testing/v4l-dvb-dvico/src/xc-test-d4f7804a393c/v4l/cxusb.c:701: error: assignment of read-only location '*(fw->data + ((unsigned int)idoff + 3u))'
make[3]: * [/data/LinHES-PKGBUILD/abs/extra-testing/v4l-dvb-dvico/src/xc-test-d4f7804a393c/v4l/cxusb.o] Error 1
make[2]: [_module_/data/LinHES-PKGBUILD/abs/extra-testing/v4l-dvb-dvico/src/xc-test-d4f7804a393c/v4l] Error 2
make[2]: Leaving directory `/usr/src/linux-2.6.28-ARCH'
make[1]: [default] Error 2
make[1]: Leaving directory `/data/LinHES-PKGBUILD/abs/extra-testing/v4l-dvb-dvico/src/xc-test-d4f7804a393c/v4l'
make: * [all] Error 2
Updated by girkers over 15 years ago
I have the revision 2 version of this card and it works without issue as the driver had been merged into V4L drivers. Whilst that doesn't help this situation I thought I would let you know.
Updated by manicmike over 15 years ago
With .8 I got an error message, and the card didn't work until I manually installed xc3028-v27.fw. From dmesg...
xc2028 2-0061: type set to XCeive xc2028/xc3028 tuner
xc2028 3-0061: type set to XCeive xc2028/xc3028 tuner
i2c-adapter i2c-2: firmware: requesting xc3028-v27.fw
xc2028 2-0061: Loading 80 firmware images from xc3028-v27.fw, type: xc2028 firmware, ver 2.7
i2c-adapter i2c-3: firmware: requesting xc3028-v27.fw
xc2028 3-0061: Loading 80 firmware images from xc3028-v27.fw, type: xc2028 firmware, ver 2.7
Firmware file is attached.
Mike
Updated by GregFrost over 15 years ago
Mike, I have added your firmware to the dvb-firmware package. Is that all that is needed to close this task?
Updated by manicmike over 15 years ago
No. It still doesn't work. A recent installation I did with the dvico dual pci card fried the card, and two different dual pcie cards tried do not allow both tuners to work.
Strangely, the Chris Pascoe drivers weren't perfect, but they worked for the most part (cards couldn't tune higher UHF frequencies found in repeater areas).
Still definitely broken. I will do more research when time permits.
Mike
Updated by lambretta about 15 years ago
Hello all. Just installed linHES 6.00.09 and am using the Dvico Dual Digital 4 card (version 1) and they seem to be working fine for me.
I have only started testing so not 100% sure evrything is OK but seems OK so far. Recording two programs at a time works.
Can update in a week or so after full time use of the box has taken place (I'm sure the wife will let me know if anything is not working well).
Updated by manicmike about 15 years ago
So you are tuning to a repeater station? Which one?
Updated by lambretta about 15 years ago
I'm in Perth (but not currently in front of my mythbox).
On a rabbit ears antenna I could watch 10, 9 and 2 at least, One HD as well (from memory). Once its plugged into the roof antenna I dare say i'll get all the channels but will report back after a week of usage just incase there are some issues.
Updated by lambretta about 15 years ago
Hmmm, strange.
It would appear at least with my hardware it is a little tricky to actually get the card recognised to then be able to add it as a capture device. Sometimes it was recognised sometimes it wasn't. I eventually rebooted enough times to finally have both tuners on the card to be recognised to then be able to add them as a DVB tuner.
I am still having some intermittent problems with the card.
Friday night after a reboot one of the tuners was gone (showed as unavialable in the front end).
Last night I rebooted and the card appeared to be available to record but the capture was just a blank black frame.
I have also installed a Dvico single tuner "lite" which uses BT878.
I have posted what I hope are the relevant bits of logs etc.
=====Dvico Dual Digital 4=====[root@linhes ~]# lsusb
blah blah
Bus 002 Device 003: ID 0fe9:db78 DVICO FusionHDTV DVB-T Dual Digital 4 (ZL10353+xc2028/xc3028) (initialized)
Bus 002 Device 002: ID 0fe9:db78 DVICO FusionHDTV DVB-T Dual Digital 4 (ZL10353+xc2028/xc3028) (initialized)
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
[root@linhes ~]# cat /var/log/messages.log | grep dvb
Sep 27 19:42:17 linhes cx88/2: cx2388x dvb driver version 0.0.6 loaded
Sep 27 19:42:17 linhes cx88/2: registering cx8802 driver, type: dvb access: shared
Sep 27 19:42:17 linhes bttv0: add subdevice "dvb0"
Sep 27 19:42:17 linhes dvb-usb: found a 'DViCO FusionHDTV DVB-T Dual Digital 4' in warm state.
Sep 27 19:42:17 linhes dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
Sep 27 19:42:17 linhes dvb-usb: schedule remote query interval to 100 msecs.
Sep 27 19:42:17 linhes dvb-usb: DViCO FusionHDTV DVB-T Dual Digital 4 successfully initialized and connected.
Sep 27 19:42:17 linhes dvb-usb: found a 'DViCO FusionHDTV DVB-T Dual Digital 4' in warm state.
Sep 27 19:42:17 linhes dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
Sep 27 19:42:17 linhes dvb-usb: DViCO FusionHDTV DVB-T Dual Digital 4 successfully initialized and connected.
Sep 27 19:42:17 linhes usbcore: registered new interface driver dvb_usb_cxusb
Sep 27 19:42:17 linhes cx88/2: cx2388x dvb driver version 0.0.6 loaded
Sep 27 19:42:17 linhes cx88/2: registering cx8802 driver, type: dvb access: shared
=====Dvico lite=====[root@linhes ~]# lspci
blah blah
04:02.0 Multimedia video controller: Brooktree Corporation Bt878 Video Capture (rev 11)
04:02.1 Multimedia controller: Brooktree Corporation Bt878 Audio Capture (rev 11)
[root@linhes dvb]# cat /var/log/messages.log | grep bttv
Sep 27 19:42:17 linhes bttv: driver version 0.9.17 loaded
Sep 27 19:42:17 linhes bttv: using 8 buffers with 2080k (520 pages) each for capture
Sep 27 19:42:17 linhes bttv: Bt8xx card found (0).
Sep 27 19:42:17 linhes bttv 0000:04:02.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
Sep 27 19:42:17 linhes bttv0: Bt878 (rev 17) at 0000:04:02.0, irq: 18, latency: 64, mmio: 0xf0001000
Sep 27 19:42:17 linhes bttv0: detected: DViCO FusionHDTV DVB-T Lite [card=128], PCI subsystem ID is 18ac:db10
Sep 27 19:42:17 linhes bttv0: using: DViCO FusionHDTV DVB-T Lite [card=128,autodetected]
Sep 27 19:42:17 linhes bttv0: tuner absent
Sep 27 19:42:17 linhes bttv0: add subdevice "dvb0"
Sep 27 19:42:17 linhes DVB: registering new adapter (bttv0)
Please let me know if there is something specific you need from me to be able to find out why one of the tuner sometime works, sometimes doesn't and also why perhaps it is a battle to get the tuner recognised to be able to be added.
Updated by manicmike about 15 years ago
Hi Martin,
Since the code was integrated into the kernel, it's been very difficult to get either the dual PCIE or the dual PCI to work at all!
There are two things you can do:
1. Try different firmware. The fw On Chris Pascoe's web site worked for me in the past, but you could also extract the one your card uses in Windows (assuming you have Windows somewhere). You may need to create a symlink to the name it's looking for.
2. Re-compile the kernel without support for dvico cards then compile Chris' v4l-dvb.
I think the problem is that someone else's code was integrated into the kernel source rather than Chris Pascoe's, and it simply doesn't work for these cards. Since support is already flagged as in the kernel, compilation of his drivers fails (Cecil and I both tried unsuccessfully). I'm a bit surprised that that lite fails: In my experience, this has been well supported for years so this is quite a bad regression. The lite works perfectly with KM 5.5. as does the dual card. The latter not perfectly, but it will work quite well in the metro area with standard stations (except in Adelaide, where channel 7 doesn't tune).
Mike
P.S. I ordered Lambretta parts from you last year :-)
Updated by lambretta about 15 years ago
Its not that the drivers that are included with the kernel don't work, its just that they appear to be flakey. Strange that the drivers that were created by Chris were not used in the kernel given he appeared to be the man that put a lot of effort into getting these cards going. Another test today shows that the tuner recorded but then when you go to play it it says "The file for this recording can not be found"
To confirm, the DVICO lite single tuners do work fine, its the dual digital 4 that is dodgy.
Interestingly I can watch live TV on any of the tuners but it took a long while to tune the station in. I have today changed the tuner time out setting from 3000msec to 5000msec for all cards. Just tested it now and I am recording with all tuners at the same time. Perhaps my problem was simply one of the tuners timing out before it got a channel lock and so failing.
Still, a bit strange with the initial setup not seeing both tuners on the DD4 but then finally seeing them both and then loosing one after a reboot.
Mike, you'll be in the thick of Lambretta's this coming weekend. Ron is over in Adelaide for the nationals, catch up with him!
Updated by brfransen over 14 years ago
- Assignee deleted (
manicmike) - Status changed from New to Feedback
- Category set to Packages: Core
Is this still an issue with 6.03.00?
Updated by jams almost 14 years ago
- Status changed from Feedback to No user feedback
closed due to no response.
Updated by manicmike almost 14 years ago
Driver incorporated into kernel now. Resolving.