1038010bbSJohn Crispin# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2038010bbSJohn Crispin%YAML 1.2 3038010bbSJohn Crispin--- 4038010bbSJohn Crispin$id: http://devicetree.org/schemas/clock/airoha,en7523-scu.yaml# 5038010bbSJohn Crispin$schema: http://devicetree.org/meta-schemas/core.yaml# 6038010bbSJohn Crispin 7dd3cb467SAndrew Lunntitle: EN7523 Clock 8038010bbSJohn Crispin 9038010bbSJohn Crispinmaintainers: 10038010bbSJohn Crispin - Felix Fietkau <nbd@nbd.name> 11038010bbSJohn Crispin - John Crispin <nbd@nbd.name> 12038010bbSJohn Crispin 13038010bbSJohn Crispindescription: | 14038010bbSJohn Crispin This node defines the System Control Unit of the EN7523 SoC, 15038010bbSJohn Crispin a collection of registers configuring many different aspects of the SoC. 16038010bbSJohn Crispin 17038010bbSJohn Crispin The clock driver uses it to read and configure settings of the 18038010bbSJohn Crispin PLL controller, which provides clocks for the CPU, the bus and 19038010bbSJohn Crispin other SoC internal peripherals. 20038010bbSJohn Crispin 21038010bbSJohn Crispin Each clock is assigned an identifier and client nodes use this identifier 22038010bbSJohn Crispin to specify which clock they consume. 23038010bbSJohn Crispin 24038010bbSJohn Crispin All these identifiers can be found in: 25038010bbSJohn Crispin [1]: <include/dt-bindings/clock/en7523-clk.h>. 26038010bbSJohn Crispin 27038010bbSJohn Crispin The clocks are provided inside a system controller node. 28038010bbSJohn Crispin 29038010bbSJohn Crispinproperties: 30038010bbSJohn Crispin compatible: 31038010bbSJohn Crispin items: 320a382be0SLorenzo Bianconi - enum: 330a382be0SLorenzo Bianconi - airoha,en7523-scu 340a382be0SLorenzo Bianconi - airoha,en7581-scu 35038010bbSJohn Crispin 36038010bbSJohn Crispin reg: 370a382be0SLorenzo Bianconi minItems: 2 38*7aa29196SLorenzo Bianconi maxItems: 4 39038010bbSJohn Crispin 40038010bbSJohn Crispin "#clock-cells": 41038010bbSJohn Crispin description: 42038010bbSJohn Crispin The first cell indicates the clock number, see [1] for available 43038010bbSJohn Crispin clocks. 44038010bbSJohn Crispin const: 1 45038010bbSJohn Crispin 46*7aa29196SLorenzo Bianconi '#reset-cells': 47*7aa29196SLorenzo Bianconi description: ID of the controller reset line 48*7aa29196SLorenzo Bianconi const: 1 49*7aa29196SLorenzo Bianconi 50038010bbSJohn Crispinrequired: 51038010bbSJohn Crispin - compatible 52038010bbSJohn Crispin - reg 53038010bbSJohn Crispin - '#clock-cells' 54038010bbSJohn Crispin 550a382be0SLorenzo BianconiallOf: 560a382be0SLorenzo Bianconi - if: 570a382be0SLorenzo Bianconi properties: 580a382be0SLorenzo Bianconi compatible: 590a382be0SLorenzo Bianconi const: airoha,en7523-scu 600a382be0SLorenzo Bianconi then: 610a382be0SLorenzo Bianconi properties: 620a382be0SLorenzo Bianconi reg: 630a382be0SLorenzo Bianconi items: 640a382be0SLorenzo Bianconi - description: scu base address 650a382be0SLorenzo Bianconi - description: misc scu base address 660a382be0SLorenzo Bianconi 67*7aa29196SLorenzo Bianconi '#reset-cells': false 68*7aa29196SLorenzo Bianconi 690a382be0SLorenzo Bianconi - if: 700a382be0SLorenzo Bianconi properties: 710a382be0SLorenzo Bianconi compatible: 720a382be0SLorenzo Bianconi const: airoha,en7581-scu 730a382be0SLorenzo Bianconi then: 740a382be0SLorenzo Bianconi properties: 750a382be0SLorenzo Bianconi reg: 760a382be0SLorenzo Bianconi items: 770a382be0SLorenzo Bianconi - description: scu base address 780a382be0SLorenzo Bianconi - description: misc scu base address 79*7aa29196SLorenzo Bianconi - description: reset base address 800a382be0SLorenzo Bianconi - description: pb scu base address 810a382be0SLorenzo Bianconi 82038010bbSJohn CrispinadditionalProperties: false 83038010bbSJohn Crispin 84038010bbSJohn Crispinexamples: 85038010bbSJohn Crispin - | 86038010bbSJohn Crispin #include <dt-bindings/clock/en7523-clk.h> 87038010bbSJohn Crispin scu: system-controller@1fa20000 { 88038010bbSJohn Crispin compatible = "airoha,en7523-scu"; 89038010bbSJohn Crispin reg = <0x1fa20000 0x400>, 90038010bbSJohn Crispin <0x1fb00000 0x1000>; 91038010bbSJohn Crispin #clock-cells = <1>; 92038010bbSJohn Crispin }; 93*7aa29196SLorenzo Bianconi 94*7aa29196SLorenzo Bianconi - | 95*7aa29196SLorenzo Bianconi soc { 96*7aa29196SLorenzo Bianconi #address-cells = <2>; 97*7aa29196SLorenzo Bianconi #size-cells = <2>; 98*7aa29196SLorenzo Bianconi 99*7aa29196SLorenzo Bianconi scuclk: clock-controller@1fa20000 { 100*7aa29196SLorenzo Bianconi compatible = "airoha,en7581-scu"; 101*7aa29196SLorenzo Bianconi reg = <0x0 0x1fa20000 0x0 0x400>, 102*7aa29196SLorenzo Bianconi <0x0 0x1fb00000 0x0 0x90>, 103*7aa29196SLorenzo Bianconi <0x0 0x1fb00830 0x0 0x8>, 104*7aa29196SLorenzo Bianconi <0x0 0x1fbe3400 0x0 0xfc>; 105*7aa29196SLorenzo Bianconi #clock-cells = <1>; 106*7aa29196SLorenzo Bianconi #reset-cells = <1>; 107*7aa29196SLorenzo Bianconi }; 108*7aa29196SLorenzo Bianconi }; 109