xref: /openbmc/u-boot/arch/arm/dts/imx53.dtsi (revision 748ad078eefea2ee5a3c8e53ca46e9e93c2fc7f1)
198d62e61SPatrick Bruenn/*
298d62e61SPatrick Bruenn * Copyright 2016 Beckhoff Automation
398d62e61SPatrick Bruenn * Copyright 2011 Freescale Semiconductor, Inc.
498d62e61SPatrick Bruenn * Copyright 2011 Linaro Ltd.
598d62e61SPatrick Bruenn *
698d62e61SPatrick Bruenn * The code contained herein is licensed under the GNU General Public
798d62e61SPatrick Bruenn * License. You may obtain a copy of the GNU General Public License
898d62e61SPatrick Bruenn * Version 2 or later at the following locations:
998d62e61SPatrick Bruenn *
1098d62e61SPatrick Bruenn * http://www.opensource.org/licenses/gpl-license.html
1198d62e61SPatrick Bruenn * http://www.gnu.org/copyleft/gpl.html
1298d62e61SPatrick Bruenn */
1398d62e61SPatrick Bruenn
1498d62e61SPatrick Bruenn#include "skeleton.dtsi"
1598d62e61SPatrick Bruenn#include "imx53-pinfunc.h"
1698d62e61SPatrick Bruenn#include <dt-bindings/clock/imx5-clock.h>
1798d62e61SPatrick Bruenn#include <dt-bindings/gpio/gpio.h>
1898d62e61SPatrick Bruenn#include <dt-bindings/input/input.h>
1998d62e61SPatrick Bruenn#include <dt-bindings/interrupt-controller/irq.h>
2098d62e61SPatrick Bruenn
2198d62e61SPatrick Bruenn/ {
2298d62e61SPatrick Bruenn	aliases {
2398d62e61SPatrick Bruenn		serial1 = &uart2;
240a107afdSLukasz Majewski		gpio0 = &gpio1;
250a107afdSLukasz Majewski		gpio1 = &gpio2;
260a107afdSLukasz Majewski		gpio2 = &gpio3;
270a107afdSLukasz Majewski		gpio3 = &gpio4;
280a107afdSLukasz Majewski		gpio4 = &gpio5;
290a107afdSLukasz Majewski		gpio5 = &gpio6;
300a107afdSLukasz Majewski		gpio6 = &gpio7;
310a107afdSLukasz Majewski		i2c0 = &i2c1;
320a107afdSLukasz Majewski		i2c1 = &i2c2;
330a107afdSLukasz Majewski		i2c2 = &i2c3;
34*77fd72ffSPatrick Bruenn		mmc0 = &esdhc1;
35*77fd72ffSPatrick Bruenn		mmc1 = &esdhc2;
3698d62e61SPatrick Bruenn	};
3798d62e61SPatrick Bruenn
38d6abd1d5SPatrick Bruenn	tzic: tz-interrupt-controller@fffc000 {
39d6abd1d5SPatrick Bruenn		compatible = "fsl,imx53-tzic", "fsl,tzic";
40d6abd1d5SPatrick Bruenn		interrupt-controller;
41d6abd1d5SPatrick Bruenn		#interrupt-cells = <1>;
42d6abd1d5SPatrick Bruenn		reg = <0x0fffc000 0x4000>;
43d6abd1d5SPatrick Bruenn	};
44d6abd1d5SPatrick Bruenn
4598d62e61SPatrick Bruenn	soc {
4698d62e61SPatrick Bruenn		#address-cells = <1>;
4798d62e61SPatrick Bruenn		#size-cells = <1>;
4898d62e61SPatrick Bruenn		compatible = "simple-bus";
49d6abd1d5SPatrick Bruenn		interrupt-parent = <&tzic>;
5098d62e61SPatrick Bruenn		ranges;
5198d62e61SPatrick Bruenn
5298d62e61SPatrick Bruenn		aips@50000000 { /* AIPS1 */
5398d62e61SPatrick Bruenn			compatible = "fsl,aips-bus", "simple-bus";
5498d62e61SPatrick Bruenn			#address-cells = <1>;
5598d62e61SPatrick Bruenn			#size-cells = <1>;
5698d62e61SPatrick Bruenn			reg = <0x50000000 0x10000000>;
5798d62e61SPatrick Bruenn			ranges;
5898d62e61SPatrick Bruenn
59*77fd72ffSPatrick Bruenn			spba@50000000 {
60*77fd72ffSPatrick Bruenn				compatible = "fsl,spba-bus", "simple-bus";
61*77fd72ffSPatrick Bruenn				#address-cells = <1>;
62*77fd72ffSPatrick Bruenn				#size-cells = <1>;
63*77fd72ffSPatrick Bruenn				reg = <0x50000000 0x40000>;
64*77fd72ffSPatrick Bruenn				ranges;
65*77fd72ffSPatrick Bruenn
66*77fd72ffSPatrick Bruenn				esdhc1: esdhc@50004000 {
67*77fd72ffSPatrick Bruenn					compatible = "fsl,imx53-esdhc";
68*77fd72ffSPatrick Bruenn					reg = <0x50004000 0x4000>;
69*77fd72ffSPatrick Bruenn					interrupts = <1>;
70*77fd72ffSPatrick Bruenn					clocks = <&clks IMX5_CLK_ESDHC1_IPG_GATE>,
71*77fd72ffSPatrick Bruenn						 <&clks IMX5_CLK_DUMMY>,
72*77fd72ffSPatrick Bruenn						 <&clks IMX5_CLK_ESDHC1_PER_GATE>;
73*77fd72ffSPatrick Bruenn					clock-names = "ipg", "ahb", "per";
74*77fd72ffSPatrick Bruenn					bus-width = <4>;
75*77fd72ffSPatrick Bruenn					status = "disabled";
76*77fd72ffSPatrick Bruenn				};
77*77fd72ffSPatrick Bruenn
78*77fd72ffSPatrick Bruenn				esdhc2: esdhc@50008000 {
79*77fd72ffSPatrick Bruenn					compatible = "fsl,imx53-esdhc";
80*77fd72ffSPatrick Bruenn					reg = <0x50008000 0x4000>;
81*77fd72ffSPatrick Bruenn					interrupts = <2>;
82*77fd72ffSPatrick Bruenn					clocks = <&clks IMX5_CLK_ESDHC2_IPG_GATE>,
83*77fd72ffSPatrick Bruenn						 <&clks IMX5_CLK_DUMMY>,
84*77fd72ffSPatrick Bruenn						 <&clks IMX5_CLK_ESDHC2_PER_GATE>;
85*77fd72ffSPatrick Bruenn					clock-names = "ipg", "ahb", "per";
86*77fd72ffSPatrick Bruenn					bus-width = <4>;
87*77fd72ffSPatrick Bruenn					status = "disabled";
88*77fd72ffSPatrick Bruenn				};
89*77fd72ffSPatrick Bruenn			};
90*77fd72ffSPatrick Bruenn
9198d62e61SPatrick Bruenn			iomuxc: iomuxc@53fa8000 {
9298d62e61SPatrick Bruenn				compatible = "fsl,imx53-iomuxc";
9398d62e61SPatrick Bruenn				reg = <0x53fa8000 0x4000>;
9498d62e61SPatrick Bruenn			};
9598d62e61SPatrick Bruenn
9698d62e61SPatrick Bruenn			gpr: iomuxc-gpr@53fa8000 {
9798d62e61SPatrick Bruenn				compatible = "fsl,imx53-iomuxc-gpr", "syscon";
9898d62e61SPatrick Bruenn				reg = <0x53fa8000 0xc>;
9998d62e61SPatrick Bruenn			};
10098d62e61SPatrick Bruenn
10198d62e61SPatrick Bruenn			uart2: serial@53fc0000 {
10298d62e61SPatrick Bruenn				compatible = "fsl,imx7d-uart", "fsl,imx53-uart", "fsl,imx21-uart";
10398d62e61SPatrick Bruenn				reg = <0x53fc0000 0x4000>;
10498d62e61SPatrick Bruenn				interrupts = <32>;
10598d62e61SPatrick Bruenn				clocks = <&clks IMX5_CLK_UART2_IPG_GATE>,
10698d62e61SPatrick Bruenn				         <&clks IMX5_CLK_UART2_PER_GATE>;
10798d62e61SPatrick Bruenn				clock-names = "ipg", "per";
10898d62e61SPatrick Bruenn				dmas = <&sdma 12 4 0>, <&sdma 13 4 0>;
10998d62e61SPatrick Bruenn				dma-names = "rx", "tx";
11098d62e61SPatrick Bruenn				status = "disabled";
11198d62e61SPatrick Bruenn			};
11298d62e61SPatrick Bruenn
11398d62e61SPatrick Bruenn			clks: ccm@53fd4000{
11498d62e61SPatrick Bruenn				compatible = "fsl,imx53-ccm";
11598d62e61SPatrick Bruenn				reg = <0x53fd4000 0x4000>;
11698d62e61SPatrick Bruenn				interrupts = <0 71 0x04 0 72 0x04>;
11798d62e61SPatrick Bruenn				#clock-cells = <1>;
11898d62e61SPatrick Bruenn			};
11998d62e61SPatrick Bruenn
1200a107afdSLukasz Majewski			gpio1: gpio@53f84000 {
1210a107afdSLukasz Majewski				compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
1220a107afdSLukasz Majewski				reg = <0x53f84000 0x4000>;
1230a107afdSLukasz Majewski				interrupts = <50 51>;
1240a107afdSLukasz Majewski				gpio-controller;
1250a107afdSLukasz Majewski				#gpio-cells = <2>;
1260a107afdSLukasz Majewski				interrupt-controller;
1270a107afdSLukasz Majewski				#interrupt-cells = <2>;
1280a107afdSLukasz Majewski			};
1290a107afdSLukasz Majewski
1300a107afdSLukasz Majewski			gpio2: gpio@53f88000 {
1310a107afdSLukasz Majewski				compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
1320a107afdSLukasz Majewski				reg = <0x53f88000 0x4000>;
1330a107afdSLukasz Majewski				interrupts = <52 53>;
1340a107afdSLukasz Majewski				gpio-controller;
1350a107afdSLukasz Majewski				#gpio-cells = <2>;
1360a107afdSLukasz Majewski				interrupt-controller;
1370a107afdSLukasz Majewski				#interrupt-cells = <2>;
1380a107afdSLukasz Majewski			};
1390a107afdSLukasz Majewski
1400a107afdSLukasz Majewski			gpio3: gpio@53f8c000 {
1410a107afdSLukasz Majewski				compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
1420a107afdSLukasz Majewski				reg = <0x53f8c000 0x4000>;
1430a107afdSLukasz Majewski				interrupts = <54 55>;
1440a107afdSLukasz Majewski				gpio-controller;
1450a107afdSLukasz Majewski				#gpio-cells = <2>;
1460a107afdSLukasz Majewski				interrupt-controller;
1470a107afdSLukasz Majewski				#interrupt-cells = <2>;
1480a107afdSLukasz Majewski			};
1490a107afdSLukasz Majewski
1500a107afdSLukasz Majewski			gpio4: gpio@53f90000 {
1510a107afdSLukasz Majewski				compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
1520a107afdSLukasz Majewski				reg = <0x53f90000 0x4000>;
1530a107afdSLukasz Majewski				interrupts = <56 57>;
1540a107afdSLukasz Majewski				gpio-controller;
1550a107afdSLukasz Majewski				#gpio-cells = <2>;
1560a107afdSLukasz Majewski				interrupt-controller;
1570a107afdSLukasz Majewski				#interrupt-cells = <2>;
1580a107afdSLukasz Majewski			};
1590a107afdSLukasz Majewski
1600a107afdSLukasz Majewski			gpio5: gpio@53fdc000 {
1610a107afdSLukasz Majewski				compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
1620a107afdSLukasz Majewski				reg = <0x53fdc000 0x4000>;
1630a107afdSLukasz Majewski				interrupts = <103 104>;
1640a107afdSLukasz Majewski				gpio-controller;
1650a107afdSLukasz Majewski				#gpio-cells = <2>;
1660a107afdSLukasz Majewski				interrupt-controller;
1670a107afdSLukasz Majewski				#interrupt-cells = <2>;
1680a107afdSLukasz Majewski			};
1690a107afdSLukasz Majewski
1700a107afdSLukasz Majewski			gpio6: gpio@53fe0000 {
1710a107afdSLukasz Majewski				compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
1720a107afdSLukasz Majewski				reg = <0x53fe0000 0x4000>;
1730a107afdSLukasz Majewski				interrupts = <105 106>;
1740a107afdSLukasz Majewski				gpio-controller;
1750a107afdSLukasz Majewski				#gpio-cells = <2>;
1760a107afdSLukasz Majewski				interrupt-controller;
1770a107afdSLukasz Majewski				#interrupt-cells = <2>;
1780a107afdSLukasz Majewski			};
1790a107afdSLukasz Majewski
18098d62e61SPatrick Bruenn			gpio7: gpio@53fe4000 {
18198d62e61SPatrick Bruenn				compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
18298d62e61SPatrick Bruenn				reg = <0x53fe4000 0x4000>;
18398d62e61SPatrick Bruenn				interrupts = <107 108>;
18498d62e61SPatrick Bruenn				gpio-controller;
18598d62e61SPatrick Bruenn				#gpio-cells = <2>;
18698d62e61SPatrick Bruenn				interrupt-controller;
18798d62e61SPatrick Bruenn				#interrupt-cells = <2>;
18898d62e61SPatrick Bruenn			};
1890a107afdSLukasz Majewski
1900a107afdSLukasz Majewski			i2c3: i2c@53fec000 {
1910a107afdSLukasz Majewski				#address-cells = <1>;
1920a107afdSLukasz Majewski				#size-cells = <0>;
1930a107afdSLukasz Majewski				compatible = "fsl,imx53-i2c", "fsl,imx21-i2c";
1940a107afdSLukasz Majewski				reg = <0x53fec000 0x4000>;
1950a107afdSLukasz Majewski				interrupts = <64>;
1960a107afdSLukasz Majewski				clocks = <&clks IMX5_CLK_I2C3_GATE>;
1970a107afdSLukasz Majewski				status = "disabled";
1980a107afdSLukasz Majewski			};
19998d62e61SPatrick Bruenn		};
20098d62e61SPatrick Bruenn
20198d62e61SPatrick Bruenn		aips@60000000 {	/* AIPS2 */
20298d62e61SPatrick Bruenn			compatible = "fsl,aips-bus", "simple-bus";
20398d62e61SPatrick Bruenn			#address-cells = <1>;
20498d62e61SPatrick Bruenn			#size-cells = <1>;
20598d62e61SPatrick Bruenn			reg = <0x60000000 0x10000000>;
20698d62e61SPatrick Bruenn			ranges;
20798d62e61SPatrick Bruenn
20898d62e61SPatrick Bruenn			sdma: sdma@63fb0000 {
20998d62e61SPatrick Bruenn				compatible = "fsl,imx53-sdma", "fsl,imx35-sdma";
21098d62e61SPatrick Bruenn				reg = <0x63fb0000 0x4000>;
21198d62e61SPatrick Bruenn				interrupts = <6>;
21298d62e61SPatrick Bruenn				clocks = <&clks IMX5_CLK_SDMA_GATE>,
21398d62e61SPatrick Bruenn				         <&clks IMX5_CLK_SDMA_GATE>;
21498d62e61SPatrick Bruenn				clock-names = "ipg", "ahb";
21598d62e61SPatrick Bruenn				#dma-cells = <3>;
21698d62e61SPatrick Bruenn				fsl,sdma-ram-script-name = "imx/sdma/sdma-imx53.bin";
21798d62e61SPatrick Bruenn			};
21898d62e61SPatrick Bruenn
21998d62e61SPatrick Bruenn			fec: ethernet@63fec000 {
22098d62e61SPatrick Bruenn				compatible = "fsl,imx53-fec", "fsl,imx25-fec";
22198d62e61SPatrick Bruenn				reg = <0x63fec000 0x4000>;
22298d62e61SPatrick Bruenn				interrupts = <87>;
22398d62e61SPatrick Bruenn				clocks = <&clks IMX5_CLK_FEC_GATE>,
22498d62e61SPatrick Bruenn				         <&clks IMX5_CLK_FEC_GATE>,
22598d62e61SPatrick Bruenn				         <&clks IMX5_CLK_FEC_GATE>;
22698d62e61SPatrick Bruenn				clock-names = "ipg", "ahb", "ptp";
22798d62e61SPatrick Bruenn				status = "disabled";
22898d62e61SPatrick Bruenn			};
2290a107afdSLukasz Majewski
2300a107afdSLukasz Majewski			i2c2: i2c@63fc4000 {
2310a107afdSLukasz Majewski				#address-cells = <1>;
2320a107afdSLukasz Majewski				#size-cells = <0>;
2330a107afdSLukasz Majewski				compatible = "fsl,imx53-i2c", "fsl,imx21-i2c";
2340a107afdSLukasz Majewski				reg = <0x63fc4000 0x4000>;
2350a107afdSLukasz Majewski				interrupts = <63>;
2360a107afdSLukasz Majewski				clocks = <&clks IMX5_CLK_I2C2_GATE>;
2370a107afdSLukasz Majewski				status = "disabled";
2380a107afdSLukasz Majewski			};
2390a107afdSLukasz Majewski
2400a107afdSLukasz Majewski			i2c1: i2c@63fc8000 {
2410a107afdSLukasz Majewski				#address-cells = <1>;
2420a107afdSLukasz Majewski				#size-cells = <0>;
2430a107afdSLukasz Majewski				compatible = "fsl,imx53-i2c", "fsl,imx21-i2c";
2440a107afdSLukasz Majewski				reg = <0x63fc8000 0x4000>;
2450a107afdSLukasz Majewski				interrupts = <62>;
2460a107afdSLukasz Majewski				clocks = <&clks IMX5_CLK_I2C1_GATE>;
2470a107afdSLukasz Majewski				status = "disabled";
2480a107afdSLukasz Majewski			};
24998d62e61SPatrick Bruenn		};
25098d62e61SPatrick Bruenn	};
25198d62e61SPatrick Bruenn};
252