Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752548AbdIVVGQ (ORCPT ); Fri, 22 Sep 2017 17:06:16 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:53386 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752304AbdIVVGM (ORCPT ); Fri, 22 Sep 2017 17:06:12 -0400 From: Eddie James To: linux-kernel@vger.kernel.org Cc: gregkh@linuxfoundation.org, devicetree@vger.kernel.org, robh+dt@kernel.org, mark.rutland@arm.com, bradleyb@fuzziesquirrel.com, jk@ozlabs.org, cbostic@linux.vnet.ibm.com, joel@jms.id.au, andrew@aj.id.au, eajames@linux.vnet.ibm.com, "Edward A. James" Subject: [PATCH v3 0/6] drivers: fsi: Add SBEFIFO and OCC drivers Date: Fri, 22 Sep 2017 16:05:56 -0500 X-Mailer: git-send-email 1.8.3.1 X-TM-AS-GCONF: 00 x-cbid: 17092221-0012-0000-0000-0000150BDFED X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00007779; HX=3.00000241; KW=3.00000007; PH=3.00000004; SC=3.00000231; SDB=6.00920876; UDB=6.00462765; IPR=6.00701097; BA=6.00005601; NDR=6.00000001; ZLA=6.00000005; ZF=6.00000009; ZB=6.00000000; ZP=6.00000000; ZH=6.00000000; ZU=6.00000002; MB=3.00017252; XFM=3.00000015; UTC=2017-09-22 21:06:10 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 17092221-0013-0000-0000-00004F989FF7 Message-Id: <1506114362-492-1-git-send-email-eajames@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2017-09-22_09:,, 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-1707230000 definitions=main-1709220294 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2309 Lines: 51 From: "Edward A. James" This series adds two FSI-based device drivers. The OCC driver is dependent on the SBEFIFO driver, as a user of it's in-kernel API. The in-kernel API provided by the OCC driver will be used by a hwmon driver (on the lkml as "Add On-Chip Controller (OCC) hwmon driver"). Changes since v2: * Rename occ.c and occ.h to fsi-occ.c and fsi-occ.h * Improved remove() ordering in both drivers. * Added cancel functionality to OCC driver to make sure no xfrs started during remove(). * Fix spin_unlock with spin_unlock_irq in OCC driver. * Fix list_first_entry with list_first_entry_or_null in OCC worker function. * Add OCC response definitions to OCC include file. * Handle probe() failures better. Changes since v1: * Split bindings into separate patch and added SBEFIFO device binding * Fixed #includes * Fix SBEFIFO race condition between write() and poll_timer(). * Followed Rob's suggestion to just create one platform device for hwmon driver, instead of using the device tree. * Also check for "command in progress" response from OCC and try a while Edward A. James (6): dt-bindings: fsi: Add SBEFIFO documentation drivers: fsi: Add SBEFIFO FSI client device driver drivers: fsi: sbefifo: Add in-kernel API dt-bindings: fsi: Add OCC documentation drivers: fsi: Add On-Chip Controller (OCC) driver drivers: fsi: occ: Add in-kernel API .../devicetree/bindings/fsi/ibm,p9-occ.txt | 15 + .../devicetree/bindings/fsi/ibm,p9-sbefifo.txt | 20 + drivers/fsi/Kconfig | 17 + drivers/fsi/Makefile | 2 + drivers/fsi/fsi-occ.c | 851 ++++++++++++++++++ drivers/fsi/fsi-sbefifo.c | 956 +++++++++++++++++++++ include/linux/fsi-occ.h | 41 + include/linux/fsi-sbefifo.h | 30 + 8 files changed, 1932 insertions(+) create mode 100644 Documentation/devicetree/bindings/fsi/ibm,p9-occ.txt create mode 100644 Documentation/devicetree/bindings/fsi/ibm,p9-sbefifo.txt create mode 100644 drivers/fsi/fsi-occ.c create mode 100644 drivers/fsi/fsi-sbefifo.c create mode 100644 include/linux/fsi-occ.h create mode 100644 include/linux/fsi-sbefifo.h -- 1.8.3.1