[v4l-dvb-maintainer] Re: [PATCH 1/3] i2c: allow i2c core to instantiate clients

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

 



Hans Verkuil wrote:
>> Hi All,
>>
>> Nathan Lutchansky wrote:
>>     
>>> At the moment, anyway.  It will become more and more necessary as the
>>> number of different I2C sensor chips on the market increases.  V4L/DVB
>>> has
>>> already hit this problem in a big way.
>>>
>>>
>>>       
>> DVB doesn't probe for i2c devices. The DVB adapter, ie the card knows
>> what devices that are present and works under that assumption.
>>
>> Earlier DVB had the problem with probing. ie a different device is found
>> at the expected location of another device(In the case of probing) and
>> this device doesn't like to be fiddled around with. And "lo" we have a
>> perfect freeze.
>>
>> After many such cases, DVB no longer probes for i2c devices (we now
>> longer have anymore i2c issues)
>> V4L on the other hand probes for all devices. This is IMHO wrong, due to
>>
>> (1) When the probe list grows long, it takes longer time for the probe
>> to succeed (V4L guys themselves would agree to the fact that they have
>> seen probes in the order of ~30 minutes ! Yuck)
>>
>> (2) Probing wrong devices
>>
>> So in any case probing can never be right, unless the card information
>> is passed to the i2c core. But in that sense it is no longer a probe. It
>> is indeed just an attach method. In that case, it makes no sense to make
>> i2c core go around in circles.
>>
>> The proper way to handle this, is that only the right device is
>> attached. Rather than making i2c to do this, subsystems should be
>> handling this.
>>     
>
> OK, I'll repeat this one more time: for many of the older v4l cards we
> have no idea on what addresses the i2c devices are. It was never
> documented. And also some devices can move around depending on the card
> revision (esp. true for the analog tuner).
>   

That's no excuse to do things in a wrong way.


Manu





[Index of Archives]     [Linux Kernel]     [Linux Hardware Monitoring]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux