• David Brownell's avatar
    i2c: Add i2c_board_info and i2c_new_device() · 9c1600ed
    David Brownell authored
    This provides partial support for new-style I2C driver binding.  It builds
    on "struct i2c_board_info" declarations that identify I2C devices on a given
    board.  This is needed on systems with I2C devices that can't be fully probed
    and/or autoconfigured, such as many embedded Linux configurations where the
    way a given I2C device is wired may affect how it must be used.
    
    There are two models for declaring such devices:
    
     * LATE -- using a public function i2c_new_device().  This lets modules
       declare I2C devices found *AFTER* a given I2C adapter becomes available.
       
       For example, a PCI card could create adapters giving access to utility
       chips on that card, and this would be used to associate those chips with
       those adapters.
    
     * EARLY -- from arch_initcall() level code, using a non-exported function
       i2c_register_board_info().  This copies the declarations *BEFORE* such
       an i2c_adapter becomes available, arranging that i2c_new_device() will
       be cal...
    9c1600ed
Makefile 2.37 KB