04dbd86539
The $id path checks were inadequately checking the path part of the $id value. With the check fixed, there's a number of errors that need to be fixed. Most of the errors are including 'bindings/' in the path which should not be as that is considered the root. Cc: Andy Gross <agross@kernel.org> Cc: Bjorn Andersson <bjorn.andersson@linaro.org> Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Cc: Michael Turquette <mturquette@baylibre.com> Cc: Shawn Guo <shawnguo@kernel.org> Cc: Sascha Hauer <s.hauer@pengutronix.de> Cc: Pengutronix Kernel Team <kernel@pengutronix.de> Cc: Fabio Estevam <festevam@gmail.com> Cc: NXP Linux Team <linux-imx@nxp.com> Cc: Maxime Coquelin <mcoquelin.stm32@gmail.com> Cc: Alexandre Torgue <alexandre.torgue@st.com> Cc: "Nuno Sá" <nuno.sa@analog.com> Cc: Jean Delvare <jdelvare@suse.com> Cc: Stefan Popa <stefan.popa@analog.com> Cc: Jonathan Cameron <jic23@kernel.org> Cc: Hartmut Knaack <knaack.h@gmx.de> Cc: Lars-Peter Clausen <lars@metafoo.de> Cc: Peter Meerwald-Stadler <pmeerw@pmeerw.net> Cc: Marcus Folkesson <marcus.folkesson@gmail.com> Cc: Kent Gustavsson <kent@minoris.se> Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com> Cc: linux-clk@vger.kernel.org Cc: linux-iio@vger.kernel.org Cc: linux-input@vger.kernel.org Reviewed-by: Guenter Roeck <linux@roeck-us.net> Reviewed-by: Stephen Boyd <sboyd@kernel.org> Signed-off-by: Rob Herring <robh@kernel.org>
80 lines
2.0 KiB
YAML
80 lines
2.0 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/clock/st,stm32mp1-rcc.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Reset Clock Controller Binding
|
|
|
|
maintainers:
|
|
- Gabriel Fernandez <gabriel.fernandez@st.com>
|
|
|
|
description: |
|
|
The RCC IP is both a reset and a clock controller.
|
|
RCC makes also power management (resume/supend and wakeup interrupt).
|
|
Please also refer to reset.txt for common reset controller binding usage.
|
|
|
|
This binding uses common clock bindings
|
|
Documentation/devicetree/bindings/clock/clock-bindings.txt
|
|
|
|
Specifying clocks
|
|
=================
|
|
|
|
All available clocks are defined as preprocessor macros in
|
|
dt-bindings/clock/stm32mp1-clks.h header and can be used in device
|
|
tree sources.
|
|
|
|
Specifying softreset control of devices
|
|
=======================================
|
|
|
|
Device nodes should specify the reset channel required in their "resets"
|
|
property, containing a phandle to the reset device node and an index specifying
|
|
which channel to use.
|
|
The index is the bit number within the RCC registers bank, starting from RCC
|
|
base address.
|
|
It is calculated as: index = register_offset / 4 * 32 + bit_offset.
|
|
Where bit_offset is the bit offset within the register.
|
|
|
|
For example on STM32MP1, for LTDC reset:
|
|
ltdc = APB4_RSTSETR_offset / 4 * 32 + LTDC_bit_offset
|
|
= 0x180 / 4 * 32 + 0 = 3072
|
|
|
|
The list of valid indices for STM32MP1 is available in:
|
|
include/dt-bindings/reset-controller/stm32mp1-resets.h
|
|
|
|
This file implements defines like:
|
|
#define LTDC_R 3072
|
|
|
|
properties:
|
|
"#clock-cells":
|
|
const: 1
|
|
|
|
"#reset-cells":
|
|
const: 1
|
|
|
|
compatible:
|
|
items:
|
|
- const: st,stm32mp1-rcc
|
|
- const: syscon
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
required:
|
|
- "#clock-cells"
|
|
- "#reset-cells"
|
|
- compatible
|
|
- reg
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
rcc: rcc@50000000 {
|
|
compatible = "st,stm32mp1-rcc", "syscon";
|
|
reg = <0x50000000 0x1000>;
|
|
#clock-cells = <1>;
|
|
#reset-cells = <1>;
|
|
};
|
|
...
|