#12 call_i2c_client to just detached client (module)

open
nobody
driver (15)
5
2004-01-16
2004-01-16
No

As stated in previous reports, at my computer system
the loading of ivtv-drivers also fails on boot, but
after unloading and reloading the modules it works ok.
I found the source of the error, but I don't know how
to cook-up a cure.

I have adjusted /etc/modules.conf to hold the following:

alias char-major-61 lirc_i2c
alias char-major-81 videodev
alias char-major-81-0 ivtv
alias /dev/v4l ivtv

options ivtv ivtv_debug=127 ivtv_pal=1 tuner=20
mpg_buffers=32
options tuner pal=i
options saa7127 enable_output=1 output_select=1 pal=1
options msp3400 once=1 simple=1

add below ivtv msp3400 saa7115 saa7127 videodev tuner
add above ivtv lirc_dev lirc_i2c ivtv-fb

post-install ivtv /usr/local/bin/test_ioctl -d
/dev/video0 -u 0xff
post-install ivtv /usr/local/bin/test_ioctl -d
/dev/video0 -p 4
post-install ivtv /usr/local/bin/test_ioctl -d
/dev/video0 -f width=720,height=576
post-install ivtv /usr/local/bin/test_ioctl -d
/dev/video16 -u 0xff
post-install ivtv /usr/local/bin/test_ioctl -d
/dev/video16 -f width=720,height=576
post-install ivtv /usr/local/bin/test_ioctl -d
/dev/video32 -u 0xff
post-install ivtv /usr/local/bin/test_ioctl -d
/dev/video32 -f width=720,height=576

While in /etc/devfsd.conf I have the following:

REGISTER v4l/.* PERMISSIONS root.video 660
REGISTER ^v4l/video0$ CFUNCTION GLOBAL
mksymlink v4l/video0 video
REGISTER fb/.* PERMISSIONS root.video 660
REGISTER ^fb/0$ CFUNCTION GLOBAL
mksymlink fb/0 fb0

I have adjusted the debugging in ivtv-i2c.c to also
print the client address when detaching a client, and I
now get the following information in the kernel log
(snippet):

[...]
ivtv: Registered v4l2 device, minor 0
ivtv: Registered v4l2 device, minor 32
ivtv: Registered v4l2 device, minor 224
ivtv: Registered v4l2 device, minor 16
ivtv: loaded
ivtv: i2c client detach
=> ivtv: i2c detach [client=saa7115[0],[0x21],ok]
i2c-core.o: client [saa7115[0]] unregistered.
i2c-core.o: driver unregistered: saa7115
[saa7127.c: INFO]: SAA7127 video encoder driver
unloaded
ivtv: i2c client detach
ivtv: i2c detach [client=saa7127[0],[0x44],ok]
i2c-core.o: client [saa7127[0]] unregistered.
i2c-core.o: driver unregistered: saa7127
ivtv: v4l2 open on minor 0
ivtv: current minor 0
ivtv: opened card # 0, stream 0
[...]
ivtv: v4l2 ioctl 0xc0045627
ivtv: v4l2 ioctl: set input
ivtv: Input unchanged
ivtv: v4l2 ioctl 0x40085618
ivtv: v4l2 ioctl: set standard
ivtv: Switching standard to PAL.
ivtv: call_i2c_client
ivtv: call_i2c_client
ivtv: call_i2c_client
=> ivtv: i2c client addr: 0x21 not found!
ivtv: v4l2 ioctl 0x402c5639

Upon startup the modules saa7115 and saa7127 are
automatically detached (the arrows point to the
relevant lines), but later in the proces they are
referred to. This leads to a non-responding PVR350,
needing the magic trick to fix the situation.

Perhaps you can use this info to improve the drivers
even more (they are already working very satisfactoraly).

Hindrik

Discussion

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks