Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0-or-later
0002 /*
0003  * pxa2xx.dtsi - Device Tree Include file for Marvell PXA2xx family SoC
0004  *
0005  * Copyright (C) 2011 Marek Vasut <marek.vasut@gmail.com>
0006  */
0007 
0008 #include "dt-bindings/clock/pxa-clock.h"
0009 
0010 #define PMGROUP(pin) #pin
0011 #define PMMUX(func, pin, af)                    \
0012         mux- ## func {                          \
0013                 groups = PMGROUP(P ## pin);     \
0014                 function = #af;                 \
0015         }
0016 #define PMMUX_LPM_LOW(func, pin, af)            \
0017         mux- ## func {                          \
0018                 groups = PMGROUP(P ## pin);     \
0019                 function = #af;                 \
0020                 low-power-disable;              \
0021         }
0022 #define PMMUX_LPM_HIGH(func, pin, af)           \
0023         mux- ## func {                          \
0024                 groups = PMGROUP(P ## pin);     \
0025                 function = #af;                 \
0026                 low-power-enable;               \
0027         }
0028 
0029 / {
0030         #address-cells = <1>;
0031         #size-cells = <1>;
0032         model = "Marvell PXA2xx family SoC";
0033         compatible = "marvell,pxa2xx";
0034         interrupt-parent = <&pxairq>;
0035 
0036         aliases {
0037                 serial0 = &ffuart;
0038                 serial1 = &btuart;
0039                 serial2 = &stuart;
0040                 serial3 = &hwuart;
0041                 i2c0 = &pwri2c;
0042                 i2c1 = &pxai2c1;
0043         };
0044 
0045         cpus {
0046                 cpu {
0047                         compatible = "marvell,xscale";
0048                         device_type = "cpu";
0049                 };
0050         };
0051 
0052         pxabus {
0053                 compatible = "simple-bus";
0054                 #address-cells = <1>;
0055                 #size-cells = <1>;
0056                 ranges;
0057 
0058                 pxairq: interrupt-controller@40d00000 {
0059                         #interrupt-cells = <1>;
0060                         compatible = "marvell,pxa-intc";
0061                         interrupt-controller;
0062                         interrupt-parent;
0063                         marvell,intc-nr-irqs = <32>;
0064                         reg = <0x40d00000 0xd0>;
0065                 };
0066 
0067                 gpio: gpio@40e00000 {
0068                         compatible = "mrvl,pxa-gpio";
0069                         #address-cells = <0x1>;
0070                         #size-cells = <0x1>;
0071                         reg = <0x40e00000 0x10000>;
0072                         gpio-controller;
0073                         #gpio-cells = <0x2>;
0074                         interrupts = <8>, <9>, <10>;
0075                         interrupt-names = "gpio0", "gpio1", "gpio_mux";
0076                         interrupt-controller;
0077                         #interrupt-cells = <0x2>;
0078                         ranges;
0079 
0080                         gcb0: gpio@40e00000 {
0081                                 reg = <0x40e00000 0x4>;
0082                         };
0083 
0084                         gcb1: gpio@40e00004 {
0085                                 reg = <0x40e00004 0x4>;
0086                         };
0087 
0088                         gcb2: gpio@40e00008 {
0089                                 reg = <0x40e00008 0x4>;
0090                         };
0091                         gcb3: gpio@40e0000c {
0092                                 reg = <0x40e0000c 0x4>;
0093                         };
0094                 };
0095 
0096                 ffuart: serial@40100000 {
0097                         compatible = "mrvl,pxa-uart";
0098                         reg = <0x40100000 0x30>;
0099                         interrupts = <22>;
0100                         clocks = <&clks CLK_FFUART>;
0101                         status = "disabled";
0102                 };
0103 
0104                 btuart: serial@40200000 {
0105                         compatible = "mrvl,pxa-uart";
0106                         reg = <0x40200000 0x30>;
0107                         interrupts = <21>;
0108                         clocks = <&clks CLK_BTUART>;
0109                         status = "disabled";
0110                 };
0111 
0112                 stuart: serial@40700000 {
0113                         compatible = "mrvl,pxa-uart";
0114                         reg = <0x40700000 0x30>;
0115                         interrupts = <20>;
0116                         clocks = <&clks CLK_STUART>;
0117                         status = "disabled";
0118                 };
0119 
0120                 hwuart: serial@41600000 {
0121                         compatible = "mrvl,pxa-uart";
0122                         reg = <0x41600000 0x30>;
0123                         interrupts = <7>;
0124                         status = "disabled";
0125                 };
0126 
0127                 pxai2c1: i2c@40301680 {
0128                         compatible = "mrvl,pxa-i2c";
0129                         reg = <0x40301680 0x30>;
0130                         interrupts = <18>;
0131                         clocks = <&clks CLK_I2C>;
0132                         #address-cells = <0x1>;
0133                         #size-cells = <0>;
0134                         status = "disabled";
0135                 };
0136 
0137                 mmc0: mmc@41100000 {
0138                         compatible = "marvell,pxa-mmc";
0139                         reg = <0x41100000 0x1000>;
0140                         interrupts = <23>;
0141                         clocks = <&clks CLK_MMC>;
0142                         dmas = <&pdma 21 3
0143                                 &pdma 22 3>;
0144                         dma-names = "rx", "tx";
0145                         status = "disabled";
0146                 };
0147 
0148                 rtc@40900000 {
0149                         compatible = "marvell,pxa-rtc";
0150                         reg = <0x40900000 0x3c>;
0151                         interrupts = <30 31>;
0152                 };
0153 
0154                 lcdc: lcd-controller@40500000 {
0155                         compatible = "marvell,pxa2xx-lcdc";
0156                         reg = <0x44000000 0x10000>;
0157                         interrupts = <17>;
0158                         clocks = <&clks CLK_LCD>;
0159                         status = "disabled";
0160                 };
0161         };
0162 };