From: Jiri Pirko <j...@mellanox.com>

Vadim says:

This patchset adds I2C access support for SwitchX, SwitchX2, SwitchIB,
SwitchIB2 and Spectrum silicones.

It contains:
 - Small changes in mlxsw core code, needed for I2C bus support;
 - I2C driver, which obtains I2C input/output mailboxes setting and
   provides command interface implementation.
 - Minimal driver, which works on top of I2C driver and allows running
   of mlxsw command interface over I2C bus;

Use case:
On system, which does not have PCI to ASIC (BMC), hwmon functionality
(sensors, pwm, tacho) will be available through I2C.

Usage (manual probing):
echo mlxsw_minimal 0x48 > /sys/bus/i2c/devices/i2c-2/new_device

Sysfs interface:
/sys/bus/i2c/devices/2-0048/hwmon/hwmon5/pwm1
/sys/bus/i2c/devices/2-0048/hwmon/hwmon5/temp1_input

Vadim Pasternak (4):
  mlxsw: Add bus capability flag
  mlxsw: Introduce support for I2C bus
  mlxsw: Invoke driver's init/fini methods only if defined
  mlxsw: minimal: Add I2C support for Mellanox ASICs

 drivers/net/ethernet/mellanox/mlxsw/Kconfig   |  21 +
 drivers/net/ethernet/mellanox/mlxsw/Makefile  |   4 +
 drivers/net/ethernet/mellanox/mlxsw/core.c    |  20 +-
 drivers/net/ethernet/mellanox/mlxsw/core.h    |   3 +
 drivers/net/ethernet/mellanox/mlxsw/i2c.c     | 582 ++++++++++++++++++++++++++
 drivers/net/ethernet/mellanox/mlxsw/i2c.h     |  60 +++
 drivers/net/ethernet/mellanox/mlxsw/minimal.c |  97 +++++
 drivers/net/ethernet/mellanox/mlxsw/pci.c     |   1 +
 8 files changed, 783 insertions(+), 5 deletions(-)
 create mode 100644 drivers/net/ethernet/mellanox/mlxsw/i2c.c
 create mode 100644 drivers/net/ethernet/mellanox/mlxsw/i2c.h
 create mode 100644 drivers/net/ethernet/mellanox/mlxsw/minimal.c

-- 
2.7.4

Reply via email to