Skip to contentSkip to conversation

stb0899 i2c communication broken after suspend

DISCUSSION Julian Scheel 1 participant 2 messages Jul 31, 2009 – Aug 2, 2009 Media (V4L/DVB)

lore
Share & tools
lore
#0 lore raw

I made an interesting observation with the stb0899 drivers. If the system was in suspend to ram state (no matter if dvb modules were unloaded before or not) the i2c communication of stb0899 driver and chipset seems to be somewhat broken. Tuning to dvb-s channels still works as expected, but tuning to dvb-s2 channels is completely broken. The system log shows this error on the first tuning approach:
stb0899_write_s2reg ERR (1), Device=[0xf3fc], Base Address=[0x00000460], Offset=[0xf34c], Data=[0x00000000], status=-121

Has anyone seen a similar behaviour or has any ideas? This happens on latest v4l-dvb head and kernel 2.6.29

-Julian

#1 lore raw

Am Freitag, 31. Juli 2009 18:44:13 schrieb Julian Scheel:

Quoted 8 lines

I made an interesting observation with the stb0899 drivers. If the system was in suspend to ram state (no matter if dvb modules were unloaded before or not) the i2c communication of stb0899 driver and chipset seems to be somewhat broken. Tuning to dvb-s channels still works as expected, but tuning to dvb-s2 channels is completely broken. The system log shows this error on the first tuning approach:
stb0899_write_s2reg ERR (1), Device=[0xf3fc], Base Address=[0x00000460], Offset=[0xf34c], Data=[0x00000000], status=-121

I actually played around a bit more and figured out, that after a reload of the i2c_core module the s2 channels start working again after suspend. But as this module is needed by many others (like nvidia, so X server has to be stopped to unload it), it can't be simply reloaded.
Now the question is whether the issue is in i2c_core itself or in the way that stb0899-drivers use i2c_core. Especially I am wondering why only the s2 channels fail, isn't for the dvb-s2 channels i2c communication used as well?

-Julian