Skip to content

drivers: hwmon: Add On-Chip Controller driver

Eddie James linux-devicetree linux-hwmon lkml 5 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v9 Latest5 patches 2 repliesIn review
  2. v86 patches 3 repliesSuperseded
  3. v76 patches 13 repliesSuperseded
Earlier versions · 2
VersionPostedPatchesRepliesStatus
v66 patches1 replySuperseded
v56 patches5 repliesSuperseded

Changes in v9 from the cover letter

* drop P9 sensors patch. This patch was mainly included to demonstrate
why we abstracted out the sensor-specific code into the occ_p8 functions. However, since we haven't submitted the transfer protocol to the OCC for P9 yet, we shouldn't submit this unused P9 code yet.
* fix string access in hwmon read_string() function. Thanks Guenter.
* change parameter to const char ** in read_string() function to match
upcoming hwmon code.

Patches in v9 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/5hwmon: Add core On-Chip Controller support for POWER CPUsDocumentation/hwmon/occ MAINTAINERS drivers/hwmon/Kconfig +6 more+625 -00 replies
2/5hwmon: occ: Add sysfs interfaceDocumentation/hwmon/occ drivers/hwmon/occ/Makefile drivers/hwmon/occ/occ_sysfs.c +1 more+341 -12 replies
3/5hwmon: occ: Add I2C transport implementation for SCOM operationsdrivers/hwmon/occ/Makefile drivers/hwmon/occ/occ_scom_i2c.c drivers/hwmon/occ/occ_scom_i2c.h+91 -10 replies
4/5hwmon: occ: Add callbacks for parsing P8 OCC datastructuresDocumentation/hwmon/occ drivers/hwmon/occ/Makefile drivers/hwmon/occ/occ_p8.c +1 more+291 -10 replies
5/5hwmon: occ: Add hwmon implementation for the P8 OCCDocumentation/devicetree/bindings/hwmon/occ.txt drivers/hwmon/occ/Kconfig drivers/hwmon/occ/Makefile +1 more+130 -10 replies

Reviews trailers per patch

1 of 5 patches has a Reviewed-by or Acked-by.

PatchRob Herring
1/5
2/5
3/5
4/5
5/5A-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v9 thread

Cover letter [PATCH linux v9 0/5] drivers: hwmon: Add On-Chip Controller driver

From: "Edward A. James" <[email protected]>

This patchset adds a hwmon driver to support the OCC (On-Chip Controller) on the IBM POWER8 and POWER9 processors, from a BMC (Baseboard Management Controller). The OCC is an embedded processor that provides real time power and thermal monitoring.

The driver provides an interface on a BMC to poll OCC sensor data, set user power caps, and perform some basic OCC error handling. It interfaces with userspace through hwmon.

The driver is currently functional only for the OCC on POWER8 chips. Communicating with the POWER9 OCC requries FSI support.

since v8:
* drop P9 sensors patch. This patch was mainly included to demonstrate
why we abstracted out the sensor-specific code into the occ_p8 functions. However, since we haven't submitted the transfer protocol to the OCC for P9 yet, we shouldn't submit this unused P9 code yet.
* fix string access in hwmon read_string() function. Thanks Guenter.
* change parameter to const char ** in read_string() function to match
upcoming hwmon code.

Edward A. James (5):
hwmon: Add core On-Chip Controller support for POWER CPUs
hwmon: occ: Add sysfs interface
hwmon: occ: Add I2C transport implementation for SCOM operations
hwmon: occ: Add callbacks for parsing P8 OCC datastructures
hwmon: occ: Add hwmon implementation for the P8 OCC

 Documentation/devicetree/bindings/hwmon/occ.txt |  13 +
 Documentation/hwmon/occ                         | 113 ++++++
 MAINTAINERS                                     |   7 +
 drivers/hwmon/Kconfig                           |   2 +
 drivers/hwmon/Makefile                          |   1 +
 drivers/hwmon/occ/Kconfig                       |  28 ++
 drivers/hwmon/occ/Makefile                      |   3 +
 drivers/hwmon/occ/occ.c                         | 440 ++++++++++++++++++++++++
 drivers/hwmon/occ/occ.h                         |  77 +++++
 drivers/hwmon/occ/occ_p8.c                      | 256 ++++++++++++++
 drivers/hwmon/occ/occ_p8.h                      |  25 ++
 drivers/hwmon/occ/occ_p8_i2c.c                  |  99 ++++++
 drivers/hwmon/occ/occ_scom_i2c.c                |  69 ++++
 drivers/hwmon/occ/occ_scom_i2c.h                |  21 ++
 drivers/hwmon/occ/occ_sysfs.c                   | 253 ++++++++++++++
 drivers/hwmon/occ/occ_sysfs.h                   |  25 ++
 drivers/hwmon/occ/scom.h                        |  42 +++
 17 files changed, 1474 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/hwmon/occ.txt
 create mode 100644 Documentation/hwmon/occ
 create mode 100644 drivers/hwmon/occ/Kconfig
 create mode 100644 drivers/hwmon/occ/Makefile
 create mode 100644 drivers/hwmon/occ/occ.c
 create mode 100644 drivers/hwmon/occ/occ.h
 create mode 100644 drivers/hwmon/occ/occ_p8.c
 create mode 100644 drivers/hwmon/occ/occ_p8.h
 create mode 100644 drivers/hwmon/occ/occ_p8_i2c.c
 create mode 100644 drivers/hwmon/occ/occ_scom_i2c.c
 create mode 100644 drivers/hwmon/occ/occ_scom_i2c.h
 create mode 100644 drivers/hwmon/occ/occ_sysfs.c
 create mode 100644 drivers/hwmon/occ/occ_sysfs.h
 create mode 100644 drivers/hwmon/occ/scom.h
Signature · 1 line
1.8.3.1