Commit 6b7f06cc authored by Srinivas Kandagatla's avatar Srinivas Kandagatla

ARM: STi: STiH415: Add reset controller support.

This patch adds a reset controller node to the SOC device tree and also
adds new header files with reset lines required for other device tree
nodes.
Signed-off-by: default avatarSrinivas Kandagatla <srinivas.kandagatla@st.com>
parent 7ec5183a
STMicroelectronics STi family Sysconfig Peripheral Powerdown Reset Controller
=============================================================================
This binding describes a reset controller device that is used to enable and
disable on-chip peripheral controllers such as USB and SATA, using
"powerdown" control bits found in the STi family SoC system configuration
registers. These have been grouped together into a single reset controller
device for convenience.
The actual action taken when powerdown is asserted is hardware dependent.
However, when asserted it may not be possible to access the hardware's
registers and after an assert/deassert sequence the hardware's previous state
may no longer be valid.
Please refer to reset.txt in this directory for common reset
controller binding usage.
Required properties:
- compatible: Should be "st,<chip>-powerdown"
ex: "st,stih415-powerdown", "st,stih416-powerdown"
- #reset-cells: 1, see below
example:
powerdown: powerdown-controller {
#reset-cells = <1>;
compatible = "st,stih415-powerdown";
};
Specifying powerdown control of devices
=======================================
Device nodes should specify the reset channel required in their "resets"
property, containing a phandle to the powerdown device node and an
index specifying which channel to use, as described in reset.txt
example:
usb1: usb@fe200000 {
resets = <&powerdown STIH41X_USB1_POWERDOWN>;
};
Macro definitions for the supported reset channels can be found in:
include/dt-bindings/reset-controller/stih415-resets.h
include/dt-bindings/reset-controller/stih416-resets.h
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
#include "stih415-clock.dtsi" #include "stih415-clock.dtsi"
#include "stih415-pinctrl.dtsi" #include "stih415-pinctrl.dtsi"
#include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/reset-controller/stih415-resets.h>
/ { / {
L2: cache-controller { L2: cache-controller {
...@@ -28,6 +29,11 @@ soc { ...@@ -28,6 +29,11 @@ soc {
ranges; ranges;
compatible = "simple-bus"; compatible = "simple-bus";
powerdown: powerdown-controller {
#reset-cells = <1>;
compatible = "st,stih415-powerdown";
};
syscfg_sbc: sbc-syscfg@fe600000{ syscfg_sbc: sbc-syscfg@fe600000{
compatible = "st,stih415-sbc-syscfg", "syscon"; compatible = "st,stih415-sbc-syscfg", "syscon";
reg = <0xfe600000 0xb4>; reg = <0xfe600000 0xb4>;
......
/*
* This header provides constants for the reset controller
* based peripheral powerdown requests on the STMicroelectronics
* STiH415 SoC.
*/
#ifndef _DT_BINDINGS_RESET_CONTROLLER_STIH415
#define _DT_BINDINGS_RESET_CONTROLLER_STIH415
#define STIH415_EMISS_POWERDOWN 0
#define STIH415_NAND_POWERDOWN 1
#define STIH415_KEYSCAN_POWERDOWN 2
#define STIH415_USB0_POWERDOWN 3
#define STIH415_USB1_POWERDOWN 4
#define STIH415_USB2_POWERDOWN 5
#define STIH415_SATA0_POWERDOWN 6
#define STIH415_SATA1_POWERDOWN 7
#define STIH415_PCIE_POWERDOWN 8
#endif /* _DT_BINDINGS_RESET_CONTROLLER_STIH415 */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment