162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0+ 262306a36Sopenharmony_ci// 362306a36Sopenharmony_ci// Copyright (C) 2014 Alexander Shiyan <shc_work@mail.ru> 462306a36Sopenharmony_ci 562306a36Sopenharmony_ci#include "imx1-pinfunc.h" 662306a36Sopenharmony_ci 762306a36Sopenharmony_ci#include <dt-bindings/clock/imx1-clock.h> 862306a36Sopenharmony_ci#include <dt-bindings/gpio/gpio.h> 962306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/irq.h> 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci/ { 1262306a36Sopenharmony_ci #address-cells = <1>; 1362306a36Sopenharmony_ci #size-cells = <1>; 1462306a36Sopenharmony_ci /* 1562306a36Sopenharmony_ci * The decompressor and also some bootloaders rely on a 1662306a36Sopenharmony_ci * pre-existing /chosen node to be available to insert the 1762306a36Sopenharmony_ci * command line and merge other ATAGS info. 1862306a36Sopenharmony_ci */ 1962306a36Sopenharmony_ci chosen {}; 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ci aliases { 2262306a36Sopenharmony_ci gpio0 = &gpio1; 2362306a36Sopenharmony_ci gpio1 = &gpio2; 2462306a36Sopenharmony_ci gpio2 = &gpio3; 2562306a36Sopenharmony_ci gpio3 = &gpio4; 2662306a36Sopenharmony_ci i2c0 = &i2c; 2762306a36Sopenharmony_ci serial0 = &uart1; 2862306a36Sopenharmony_ci serial1 = &uart2; 2962306a36Sopenharmony_ci serial2 = &uart3; 3062306a36Sopenharmony_ci spi0 = &cspi1; 3162306a36Sopenharmony_ci spi1 = &cspi2; 3262306a36Sopenharmony_ci }; 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ci aitc: aitc-interrupt-controller@223000 { 3562306a36Sopenharmony_ci compatible = "fsl,imx1-aitc", "fsl,avic"; 3662306a36Sopenharmony_ci interrupt-controller; 3762306a36Sopenharmony_ci #interrupt-cells = <1>; 3862306a36Sopenharmony_ci reg = <0x00223000 0x1000>; 3962306a36Sopenharmony_ci }; 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ci cpus { 4262306a36Sopenharmony_ci #size-cells = <0>; 4362306a36Sopenharmony_ci #address-cells = <1>; 4462306a36Sopenharmony_ci 4562306a36Sopenharmony_ci cpu@0 { 4662306a36Sopenharmony_ci device_type = "cpu"; 4762306a36Sopenharmony_ci reg = <0>; 4862306a36Sopenharmony_ci compatible = "arm,arm920t"; 4962306a36Sopenharmony_ci operating-points = <200000 1900000>; 5062306a36Sopenharmony_ci clock-latency = <62500>; 5162306a36Sopenharmony_ci clocks = <&clks IMX1_CLK_MCU>; 5262306a36Sopenharmony_ci voltage-tolerance = <5>; 5362306a36Sopenharmony_ci }; 5462306a36Sopenharmony_ci }; 5562306a36Sopenharmony_ci 5662306a36Sopenharmony_ci clocks { 5762306a36Sopenharmony_ci clk32 { 5862306a36Sopenharmony_ci compatible = "fixed-clock"; 5962306a36Sopenharmony_ci #clock-cells = <0>; 6062306a36Sopenharmony_ci clock-frequency = <32000>; 6162306a36Sopenharmony_ci }; 6262306a36Sopenharmony_ci }; 6362306a36Sopenharmony_ci 6462306a36Sopenharmony_ci soc { 6562306a36Sopenharmony_ci #address-cells = <1>; 6662306a36Sopenharmony_ci #size-cells = <1>; 6762306a36Sopenharmony_ci compatible = "simple-bus"; 6862306a36Sopenharmony_ci interrupt-parent = <&aitc>; 6962306a36Sopenharmony_ci ranges; 7062306a36Sopenharmony_ci 7162306a36Sopenharmony_ci aipi@200000 { 7262306a36Sopenharmony_ci compatible = "fsl,aipi-bus", "simple-bus"; 7362306a36Sopenharmony_ci #address-cells = <1>; 7462306a36Sopenharmony_ci #size-cells = <1>; 7562306a36Sopenharmony_ci reg = <0x00200000 0x10000>; 7662306a36Sopenharmony_ci ranges; 7762306a36Sopenharmony_ci 7862306a36Sopenharmony_ci gpt1: timer@202000 { 7962306a36Sopenharmony_ci compatible = "fsl,imx1-gpt"; 8062306a36Sopenharmony_ci reg = <0x00202000 0x1000>; 8162306a36Sopenharmony_ci interrupts = <59>; 8262306a36Sopenharmony_ci clocks = <&clks IMX1_CLK_HCLK>, 8362306a36Sopenharmony_ci <&clks IMX1_CLK_PER1>; 8462306a36Sopenharmony_ci clock-names = "ipg", "per"; 8562306a36Sopenharmony_ci }; 8662306a36Sopenharmony_ci 8762306a36Sopenharmony_ci gpt2: timer@203000 { 8862306a36Sopenharmony_ci compatible = "fsl,imx1-gpt"; 8962306a36Sopenharmony_ci reg = <0x00203000 0x1000>; 9062306a36Sopenharmony_ci interrupts = <58>; 9162306a36Sopenharmony_ci clocks = <&clks IMX1_CLK_HCLK>, 9262306a36Sopenharmony_ci <&clks IMX1_CLK_PER1>; 9362306a36Sopenharmony_ci clock-names = "ipg", "per"; 9462306a36Sopenharmony_ci }; 9562306a36Sopenharmony_ci 9662306a36Sopenharmony_ci fb: fb@205000 { 9762306a36Sopenharmony_ci compatible = "fsl,imx1-fb"; 9862306a36Sopenharmony_ci reg = <0x00205000 0x1000>; 9962306a36Sopenharmony_ci interrupts = <14>; 10062306a36Sopenharmony_ci clocks = <&clks IMX1_CLK_DUMMY>, 10162306a36Sopenharmony_ci <&clks IMX1_CLK_DUMMY>, 10262306a36Sopenharmony_ci <&clks IMX1_CLK_PER2>; 10362306a36Sopenharmony_ci clock-names = "ipg", "ahb", "per"; 10462306a36Sopenharmony_ci status = "disabled"; 10562306a36Sopenharmony_ci }; 10662306a36Sopenharmony_ci 10762306a36Sopenharmony_ci uart1: serial@206000 { 10862306a36Sopenharmony_ci compatible = "fsl,imx1-uart"; 10962306a36Sopenharmony_ci reg = <0x00206000 0x1000>; 11062306a36Sopenharmony_ci interrupts = <30 29 26>; 11162306a36Sopenharmony_ci clocks = <&clks IMX1_CLK_HCLK>, 11262306a36Sopenharmony_ci <&clks IMX1_CLK_PER1>; 11362306a36Sopenharmony_ci clock-names = "ipg", "per"; 11462306a36Sopenharmony_ci status = "disabled"; 11562306a36Sopenharmony_ci }; 11662306a36Sopenharmony_ci 11762306a36Sopenharmony_ci uart2: serial@207000 { 11862306a36Sopenharmony_ci compatible = "fsl,imx1-uart"; 11962306a36Sopenharmony_ci reg = <0x00207000 0x1000>; 12062306a36Sopenharmony_ci interrupts = <24 23 20>; 12162306a36Sopenharmony_ci clocks = <&clks IMX1_CLK_HCLK>, 12262306a36Sopenharmony_ci <&clks IMX1_CLK_PER1>; 12362306a36Sopenharmony_ci clock-names = "ipg", "per"; 12462306a36Sopenharmony_ci status = "disabled"; 12562306a36Sopenharmony_ci }; 12662306a36Sopenharmony_ci 12762306a36Sopenharmony_ci pwm: pwm@208000 { 12862306a36Sopenharmony_ci #pwm-cells = <3>; 12962306a36Sopenharmony_ci compatible = "fsl,imx1-pwm"; 13062306a36Sopenharmony_ci reg = <0x00208000 0x1000>; 13162306a36Sopenharmony_ci interrupts = <34>; 13262306a36Sopenharmony_ci clocks = <&clks IMX1_CLK_DUMMY>, 13362306a36Sopenharmony_ci <&clks IMX1_CLK_PER1>; 13462306a36Sopenharmony_ci clock-names = "ipg", "per"; 13562306a36Sopenharmony_ci }; 13662306a36Sopenharmony_ci 13762306a36Sopenharmony_ci dma: dma@209000 { 13862306a36Sopenharmony_ci compatible = "fsl,imx1-dma"; 13962306a36Sopenharmony_ci reg = <0x00209000 0x1000>; 14062306a36Sopenharmony_ci interrupts = <61 60>; 14162306a36Sopenharmony_ci clocks = <&clks IMX1_CLK_HCLK>, 14262306a36Sopenharmony_ci <&clks IMX1_CLK_DMA_GATE>; 14362306a36Sopenharmony_ci clock-names = "ipg", "ahb"; 14462306a36Sopenharmony_ci #dma-cells = <1>; 14562306a36Sopenharmony_ci }; 14662306a36Sopenharmony_ci 14762306a36Sopenharmony_ci uart3: serial@20a000 { 14862306a36Sopenharmony_ci compatible = "fsl,imx1-uart"; 14962306a36Sopenharmony_ci reg = <0x0020a000 0x1000>; 15062306a36Sopenharmony_ci interrupts = <54 4 1>; 15162306a36Sopenharmony_ci clocks = <&clks IMX1_CLK_UART3_GATE>, 15262306a36Sopenharmony_ci <&clks IMX1_CLK_PER1>; 15362306a36Sopenharmony_ci clock-names = "ipg", "per"; 15462306a36Sopenharmony_ci status = "disabled"; 15562306a36Sopenharmony_ci }; 15662306a36Sopenharmony_ci }; 15762306a36Sopenharmony_ci 15862306a36Sopenharmony_ci aipi@210000 { 15962306a36Sopenharmony_ci compatible = "fsl,aipi-bus", "simple-bus"; 16062306a36Sopenharmony_ci #address-cells = <1>; 16162306a36Sopenharmony_ci #size-cells = <1>; 16262306a36Sopenharmony_ci reg = <0x00210000 0x10000>; 16362306a36Sopenharmony_ci ranges; 16462306a36Sopenharmony_ci 16562306a36Sopenharmony_ci cspi1: spi@213000 { 16662306a36Sopenharmony_ci #address-cells = <1>; 16762306a36Sopenharmony_ci #size-cells = <0>; 16862306a36Sopenharmony_ci compatible = "fsl,imx1-cspi"; 16962306a36Sopenharmony_ci reg = <0x00213000 0x1000>; 17062306a36Sopenharmony_ci interrupts = <41>; 17162306a36Sopenharmony_ci clocks = <&clks IMX1_CLK_DUMMY>, 17262306a36Sopenharmony_ci <&clks IMX1_CLK_PER1>; 17362306a36Sopenharmony_ci clock-names = "ipg", "per"; 17462306a36Sopenharmony_ci status = "disabled"; 17562306a36Sopenharmony_ci }; 17662306a36Sopenharmony_ci 17762306a36Sopenharmony_ci i2c: i2c@217000 { 17862306a36Sopenharmony_ci #address-cells = <1>; 17962306a36Sopenharmony_ci #size-cells = <0>; 18062306a36Sopenharmony_ci compatible = "fsl,imx1-i2c"; 18162306a36Sopenharmony_ci reg = <0x00217000 0x1000>; 18262306a36Sopenharmony_ci interrupts = <39>; 18362306a36Sopenharmony_ci clocks = <&clks IMX1_CLK_HCLK>; 18462306a36Sopenharmony_ci status = "disabled"; 18562306a36Sopenharmony_ci }; 18662306a36Sopenharmony_ci 18762306a36Sopenharmony_ci cspi2: spi@219000 { 18862306a36Sopenharmony_ci #address-cells = <1>; 18962306a36Sopenharmony_ci #size-cells = <0>; 19062306a36Sopenharmony_ci compatible = "fsl,imx1-cspi"; 19162306a36Sopenharmony_ci reg = <0x00219000 0x1000>; 19262306a36Sopenharmony_ci interrupts = <40>; 19362306a36Sopenharmony_ci clocks = <&clks IMX1_CLK_DUMMY>, 19462306a36Sopenharmony_ci <&clks IMX1_CLK_PER1>; 19562306a36Sopenharmony_ci clock-names = "ipg", "per"; 19662306a36Sopenharmony_ci status = "disabled"; 19762306a36Sopenharmony_ci }; 19862306a36Sopenharmony_ci 19962306a36Sopenharmony_ci clks: ccm@21b000 { 20062306a36Sopenharmony_ci compatible = "fsl,imx1-ccm"; 20162306a36Sopenharmony_ci reg = <0x0021b000 0x1000>; 20262306a36Sopenharmony_ci #clock-cells = <1>; 20362306a36Sopenharmony_ci }; 20462306a36Sopenharmony_ci 20562306a36Sopenharmony_ci iomuxc: iomuxc@21c000 { 20662306a36Sopenharmony_ci compatible = "fsl,imx1-iomuxc"; 20762306a36Sopenharmony_ci reg = <0x0021c000 0x1000>; 20862306a36Sopenharmony_ci #address-cells = <1>; 20962306a36Sopenharmony_ci #size-cells = <1>; 21062306a36Sopenharmony_ci ranges; 21162306a36Sopenharmony_ci 21262306a36Sopenharmony_ci gpio1: gpio@21c000 { 21362306a36Sopenharmony_ci compatible = "fsl,imx1-gpio"; 21462306a36Sopenharmony_ci reg = <0x0021c000 0x100>; 21562306a36Sopenharmony_ci interrupts = <11>; 21662306a36Sopenharmony_ci gpio-controller; 21762306a36Sopenharmony_ci #gpio-cells = <2>; 21862306a36Sopenharmony_ci interrupt-controller; 21962306a36Sopenharmony_ci #interrupt-cells = <2>; 22062306a36Sopenharmony_ci }; 22162306a36Sopenharmony_ci 22262306a36Sopenharmony_ci gpio2: gpio@21c100 { 22362306a36Sopenharmony_ci compatible = "fsl,imx1-gpio"; 22462306a36Sopenharmony_ci reg = <0x0021c100 0x100>; 22562306a36Sopenharmony_ci interrupts = <12>; 22662306a36Sopenharmony_ci gpio-controller; 22762306a36Sopenharmony_ci #gpio-cells = <2>; 22862306a36Sopenharmony_ci interrupt-controller; 22962306a36Sopenharmony_ci #interrupt-cells = <2>; 23062306a36Sopenharmony_ci }; 23162306a36Sopenharmony_ci 23262306a36Sopenharmony_ci gpio3: gpio@21c200 { 23362306a36Sopenharmony_ci compatible = "fsl,imx1-gpio"; 23462306a36Sopenharmony_ci reg = <0x0021c200 0x100>; 23562306a36Sopenharmony_ci interrupts = <13>; 23662306a36Sopenharmony_ci gpio-controller; 23762306a36Sopenharmony_ci #gpio-cells = <2>; 23862306a36Sopenharmony_ci interrupt-controller; 23962306a36Sopenharmony_ci #interrupt-cells = <2>; 24062306a36Sopenharmony_ci }; 24162306a36Sopenharmony_ci 24262306a36Sopenharmony_ci gpio4: gpio@21c300 { 24362306a36Sopenharmony_ci compatible = "fsl,imx1-gpio"; 24462306a36Sopenharmony_ci reg = <0x0021c300 0x100>; 24562306a36Sopenharmony_ci interrupts = <62>; 24662306a36Sopenharmony_ci gpio-controller; 24762306a36Sopenharmony_ci #gpio-cells = <2>; 24862306a36Sopenharmony_ci interrupt-controller; 24962306a36Sopenharmony_ci #interrupt-cells = <2>; 25062306a36Sopenharmony_ci }; 25162306a36Sopenharmony_ci }; 25262306a36Sopenharmony_ci }; 25362306a36Sopenharmony_ci 25462306a36Sopenharmony_ci weim: weim@220000 { 25562306a36Sopenharmony_ci #address-cells = <2>; 25662306a36Sopenharmony_ci #size-cells = <1>; 25762306a36Sopenharmony_ci compatible = "fsl,imx1-weim"; 25862306a36Sopenharmony_ci reg = <0x00220000 0x1000>; 25962306a36Sopenharmony_ci clocks = <&clks IMX1_CLK_DUMMY>; 26062306a36Sopenharmony_ci ranges = < 26162306a36Sopenharmony_ci 0 0 0x10000000 0x02000000 26262306a36Sopenharmony_ci 1 0 0x12000000 0x01000000 26362306a36Sopenharmony_ci 2 0 0x13000000 0x01000000 26462306a36Sopenharmony_ci 3 0 0x14000000 0x01000000 26562306a36Sopenharmony_ci 4 0 0x15000000 0x01000000 26662306a36Sopenharmony_ci 5 0 0x16000000 0x01000000 26762306a36Sopenharmony_ci >; 26862306a36Sopenharmony_ci status = "disabled"; 26962306a36Sopenharmony_ci }; 27062306a36Sopenharmony_ci 27162306a36Sopenharmony_ci esram: sram@300000 { 27262306a36Sopenharmony_ci compatible = "mmio-sram"; 27362306a36Sopenharmony_ci reg = <0x00300000 0x20000>; 27462306a36Sopenharmony_ci ranges = <0 0x00300000 0x20000>; 27562306a36Sopenharmony_ci #address-cells = <1>; 27662306a36Sopenharmony_ci #size-cells = <1>; 27762306a36Sopenharmony_ci }; 27862306a36Sopenharmony_ci }; 27962306a36Sopenharmony_ci}; 280