Markus Rechberger ha scritto:
On 9/12/07, Valerio Bontempi <[EMAIL PROTECTED]> wrote:
2007/9/12, Markus Rechberger <[EMAIL PROTECTED]>:
Hi,

On 9/12/07, Aidan Thornton <[EMAIL PROTECTED]> wrote:
On 9/12/07, Valerio Bontempi <[EMAIL PROTECTED]> wrote:
I can't load the driver with 2.6.18 because I removed openSuse
10.2some
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.

yes you're right, could you guys check if tuner-xc3028 is loaded?
lsmod | grep xc3028

Markus

 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]
================================
--
Markus Rechberger

Yes, it is loaded when the driver doesn't work (with the original
linux/drivers/media/video/em28xx/em28xx-i2c.c)

# lsmod | grep xc3028
xc3028_tuner            9984  0
i2c_core               22656  15
i2c_ec,it87,i2c_isa,eeprom,qt1010,mt2060,mt352,zl10353,xc3028_tuner,tvp5150,tuner,nvidia,em28xx,tveeprom,i2c_nforce2


However, changing the driver source as suggested by Aidan makes the driver
to work well.
Now, what do you suggest to do?
Keep the old driver version (userptr) or use the modified one?


ok it's a design bug in the driver, I'll try to fix it up asap. Try to
stick with the userptr driver for that device for a while till the
newer driver comes up.

Markus

I'm happy of being useful for the development of your driver.
Thanks a lot for your support and for developing this driver.

Valerio


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

Reply via email to