On 9/12/07, Valerio Bontempi <[EMAIL PROTECTED]> wrote:
> I can't load the driver with 2.6.18 because I removed openSuse 10.2 some
> months ago: I should compile and install this version on Ubuntu in order to
> try that if needed.
> Following I report the /var/log/messages on 2.6.20 using reg_debug=1:
>
> Sep 12 11:05:49 gandalf kernel: [ 1635.788000] em28xx v4l2 driver version
> 0.0.1 loaded
>  Sep 12 11:05:49 gandalf kernel: [ 1635.904000] em28xx: device is attached
> to a USB 2.0 bus
>  Sep 12 11:05:49 gandalf kernel: [ 1635.904000] em28xx: you're using the
> experimental/unstable tree from mcentral.de
>
>  Sep 12 11:05:49 gandalf kernel: [ 1635.904000] em28xx: there's also a
> stable tree available but which is limited to
>  Sep 12 11:05:49 gandalf kernel: [ 1635.904000] em28xx: linux <=2.6.19.2
>  Sep 12 11:05:49 gandalf kernel: [ 1635.904000] em28xx: it's fine to use
> this driver but keep in mind that it will move
>  Sep 12 11:05:49 gandalf kernel: [ 1635.904000] em28xx: to
> http://mcentral.de/hg/~mrec/v4l-dvb-kernel
>  as soon as it's
>  Sep 12 11:05:49 gandalf kernel: [ 1635.904000] em28xx: proved to be stable
>  Sep 12 11:05:49 gandalf kernel: [ 1635.904000] em28xx #0: Alternate
> settings: 8
>  Sep 12 11:05:49 gandalf kernel: [ 1635.904000] em28xx #0: Alternate setting
> 0, max size= 0
>  Sep 12 11:05:49 gandalf kernel: [ 1635.904000] em28xx #0: Alternate setting
> 1, max size= 0
>  Sep 12 11:05:49 gandalf kernel: [ 1635.904000] em28xx #0: Alternate setting
> 2, max size= 1448
>  Sep 12 11:05:49 gandalf kernel: [ 1635.904000] em28xx #0: Alternate setting
> 3, max size= 2048
>  Sep 12 11:05:49 gandalf kernel: [ 1635.904000] em28xx #0: Alternate setting
> 4, max size= 2304
>  Sep 12 11:05:49 gandalf kernel: [ 1635.904000] em28xx #0: Alternate setting
> 5, max size= 2580
>  Sep 12 11:05:49 gandalf kernel: [ 1635.904000] em28xx #0: Alternate setting
> 6, max size= 2892
>  Sep 12 11:05:49 gandalf kernel: [ 1635.904000] em28xx #0: Alternate setting
> 7, max size= 3072
...snip...
>  Sep 12 11:05:50 gandalf kernel: [ 1635.952000] EEPROM ID= 0x9567eb1a
>  Sep 12 11:05:50 gandalf kernel: [ 1635.952000] Vendor/Product ID= 0ccd:0043
>  Sep 12 11:05:50 gandalf kernel: [ 1635.952000] No audio on board.
>  Sep 12 11:05:50 gandalf kernel: [ 1635.952000] 500mA max power
>  Sep 12 11:05:50 gandalf kernel: [ 1635.952000] Table at 0x06,
> strings=0x249e, 0x346a, 0x0000
...snip...
>  Sep 12 11:05:50 gandalf kernel: [ 1635.956000] tuner 2-0061: chip found @
> 0xc2 (em28xx #0)
>  Sep 12 11:05:50 gandalf kernel: [ 1635.960000] attach inform (default):
> detected I2C address c2
>  Sep 12 11:05:50 gandalf kernel: [ 1635.960000]
> /usr/local/src/v4l-dvb-kernel
> /v4l/tuner-core.c: setting tuner callback
>  Sep 12 11:05:50 gandalf kernel: [ 1635.960000]
> /usr/local/src/v4l-dvb-kernel/v4l/tuner-core.c: setting
> tuner callback

I don't see any sign of the xc3028 driver doing anything here, which
probably isn't a good sign. It doesn't even seem to be getting to the
stage of trying to load the firmware.

>  Sep 12 11:05:50 gandalf kernel: [ 1635.972000] em28xx #0: Found Terratec
> Cinergy T XS
>  Sep 12 11:05:50 gandalf kernel: [ 1635.976000] usbcore: registered new
> interface driver em28xx
>  Sep 12 11:05:50 gandalf kernel: [ 1636.000000] em2880-dvb.c: DVB Init

There ought to be a GPIO write here, but there isn't. It's probably
related to the problem with the tuner code, since the GPIO write for
your device is triggered by that.

After looking at the code, it looks like, since your card is DVB-T
only, the driver doesn't bother setting up the tuner driver for analog
use. Unfortunately, the em2880-dvb driver uses an analog API
(VIDIOC_INT_S_TUNER_MODE) to get the xc3028 tuner driver to switch
modes (and call back into the em28xx driver to do the GPIO twiddling
that enables the DVB-T demodulator), this is a problem. As a result,
the GPIO twiddling doesn't get done, communication with the DVB-T
demodulator fails and the driver bails out.

Edit em28xx_set_tuner in linux/drivers/media/video/em28xx/em28xx-i2c.c
to remove the "&& dev->dev_modes != EM28XX_DVB" and recompile - things
should work better. (The reason v4l-dvb-experimental-userptr works is
that it's based on an older version of the code before this was
added.)


>  Sep 12 11:05:50 gandalf kernel: [ 1636.104000] em28xx #0: [ OK] 40 03 00 00
> 1e 00 01 00 >>> 7f
>  Sep 12 11:05:50 gandalf kernel: [ 1636.104000] em28xx #0: [ OK] c0 00 00 00
> 05 00 01 00 <<< 10
>  Sep 12 11:05:50 gandalf kernel: [ 1636.104000]
> FIXME:em28xx_i2c_send_bytes(1e): write failed:
>  Sep 12 11:05:50 gandalf kernel: [ 1636.104000]
> ===============================
>  Sep 12 11:05:50 gandalf kernel: [ 1636.104000] 7f
>  Sep 12 11:05:50 gandalf kernel: [ 1636.104000]
> ================================

_______________________________________________
Em28xx mailing list
[email protected]
http://mcentral.de/mailman/listinfo/em28xx

Reply via email to