[PATCH 0/2] Enable fan monitoring support for Simatic IPC BX-59A

Benedikt Niedermayr <[email protected]>
Newsgroups org.kernel.vger.linux-i2c,org.kernel.vger.linux-kernel,org.kernel.vger.platform-driver-x86
Message-ID <[email protected]>
Patch 1 adds the I2C/SMBus driver for the NCT6126D.
Patch 2 enables the driver for the Simatic IPC BX-59A platform.

Some fans are controlled by the ADT7475 controller, which is connected to the
NCT6126D Super I/O via the i2c bus. Other fans are controlled directly by the
NCT6126D hwmon interface block.

To enable communication with the ADT7475, an i2c master driver for the
NCT6126D's SMBus interface is added. The new i2c master driver may support
additional controllers, but so far I have only been able to test it with the
NCT6126D Super I/O.

Findings and decisions made during development:

- The SMBus controller on the NCT6126D resides on the same logical device as
  the hwmon interface block (logical device B) and therefore shares the CR30
  register used to enable the logical device. The nct6775 driver handles the
  entire hwmon interface block on this Super-IO chip and already force-enables
  the domain during probing and resuming, regardless of what the BIOS
  programmed the CR30 register.
  This driver is more defensive and aborts probing if the BIOS has not enabled
  logical device B in the CR30 register.

- The I/O base address of the SMBus domain is discovered dynamically during
  probing. It should have been programmed by the BIOS in the CR62/CR63
  registers. If no address has been programmed in these registers, the
  driver aborts probing.

Cheers,
Benedikt

Benedikt Niedermayr (2):
  i2c: i2c-nct6126: add support for NCT6126D Super I/O
  platform/x86/siemens: simatic-ipc: add fan monitoring support for
    BX-59A

 MAINTAINERS                                |   5 +
 drivers/i2c/busses/Kconfig                 |  11 +
 drivers/i2c/busses/Makefile                |   1 +
 drivers/i2c/busses/i2c-nct6126.c           | 473 +++++++++++++++++++++
 drivers/platform/x86/siemens/simatic-ipc.c |  14 +-
 5 files changed, 497 insertions(+), 7 deletions(-)
 create mode 100644 drivers/i2c/busses/i2c-nct6126.c

--
2.43.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.