i2cget is a better fit for this mode. Having it in i2cdump requires special-casing in various places, which makes the code harder to read and maintain. Signed-off-by: Jean Delvare <jdelvare@xxxxxxx> --- tools/i2cdump.8 | 13 ++++--------- tools/i2cdump.c | 4 +++- 2 files changed, 7 insertions(+), 10 deletions(-) --- i2c-tools.orig/tools/i2cdump.8 2021-06-08 17:04:22.538979958 +0200 +++ i2c-tools/tools/i2cdump.8 2021-06-08 17:13:28.996481415 +0200 @@ -106,21 +106,16 @@ bus 1 (i2c-1), using the default read me # i2cdump -r 0x00-0x3f 1 0x2d .RE .fi -.PP -Dump the registers of the SMBus device at address 0x69 on bus 0 (i2c-0), -using one SMBus block read transaction with error checking enabled, after -user confirmation: -.nf -.RS -# i2cdump 0 0x69 sp -.RE -.fi .SH BUGS To report bugs or send fixes, please write to the Linux I2C mailing list <linux-i2c@xxxxxxxxxxxxxxx> with Cc to the current maintainer: Jean Delvare <jdelvare@xxxxxxx>. +SMBus block mode is deprecated and will be removed in a future version +of this tool. +Please use \fIi2cget\fR instead. + .SH SEE ALSO i2cdetect(8), i2cget(8), i2cset(8), i2ctransfer(8), isadump(8) --- i2c-tools.orig/tools/i2cdump.c 2021-06-08 17:04:22.538979958 +0200 +++ i2c-tools/tools/i2cdump.c 2021-06-08 17:13:21.787382423 +0200 @@ -43,7 +43,7 @@ static void help(void) " b (byte, default)\n" " w (word)\n" " W (word on even register addresses)\n" - " s (SMBus block)\n" + " s (SMBus block, deprecated)\n" " i (I2C block)\n" " c (consecutive byte)\n" " Append p for SMBus PEC\n"); @@ -181,6 +181,8 @@ int main(int argc, char *argv[]) even = 1; } else if (!strncmp(argv[flags+3], "s", 1)) { size = I2C_SMBUS_BLOCK_DATA; + fprintf(stderr, + "SMBus Block mode is deprecated, please use i2cget instead\n"); pec = argv[flags+3][1] == 'p'; } else if (!strncmp(argv[flags+3], "c", 1)) { size = I2C_SMBUS_BYTE; -- Jean Delvare SUSE L3 Support