1// SPDX-License-Identifier: (GPL-2.0+ OR X11) 2/* 3 * Copyright (C) 2015 Marek Vasut <marex@denx.de> 4 */ 5 6#include "socfpga_cyclone5.dtsi" 7#include <dt-bindings/gpio/gpio.h> 8#include <dt-bindings/input/input.h> 9 10/ { 11 model = "samtec VIN|ING FPGA"; 12 compatible = "samtec,vining", "altr,socfpga-cyclone5", "altr,socfpga"; 13 14 chosen { 15 bootargs = "earlyprintk"; 16 stdout-path = "serial0:115200n8"; 17 }; 18 19 memory@0 { 20 name = "memory"; 21 device_type = "memory"; 22 reg = <0x0 0x40000000>; /* 1GB */ 23 }; 24 25 aliases { 26 /* 27 * This allow the ethaddr uboot environment variable contents 28 * to be added to the gmac1 device tree blob. 29 */ 30 ethernet0 = &gmac1; 31 ethernet1 = &gmac0; 32 }; 33 34 gpio-keys { 35 compatible = "gpio-keys"; 36 37 hps_temp0 { 38 label = "BTN_0"; /* TEMP_OS */ 39 gpios = <&portc 18 GPIO_ACTIVE_LOW>; /* HPS_GPI5 */ 40 linux,code = <BTN_0>; 41 }; 42 43 hps_hkey0 { 44 label = "GP_SWITCH"; /* GP_SWITCH */ 45 gpios = <&portc 19 GPIO_ACTIVE_LOW>; /* HPS_GPI6 */ 46 linux,code = <BTN_1>; 47 }; 48 49 hps_hkey1 { 50 label = "RESET_SWITCH"; /* RESET_SWITCH */ 51 gpios = <&portc 20 GPIO_ACTIVE_LOW>; /* HPS_GPI7 */ 52 linux,code = <BTN_2>; 53 }; 54 55 hps_hkey2 { 56 label = "POWER_DOWN"; /* POWER_DOWN */ 57 gpios = <&portc 4 GPIO_ACTIVE_LOW>; /* HPS_GPIO62 */ 58 linux,code = <KEY_POWER>; 59 }; 60 61 hps_hkey3 { 62 label = "SENSE"; /* SENSE */ 63 gpios = <&porta 9 GPIO_ACTIVE_LOW>; /* HPS_GPIO9 */ 64 linux,code = <BTN_3>; 65 }; 66 }; 67 68 regulator-usb-nrst { 69 compatible = "regulator-fixed"; 70 regulator-name = "usb_nrst"; 71 regulator-min-microvolt = <5000000>; 72 regulator-max-microvolt = <5000000>; 73 gpio = <&portb 5 GPIO_ACTIVE_HIGH>; 74 startup-delay-us = <70000>; 75 enable-active-high; 76 regulator-always-on; 77 }; 78}; 79 80&gmac1 { 81 status = "okay"; 82 phy-mode = "rgmii"; 83 phy-handle = <&phy1>; 84 85 snps,reset-gpio = <&porta 0 GPIO_ACTIVE_LOW>; 86 snps,reset-active-low; 87 snps,reset-delays-us = <10000 10000 10000>; 88 89 mdio0 { 90 #address-cells = <1>; 91 #size-cells = <0>; 92 compatible = "snps,dwmac-mdio"; 93 phy1: ethernet-phy@1 { 94 reg = <1>; 95 rxd0-skew-ps = <0>; 96 rxd1-skew-ps = <0>; 97 rxd2-skew-ps = <0>; 98 rxd3-skew-ps = <0>; 99 txd0-skew-ps = <0>; 100 txd1-skew-ps = <0>; 101 txd2-skew-ps = <0>; 102 txd3-skew-ps = <0>; 103 txen-skew-ps = <0>; 104 txc-skew-ps = <1860>; 105 rxdv-skew-ps = <0>; 106 rxc-skew-ps = <1860>; 107 }; 108 }; 109}; 110 111&gpio0 { /* GPIO 0..29 */ 112 status = "okay"; 113}; 114 115&gpio1 { /* GPIO 30..57 */ 116 status = "okay"; 117}; 118 119&gpio2 { /* GPIO 58..66 (HLGPI 0..13 at offset 13) */ 120 status = "okay"; 121}; 122 123&i2c0 { 124 status = "okay"; 125 126 gpio: pca9557@1f { 127 compatible = "nxp,pca9557"; 128 reg = <0x1f>; 129 gpio-controller; 130 #gpio-cells = <2>; 131 }; 132 133 temp: temperature-sensor@48 { 134 compatible = "national,lm75"; 135 reg = <0x48>; 136 }; 137 138 at24@50 { 139 compatible = "atmel,24c01"; 140 pagesize = <8>; 141 reg = <0x50>; 142 }; 143 144 i2c-mux@70 { 145 compatible = "nxp,pca9548"; 146 #address-cells = <1>; 147 #size-cells = <0>; 148 reg = <0x70>; 149 150 i2c@0 { 151 #address-cells = <1>; 152 #size-cells = <0>; 153 reg = <0>; 154 }; 155 156 i2c@1 { 157 #address-cells = <1>; 158 #size-cells = <0>; 159 reg = <1>; 160 }; 161 162 i2c@2 { 163 #address-cells = <1>; 164 #size-cells = <0>; 165 reg = <2>; 166 }; 167 168 i2c@3 { 169 #address-cells = <1>; 170 #size-cells = <0>; 171 reg = <3>; 172 }; 173 174 i2c@4 { 175 #address-cells = <1>; 176 #size-cells = <0>; 177 reg = <4>; 178 }; 179 180 i2c@5 { 181 #address-cells = <1>; 182 #size-cells = <0>; 183 reg = <5>; 184 }; 185 186 i2c@6 { /* Backplane EEPROM */ 187 #address-cells = <1>; 188 #size-cells = <0>; 189 reg = <6>; 190 eeprom@51 { 191 compatible = "atmel,24c01"; 192 pagesize = <8>; 193 reg = <0x51>; 194 }; 195 }; 196 197 i2c@7 { /* Power board EEPROM */ 198 #address-cells = <1>; 199 #size-cells = <0>; 200 reg = <7>; 201 eeprom@51 { 202 compatible = "atmel,24c01"; 203 pagesize = <8>; 204 reg = <0x51>; 205 }; 206 }; 207 }; 208}; 209 210&i2c1 { 211 status = "okay"; 212 clock-frequency = <100000>; 213 214 at24@50 { 215 compatible = "atmel,24c02"; 216 pagesize = <8>; 217 reg = <0x50>; 218 }; 219}; 220 221&qspi { 222 status = "okay"; 223 224 flash@0 { 225 #address-cells = <1>; 226 #size-cells = <1>; 227 compatible = "micron,n25q128", "jedec,spi-nor"; 228 reg = <0>; /* chip select */ 229 spi-max-frequency = <100000000>; 230 m25p,fast-read; 231 232 cdns,read-delay = <4>; 233 cdns,tshsl-ns = <50>; 234 cdns,tsd2d-ns = <50>; 235 cdns,tchsh-ns = <4>; 236 cdns,tslch-ns = <4>; 237 }; 238 239 flash@1 { 240 #address-cells = <1>; 241 #size-cells = <1>; 242 compatible = "micron,mt25qu02g", "jedec,spi-nor"; 243 reg = <1>; /* chip select */ 244 spi-max-frequency = <100000000>; 245 m25p,fast-read; 246 247 cdns,read-delay = <4>; 248 cdns,tshsl-ns = <50>; 249 cdns,tsd2d-ns = <50>; 250 cdns,tchsh-ns = <4>; 251 cdns,tslch-ns = <4>; 252 }; 253}; 254 255&usb0 { 256 dr_mode = "host"; 257 status = "okay"; 258}; 259 260&usb1 { 261 dr_mode = "peripheral"; 262 status = "okay"; 263}; 264