i2c-tools: Update to version 4.3

Message ID 20220710210221.3037904-1-adolf.belka@ipfire.org
State Accepted
Commit 319b5ee2c6b282568cb547d1271d1af1dcb4b17a
Headers
Series i2c-tools: Update to version 4.3 |

Commit Message

Adolf Belka July 10, 2022, 9:02 p.m. UTC
  - Update from version 3.1.2 (July 2017) to 4.3 (July 2021)
- Update of rootfile
- Changelog
    4.3 (2021-07-22)
	  decode-dimms: Attempt to decode LPDDR3 modules
	  eeprom, eepromer: Removed the tools in favor of eeprog
	  i2cdetect: Sort the bus list by number
	  i2cdump: Add range support to I2C block mode
	           Deprecate SMBus block mode
	  i2cget: Add support for I2C block read
	          Add support for SMBus block read
	  i2ctransfer: Reverted check for returned length from driver
    4.2 (2020-09-22)
	  manpages: Add BUGS section to let people know how to contact us
	  Makefile: Allow to preset all CFLAGS and LDFLAGS variables
	  tools: Consistently use snprintf instead of sprintf
	         Restrict addresses 0x03-0x07, too (defined by I2C standard)
	  decode-dimms: Print SPD revision for DDR3 too
	                Print primary bus width for DDR3 and DDR4
	                List ee1004 as a candidate driver
	                Display MAC for DDR3
	                Add MAC abbreviation for DDR4
	                Round DDR4 speed properly
	                Detect and report truncated input files
	                Print kernel driver used
	                Print DDR memory speed in MT/s
	                Add DDR5 memory types
	                Decode manufacturing data for LPDDR3
	                Fix the version string
	                Point the user to the right drivers
	                Update the list of vendors to Jedec JEP106BB
	  decode-vaio: Add support for the at24 driver
	               Scan more i2c buses
	  i2cset: Fix short writes with mask
	  i2ctransfer: Mention '-a' everywhere in the manpage
	               Support messages using I2C_M_RECV_LEN
	               Add check for returned length from driver
	  i2c-stub-from-dump: Read dumps from hexdump -C
	  library: Add a manual page to document the API
    4.1 (2018-11-30)
	  Makefile: Make STRIP, DESTDIR and PREFIX overridable
	  tools: Fix potential buffer overflows in i2cbusses
	         Fix build race
	         Allow usage of reserved addresses with the '-a' flag
	  decode-dimms: Add preliminary DDR4 support
	                Decode size and timings of DDR4
	                Decode misc parameters of DDR4
	                Decode physical characteristics of DDR4
	                Documentation update for DDR4
	                Verify the CRC of DDR4 data block 1
	                Update manufacturer IDs (JEP106AX)
	  eeprog: Fix ambiguous parentheses
	          Fix build race
	  i2ctransfer: Rename option '-f' to '-a' for consistency
	  i2c-dev.h: Delete
	  library: Fix build race
	           Allow disabling the dynamic flavor
	           Mention the correct license in source files
	  py-smbus: Fix i2c_smbus_* error propagation
    4.0 (2017-10-30)
	  tools: Fix build with recent compilers (gcc 4.6+)
	         Add examples to the manual pages
	  README: Clarify licenses
	          Mention the current maintainer
	  decode-dimms: Decode module configuration type of DDR2 SDRAM
	                Decode bus width extension of DDR3 SDRAM
	                Don't choke when no EEPROM is found
	                Don't make columns larger than they need to be
	                Make side-by-side output more robust
	                Print module organization of DDR SDRAM
	                Merge cells by default in side-by-side output
	                Print extra timing values of DDR SDRAM
	                Print DDR and DDR2 core timings for all supported CAS values
	                Print DDR2 equivalent speed of tCK max
	                Don't print undefined DDR2 SDRAM timings
			Print SDR, DDR, DDR2, DDR3 core timings for all standard speeds
	                Update manufacturer IDs
	                Make DDR3 manufacturer count parity error non-fatal
	                Strip former manufacturer name in side-by-side output mode
	                Remove duplicate "ns" in SDR timings
	                Add section headers for SDR modules
	                Fix decoding of SDR SPD revision
	                Prevent hang on reserved DDR3 module type
	                Decode more DDR3 module types
	                Fix DDR3 tRAS decoding
	                Fix DDR3 core timings rounding
	                Round down PC3 numbers to comply with Jedec
	                Don't print the DDR3 time bases
	                Decode the FTB fields of DDR3 tCk, tAA, tRCD, tRP and tRC
	                Fix speed and PC3 number of high-speed DDR3 modules
	                Decode DDR3 reference card revision
	                Print width of all known DDR3 module types
	                Print physical characteristics for all DDR3 module types
	                Don't print raw SSTE32882 register values
	                Add support for Load Reduced DIMM (LRDIMM) DDR3 modules
	                Fully decode the DDR3 SDRAM Device Type field
	                Fix DDR3 extended temp range refresh rate decoding
	                Encode "degrees" to HTML degree symbol
	                Generate XHTML 1.1 compliant markup
	                Add a manual page
	                Correctly check for out-of-bounds vendor ID
	                Update manufacturer IDs (JEP106AQ)
	  decode-vaio: Add a manual page
	  eeprog: Add a manual page
	          Moved to a separate subdirectory
	          Increase delay after writes
	  eeprom: Add a manual page
	          Marked as deprecated
	  eepromer: Add a manual page
	            Marked as deprecated
	  i2cdetect: Do a best effort detection if functionality is missing
	             Clarify the SMBus commands used for probing by default
	  i2ctransfer: New tool to send user-defined I2C messages in one transfer
	  i2c-dev.h: Minimize differences with kernel flavor
	             Move SMBus helper functions to include/i2c/smbus.h
	  i2c-stub-from-dump: Be more tolerant on input dump format
	  library: New libi2c library
	           Properly propagate real error codes on read errors
	           Use I2C_SMBUS_BLOCK_MAX instead of hard-coding 32
	  lib/smbus.c: Add missing include which was causing a build error
	  py-smbus: Fix module level docs
	            Add support for python 3

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
---
 config/rootfiles/common/i2c-tools | 9 +++++++++
 lfs/i2c-tools                     | 8 +++++---
 2 files changed, 14 insertions(+), 3 deletions(-)
  

Comments

Peter Müller July 11, 2022, 10:14 a.m. UTC | #1
Reviewed-by: Peter Müller <peter.mueller@ipfire.org>

> - Update from version 3.1.2 (July 2017) to 4.3 (July 2021)
> - Update of rootfile
> - Changelog
>     4.3 (2021-07-22)
> 	  decode-dimms: Attempt to decode LPDDR3 modules
> 	  eeprom, eepromer: Removed the tools in favor of eeprog
> 	  i2cdetect: Sort the bus list by number
> 	  i2cdump: Add range support to I2C block mode
> 	           Deprecate SMBus block mode
> 	  i2cget: Add support for I2C block read
> 	          Add support for SMBus block read
> 	  i2ctransfer: Reverted check for returned length from driver
>     4.2 (2020-09-22)
> 	  manpages: Add BUGS section to let people know how to contact us
> 	  Makefile: Allow to preset all CFLAGS and LDFLAGS variables
> 	  tools: Consistently use snprintf instead of sprintf
> 	         Restrict addresses 0x03-0x07, too (defined by I2C standard)
> 	  decode-dimms: Print SPD revision for DDR3 too
> 	                Print primary bus width for DDR3 and DDR4
> 	                List ee1004 as a candidate driver
> 	                Display MAC for DDR3
> 	                Add MAC abbreviation for DDR4
> 	                Round DDR4 speed properly
> 	                Detect and report truncated input files
> 	                Print kernel driver used
> 	                Print DDR memory speed in MT/s
> 	                Add DDR5 memory types
> 	                Decode manufacturing data for LPDDR3
> 	                Fix the version string
> 	                Point the user to the right drivers
> 	                Update the list of vendors to Jedec JEP106BB
> 	  decode-vaio: Add support for the at24 driver
> 	               Scan more i2c buses
> 	  i2cset: Fix short writes with mask
> 	  i2ctransfer: Mention '-a' everywhere in the manpage
> 	               Support messages using I2C_M_RECV_LEN
> 	               Add check for returned length from driver
> 	  i2c-stub-from-dump: Read dumps from hexdump -C
> 	  library: Add a manual page to document the API
>     4.1 (2018-11-30)
> 	  Makefile: Make STRIP, DESTDIR and PREFIX overridable
> 	  tools: Fix potential buffer overflows in i2cbusses
> 	         Fix build race
> 	         Allow usage of reserved addresses with the '-a' flag
> 	  decode-dimms: Add preliminary DDR4 support
> 	                Decode size and timings of DDR4
> 	                Decode misc parameters of DDR4
> 	                Decode physical characteristics of DDR4
> 	                Documentation update for DDR4
> 	                Verify the CRC of DDR4 data block 1
> 	                Update manufacturer IDs (JEP106AX)
> 	  eeprog: Fix ambiguous parentheses
> 	          Fix build race
> 	  i2ctransfer: Rename option '-f' to '-a' for consistency
> 	  i2c-dev.h: Delete
> 	  library: Fix build race
> 	           Allow disabling the dynamic flavor
> 	           Mention the correct license in source files
> 	  py-smbus: Fix i2c_smbus_* error propagation
>     4.0 (2017-10-30)
> 	  tools: Fix build with recent compilers (gcc 4.6+)
> 	         Add examples to the manual pages
> 	  README: Clarify licenses
> 	          Mention the current maintainer
> 	  decode-dimms: Decode module configuration type of DDR2 SDRAM
> 	                Decode bus width extension of DDR3 SDRAM
> 	                Don't choke when no EEPROM is found
> 	                Don't make columns larger than they need to be
> 	                Make side-by-side output more robust
> 	                Print module organization of DDR SDRAM
> 	                Merge cells by default in side-by-side output
> 	                Print extra timing values of DDR SDRAM
> 	                Print DDR and DDR2 core timings for all supported CAS values
> 	                Print DDR2 equivalent speed of tCK max
> 	                Don't print undefined DDR2 SDRAM timings
> 			Print SDR, DDR, DDR2, DDR3 core timings for all standard speeds
> 	                Update manufacturer IDs
> 	                Make DDR3 manufacturer count parity error non-fatal
> 	                Strip former manufacturer name in side-by-side output mode
> 	                Remove duplicate "ns" in SDR timings
> 	                Add section headers for SDR modules
> 	                Fix decoding of SDR SPD revision
> 	                Prevent hang on reserved DDR3 module type
> 	                Decode more DDR3 module types
> 	                Fix DDR3 tRAS decoding
> 	                Fix DDR3 core timings rounding
> 	                Round down PC3 numbers to comply with Jedec
> 	                Don't print the DDR3 time bases
> 	                Decode the FTB fields of DDR3 tCk, tAA, tRCD, tRP and tRC
> 	                Fix speed and PC3 number of high-speed DDR3 modules
> 	                Decode DDR3 reference card revision
> 	                Print width of all known DDR3 module types
> 	                Print physical characteristics for all DDR3 module types
> 	                Don't print raw SSTE32882 register values
> 	                Add support for Load Reduced DIMM (LRDIMM) DDR3 modules
> 	                Fully decode the DDR3 SDRAM Device Type field
> 	                Fix DDR3 extended temp range refresh rate decoding
> 	                Encode "degrees" to HTML degree symbol
> 	                Generate XHTML 1.1 compliant markup
> 	                Add a manual page
> 	                Correctly check for out-of-bounds vendor ID
> 	                Update manufacturer IDs (JEP106AQ)
> 	  decode-vaio: Add a manual page
> 	  eeprog: Add a manual page
> 	          Moved to a separate subdirectory
> 	          Increase delay after writes
> 	  eeprom: Add a manual page
> 	          Marked as deprecated
> 	  eepromer: Add a manual page
> 	            Marked as deprecated
> 	  i2cdetect: Do a best effort detection if functionality is missing
> 	             Clarify the SMBus commands used for probing by default
> 	  i2ctransfer: New tool to send user-defined I2C messages in one transfer
> 	  i2c-dev.h: Minimize differences with kernel flavor
> 	             Move SMBus helper functions to include/i2c/smbus.h
> 	  i2c-stub-from-dump: Be more tolerant on input dump format
> 	  library: New libi2c library
> 	           Properly propagate real error codes on read errors
> 	           Use I2C_SMBUS_BLOCK_MAX instead of hard-coding 32
> 	  lib/smbus.c: Add missing include which was causing a build error
> 	  py-smbus: Fix module level docs
> 	            Add support for python 3
> 
> Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
> ---
>  config/rootfiles/common/i2c-tools | 9 +++++++++
>  lfs/i2c-tools                     | 8 +++++---
>  2 files changed, 14 insertions(+), 3 deletions(-)
> 
> diff --git a/config/rootfiles/common/i2c-tools b/config/rootfiles/common/i2c-tools
> index fb5ee8326..7dec1eec1 100644
> --- a/config/rootfiles/common/i2c-tools
> +++ b/config/rootfiles/common/i2c-tools
> @@ -2,15 +2,24 @@ usr/bin/ddcmon
>  usr/bin/decode-dimms
>  usr/bin/decode-edid
>  usr/bin/decode-vaio
> +#usr/include/i2c
> +#usr/include/i2c/smbus.h
> +#usr/lib/libi2c.so
> +usr/lib/libi2c.so.0
> +usr/lib/libi2c.so.0.1.1
>  usr/sbin/i2c-stub-from-dump
>  usr/sbin/i2cdetect
>  usr/sbin/i2cdump
>  usr/sbin/i2cget
>  usr/sbin/i2cset
> +usr/sbin/i2ctransfer
>  #usr/share/man/man1/decode-dimms.1
>  #usr/share/man/man1/decode-vaio.1
> +#usr/share/man/man3/libi2c.3
>  #usr/share/man/man8/i2c-stub-from-dump.8
>  #usr/share/man/man8/i2cdetect.8
>  #usr/share/man/man8/i2cdump.8
>  #usr/share/man/man8/i2cget.8
>  #usr/share/man/man8/i2cset.8
> +#usr/share/man/man8/i2ctransfer.8
> +
> diff --git a/lfs/i2c-tools b/lfs/i2c-tools
> index 9910afe53..cb3a9e0b6 100644
> --- a/lfs/i2c-tools
> +++ b/lfs/i2c-tools
> @@ -24,7 +24,7 @@
>  
>  include Config
>  
> -VER        = 3.1.2
> +VER        = 4.3
>  
>  THISAPP    = i2c-tools-$(VER)
>  DL_FILE    = $(THISAPP).tar.xz
> @@ -40,7 +40,7 @@ objects = $(DL_FILE)
>  
>  $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
>  
> -$(DL_FILE)_BLAKE2 = 7c1a4ac9034a33bffed989b7c960bfadafc537007561a5c4ced231ae999691a0a76f5f1a2df41bddae1537bf7b627e2b09788dc056af16b58da4af3d647a4b21
> +$(DL_FILE)_BLAKE2 = c7300224c8d32785cd067b632bf0e9591f05264b1572f44aebda5f30a95164732d606710c13739ccb7899476219ceb3033beaf95b718ed7e18122f9181dc13fc
>  
>  install : $(TARGET)
>  
> @@ -74,6 +74,8 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
>  	@$(PREBUILD)
>  	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
>  	cd $(DIR_APP) && make $(MAKETUNING)
> -	cd $(DIR_APP) && make install prefix=/usr
> +	cd $(DIR_APP) && make install PREFIX=/usr \
> +	                      BUILD_DYNAMIC_LIB=1 \
> +	                      BUILD_STATIC_LIB=0
>  	@rm -rf $(DIR_APP)
>  	@$(POSTBUILD)
  

Patch

diff --git a/config/rootfiles/common/i2c-tools b/config/rootfiles/common/i2c-tools
index fb5ee8326..7dec1eec1 100644
--- a/config/rootfiles/common/i2c-tools
+++ b/config/rootfiles/common/i2c-tools
@@ -2,15 +2,24 @@  usr/bin/ddcmon
 usr/bin/decode-dimms
 usr/bin/decode-edid
 usr/bin/decode-vaio
+#usr/include/i2c
+#usr/include/i2c/smbus.h
+#usr/lib/libi2c.so
+usr/lib/libi2c.so.0
+usr/lib/libi2c.so.0.1.1
 usr/sbin/i2c-stub-from-dump
 usr/sbin/i2cdetect
 usr/sbin/i2cdump
 usr/sbin/i2cget
 usr/sbin/i2cset
+usr/sbin/i2ctransfer
 #usr/share/man/man1/decode-dimms.1
 #usr/share/man/man1/decode-vaio.1
+#usr/share/man/man3/libi2c.3
 #usr/share/man/man8/i2c-stub-from-dump.8
 #usr/share/man/man8/i2cdetect.8
 #usr/share/man/man8/i2cdump.8
 #usr/share/man/man8/i2cget.8
 #usr/share/man/man8/i2cset.8
+#usr/share/man/man8/i2ctransfer.8
+
diff --git a/lfs/i2c-tools b/lfs/i2c-tools
index 9910afe53..cb3a9e0b6 100644
--- a/lfs/i2c-tools
+++ b/lfs/i2c-tools
@@ -24,7 +24,7 @@ 
 
 include Config
 
-VER        = 3.1.2
+VER        = 4.3
 
 THISAPP    = i2c-tools-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -40,7 +40,7 @@  objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_BLAKE2 = 7c1a4ac9034a33bffed989b7c960bfadafc537007561a5c4ced231ae999691a0a76f5f1a2df41bddae1537bf7b627e2b09788dc056af16b58da4af3d647a4b21
+$(DL_FILE)_BLAKE2 = c7300224c8d32785cd067b632bf0e9591f05264b1572f44aebda5f30a95164732d606710c13739ccb7899476219ceb3033beaf95b718ed7e18122f9181dc13fc
 
 install : $(TARGET)
 
@@ -74,6 +74,8 @@  $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
 	@$(PREBUILD)
 	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
 	cd $(DIR_APP) && make $(MAKETUNING)
-	cd $(DIR_APP) && make install prefix=/usr
+	cd $(DIR_APP) && make install PREFIX=/usr \
+	                      BUILD_DYNAMIC_LIB=1 \
+	                      BUILD_STATIC_LIB=0
 	@rm -rf $(DIR_APP)
 	@$(POSTBUILD)