Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-dvb] Re: NEWSTRUCT questions



Gerd Knorr writes:
 > > > The DVB driver should be able to tell the I2C subsystem to probe for
 > > > frontends only on a specific I2C bus. (The frontend drivers are
 > > > the same for all systems, so they know nothing about the busses.)
 > >  
 > >  Thats true. At least it would be fine to have such a situation ;)
 > 
 > Easily doable in the i2c_driver->attach_adapter() function, just check
 > i2c_adapter->id before calling the i2c_probe() function.

But then you have to check for all IDs of known adapters. New DVB
drivers with other I2C adapter IDs would be ignored until all drivers 
are adjusted.
Adapters and drivers should have entries which tell what general 
type (DVB driver, DVB tuner, TV tuner, TV encoder/decoder, etc.) they are.
Based on this i2c-core could already reject to attach e.g. a TV
encoder, DVB demodulator or temperature sensor to the I2C bus of an analog
TV receiver card unless it explicitely allows it.

 
 > >  My idea is to extend the dvb_i2c layer with some kind of
 > >  gateway/bridge to the linux i2c layer. dvb_i2c will try to probe its
 > >  internal busses first and then fallback to linux i2c if no devices
 > >  could be attached.
 > 
 > What exactly is the point of having two different i2c layers?  Why don't
 > you simply use the linux i2c layer for everything?

I think part of the reason were the unnecessary and sometimes long
delays caused by drivers which tried to attach to all I2C busses although they
had no business there. This could be resolved by better checking of 
device types as explained above.


Ralph


-- 
Info:
To unsubscribe send a mail to listar@linuxtv.org with "unsubscribe linux-dvb" as subject.



Home | Main Index | Thread Index