i2c-tools CHANGES
-----------------

3.1.0 (2011-12-04)
  decode-dimms: Decode module configuration type of DDR SDRAM
                Decode refresh rate of DDR SDRAM
                Add support for the at24 kernel driver
  i2c-dev.h: Make value arrays const for block write functions
  i2cset: Add support for SMBus and I2C block writes
          Removed obsolete method to specify value mask
          More stringent parameter validation

3.0.3 (2010-12-12)
  Makefile: Let the environment set CC and CFLAGS
            Integrate py-smbus into the build system
  README: Point users to the linux-i2c mailing list
  decode-dimms: Handle CRC of FB-DIMM and DDR3 SDRAM memory modules
                Add support for DDR3 SDRAM
                Fix decoding of SDR SDRAM bytes 12-14
                Add side-by-side formatting option
                Add merged cells formatting option
                Try harder to decode the manufacturing date
                Handle read errors on sysfs
                Decode voltage interface level of DDR SDRAM
  decode-xeon: Delete
  eepromer: Fix array initialization overrun
  i2cdetect: Drop legacy reference to ISA bus
  i2cset: Add support for short writes with PEC
  i2c-stub-from-dump: Use udev settle to speed up initialization
                      Unload i2c-stub automatically if needed
                      Add support for multiple dumps
  tools: Properly handle /dev/i2c not being a directory
         Increase limit on I2C bus number

3.0.2 (2008-11-29)
  i2c-dev.h: Drop I2C_FUNC_SMBUS_*I2C_BLOCK_2 defines
  decode-dimms: Add support for little-endian word hexdumps
                Only export the ceil function from POSIX
  decode-vaio: Remove history
  i2cdetect: Support i2c bus passed by name
             Shorten the usage message
  i2cdump: Support i2c bus passed by name
           Shorten the usage message
           Restrict the chip address to 0x03-0x77
           Split the functionality checking code into a separate function
           Better error message on missing adapter functionality
  i2cget: Support i2c bus passed by name
          Shorten the usage message
          Better error message on missing adapter functionality
  i2cset: Support i2c bus passed by name
          Shorten the usage message
          Restrict the chip address to 0x03-0x77
          Split the code into several functions for clarity
          Add support for short writes (SMBus send byte)
          Better error message on missing adapter functionality
          Set the data value mask with -m
          Make reading back the written value optional
  i2c-stub-from-dump: Add support for partial dumps
                      Report if only garbage is found in dump file
                      Behave properly when i2c-stub is already loaded
                      Stop on i2cset error

3.0.1 (2008-04-04)
  Drop the trailing .pl from all perl script names
  decode-dimms: Fix DDR2 SDRAM module speed decoding
                Update manufacturer IDs
                Don't print anything by default if checksum fails
                Decode all DDR2 SDRAM timing information
                Add support for reading SPD data from hexdumps
                Make command line parsing more robust
  decode-vaio: Private data might not be readable by non-root users
               Print the asset tag
               Fix the timestamp decoding
  i2cdump: Fix I2C block mode error code
           Remove man page reference to hardware monitoring chips
           Let the user specify a register range
  i2cset: Final status messages go to stdout
          Return success even when readback fails or doesn't match
  i2c-stub-from-dump: New helper script to use with i2c-stub

3.0.0 (2007-10-14)
  Initial release
