30 Oct, 2008

1 commit


23 Oct, 2008

5 commits


14 Oct, 2008

4 commits


28 Jul, 2008

1 commit


17 Jul, 2008

4 commits

  • The new-style max6875 driver implements the optional detect() callback
    to cover the use cases of the legacy driver. I'm curious if anyone
    really needs this though, so it might be removed in the feature.

    Signed-off-by: Jean Delvare

    Jean Delvare
     
  • The new-style pca9539 driver implements the optional detect() callback
    to cover the use cases of the legacy driver.

    Warning: users will now have to use the force module parameter to get
    the driver to attach to their device. That's not a bad thing as these
    devices can't be detected anyway.

    Note that this doesn't change the fact that this driver is deprecated
    in favor of gpio/pca953x.

    Signed-off-by: Jean Delvare

    Jean Delvare
     
  • The new-style pcf8575 driver implements the optional detect() callback
    to cover the use cases of the legacy driver.

    Warning: users will now have to use the force module parameter to get
    the driver to attach to their device. That's not a bad thing as these
    devices can't be detected anyway.

    Note that this doesn't change the fact that this driver is deprecated
    in favor of gpio/pcf857x.

    Signed-off-by: Jean Delvare

    Jean Delvare
     
  • The new-style pcf8574 driver implements the optional detect() callback
    to cover the use cases of the legacy driver.

    Warning: users will now have to use the force module parameter to get
    the driver to attach to their device. That's not a bad thing as these
    devices can't be detected anyway.

    Note that this doesn't change the fact that this driver is deprecated
    in favor of gpio/pcf857x.

    Signed-off-by: Jean Delvare

    Jean Delvare
     

15 Jul, 2008

5 commits

  • Add a mechanism to let new-style i2c drivers optionally autodetect
    devices they would support on selected buses and ask i2c-core to
    instantiate them. This is a replacement for legacy i2c drivers, much
    cleaner.

    Where drivers had to implement both a legacy i2c_driver and a
    new-style i2c_driver so far, this mechanism makes it possible to get
    rid of the legacy i2c_driver and implement both enumerated and
    detected device support with just one (new-style) i2c_driver.

    Here is a quick conversion guide for these drivers, step by step:

    * Delete the legacy driver definition, registration and removal.
    Delete the attach_adapter and detach_client methods of the legacy
    driver.

    * Change the prototype of the legacy detect function from
    static int foo_detect(struct i2c_adapter *adapter, int address, int kind);
    to
    static int foo_detect(struct i2c_client *client, int kind,
    struct i2c_board_info *info);

    * Set the new-style driver detect callback to this new function, and
    set its address_data to &addr_data (addr_data is generally provided
    by I2C_CLIENT_INSMOD.)

    * Add the appropriate class to the new-style driver. This is
    typically the class the legacy attach_adapter method was checking
    for. Class checking is now mandatory (done by i2c-core.) See
    for the list of available classes.

    * Remove the i2c_client allocation and freeing from the detect
    function. A pre-allocated client is now handed to you by i2c-core,
    and is freed automatically.

    * Make the detect function fill the type field of the i2c_board_info
    structure it was passed as a parameter, and return 0, on success. If
    the detection fails, return -ENODEV.

    Signed-off-by: Jean Delvare

    Jean Delvare
     
  • Function i2c_smbus_write_quick has no users left, so we can delete it.

    Also update the list of these helper functions which are gone but
    could be added back if needed.

    Signed-off-by: Jean Delvare

    Jean Delvare
     
  • More updates to the I2C stack's fault reporting: make the core stop
    returning "-1" (usually "-EPERM") for all faults. Instead, pass lower
    level fault code up the stack, or return some appropriate errno.

    This patch happens to touch almost exclusively SMBus calls.

    Signed-off-by: David Brownell
    Signed-off-by: Jean Delvare

    David Brownell
     
  • Create Documentation/i2c/fault-codes to help standardize
    fault/error code usage in the I2C stack. It turns out that
    returning -1 (-EPERM) for everything was not at all helpful.

    Signed-off-by: David Brownell
    Signed-off-by: Jean Delvare

    David Brownell
     
  • This patch contains the scheduled removal of i2c-i810, i2c-prosavage
    and i2c-savage4.

    Signed-off-by: Adrian Bunk
    Signed-off-by: Jean Delvare

    Adrian Bunk
     

02 Jul, 2008

1 commit


12 May, 2008

2 commits

  • Attempt to make the documentation about the I2C/SMBus functionality
    checking API clearer.

    Signed-off-by: Jean Delvare

    Jean Delvare
     
  • Improve the smbus-protocol documentation file somewhat:

    - Use the names of the SMBus protocol operations (from the 2.0
    specification), not made-up-for-Linux names.

    - Add the name of the call used to execute each operation ... and
    point out that there are mismatches, where functions execute
    different protocol operations than their names specify.

    The most confusing examples are that "Read Byte" isn't executed by
    i2c_smbus_read_byte(), and that "Write Byte" isn't executed by
    i2c_smbus_write_byte(). When coding, that's not as bad as it may
    seem; but that case would seem to be worth fixing.

    Signed-off-by: David Brownell
    Signed-off-by: Jean Delvare

    David Brownell
     

30 Apr, 2008

1 commit

  • Based on earlier work by Jon Smirl and Jochen Friedrich.

    This patch allows new-style i2c chip drivers to have alias names using
    the official kernel aliasing system and MODULE_DEVICE_TABLE(). At this
    point, the old i2c driver binding scheme (driver_name/type) is still
    supported.

    Signed-off-by: Jean Delvare
    Cc: Jochen Friedrich
    Cc: Jon Smirl
    Cc: Kay Sievers

    Jean Delvare
     

25 Feb, 2008

1 commit


08 Feb, 2008

1 commit


06 Feb, 2008

1 commit

  • Use drivers/gpio/pca9539.c instead.

    Signed-off-by: eric miao
    Acked-by: Ben Gardner
    Acked-by: Jean Delvare
    Signed-off-by: David Brownell
    Cc: Sam Ravnborg
    Cc: Haavard Skinnemoen
    Cc: Philipp Zabel
    Cc: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    eric miao
     

28 Jan, 2008

6 commits


12 Dec, 2007

1 commit


20 Oct, 2007

1 commit


14 Oct, 2007

4 commits


31 Aug, 2007

1 commit

  • We find that SB700 and SB800 use the same SMBus device ID as SB600, which is
    0x4385, instead of the already submitted 0x4395.

    Besides removing the wrong SB700 device ID, add SB800 support to kernel, by
    renaming the PCI_DEVICE_ID_ATI_IXP600_SMBUS into
    PCI_DEVICE_ID_ATI_SBX00_SMBUS.

    Signed-off-by: Shane Huang
    Signed-off-by: Jean Delvare
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Shane Huang