On Tue, Mar 27, 2012 at 01:58:47AM +0800, Daniel Kurtz wrote: > On Mon, Mar 26, 2012 at 10:49 PM, Daniel Vetter <daniel@xxxxxxxx> wrote: > > On Mon, Mar 26, 2012 at 10:26:42PM +0800, Daniel Kurtz wrote: > >> Instead of rolling our own custom quirk_xfer function, use the bit_algo > >> pre_xfer and post_xfer functions to setup and teardown bit-banged > >> i2c transactions. > >> > >> gmbus_xfer uses .force_bit to determine which i2c_algorithm to use, > >> either i2c_bit_algo.master_xfer or its own. So, Similarly, let gmbus_func > >> use .force_bit to determine which i2c functionalities are available, > >> either i2c_bit_algo.functionality, or its own. > > > > Please split this part of the patch into a separate patch. Furthermore I'm > > not sure what this should buy us, given that we might magically changes > > our i2c feature set once with gone to fallback mode. Can you please > > elaborate why we need this? > > An i2c adapter's functionality is provided by its algorithm. > Since these gmbus adapters can [for now] change their algorithm at > runtime, I thought the functionality returned should match the > currently selected algorithm at any given moment. > > Arguably, the adapter actually sort of provides the union of the two > functionalities since if a particular transfer fails using gmbus, it > gets retried using bit-banged. But then again, this is a one-shot > permanent switch, so perhaps we should return the union of the > functionalities if force_bit == 0, and then only the bit-algo > functionality after the switch? In that case I guess we can drop it - current edid reading seems to work and without a good reason I'd like not to play clever tricks because it doesn't seem to be worth it. -Daniel -- Daniel Vetter Mail: daniel@xxxxxxxx Mobile: +41 (0)79 365 57 48 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel