1. 29 10月, 2005 9 次提交
    • G
      [PATCH] I2C: add i2c module alias for i2c drivers to use · a9d1b24d
      Greg Kroah-Hartman 提交于
      This is the start of adding hotplug-like support for i2c devices.
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      a9d1b24d
    • J
      [PATCH] i2c: SMBus PEC support rewrite, 3 of 3 · 585b3160
      Jean Delvare 提交于
      The new SMBus PEC implementation doesn't support PEC emulation on
      non-PEC non-I2C SMBus masters, so we can drop all related code.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      585b3160
    • J
      [PATCH] i2c: SMBus PEC support rewrite, 2 of 3 · 421ef47b
      Jean Delvare 提交于
      This is my rewrite of the SMBus PEC support. The original
      implementation was known to have bugs (credits go to Hideki Iwamoto
      for reporting many of them recently), and was incomplete due to a
      conceptual limitation.
      
      The rewrite affects only software PEC. Hardware PEC needs very little
      code and is mostly untouched.
      
      Technically, both implementations differ in that the original one
      was emulating PEC in software by modifying the contents of an
      i2c_smbus_data union (changing the transaction to a different type),
      while the new one works one level lower, on i2c_msg structures (working
      on message contents). Due to the definition of the i2c_smbus_data union,
      not all SMBus transactions could be handled (at least not without
      changing the definition of this union, which would break user-space
      compatibility), and those which could had to be implemented
      individually. At the opposite, adding PEC to an i2c_msg structure
      can be done on any SMBus transaction with common code.
      
      Advantages of the new implementation:
      
      * It's about twice as small (from ~136 lines before to ~70 now, only
        counting i2c-core, including blank and comment lines). The memory
        used by i2c-core is down by ~640 bytes (~3.5%).
      
      * Easier to validate, less tricky code. The code being common to all
        transactions by design, the risk that a bug can stay uncovered is
        lower.
      
      * All SMBus transactions have PEC support in I2C emulation mode
        (providing the non-PEC transaction is also implemented). Transactions
        which have no emulation code right now will get PEC support for free
        when they finally get implemented.
      
      * Allows for code simplifications in header files and bus drivers
        (patch follows).
      
      Drawbacks (I guess there had to be at least one):
      
      * PEC emulation for non-PEC capable non-I2C SMBus masters was dropped.
        It was based on SMBus tricks and doesn't quite fit in the new design.
        I don't think it's really a problem, as the benefit was certainly
        not worth the additional complexity, but it's only fair that I at
        least mention it.
      
      Lastly, let's note that the new implementation does slightly affect
      compatibility (both in kernel and user-space), but doesn't actually
      break it. Some defines will be dropped, but the code can always be
      changed in a way that will work with both the old and the new
      implementations. It shouldn't be a problem as there doesn't seem to be
      many users of SMBus PEC to date anyway.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      421ef47b
    • J
      [PATCH] i2c: SMBus PEC support rewrite, 1 of 3 · b8095544
      Jean Delvare 提交于
      Discard I2C_FUNC_SMBUS_*_PEC defines. i2c clients are not supposed to
      check for PEC support of i2c bus drivers on individual SMBus
      transactions, and i2c bus drivers are not supposed to advertise them.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      b8095544
    • J
      [PATCH] i2c: Drop I2C_SMBUS_I2C_BLOCK_MAX · 30dac746
      Jean Delvare 提交于
      Drop I2C_SMBUS_I2C_BLOCK_MAX, use I2C_SMBUS_BLOCK_MAX instead.
      
      I2C_SMBUS_I2C_BLOCK_MAX has always been defined to the same value as
      I2C_SMBUS_BLOCK_MAX, and this will never change: setting it to a lower
      value would make no sense, setting it to a higher value would break
      i2c_smbus_data compatibility. There is no point in changing
      i2c_smbus_data to support larger block transactions in SMBus mode, as
      no SMBus hardware supports more than 32 byte blocks. Thus, for larger
      transactions, direct I2C transfers are the way to go.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      30dac746
    • J
      [PATCH] i2c: Drop out-of-date, colliding ioctl definitions · 80ce3b7d
      Jean Delvare 提交于
      Delete 2 out-of-date, colliding ioctl defines. I2C_UDELAY and
      I2C_MDELAY are supposed to be used by i2c-algo-bit, but actually
      aren't (and I suspect never were). Moreover, their values are the same
      as I2C_FUNCS and I2C_SLAVE_FORCE, respectively, which *are* widely
      used.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      80ce3b7d
    • J
      [PATCH] i2c: Fix misplaced i2c.h comment · 31ec5bc5
      Jean Delvare 提交于
      Fix a misplaced comment in i2c.h. Spotted by Hideki Iwamoto.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      31ec5bc5
    • J
      [PATCH] i2c: Drop useless CVS revision IDs · bf813b31
      Jean Delvare 提交于
      CVS revision IDs are totally useless and irrelevant by now.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      bf813b31
    • H
      [PATCH] i2c: Fix union i2c_smbus_data definition · 332bf92b
      Hideki Iwamoto 提交于
      The i2c_smbus_data union block member has a comment stating that an
      extra byte is required for SMBus Block Process Call transactions. This
      has been true for three weeks around June 2002, but no more since, so
      it is about time that we drop this comment and fix the definition.
      
      From: Hideki Iwamoto <h-iwamoto@kit.hi-ho.ne.jp>
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      
       include/linux/i2c.h |    3 +--
       1 file changed, 1 insertion(+), 2 deletions(-)
      332bf92b
  2. 18 9月, 2005 1 次提交
  3. 06 9月, 2005 12 次提交
  4. 22 6月, 2005 1 次提交
    • J
      [PATCH] I2C: Kill address ranges in non-sensors i2c chip drivers · b3d5496e
      Jean Delvare 提交于
      Some months ago, you killed the address ranges mechanism from all
      sensors i2c chip drivers (both the module parameters and the in-code
      address lists). I think it was a very good move, as the ranges can
      easily be replaced by individual addresses, and this allowed for
      significant cleanups in the i2c core (let alone the impressive size
      shrink for all these drivers).
      
      Unfortunately you did not do the same for non-sensors i2c chip drivers.
      These need the address ranges even less, so we could get rid of the
      ranges here as well for another significant i2c core cleanup. Here comes
      a patch which does just that. Since the process is exactly the same as
      what you did for the other drivers set already, I did not split this one
      in parts.
      
      A documentation update is included.
      
      The change saves 308 bytes in the i2c core, and an average 1382 bytes
      for chip drivers which use I2C_CLIENT_INSMOD, 126 bytes for those which
      do not.
      
      This change is required if we want to merge the sensors and non-sensors
      i2c code (and we want to do this).
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      
      Index: gregkh-2.6/Documentation/i2c/writing-clients
      ===================================================================
      b3d5496e
  5. 17 4月, 2005 1 次提交
    • L
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds 提交于
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      
      Let it rip!
      1da177e4