1/* 2 * Device Tree file for OpenBlocks A7 board 3 * 4 * Copyright (C) 2013 Free Electrons 5 * 6 * Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 7 * 8 * This file is licensed under the terms of the GNU General Public 9 * License version 2. This program is licensed "as is" without any 10 * warranty of any kind, whether express or implied. 11 */ 12 13/dts-v1/; 14 15#include "kirkwood.dtsi" 16#include "kirkwood-6282.dtsi" 17 18/ { 19 model = "Plat'Home OpenBlocksA7"; 20 compatible = "plathome,openblocks-a7", "marvell,kirkwood-88f6283", "marvell,kirkwood"; 21 22 memory { 23 device_type = "memory"; 24 reg = <0x00000000 0x40000000>; /* 1 GB */ 25 }; 26 27 chosen { 28 bootargs = "console=ttyS0,115200n8 earlyprintk"; 29 stdout-path = &uart0; 30 }; 31 32 ocp@f1000000 { 33 serial@12000 { 34 status = "okay"; 35 }; 36 37 serial@12100 { 38 status = "okay"; 39 }; 40 41 sata@80000 { 42 nr-ports = <1>; 43 status = "okay"; 44 }; 45 46 i2c@11100 { 47 status = "okay"; 48 49 s24c02: s24c02@50 { 50 compatible = "atmel,24c02"; 51 reg = <0x50>; 52 }; 53 }; 54 55 pinctrl: pin-controller@10000 { 56 pinctrl-0 = <&pmx_dip_switches &pmx_gpio_header 57 &pmx_gpio_header_gpo>; 58 pinctrl-names = "default"; 59 60 pmx_uart0: pmx-uart0 { 61 marvell,pins = "mpp10", "mpp11", "mpp15", 62 "mpp16"; 63 marvell,function = "uart0"; 64 }; 65 66 pmx_uart1: pmx-uart1 { 67 marvell,pins = "mpp13", "mpp14", "mpp8", 68 "mpp9"; 69 marvell,function = "uart1"; 70 }; 71 72 pmx_sysrst: pmx-sysrst { 73 marvell,pins = "mpp6"; 74 marvell,function = "sysrst"; 75 }; 76 77 pmx_dip_switches: pmx-dip-switches { 78 marvell,pins = "mpp44", "mpp45", "mpp46", "mpp47"; 79 marvell,function = "gpio"; 80 }; 81 82 /* 83 * Accessible on connector J202. The MPP 84 * listed below are pin 1-7, pin 8 is unused, 85 * pin 9 is external reset input and pin 10 is 86 * ground. 87 */ 88 pmx_gpio_header: pmx-gpio-header { 89 marvell,pins = "mpp17", "mpp29", "mpp28", 90 "mpp35", "mpp34", "mpp40"; 91 marvell,function = "gpio"; 92 }; 93 94 pmx_gpio_header_gpo: pxm-gpio-header-gpo { 95 marvell,pins = "mpp7"; 96 marvell,function = "gpo"; 97 }; 98 99 pmx_gpio_init: pmx-init { 100 marvell,pins = "mpp38"; 101 marvell,function = "gpio"; 102 }; 103 104 pmx_usb_oc: pmx-usb-oc { 105 marvell,pins = "mpp39"; 106 marvell,function = "gpio"; 107 }; 108 109 pmx_leds: pmx-leds { 110 marvell,pins = "mpp41", "mpp42", "mpp43"; 111 marvell,function = "gpio"; 112 }; 113 }; 114 }; 115 116 gpio-leds { 117 compatible = "gpio-leds"; 118 pinctrl-0 = <&pmx_leds>; 119 pinctrl-names = "default"; 120 121 led-red { 122 label = "obsa7:red:stat"; 123 gpios = <&gpio1 9 GPIO_ACTIVE_LOW>; 124 }; 125 126 led-green { 127 label = "obsa7:green:stat"; 128 gpios = <&gpio1 10 GPIO_ACTIVE_LOW>; 129 }; 130 131 led-yellow { 132 label = "obsa7:yellow:stat"; 133 gpios = <&gpio1 11 GPIO_ACTIVE_LOW>; 134 }; 135 }; 136 137 gpio_keys { 138 compatible = "gpio-keys"; 139 pinctrl-0 = <&pmx_gpio_init>; 140 pinctrl-names = "default"; 141 #address-cells = <1>; 142 #size-cells = <0>; 143 144 button { 145 label = "Init Button"; 146 linux,code = <KEY_POWER>; 147 gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>; 148 }; 149 }; 150}; 151 152&nand { 153 chip-delay = <25>; 154 status = "okay"; 155 156 partition@0 { 157 label = "uboot"; 158 reg = <0x0 0x1c0000>; 159 }; 160 161 partition@1c0000 { 162 label = "env"; 163 reg = <0x1c0000 0x2c0000>; 164 }; 165 166 partition@480000 { 167 label = "test"; 168 reg = <0x480000 0x160000>; 169 }; 170 171 partition@5e0000 { 172 label = "conf"; 173 reg = <0x5e0000 0x540000>; 174 }; 175 176 partition@b20000 { 177 label = "linux"; 178 reg = <0xb20000 0x3d40000>; 179 }; 180 181 partition@4860000 { 182 label = "user"; 183 reg = <0x4860000 0xb7a0000>; 184 }; 185}; 186 187&mdio { 188 status = "okay"; 189 190 ethphy0: ethernet-phy@0 { 191 reg = <0>; 192 }; 193 194 ethphy1: ethernet-phy@1 { 195 reg = <1>; 196 }; 197}; 198 199ð0 { 200 status = "okay"; 201 ethernet0-port@0 { 202 phy-handle = <ðphy0>; 203 }; 204}; 205 206ð1 { 207 status = "okay"; 208 ethernet1-port@0 { 209 phy-handle = <ðphy1>; 210 }; 211}; 212