1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later 2*f126890aSEmmanuel Vadot 3*f126890aSEmmanuel Vadot/dts-v1/; 4*f126890aSEmmanuel Vadot 5*f126890aSEmmanuel Vadot#include <dt-bindings/clock/clps711x-clock.h> 6*f126890aSEmmanuel Vadot 7*f126890aSEmmanuel Vadot/ { 8*f126890aSEmmanuel Vadot #address-cells = <1>; 9*f126890aSEmmanuel Vadot #size-cells = <1>; 10*f126890aSEmmanuel Vadot model = "Cirrus Logic EP7209"; 11*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209"; 12*f126890aSEmmanuel Vadot 13*f126890aSEmmanuel Vadot chosen { }; 14*f126890aSEmmanuel Vadot 15*f126890aSEmmanuel Vadot aliases { 16*f126890aSEmmanuel Vadot gpio0 = &porta; 17*f126890aSEmmanuel Vadot gpio1 = &portb; 18*f126890aSEmmanuel Vadot gpio3 = &portd; 19*f126890aSEmmanuel Vadot gpio4 = &porte; 20*f126890aSEmmanuel Vadot serial0 = &uart1; 21*f126890aSEmmanuel Vadot serial1 = &uart2; 22*f126890aSEmmanuel Vadot spi0 = &spi; 23*f126890aSEmmanuel Vadot timer0 = &timer1; 24*f126890aSEmmanuel Vadot timer1 = &timer2; 25*f126890aSEmmanuel Vadot }; 26*f126890aSEmmanuel Vadot 27*f126890aSEmmanuel Vadot cpus { 28*f126890aSEmmanuel Vadot #address-cells = <0>; 29*f126890aSEmmanuel Vadot #size-cells = <0>; 30*f126890aSEmmanuel Vadot 31*f126890aSEmmanuel Vadot cpu { 32*f126890aSEmmanuel Vadot device_type = "cpu"; 33*f126890aSEmmanuel Vadot compatible = "arm,arm720t"; 34*f126890aSEmmanuel Vadot }; 35*f126890aSEmmanuel Vadot }; 36*f126890aSEmmanuel Vadot 37*f126890aSEmmanuel Vadot soc { 38*f126890aSEmmanuel Vadot #address-cells = <1>; 39*f126890aSEmmanuel Vadot #size-cells = <1>; 40*f126890aSEmmanuel Vadot compatible = "simple-bus"; 41*f126890aSEmmanuel Vadot interrupt-parent = <&intc>; 42*f126890aSEmmanuel Vadot ranges; 43*f126890aSEmmanuel Vadot 44*f126890aSEmmanuel Vadot clks: clks@80000000 { 45*f126890aSEmmanuel Vadot #clock-cells = <1>; 46*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-clk"; 47*f126890aSEmmanuel Vadot reg = <0x80000000 0xc000>; 48*f126890aSEmmanuel Vadot startup-frequency = <73728000>; 49*f126890aSEmmanuel Vadot }; 50*f126890aSEmmanuel Vadot 51*f126890aSEmmanuel Vadot intc: intc@80000000 { 52*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-intc"; 53*f126890aSEmmanuel Vadot reg = <0x80000000 0x4000>; 54*f126890aSEmmanuel Vadot interrupt-controller; 55*f126890aSEmmanuel Vadot #interrupt-cells = <1>; 56*f126890aSEmmanuel Vadot }; 57*f126890aSEmmanuel Vadot 58*f126890aSEmmanuel Vadot porta: gpio@80000000 { 59*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-gpio"; 60*f126890aSEmmanuel Vadot reg = <0x80000000 0x1 0x80000040 0x1>; 61*f126890aSEmmanuel Vadot gpio-controller; 62*f126890aSEmmanuel Vadot #gpio-cells = <2>; 63*f126890aSEmmanuel Vadot }; 64*f126890aSEmmanuel Vadot 65*f126890aSEmmanuel Vadot portb: gpio@80000001 { 66*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-gpio"; 67*f126890aSEmmanuel Vadot reg = <0x80000001 0x1 0x80000041 0x1>; 68*f126890aSEmmanuel Vadot gpio-controller; 69*f126890aSEmmanuel Vadot #gpio-cells = <2>; 70*f126890aSEmmanuel Vadot }; 71*f126890aSEmmanuel Vadot 72*f126890aSEmmanuel Vadot portd: gpio@80000003 { 73*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-gpio"; 74*f126890aSEmmanuel Vadot reg = <0x80000003 0x1 0x80000043 0x1>; 75*f126890aSEmmanuel Vadot gpio-controller; 76*f126890aSEmmanuel Vadot #gpio-cells = <2>; 77*f126890aSEmmanuel Vadot }; 78*f126890aSEmmanuel Vadot 79*f126890aSEmmanuel Vadot porte: gpio@80000083 { 80*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-gpio"; 81*f126890aSEmmanuel Vadot reg = <0x80000083 0x1 0x800000c3 0x1>; 82*f126890aSEmmanuel Vadot gpio-controller; 83*f126890aSEmmanuel Vadot #gpio-cells = <2>; 84*f126890aSEmmanuel Vadot }; 85*f126890aSEmmanuel Vadot 86*f126890aSEmmanuel Vadot syscon1: syscon@80000100 { 87*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-syscon1", "syscon"; 88*f126890aSEmmanuel Vadot reg = <0x80000100 0x80>; 89*f126890aSEmmanuel Vadot }; 90*f126890aSEmmanuel Vadot 91*f126890aSEmmanuel Vadot bus: bus@80000180 { 92*f126890aSEmmanuel Vadot #address-cells = <2>; 93*f126890aSEmmanuel Vadot #size-cells = <1>; 94*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-bus", "simple-bus"; 95*f126890aSEmmanuel Vadot clocks = <&clks CLPS711X_CLK_BUS>; 96*f126890aSEmmanuel Vadot reg = <0x80000180 0x80>; 97*f126890aSEmmanuel Vadot ranges = < 98*f126890aSEmmanuel Vadot 0 0 0x00000000 0x10000000 99*f126890aSEmmanuel Vadot 1 0 0x10000000 0x10000000 100*f126890aSEmmanuel Vadot 2 0 0x20000000 0x10000000 101*f126890aSEmmanuel Vadot 3 0 0x30000000 0x10000000 102*f126890aSEmmanuel Vadot 4 0 0x40000000 0x10000000 103*f126890aSEmmanuel Vadot 5 0 0x50000000 0x10000000 104*f126890aSEmmanuel Vadot 6 0 0x60000000 0x0000c000 105*f126890aSEmmanuel Vadot 7 0 0x70000000 0x00000080 106*f126890aSEmmanuel Vadot >; 107*f126890aSEmmanuel Vadot }; 108*f126890aSEmmanuel Vadot 109*f126890aSEmmanuel Vadot fb: fb@800002c0 { 110*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-fb"; 111*f126890aSEmmanuel Vadot reg = <0x800002c0 0xd44>, <0x60000000 0xc000>; 112*f126890aSEmmanuel Vadot clocks = <&clks CLPS711X_CLK_BUS>; 113*f126890aSEmmanuel Vadot syscon = <&syscon1>; 114*f126890aSEmmanuel Vadot status = "disabled"; 115*f126890aSEmmanuel Vadot }; 116*f126890aSEmmanuel Vadot 117*f126890aSEmmanuel Vadot timer1: timer@80000300 { 118*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-timer"; 119*f126890aSEmmanuel Vadot reg = <0x80000300 0x4>; 120*f126890aSEmmanuel Vadot clocks = <&clks CLPS711X_CLK_TIMER1>; 121*f126890aSEmmanuel Vadot interrupts = <8>; 122*f126890aSEmmanuel Vadot }; 123*f126890aSEmmanuel Vadot 124*f126890aSEmmanuel Vadot timer2: timer@80000340 { 125*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-timer"; 126*f126890aSEmmanuel Vadot reg = <0x80000340 0x4>; 127*f126890aSEmmanuel Vadot clocks = <&clks CLPS711X_CLK_TIMER2>; 128*f126890aSEmmanuel Vadot interrupts = <9>; 129*f126890aSEmmanuel Vadot }; 130*f126890aSEmmanuel Vadot 131*f126890aSEmmanuel Vadot pwm: pwm@80000400 { 132*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-pwm"; 133*f126890aSEmmanuel Vadot reg = <0x80000400 0x4>; 134*f126890aSEmmanuel Vadot clocks = <&clks CLPS711X_CLK_PWM>; 135*f126890aSEmmanuel Vadot #pwm-cells = <1>; 136*f126890aSEmmanuel Vadot }; 137*f126890aSEmmanuel Vadot 138*f126890aSEmmanuel Vadot uart1: serial@80000480 { 139*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-uart"; 140*f126890aSEmmanuel Vadot reg = <0x80000480 0x80>; 141*f126890aSEmmanuel Vadot interrupts = <12 13>; 142*f126890aSEmmanuel Vadot clocks = <&clks CLPS711X_CLK_UART>; 143*f126890aSEmmanuel Vadot syscon = <&syscon1>; 144*f126890aSEmmanuel Vadot }; 145*f126890aSEmmanuel Vadot 146*f126890aSEmmanuel Vadot spi: spi@80000500 { 147*f126890aSEmmanuel Vadot #address-cells = <1>; 148*f126890aSEmmanuel Vadot #size-cells = <0>; 149*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-spi"; 150*f126890aSEmmanuel Vadot reg = <0x80000500 0x4>; 151*f126890aSEmmanuel Vadot interrupts = <15>; 152*f126890aSEmmanuel Vadot clocks = <&clks CLPS711X_CLK_SPI>; 153*f126890aSEmmanuel Vadot syscon = <&syscon3>; 154*f126890aSEmmanuel Vadot status = "disabled"; 155*f126890aSEmmanuel Vadot }; 156*f126890aSEmmanuel Vadot 157*f126890aSEmmanuel Vadot syscon2: syscon@80001100 { 158*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-syscon2", "syscon"; 159*f126890aSEmmanuel Vadot reg = <0x80001100 0x80>; 160*f126890aSEmmanuel Vadot }; 161*f126890aSEmmanuel Vadot 162*f126890aSEmmanuel Vadot uart2: serial@80001480 { 163*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-uart"; 164*f126890aSEmmanuel Vadot reg = <0x80001480 0x80>; 165*f126890aSEmmanuel Vadot interrupts = <28 29>; 166*f126890aSEmmanuel Vadot clocks = <&clks CLPS711X_CLK_UART>; 167*f126890aSEmmanuel Vadot syscon = <&syscon2>; 168*f126890aSEmmanuel Vadot }; 169*f126890aSEmmanuel Vadot 170*f126890aSEmmanuel Vadot dai: dai@80002000 { 171*f126890aSEmmanuel Vadot #sound-dai-cells = <0>; 172*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-dai"; 173*f126890aSEmmanuel Vadot reg = <0x80002000 0x604>; 174*f126890aSEmmanuel Vadot clocks = <&clks CLPS711X_CLK_PLL>; 175*f126890aSEmmanuel Vadot clock-names = "pll"; 176*f126890aSEmmanuel Vadot interrupts = <32>; 177*f126890aSEmmanuel Vadot syscon = <&syscon3>; 178*f126890aSEmmanuel Vadot status = "disabled"; 179*f126890aSEmmanuel Vadot }; 180*f126890aSEmmanuel Vadot 181*f126890aSEmmanuel Vadot syscon3: syscon@80002200 { 182*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-syscon3", "syscon"; 183*f126890aSEmmanuel Vadot reg = <0x80002200 0x40>; 184*f126890aSEmmanuel Vadot }; 185*f126890aSEmmanuel Vadot }; 186*f126890aSEmmanuel Vadot 187*f126890aSEmmanuel Vadot keypad: keypad { 188*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-keypad"; 189*f126890aSEmmanuel Vadot interrupt-parent = <&intc>; 190*f126890aSEmmanuel Vadot interrupts = <16>; 191*f126890aSEmmanuel Vadot syscon = <&syscon1>; 192*f126890aSEmmanuel Vadot status = "disabled"; 193*f126890aSEmmanuel Vadot }; 194*f126890aSEmmanuel Vadot 195*f126890aSEmmanuel Vadot mctrl: mctrl { 196*f126890aSEmmanuel Vadot compatible = "cirrus,ep7209-mctrl-gpio"; 197*f126890aSEmmanuel Vadot gpio,syscon-dev = <&syscon1 0 0>; 198*f126890aSEmmanuel Vadot gpio-controller; 199*f126890aSEmmanuel Vadot #gpio-cells = <2>; 200*f126890aSEmmanuel Vadot }; 201*f126890aSEmmanuel Vadot}; 202