mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-26 19:00:25 +00:00
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: Srinivas Kandagatla <srinivas.kandagatla@st.com>
This commit is contained in:
parent
7ec5183a0a
commit
6b7f06cc80
3 changed files with 72 additions and 0 deletions
47
Documentation/devicetree/bindings/reset/st,sti-powerdown.txt
Normal file
47
Documentation/devicetree/bindings/reset/st,sti-powerdown.txt
Normal file
|
@ -0,0 +1,47 @@
|
|||
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 @@
|
|||
#include "stih415-clock.dtsi"
|
||||
#include "stih415-pinctrl.dtsi"
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
#include <dt-bindings/reset-controller/stih415-resets.h>
|
||||
/ {
|
||||
|
||||
L2: cache-controller {
|
||||
|
@ -28,6 +29,11 @@ soc {
|
|||
ranges;
|
||||
compatible = "simple-bus";
|
||||
|
||||
powerdown: powerdown-controller {
|
||||
#reset-cells = <1>;
|
||||
compatible = "st,stih415-powerdown";
|
||||
};
|
||||
|
||||
syscfg_sbc: sbc-syscfg@fe600000{
|
||||
compatible = "st,stih415-sbc-syscfg", "syscon";
|
||||
reg = <0xfe600000 0xb4>;
|
||||
|
|
19
include/dt-bindings/reset-controller/stih415-resets.h
Normal file
19
include/dt-bindings/reset-controller/stih415-resets.h
Normal file
|
@ -0,0 +1,19 @@
|
|||
/*
|
||||
* 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 */
|
Loading…
Reference in a new issue