1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) << 2 /* 1 /* 3 * Device Tree file for Marvell Armada 3720 de 2 * Device Tree file for Marvell Armada 3720 development board 4 * (DB-88F3720-DDR3) 3 * (DB-88F3720-DDR3) 5 * Copyright (C) 2016 Marvell 4 * Copyright (C) 2016 Marvell 6 * 5 * 7 * Gregory CLEMENT <gregory.clement@free-electr 6 * Gregory CLEMENT <gregory.clement@free-electrons.com> 8 * 7 * >> 8 * This file is dual-licensed: you can use it either under the terms >> 9 * of the GPL or the X11 license, at your option. Note that this dual >> 10 * licensing only applies to this file, and not this project as a >> 11 * whole. >> 12 * >> 13 * a) This file is free software; you can redistribute it and/or >> 14 * modify it under the terms of the GNU General Public License as >> 15 * published by the Free Software Foundation; either version 2 of the >> 16 * License, or (at your option) any later version. >> 17 * >> 18 * This file is distributed in the hope that it will be useful, >> 19 * but WITHOUT ANY WARRANTY; without even the implied warranty of >> 20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the >> 21 * GNU General Public License for more details. >> 22 * >> 23 * Or, alternatively, >> 24 * >> 25 * b) Permission is hereby granted, free of charge, to any person >> 26 * obtaining a copy of this software and associated documentation >> 27 * files (the "Software"), to deal in the Software without >> 28 * restriction, including without limitation the rights to use, >> 29 * copy, modify, merge, publish, distribute, sublicense, and/or >> 30 * sell copies of the Software, and to permit persons to whom the >> 31 * Software is furnished to do so, subject to the following >> 32 * conditions: >> 33 * >> 34 * The above copyright notice and this permission notice shall be >> 35 * included in all copies or substantial portions of the Software. >> 36 * >> 37 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, >> 38 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES >> 39 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND >> 40 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT >> 41 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, >> 42 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING >> 43 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR >> 44 * OTHER DEALINGS IN THE SOFTWARE. >> 45 * 9 * This file is compatible with the version 1. 46 * This file is compatible with the version 1.4 and the version 2.0 of 10 * the board, however the CON numbers are diff 47 * the board, however the CON numbers are different between the 2 11 * version 48 * version 12 */ 49 */ 13 50 14 /dts-v1/; 51 /dts-v1/; 15 52 16 #include <dt-bindings/gpio/gpio.h> 53 #include <dt-bindings/gpio/gpio.h> 17 #include "armada-372x.dtsi" 54 #include "armada-372x.dtsi" 18 55 19 / { 56 / { 20 model = "Marvell Armada 3720 Developme 57 model = "Marvell Armada 3720 Development Board DB-88F3720-DDR3"; 21 compatible = "marvell,armada-3720-db", !! 58 compatible = "marvell,armada-3720-db", "marvell,armada3720", "marvell,armada3710"; 22 59 23 chosen { 60 chosen { 24 stdout-path = "serial0:115200n 61 stdout-path = "serial0:115200n8"; 25 }; 62 }; 26 63 27 memory@0 { 64 memory@0 { 28 device_type = "memory"; 65 device_type = "memory"; 29 reg = <0x00000000 0x00000000 0 66 reg = <0x00000000 0x00000000 0x00000000 0x20000000>; 30 }; 67 }; 31 68 32 exp_usb3_vbus: usb3-vbus { 69 exp_usb3_vbus: usb3-vbus { 33 compatible = "regulator-fixed" 70 compatible = "regulator-fixed"; 34 regulator-name = "usb3-vbus"; 71 regulator-name = "usb3-vbus"; 35 regulator-min-microvolt = <500 72 regulator-min-microvolt = <5000000>; 36 regulator-max-microvolt = <500 73 regulator-max-microvolt = <5000000>; 37 enable-active-high; 74 enable-active-high; 38 regulator-always-on; 75 regulator-always-on; 39 gpio = <&gpio_exp 1 GPIO_ACTIV 76 gpio = <&gpio_exp 1 GPIO_ACTIVE_HIGH>; 40 }; 77 }; 41 78 42 usb3_phy: usb3-phy { 79 usb3_phy: usb3-phy { 43 compatible = "usb-nop-xceiv"; 80 compatible = "usb-nop-xceiv"; 44 vcc-supply = <&exp_usb3_vbus>; 81 vcc-supply = <&exp_usb3_vbus>; 45 }; 82 }; 46 83 47 vcc_sd_reg1: regulator { 84 vcc_sd_reg1: regulator { 48 compatible = "regulator-gpio"; 85 compatible = "regulator-gpio"; 49 regulator-name = "vcc_sd1"; 86 regulator-name = "vcc_sd1"; 50 regulator-min-microvolt = <180 87 regulator-min-microvolt = <1800000>; 51 regulator-max-microvolt = <330 88 regulator-max-microvolt = <3300000>; 52 regulator-boot-on; 89 regulator-boot-on; 53 90 54 gpios = <&gpiosb 23 GPIO_ACTIV 91 gpios = <&gpiosb 23 GPIO_ACTIVE_HIGH>; 55 gpios-states = <0>; 92 gpios-states = <0>; 56 states = <1800000 0x1 93 states = <1800000 0x1 57 3300000 0x0>; 94 3300000 0x0>; 58 enable-active-high; 95 enable-active-high; 59 }; 96 }; 60 97 61 vcc_sd_reg2: regulator-vmcc { 98 vcc_sd_reg2: regulator-vmcc { 62 compatible = "regulator-fixed" 99 compatible = "regulator-fixed"; 63 regulator-name = "vcc_sd2"; 100 regulator-name = "vcc_sd2"; 64 regulator-min-microvolt = <330 101 regulator-min-microvolt = <3300000>; 65 regulator-max-microvolt = <330 102 regulator-max-microvolt = <3300000>; 66 regulator-boot-on; 103 regulator-boot-on; 67 enable-active-high; 104 enable-active-high; 68 gpio = <&gpio_exp 4 GPIO_ACTIV 105 gpio = <&gpio_exp 4 GPIO_ACTIVE_HIGH>; 69 }; 106 }; 70 }; 107 }; 71 108 72 /* Gigabit module on CON19(V2.0)/CON21(V1.4) * 109 /* Gigabit module on CON19(V2.0)/CON21(V1.4) */ 73 ð0 { 110 ð0 { 74 pinctrl-names = "default"; 111 pinctrl-names = "default"; 75 pinctrl-0 = <&rgmii_pins>; 112 pinctrl-0 = <&rgmii_pins>; 76 phy-mode = "rgmii-id"; 113 phy-mode = "rgmii-id"; 77 phy = <&phy0>; 114 phy = <&phy0>; 78 status = "okay"; 115 status = "okay"; 79 }; 116 }; 80 117 81 /* Gigabit module on CON18(V2.0)/CON20(V1.4) * 118 /* Gigabit module on CON18(V2.0)/CON20(V1.4) */ 82 ð1 { 119 ð1 { 83 phy-mode = "sgmii"; 120 phy-mode = "sgmii"; 84 phy = <&phy1>; 121 phy = <&phy1>; 85 status = "okay"; 122 status = "okay"; 86 }; 123 }; 87 124 88 &i2c0 { 125 &i2c0 { 89 pinctrl-names = "default"; 126 pinctrl-names = "default"; 90 pinctrl-0 = <&i2c1_pins>; 127 pinctrl-0 = <&i2c1_pins>; 91 status = "okay"; 128 status = "okay"; 92 129 93 gpio_exp: pca9555@22 { 130 gpio_exp: pca9555@22 { 94 compatible = "nxp,pca9555"; 131 compatible = "nxp,pca9555"; 95 gpio-controller; 132 gpio-controller; 96 #gpio-cells = <2>; 133 #gpio-cells = <2>; 97 134 98 reg = <0x22>; 135 reg = <0x22>; 99 /* 136 /* 100 * IO0_0: PWR_EN_USB2 IO1_0: 137 * IO0_0: PWR_EN_USB2 IO1_0: PWR_EN_VTT 101 * IO0_1: PWR_EN_USB23 IO1_1: 138 * IO0_1: PWR_EN_USB23 IO1_1: MPCIE_WDISABLE 102 * IO0_2: PWR_EN_SATA IO1_2: 139 * IO0_2: PWR_EN_SATA IO1_2: RGMII_DEV_RSTN 103 * IO0_3: PWR_EN_PCIE IO1_3: 140 * IO0_3: PWR_EN_PCIE IO1_3: SGMII_DEV_RSTN 104 * IO0_4: PWR_EN_SD 141 * IO0_4: PWR_EN_SD 105 * IO0_5: PWR_EN_EMMC 142 * IO0_5: PWR_EN_EMMC 106 * IO0_6: PWR_EN_RGMII IO1_6: 143 * IO0_6: PWR_EN_RGMII IO1_6: SATA_USB3.0_SEL 107 * IO0_7: PWR_EN_SGMII IO1_7: 144 * IO0_7: PWR_EN_SGMII IO1_7: PWR_MCI_PS 108 */ 145 */ 109 }; 146 }; 110 147 111 rtc@68 { 148 rtc@68 { 112 /* PT7C4337A from pericom full 149 /* PT7C4337A from pericom fully compatible with the ds1337 */ 113 compatible = "dallas,ds1337"; 150 compatible = "dallas,ds1337"; 114 reg = <0x68>; 151 reg = <0x68>; 115 }; 152 }; 116 }; 153 }; 117 154 118 &mdio { 155 &mdio { 119 status = "okay"; 156 status = "okay"; 120 phy0: ethernet-phy@0 { 157 phy0: ethernet-phy@0 { 121 reg = <0>; 158 reg = <0>; 122 }; 159 }; 123 160 124 phy1: ethernet-phy@1 { 161 phy1: ethernet-phy@1 { 125 reg = <1>; 162 reg = <1>; 126 }; 163 }; 127 }; 164 }; 128 165 129 /* CON15(V2.0)/CON17(V1.4) : PCIe / CON15(V2.0 166 /* CON15(V2.0)/CON17(V1.4) : PCIe / CON15(V2.0)/CON12(V1.4) :mini-PCIe */ 130 &pcie0 { 167 &pcie0 { 131 pinctrl-names = "default"; << 132 pinctrl-0 = <&pcie_reset_pins &pcie_cl << 133 reset-gpios = <&gpiosb 3 GPIO_ACTIVE_L << 134 status = "okay"; 168 status = "okay"; 135 }; 169 }; 136 170 137 /* CON3 */ 171 /* CON3 */ 138 &sata { 172 &sata { 139 status = "okay"; 173 status = "okay"; 140 }; 174 }; 141 175 142 &sdhci0 { 176 &sdhci0 { 143 non-removable; 177 non-removable; 144 bus-width = <8>; 178 bus-width = <8>; 145 mmc-ddr-1_8v; 179 mmc-ddr-1_8v; 146 mmc-hs400-1_8v; 180 mmc-hs400-1_8v; 147 marvell,pad-type = "fixed-1-8v"; 181 marvell,pad-type = "fixed-1-8v"; 148 status = "okay"; 182 status = "okay"; 149 }; 183 }; 150 184 151 /* SD slot module on CON14(V2.0)/CON15(V1.4) * 185 /* SD slot module on CON14(V2.0)/CON15(V1.4) */ 152 &sdhci1 { 186 &sdhci1 { 153 wp-inverted; 187 wp-inverted; 154 cd-gpios = <&gpiosb 2 GPIO_ACTIVE_LOW> 188 cd-gpios = <&gpiosb 2 GPIO_ACTIVE_LOW>; 155 bus-width = <4>; 189 bus-width = <4>; 156 marvell,pad-type = "sd"; 190 marvell,pad-type = "sd"; 157 vqmmc-supply = <&vcc_sd_reg1>; 191 vqmmc-supply = <&vcc_sd_reg1>; 158 vmmc-supply = <&vcc_sd_reg2>; 192 vmmc-supply = <&vcc_sd_reg2>; 159 status = "okay"; 193 status = "okay"; 160 }; 194 }; 161 195 162 &spi0 { 196 &spi0 { 163 status = "okay"; 197 status = "okay"; 164 pinctrl-names = "default"; 198 pinctrl-names = "default"; 165 pinctrl-0 = <&spi_quad_pins>; 199 pinctrl-0 = <&spi_quad_pins>; 166 200 167 flash@0 { !! 201 m25p80@0 { 168 compatible = "jedec,spi-nor"; 202 compatible = "jedec,spi-nor"; 169 reg = <0>; 203 reg = <0>; 170 spi-max-frequency = <108000000 204 spi-max-frequency = <108000000>; 171 spi-rx-bus-width = <4>; 205 spi-rx-bus-width = <4>; 172 spi-tx-bus-width = <4>; 206 spi-tx-bus-width = <4>; 173 207 174 partitions { 208 partitions { 175 compatible = "fixed-pa 209 compatible = "fixed-partitions"; 176 #address-cells = <1>; 210 #address-cells = <1>; 177 #size-cells = <1>; 211 #size-cells = <1>; 178 partition@0 { 212 partition@0 { 179 label = "bootl 213 label = "bootloader"; 180 reg = <0x0 0x2 214 reg = <0x0 0x200000>; 181 }; 215 }; 182 partition@200000 { 216 partition@200000 { 183 label = "U-boo 217 label = "U-boot Env"; 184 reg = <0x20000 218 reg = <0x200000 0x10000>; 185 }; 219 }; 186 partition@210000 { 220 partition@210000 { 187 label = "Linux 221 label = "Linux"; 188 reg = <0x21000 222 reg = <0x210000 0xDF0000>; 189 }; 223 }; 190 }; 224 }; 191 }; 225 }; 192 }; 226 }; 193 227 194 /* 228 /* 195 * Exported on the micro USB connector CON30(V 229 * Exported on the micro USB connector CON30(V2.0)/CON32(V1.4) through 196 * an FTDI (also on CON24(V2.0)/CON26(V1.4)). 230 * an FTDI (also on CON24(V2.0)/CON26(V1.4)). 197 */ 231 */ 198 &uart0 { 232 &uart0 { 199 pinctrl-names = "default"; 233 pinctrl-names = "default"; 200 pinctrl-0 = <&uart1_pins>; 234 pinctrl-0 = <&uart1_pins>; 201 status = "okay"; 235 status = "okay"; 202 }; 236 }; 203 237 204 /* CON26(V2.0)/CON28(V1.4) */ 238 /* CON26(V2.0)/CON28(V1.4) */ 205 &uart1 { 239 &uart1 { 206 pinctrl-names = "default"; 240 pinctrl-names = "default"; 207 pinctrl-0 = <&uart2_pins>; 241 pinctrl-0 = <&uart2_pins>; 208 status = "okay"; 242 status = "okay"; 209 }; 243 }; 210 244 211 /* CON27(V2.0)/CON29(V1.4) */ 245 /* CON27(V2.0)/CON29(V1.4) */ 212 &usb2 { 246 &usb2 { 213 status = "okay"; 247 status = "okay"; 214 }; 248 }; 215 249 216 /* CON29(V2.0)/CON31(V1.4) */ 250 /* CON29(V2.0)/CON31(V1.4) */ 217 &usb3 { 251 &usb3 { 218 status = "okay"; 252 status = "okay"; 219 usb-phy = <&usb3_phy>; 253 usb-phy = <&usb3_phy>; 220 }; 254 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.