1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-or-later 2*724ba675SRob Herring/* 3*724ba675SRob Herring * pxa2xx.dtsi - Device Tree Include file for Marvell PXA2xx family SoC 4*724ba675SRob Herring * 5*724ba675SRob Herring * Copyright (C) 2011 Marek Vasut <marek.vasut@gmail.com> 6*724ba675SRob Herring */ 7*724ba675SRob Herring 8*724ba675SRob Herring#include "dt-bindings/clock/pxa-clock.h" 9*724ba675SRob Herring 10*724ba675SRob Herring#define PMGROUP(pin) #pin 11*724ba675SRob Herring#define PMMUX(func, pin, af) \ 12*724ba675SRob Herring mux- ## func { \ 13*724ba675SRob Herring groups = PMGROUP(P ## pin); \ 14*724ba675SRob Herring function = #af; \ 15*724ba675SRob Herring } 16*724ba675SRob Herring#define PMMUX_LPM_LOW(func, pin, af) \ 17*724ba675SRob Herring mux- ## func { \ 18*724ba675SRob Herring groups = PMGROUP(P ## pin); \ 19*724ba675SRob Herring function = #af; \ 20*724ba675SRob Herring low-power-disable; \ 21*724ba675SRob Herring } 22*724ba675SRob Herring#define PMMUX_LPM_HIGH(func, pin, af) \ 23*724ba675SRob Herring mux- ## func { \ 24*724ba675SRob Herring groups = PMGROUP(P ## pin); \ 25*724ba675SRob Herring function = #af; \ 26*724ba675SRob Herring low-power-enable; \ 27*724ba675SRob Herring } 28*724ba675SRob Herring 29*724ba675SRob Herring/ { 30*724ba675SRob Herring #address-cells = <1>; 31*724ba675SRob Herring #size-cells = <1>; 32*724ba675SRob Herring model = "Marvell PXA2xx family SoC"; 33*724ba675SRob Herring compatible = "marvell,pxa2xx"; 34*724ba675SRob Herring interrupt-parent = <&pxairq>; 35*724ba675SRob Herring 36*724ba675SRob Herring aliases { 37*724ba675SRob Herring serial0 = &ffuart; 38*724ba675SRob Herring serial1 = &btuart; 39*724ba675SRob Herring serial2 = &stuart; 40*724ba675SRob Herring serial3 = &hwuart; 41*724ba675SRob Herring i2c0 = &pwri2c; 42*724ba675SRob Herring i2c1 = &pxai2c1; 43*724ba675SRob Herring }; 44*724ba675SRob Herring 45*724ba675SRob Herring cpus { 46*724ba675SRob Herring cpu { 47*724ba675SRob Herring compatible = "marvell,xscale"; 48*724ba675SRob Herring device_type = "cpu"; 49*724ba675SRob Herring }; 50*724ba675SRob Herring }; 51*724ba675SRob Herring 52*724ba675SRob Herring pxabus { 53*724ba675SRob Herring compatible = "simple-bus"; 54*724ba675SRob Herring #address-cells = <1>; 55*724ba675SRob Herring #size-cells = <1>; 56*724ba675SRob Herring ranges; 57*724ba675SRob Herring 58*724ba675SRob Herring pxairq: interrupt-controller@40d00000 { 59*724ba675SRob Herring #interrupt-cells = <1>; 60*724ba675SRob Herring compatible = "marvell,pxa-intc"; 61*724ba675SRob Herring interrupt-controller; 62*724ba675SRob Herring interrupt-parent; 63*724ba675SRob Herring marvell,intc-nr-irqs = <32>; 64*724ba675SRob Herring reg = <0x40d00000 0xd0>; 65*724ba675SRob Herring }; 66*724ba675SRob Herring 67*724ba675SRob Herring gpio: gpio@40e00000 { 68*724ba675SRob Herring compatible = "mrvl,pxa-gpio"; 69*724ba675SRob Herring #address-cells = <0x1>; 70*724ba675SRob Herring #size-cells = <0x1>; 71*724ba675SRob Herring reg = <0x40e00000 0x10000>; 72*724ba675SRob Herring gpio-controller; 73*724ba675SRob Herring #gpio-cells = <0x2>; 74*724ba675SRob Herring interrupts = <8>, <9>, <10>; 75*724ba675SRob Herring interrupt-names = "gpio0", "gpio1", "gpio_mux"; 76*724ba675SRob Herring interrupt-controller; 77*724ba675SRob Herring #interrupt-cells = <0x2>; 78*724ba675SRob Herring ranges; 79*724ba675SRob Herring 80*724ba675SRob Herring gcb0: gpio@40e00000 { 81*724ba675SRob Herring reg = <0x40e00000 0x4>; 82*724ba675SRob Herring }; 83*724ba675SRob Herring 84*724ba675SRob Herring gcb1: gpio@40e00004 { 85*724ba675SRob Herring reg = <0x40e00004 0x4>; 86*724ba675SRob Herring }; 87*724ba675SRob Herring 88*724ba675SRob Herring gcb2: gpio@40e00008 { 89*724ba675SRob Herring reg = <0x40e00008 0x4>; 90*724ba675SRob Herring }; 91*724ba675SRob Herring gcb3: gpio@40e0000c { 92*724ba675SRob Herring reg = <0x40e0000c 0x4>; 93*724ba675SRob Herring }; 94*724ba675SRob Herring }; 95*724ba675SRob Herring 96*724ba675SRob Herring ffuart: serial@40100000 { 97*724ba675SRob Herring compatible = "mrvl,pxa-uart"; 98*724ba675SRob Herring reg = <0x40100000 0x30>; 99*724ba675SRob Herring interrupts = <22>; 100*724ba675SRob Herring clocks = <&clks CLK_FFUART>; 101*724ba675SRob Herring status = "disabled"; 102*724ba675SRob Herring }; 103*724ba675SRob Herring 104*724ba675SRob Herring btuart: serial@40200000 { 105*724ba675SRob Herring compatible = "mrvl,pxa-uart"; 106*724ba675SRob Herring reg = <0x40200000 0x30>; 107*724ba675SRob Herring interrupts = <21>; 108*724ba675SRob Herring clocks = <&clks CLK_BTUART>; 109*724ba675SRob Herring status = "disabled"; 110*724ba675SRob Herring }; 111*724ba675SRob Herring 112*724ba675SRob Herring stuart: serial@40700000 { 113*724ba675SRob Herring compatible = "mrvl,pxa-uart"; 114*724ba675SRob Herring reg = <0x40700000 0x30>; 115*724ba675SRob Herring interrupts = <20>; 116*724ba675SRob Herring clocks = <&clks CLK_STUART>; 117*724ba675SRob Herring status = "disabled"; 118*724ba675SRob Herring }; 119*724ba675SRob Herring 120*724ba675SRob Herring hwuart: serial@41600000 { 121*724ba675SRob Herring compatible = "mrvl,pxa-uart"; 122*724ba675SRob Herring reg = <0x41600000 0x30>; 123*724ba675SRob Herring interrupts = <7>; 124*724ba675SRob Herring status = "disabled"; 125*724ba675SRob Herring }; 126*724ba675SRob Herring 127*724ba675SRob Herring pxai2c1: i2c@40301680 { 128*724ba675SRob Herring compatible = "mrvl,pxa-i2c"; 129*724ba675SRob Herring reg = <0x40301680 0x30>; 130*724ba675SRob Herring interrupts = <18>; 131*724ba675SRob Herring clocks = <&clks CLK_I2C>; 132*724ba675SRob Herring #address-cells = <0x1>; 133*724ba675SRob Herring #size-cells = <0>; 134*724ba675SRob Herring status = "disabled"; 135*724ba675SRob Herring }; 136*724ba675SRob Herring 137*724ba675SRob Herring mmc0: mmc@41100000 { 138*724ba675SRob Herring compatible = "marvell,pxa-mmc"; 139*724ba675SRob Herring reg = <0x41100000 0x1000>; 140*724ba675SRob Herring interrupts = <23>; 141*724ba675SRob Herring clocks = <&clks CLK_MMC>; 142*724ba675SRob Herring dmas = <&pdma 21 3 143*724ba675SRob Herring &pdma 22 3>; 144*724ba675SRob Herring dma-names = "rx", "tx"; 145*724ba675SRob Herring status = "disabled"; 146*724ba675SRob Herring }; 147*724ba675SRob Herring 148*724ba675SRob Herring rtc@40900000 { 149*724ba675SRob Herring compatible = "marvell,pxa-rtc"; 150*724ba675SRob Herring reg = <0x40900000 0x3c>; 151*724ba675SRob Herring interrupts = <30 31>; 152*724ba675SRob Herring }; 153*724ba675SRob Herring 154*724ba675SRob Herring lcdc: lcd-controller@40500000 { 155*724ba675SRob Herring compatible = "marvell,pxa2xx-lcdc"; 156*724ba675SRob Herring reg = <0x44000000 0x10000>; 157*724ba675SRob Herring interrupts = <17>; 158*724ba675SRob Herring clocks = <&clks CLK_LCD>; 159*724ba675SRob Herring status = "disabled"; 160*724ba675SRob Herring }; 161*724ba675SRob Herring }; 162*724ba675SRob Herring}; 163