1/* 2 * Copyright (C) 2014 Antoine Ténart <antoine.tenart@free-electrons.com> 3 * 4 * This file is dual-licensed: you can use it either under the terms 5 * of the GPL or the X11 license, at your option. Note that this dual 6 * licensing only applies to this file, and not this project as a 7 * whole. 8 * 9 * a) This file is licensed under the terms of the GNU General Public 10 * License version 2. This program is licensed "as is" without any 11 * warranty of any kind, whether express or implied. 12 * 13 * Or, alternatively, 14 * 15 * b) Permission is hereby granted, free of charge, to any person 16 * obtaining a copy of this software and associated documentation 17 * files (the "Software"), to deal in the Software without 18 * restriction, including without limitation the rights to use, 19 * copy, modify, merge, publish, distribute, sublicense, and/or 20 * sell copies of the Software, and to permit persons to whom the 21 * Software is furnished to do so, subject to the following 22 * conditions: 23 * 24 * The above copyright notice and this permission notice shall be 25 * included in all copies or substantial portions of the Software. 26 * 27 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 28 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 29 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 30 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 31 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 32 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 33 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 34 * OTHER DEALINGS IN THE SOFTWARE. 35 */ 36 37/dts-v1/; 38 39#include <dt-bindings/gpio/gpio.h> 40#include "berlin2q.dtsi" 41 42/ { 43 model = "Marvell BG2-Q DMP"; 44 compatible = "marvell,berlin2q-dmp", "marvell,berlin2q", "marvell,berlin"; 45 46 memory@0 { 47 device_type = "memory"; 48 reg = <0x00000000 0x80000000>; 49 }; 50 51 chosen { 52 bootargs = "earlyprintk"; 53 stdout-path = "serial0:115200n8"; 54 }; 55 56 regulators { 57 compatible = "simple-bus"; 58 #address-cells = <1>; 59 #size-cells = <0>; 60 61 reg_usb0_vbus: regulator_usb0 { 62 compatible = "regulator-fixed"; 63 regulator-name = "usb0_vbus"; 64 regulator-min-microvolt = <5000000>; 65 regulator-max-microvolt = <5000000>; 66 gpio = <&portb 8 GPIO_ACTIVE_HIGH>; 67 enable-active-high; 68 }; 69 70 reg_usb1_vbus: regulator_usb1 { 71 compatible = "regulator-fixed"; 72 regulator-name = "usb1_vbus"; 73 regulator-min-microvolt = <5000000>; 74 regulator-max-microvolt = <5000000>; 75 gpio = <&portb 10 GPIO_ACTIVE_HIGH>; 76 enable-active-high; 77 }; 78 79 reg_usb2_vbus: regulator_usb2 { 80 compatible = "regulator-fixed"; 81 regulator-name = "usb2_vbus"; 82 regulator-min-microvolt = <5000000>; 83 regulator-max-microvolt = <5000000>; 84 gpio = <&portb 12 GPIO_ACTIVE_HIGH>; 85 enable-active-high; 86 }; 87 88 reg_sdio1_vmmc: regulator_sdio1_vmmc { 89 compatible = "regulator-fixed"; 90 regulator-min-microvolt = <3300000>; 91 regulator-max-microvolt = <3300000>; 92 regulator-name = "sdio1_vmmc"; 93 enable-active-high; 94 regulator-boot-on; 95 gpio = <&portb 21 GPIO_ACTIVE_HIGH>; 96 }; 97 98 reg_sdio1_vqmmc: regulator_sido1_vqmmc { 99 compatible = "regulator-gpio"; 100 regulator-min-microvolt = <1800000>; 101 regulator-max-microvolt = <3300000>; 102 regulator-name = "sdio1_vqmmc"; 103 regulator-type = "voltage"; 104 enable-active-high; 105 gpios = <&portb 16 GPIO_ACTIVE_HIGH>; 106 states = <3300000 0x1 107 1800000 0x0>; 108 }; 109 }; 110}; 111 112&soc_pinctrl { 113 sd1gpio_pmux: sd1pwr-pmux { 114 groups = "G23", "G32"; 115 function = "gpio"; 116 }; 117}; 118 119&sdhci1 { 120 vmmc-supply = <®_sdio1_vmmc>; 121 vqmmc-supply = <®_sdio1_vqmmc>; 122 cd-gpios = <&portc 30 GPIO_ACTIVE_LOW>; 123 wp-gpios = <&portd 0 GPIO_ACTIVE_HIGH>; 124 pinctrl-0 = <&sd1gpio_pmux>, <&sd1_pmux>; 125 pinctrl-names = "default"; 126 status = "okay"; 127}; 128 129&sdhci2 { 130 bus-width = <8>; 131 non-removable; 132 status = "okay"; 133}; 134 135&i2c0 { 136 status = "okay"; 137}; 138 139&i2c2 { 140 status = "okay"; 141}; 142 143&uart0 { 144 status = "okay"; 145}; 146 147&usb_phy0 { 148 status = "okay"; 149}; 150 151&usb_phy2 { 152 status = "okay"; 153}; 154 155&usb0 { 156 vbus-supply = <®_usb0_vbus>; 157 status = "okay"; 158}; 159 160&usb2 { 161 vbus-supply = <®_usb2_vbus>; 162 status = "okay"; 163}; 164 165ð0 { 166 status = "okay"; 167}; 168 169&sata0 { 170 status = "okay"; 171}; 172 173&sata_phy { 174 status = "okay"; 175}; 176