[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160906190127.23522-1-nm@ti.com>
Date: Tue, 6 Sep 2016 14:01:22 -0500
From: Nishanth Menon <nm@...com>
To: Rob Herring <robh@...nel.org>, Tero Kristo <t-kristo@...com>,
Santosh Shilimkar <ssantosh@...nel.org>
CC: Russ Dill <Russ.Dill@...com>, Dave Gerlach <d-gerlach@...com>,
Lokesh Vutla <lokeshvutla@...com>,
Peter Ujfalusi <peter.ujfalusi@...com>,
"Andrew F . Davis" <afd@...com>,
Russell King <rmk+kernel@...linux.org.uk>,
Sudeep Holla <sudeep.holla@....com>,
<linux-kernel@...r.kernel.org>, <devicetree@...r.kernel.org>,
<linux-arm-kernel@...ts.infradead.org>, <linux-pm@...r.kernel.org>,
Nishanth Menon <nm@...com>
Subject: [PATCH V3 0/5] firmware: Add support for TI System Control Interface (TI-SCI) protocol driver
Hi,
Version 3 of the series with change in the way we describe the children
nodes (no change to drivers required - only the dts description changes).
Texas Instruments' Keystone generation System on Chips (SoC)
starting with 66AK2G02[1], now include a dedicated SoC System Control
entity called PMMC(Power Management Micro Controller) in line with
ARM architecture recommendations. The function of this module is
to integrate all system operations in a centralized location.
Communication with the SoC System Control entity from various
processing units like ARM/DSP occurs over Message Manager hardware
block.
This series adds the base support for TI System Control Interface
(TI-SCI) protocol[2]. The protocol is built on top of Texas
Instrument's Message Manager communication mechanism[3].
Overall architecture is very similar to SCPI[4] as follows:
+-------------+ +---------+ +------^-----+
| TI SCI GENPD| |TISCI Clk| |TISCI reset |
+------+------+ +----+----+ +------+-----+
| | |
| +----v--------------+ |
+----------> TISCI Protocol(*) <--+
+----+--------------+
|
+---v-----------+
| MAILBOX FWK |
+---+-----------+
|
+---v-----------+
| TI MSGMGR |-> TISCI hardware block
+---------------+
(*) This series.
V3 of the series is based off v4.8-rc1 and is also available here:
https://github.com/nmenon/linux-2.6-playground/commits/upstream/v4.9/tisci-base-v3
integration of v3 along with https://lkml.org/lkml/2016/8/19/790 and
https://lkml.org/lkml/2016/8/19/811 is available here:
https://github.com/nmenon/linux-2.6-playground/commits/upstream/v4.9/tisci-integ-v3
Test of complete integrated solution: http://pastebin.ubuntu.com/23142652/
Changes since v2:
- Child nodes are now children of the TISCI node
- related driver updates
V2: https://lkml.org/lkml/2016/8/30/273
V1: https://lkml.org/lkml/2016/8/19/768
Nishanth Menon (5):
Documentation: Add support for TI System Control Interface (TI-SCI)
protocol
firmware: Add basic support for TI System Control Interface (TI-SCI)
protocol
firmware: ti_sci: Add support for Device control
firmware: ti_sci: Add support for Clock control
firmware: ti_sci: Add support for reboot core service
.../devicetree/bindings/arm/keystone/ti,sci.txt | 81 +
MAINTAINERS | 10 +
drivers/firmware/Kconfig | 15 +
drivers/firmware/Makefile | 1 +
drivers/firmware/ti_sci.c | 1993 ++++++++++++++++++++
drivers/firmware/ti_sci.h | 492 +++++
include/linux/soc/ti/ti_sci_protocol.h | 249 +++
7 files changed, 2841 insertions(+)
create mode 100644 Documentation/devicetree/bindings/arm/keystone/ti,sci.txt
create mode 100644 drivers/firmware/ti_sci.c
create mode 100644 drivers/firmware/ti_sci.h
create mode 100644 include/linux/soc/ti/ti_sci_protocol.h
--
2.10.0
Powered by blists - more mailing lists