Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751839AbdG0Oal (ORCPT ); Thu, 27 Jul 2017 10:30:41 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:41272 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751584AbdG0Oai (ORCPT ); Thu, 27 Jul 2017 10:30:38 -0400 From: Eddie James To: linux-kernel@vger.kernel.org Cc: linux-hwmon@vger.kernel.org, devicetree@vger.kernel.org, linux-doc@vger.kernel.org, linux@roeck-us.net, jdelvare@suse.com, corbet@lwn.net, mark.rutland@arm.com, robh+dt@kernel.org, cbostic@linux.vnet.ibm.com, jk@ozlabs.org, joel@jms.id.au, andrew@aj.id.au, eajames@linux.vnet.ibm.com, "Edward A. James" Subject: [PATCH v2 00/10] drivers/hwmon: Add On-Chip Controller (OCC) hwmon driver Date: Thu, 27 Jul 2017 09:30:19 -0500 X-Mailer: git-send-email 1.8.3.1 X-TM-AS-GCONF: 00 x-cbid: 17072714-0056-0000-0000-000003AD8C98 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00007435; HX=3.00000241; KW=3.00000007; PH=3.00000004; SC=3.00000214; SDB=6.00893667; UDB=6.00446799; IPR=6.00673828; BA=6.00005495; NDR=6.00000001; ZLA=6.00000005; ZF=6.00000009; ZB=6.00000000; ZP=6.00000000; ZH=6.00000000; ZU=6.00000002; MB=3.00016408; XFM=3.00000015; UTC=2017-07-27 14:30:36 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 17072714-0057-0000-0000-000007E3AC5E Message-Id: <1501165829-12395-1-git-send-email-eajames@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2017-07-27_07:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 suspectscore=1 malwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1706020000 definitions=main-1707270229 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2942 Lines: 61 From: "Edward A. James" This series adds a hwmon driver to support the OCC on POWER8 and POWER9 processors. The OCC is an embedded processor that provides realtime power and thermal monitoring and management. This driver has two different platform drivers as a "base" for the hwmon interface, as the means of communicating with the OCC on P8 and P9 is completely different. For P8, the driver is an I2C client driver. For P9 the driver is an FSI-based OCC client driver, and uses the OCC driver in-kernel API. The OCC driver is on the LKML (latest https://lkml.org/lkml/2017/7/5/633). Changes since v1: * Remove wait loop in P9 code, as that is now handled by FSI OCC driver. * Removed dt binding documentation for P9, FSI OCC driver will probe OCC hwmon driver automatically. * Moved OCC response code definitions to the OCC include file. * Fixed includes. * Changed some structure fields to __beXX as that is what they are. * Changed some errnos. * Removed some dev_err(). * Refactored P8 code a bit to use #defined addresses and magic values, and changed "goto retry" to a loop. * Refactored error handling a bit. Edward A. James (10): drivers/hwmon: Add On-Chip Controller (OCC) hwmon driver drivers/hwmon/occ: Add command transport method for P8 and P9 drivers/hwmon/occ: Parse OCC poll response drivers/hwmon/occ: Add sensor types and versions drivers/hwmon/occ: Add sensor attributes and register hwmon device drivers/hwmon/occ: Add non-hwmon attributes drivers/hwmon/occ: Add error handling Documentation: hwmon: Add OCC documentation Documentation: ABI: Add occ-hwmon driver sysfs documentation dt-bindings: i2c: Add P8 OCC hwmon driver documentation Documentation/ABI/testing/sysfs-driver-occ-hwmon | 77 ++ .../devicetree/bindings/i2c/ibm,p8-occ-hwmon.txt | 25 + Documentation/hwmon/occ | 74 ++ drivers/hwmon/Kconfig | 2 + drivers/hwmon/Makefile | 1 + drivers/hwmon/occ/Kconfig | 28 + drivers/hwmon/occ/Makefile | 11 + drivers/hwmon/occ/common.c | 1289 ++++++++++++++++++++ drivers/hwmon/occ/common.h | 119 ++ drivers/hwmon/occ/p8_i2c.c | 261 ++++ drivers/hwmon/occ/p9_sbe.c | 124 ++ 11 files changed, 2011 insertions(+) create mode 100644 Documentation/ABI/testing/sysfs-driver-occ-hwmon create mode 100644 Documentation/devicetree/bindings/i2c/ibm,p8-occ-hwmon.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/common.c create mode 100644 drivers/hwmon/occ/common.h create mode 100644 drivers/hwmon/occ/p8_i2c.c create mode 100644 drivers/hwmon/occ/p9_sbe.c -- 1.8.3.1