Re: [PATCH 2/2] ARM: dts: ti: Add specific compatibles for SCM conf nodes

From: Andreas Kemnade

Date: Wed Jun 03 2026 - 11:29:05 EST


On Sun, 31 May 2026 13:04:06 +0200
Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxxxxx> wrote:

> writing-bindings.rst rules dictate that "syscon" must come with a
> specific compatible identifying the register layout. Add specific
> compatibles for these devices.
>
> This also allows to solve a different problem: "syscon" is contradictory
> to "simple-bus". A system controller with registers having their own
> functions is not really a trivial MMIO simple bus. These two cannot be
> used together, unless listed as an exception.
>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxxxxx>

Reviewed-By: Andreas Kemnade <andreas@xxxxxxxxxxxx>
> ---
> arch/arm/boot/dts/ti/omap/am33xx-l4.dtsi | 2 +-
> arch/arm/boot/dts/ti/omap/am437x-l4.dtsi | 2 +-
> arch/arm/boot/dts/ti/omap/dm814x.dtsi | 2 +-
> arch/arm/boot/dts/ti/omap/dm816x.dtsi | 2 +-
> arch/arm/boot/dts/ti/omap/dra7-l4.dtsi | 2 +-
> arch/arm/boot/dts/ti/omap/omap2430.dtsi | 2 +-
> arch/arm/boot/dts/ti/omap/omap3.dtsi | 2 +-
> arch/arm/boot/dts/ti/omap/omap4-l4.dtsi | 2 +-
> arch/arm/boot/dts/ti/omap/omap5-l4.dtsi | 6 +++---
> 9 files changed, 11 insertions(+), 11 deletions(-)
>
> diff --git a/arch/arm/boot/dts/ti/omap/am33xx-l4.dtsi b/arch/arm/boot/dts/ti/omap/am33xx-l4.dtsi
> index 89d16fcc773e..1e09d2b48925 100644
> --- a/arch/arm/boot/dts/ti/omap/am33xx-l4.dtsi
> +++ b/arch/arm/boot/dts/ti/omap/am33xx-l4.dtsi
> @@ -308,7 +308,7 @@ am33xx_pinmux: pinmux@800 {
> };
>
> scm_conf: scm_conf@0 {
> - compatible = "syscon", "simple-bus";
> + compatible = "ti,am3352-scm-conf", "syscon", "simple-bus";
> reg = <0x0 0x800>;
> #address-cells = <1>;
> #size-cells = <1>;
> diff --git a/arch/arm/boot/dts/ti/omap/am437x-l4.dtsi b/arch/arm/boot/dts/ti/omap/am437x-l4.dtsi
> index e08f356e71cb..30fcce33f4b7 100644
> --- a/arch/arm/boot/dts/ti/omap/am437x-l4.dtsi
> +++ b/arch/arm/boot/dts/ti/omap/am437x-l4.dtsi
> @@ -301,7 +301,7 @@ am43xx_pinmux: pinmux@800 {
> };
>
> scm_conf: scm_conf@0 {
> - compatible = "syscon", "simple-bus";
> + compatible = "ti,am4372-scm-conf", "syscon", "simple-bus";
> reg = <0x0 0x800>;
> #address-cells = <1>;
> #size-cells = <1>;
> diff --git a/arch/arm/boot/dts/ti/omap/dm814x.dtsi b/arch/arm/boot/dts/ti/omap/dm814x.dtsi
> index 27d1f35a31fd..9e02bfa5c3a2 100644
> --- a/arch/arm/boot/dts/ti/omap/dm814x.dtsi
> +++ b/arch/arm/boot/dts/ti/omap/dm814x.dtsi
> @@ -432,7 +432,7 @@ control: control@140000 {
> ranges = <0 0x140000 0x20000>;
>
> scm_conf: scm_conf@0 {
> - compatible = "syscon", "simple-bus";
> + compatible = "ti,dm814-scm-conf", "syscon", "simple-bus";
> reg = <0x0 0x800>;
> #address-cells = <1>;
> #size-cells = <1>;
> diff --git a/arch/arm/boot/dts/ti/omap/dm816x.dtsi b/arch/arm/boot/dts/ti/omap/dm816x.dtsi
> index a1e0e904e0f0..ee0090f7aa64 100644
> --- a/arch/arm/boot/dts/ti/omap/dm816x.dtsi
> +++ b/arch/arm/boot/dts/ti/omap/dm816x.dtsi
> @@ -100,7 +100,7 @@ dm816x_pinmux: pinmux@800 {
>
> /* Device Configuration Registers */
> scm_conf: syscon@600 {
> - compatible = "syscon", "simple-bus";
> + compatible = "ti,dm8168-scm-conf", "syscon", "simple-bus";
> reg = <0x600 0x110>;
> #address-cells = <1>;
> #size-cells = <1>;
> diff --git a/arch/arm/boot/dts/ti/omap/dra7-l4.dtsi b/arch/arm/boot/dts/ti/omap/dra7-l4.dtsi
> index c8d325b0f57b..9df7648c4b79 100644
> --- a/arch/arm/boot/dts/ti/omap/dra7-l4.dtsi
> +++ b/arch/arm/boot/dts/ti/omap/dra7-l4.dtsi
> @@ -64,7 +64,7 @@ scm: scm@0 {
> ranges = <0 0 0x2000>;
>
> scm_conf: scm_conf@0 {
> - compatible = "syscon", "simple-bus";
> + compatible = "ti,dra7-scm-conf", "syscon", "simple-bus";
> reg = <0x0 0x1400>;
> #address-cells = <1>;
> #size-cells = <1>;
> diff --git a/arch/arm/boot/dts/ti/omap/omap2430.dtsi b/arch/arm/boot/dts/ti/omap/omap2430.dtsi
> index 222613d2a4d1..01bd471f9223 100644
> --- a/arch/arm/boot/dts/ti/omap/omap2430.dtsi
> +++ b/arch/arm/boot/dts/ti/omap/omap2430.dtsi
> @@ -50,7 +50,7 @@ omap2430_pmx: pinmux@30 {
> };
>
> scm_conf: scm_conf@270 {
> - compatible = "syscon",
> + compatible = "ti,omap2-scm-conf", "syscon",
> "simple-bus";
> reg = <0x270 0x240>;
> #address-cells = <1>;
> diff --git a/arch/arm/boot/dts/ti/omap/omap3.dtsi b/arch/arm/boot/dts/ti/omap/omap3.dtsi
> index 959069e24730..447736d2e53c 100644
> --- a/arch/arm/boot/dts/ti/omap/omap3.dtsi
> +++ b/arch/arm/boot/dts/ti/omap/omap3.dtsi
> @@ -116,7 +116,7 @@ omap3_pmx_core: pinmux@30 {
> };
>
> scm_conf: scm_conf@270 {
> - compatible = "syscon", "simple-bus";
> + compatible = "ti,omap3-scm-conf", "syscon", "simple-bus";
> reg = <0x270 0x330>;
> #address-cells = <1>;
> #size-cells = <1>;
> diff --git a/arch/arm/boot/dts/ti/omap/omap4-l4.dtsi b/arch/arm/boot/dts/ti/omap/omap4-l4.dtsi
> index 4c78a0b28fab..c1afc49f456c 100644
> --- a/arch/arm/boot/dts/ti/omap/omap4-l4.dtsi
> +++ b/arch/arm/boot/dts/ti/omap/omap4-l4.dtsi
> @@ -681,7 +681,7 @@ omap4_pmx_core: pinmux@40 {
> };
>
> omap4_padconf_global: omap4_padconf_global@5a0 {
> - compatible = "syscon",
> + compatible = "ti,omap4-sysc-padconf-global", "syscon",
> "simple-bus";
> reg = <0x5a0 0x170>;
> #address-cells = <1>;
> diff --git a/arch/arm/boot/dts/ti/omap/omap5-l4.dtsi b/arch/arm/boot/dts/ti/omap/omap5-l4.dtsi
> index 915870eb5c99..3350128db22d 100644
> --- a/arch/arm/boot/dts/ti/omap/omap5-l4.dtsi
> +++ b/arch/arm/boot/dts/ti/omap/omap5-l4.dtsi
> @@ -96,8 +96,7 @@ omap5_pmx_core: pinmux@40 {
> };
>
> omap5_padconf_global: omap5_padconf_global@5a0 {
> - compatible = "syscon",
> - "simple-bus";
> + compatible = "ti,omap5-scm-conf", "syscon", "simple-bus";
> reg = <0x5a0 0xec>;
> #address-cells = <1>;
> #size-cells = <1>;
> @@ -2311,7 +2310,8 @@ omap5_scm_wkup_pad_conf: omap5_scm_wkup_pad_conf@da0 {
> ranges = <0 0 0x60>;
>
> scm_wkup_pad_conf: scm_conf@0 {
> - compatible = "syscon", "simple-bus";
> + compatible = "ti,omap5-scm-wkup-conf",
> + "syscon", "simple-bus";
> reg = <0x0 0x60>;
> #address-cells = <1>;
> #size-cells = <1>;