Commit 931abcdc authored by David S. Miller's avatar David S. Miller
Browse files

Merge branch 'mlxsw-fixes'



Petr Machata says:

====================
mlxsw: Assorted fixes

This patchset contains several fixes for the mlxsw driver.

Patch #1 - Fixes buffer size in I2C mailbox buffer.
Patch #2 - Sets limitation of chunk size in I2C transaction.
Patch #3 - Fixes module label names based on MTCAP sensor counter
====================

Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parents 786c96e9 3fc134a0
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -405,7 +405,8 @@ mlxsw_hwmon_module_temp_label_show(struct device *dev,
			container_of(attr, struct mlxsw_hwmon_attr, dev_attr);

	return sprintf(buf, "front panel %03u\n",
		       mlxsw_hwmon_attr->type_index);
		       mlxsw_hwmon_attr->type_index + 1 -
		       mlxsw_hwmon_attr->mlxsw_hwmon_dev->sensor_count);
}

static ssize_t
+3 −2
Original line number Diff line number Diff line
@@ -48,6 +48,7 @@
#define MLXSW_I2C_MBOX_SIZE_BITS	12
#define MLXSW_I2C_ADDR_BUF_SIZE		4
#define MLXSW_I2C_BLK_DEF		32
#define MLXSW_I2C_BLK_MAX		100
#define MLXSW_I2C_RETRY			5
#define MLXSW_I2C_TIMEOUT_MSECS		5000
#define MLXSW_I2C_MAX_DATA_SIZE		256
@@ -444,7 +445,7 @@ mlxsw_i2c_cmd(struct device *dev, u16 opcode, u32 in_mod, size_t in_mbox_size,
	} else {
		/* No input mailbox is case of initialization query command. */
		reg_size = MLXSW_I2C_MAX_DATA_SIZE;
		num = reg_size / mlxsw_i2c->block_size;
		num = DIV_ROUND_UP(reg_size, mlxsw_i2c->block_size);

		if (mutex_lock_interruptible(&mlxsw_i2c->cmd.lock) < 0) {
			dev_err(&client->dev, "Could not acquire lock");
@@ -653,7 +654,7 @@ static int mlxsw_i2c_probe(struct i2c_client *client)
			return -EOPNOTSUPP;
		}

		mlxsw_i2c->block_size = max_t(u16, MLXSW_I2C_BLK_DEF,
		mlxsw_i2c->block_size = min_t(u16, MLXSW_I2C_BLK_MAX,
					      min_t(u16, quirks->max_read_len,
						    quirks->max_write_len));
	} else {