1// SPDX-License-Identifier: (GPL-2.0 OR MIT) 2/* Copyright (c) 2020 SiFive, Inc */ 3 4#include "fu740-c000.dtsi" 5#include <dt-bindings/gpio/gpio.h> 6#include <dt-bindings/interrupt-controller/irq.h> 7 8/* Clock frequency (in Hz) of the PCB crystal for rtcclk */ 9#define RTCCLK_FREQ 1000000 10 11/ { 12 model = "SiFive HiFive Unmatched A00"; 13 compatible = "sifive,hifive-unmatched-a00", "sifive,fu740-c000", 14 "sifive,fu740"; 15 16 chosen { 17 stdout-path = "serial0"; 18 }; 19 20 cpus { 21 timebase-frequency = <RTCCLK_FREQ>; 22 }; 23 24 memory@80000000 { 25 device_type = "memory"; 26 reg = <0x0 0x80000000 0x4 0x00000000>; 27 }; 28 29 hfclk: hfclk { 30 #clock-cells = <0>; 31 compatible = "fixed-clock"; 32 clock-frequency = <26000000>; 33 clock-output-names = "hfclk"; 34 }; 35 36 rtcclk: rtcclk { 37 #clock-cells = <0>; 38 compatible = "fixed-clock"; 39 clock-frequency = <RTCCLK_FREQ>; 40 clock-output-names = "rtcclk"; 41 }; 42}; 43 44&uart0 { 45 status = "okay"; 46}; 47 48&uart1 { 49 status = "okay"; 50}; 51 52&i2c0 { 53 status = "okay"; 54 55 temperature-sensor@4c { 56 compatible = "ti,tmp451"; 57 reg = <0x4c>; 58 interrupt-parent = <&gpio>; 59 interrupts = <6 IRQ_TYPE_LEVEL_LOW>; 60 }; 61 62 eeprom@54 { 63 compatible = "microchip,24c02", "atmel,24c02"; 64 reg = <0x54>; 65 vcc-supply = <&vdd_bpro>; 66 label = "board-id"; 67 pagesize = <16>; 68 read-only; 69 size = <256>; 70 }; 71 72 pmic@58 { 73 compatible = "dlg,da9063"; 74 reg = <0x58>; 75 interrupt-parent = <&gpio>; 76 interrupts = <1 IRQ_TYPE_LEVEL_LOW>; 77 interrupt-controller; 78 79 regulators { 80 vdd_bcore1: bcore1 { 81 regulator-min-microvolt = <900000>; 82 regulator-max-microvolt = <900000>; 83 regulator-min-microamp = <5000000>; 84 regulator-max-microamp = <5000000>; 85 regulator-always-on; 86 }; 87 88 vdd_bcore2: bcore2 { 89 regulator-min-microvolt = <900000>; 90 regulator-max-microvolt = <900000>; 91 regulator-min-microamp = <5000000>; 92 regulator-max-microamp = <5000000>; 93 regulator-always-on; 94 }; 95 96 vdd_bpro: bpro { 97 regulator-min-microvolt = <1800000>; 98 regulator-max-microvolt = <1800000>; 99 regulator-min-microamp = <2500000>; 100 regulator-max-microamp = <2500000>; 101 regulator-always-on; 102 }; 103 104 vdd_bperi: bperi { 105 regulator-min-microvolt = <1050000>; 106 regulator-max-microvolt = <1050000>; 107 regulator-min-microamp = <1500000>; 108 regulator-max-microamp = <1500000>; 109 regulator-always-on; 110 }; 111 112 vdd_bmem: bmem { 113 regulator-min-microvolt = <1200000>; 114 regulator-max-microvolt = <1200000>; 115 regulator-min-microamp = <3000000>; 116 regulator-max-microamp = <3000000>; 117 regulator-always-on; 118 }; 119 120 vdd_bio: bio { 121 regulator-min-microvolt = <1200000>; 122 regulator-max-microvolt = <1200000>; 123 regulator-min-microamp = <3000000>; 124 regulator-max-microamp = <3000000>; 125 regulator-always-on; 126 }; 127 128 vdd_ldo1: ldo1 { 129 regulator-min-microvolt = <1800000>; 130 regulator-max-microvolt = <1800000>; 131 regulator-min-microamp = <100000>; 132 regulator-max-microamp = <100000>; 133 regulator-always-on; 134 }; 135 136 vdd_ldo2: ldo2 { 137 regulator-min-microvolt = <1800000>; 138 regulator-max-microvolt = <1800000>; 139 regulator-min-microamp = <200000>; 140 regulator-max-microamp = <200000>; 141 regulator-always-on; 142 }; 143 144 vdd_ldo3: ldo3 { 145 regulator-min-microvolt = <1800000>; 146 regulator-max-microvolt = <1800000>; 147 regulator-min-microamp = <200000>; 148 regulator-max-microamp = <200000>; 149 regulator-always-on; 150 }; 151 152 vdd_ldo4: ldo4 { 153 regulator-min-microvolt = <1800000>; 154 regulator-max-microvolt = <1800000>; 155 regulator-min-microamp = <200000>; 156 regulator-max-microamp = <200000>; 157 regulator-always-on; 158 }; 159 160 vdd_ldo5: ldo5 { 161 regulator-min-microvolt = <1800000>; 162 regulator-max-microvolt = <1800000>; 163 regulator-min-microamp = <100000>; 164 regulator-max-microamp = <100000>; 165 regulator-always-on; 166 }; 167 168 vdd_ldo6: ldo6 { 169 regulator-min-microvolt = <3300000>; 170 regulator-max-microvolt = <3300000>; 171 regulator-min-microamp = <200000>; 172 regulator-max-microamp = <200000>; 173 regulator-always-on; 174 }; 175 176 vdd_ldo7: ldo7 { 177 regulator-min-microvolt = <1800000>; 178 regulator-max-microvolt = <1800000>; 179 regulator-min-microamp = <200000>; 180 regulator-max-microamp = <200000>; 181 regulator-always-on; 182 }; 183 184 vdd_ldo8: ldo8 { 185 regulator-min-microvolt = <1800000>; 186 regulator-max-microvolt = <1800000>; 187 regulator-min-microamp = <200000>; 188 regulator-max-microamp = <200000>; 189 regulator-always-on; 190 }; 191 192 vdd_ld09: ldo9 { 193 regulator-min-microvolt = <1050000>; 194 regulator-max-microvolt = <1050000>; 195 regulator-min-microamp = <200000>; 196 regulator-max-microamp = <200000>; 197 }; 198 199 vdd_ldo10: ldo10 { 200 regulator-min-microvolt = <1000000>; 201 regulator-max-microvolt = <1000000>; 202 regulator-min-microamp = <300000>; 203 regulator-max-microamp = <300000>; 204 }; 205 206 vdd_ldo11: ldo11 { 207 regulator-min-microvolt = <2500000>; 208 regulator-max-microvolt = <2500000>; 209 regulator-min-microamp = <300000>; 210 regulator-max-microamp = <300000>; 211 regulator-always-on; 212 }; 213 }; 214 }; 215}; 216 217&qspi0 { 218 status = "okay"; 219 flash@0 { 220 compatible = "jedec,spi-nor"; 221 reg = <0>; 222 spi-max-frequency = <50000000>; 223 m25p,fast-read; 224 spi-tx-bus-width = <4>; 225 spi-rx-bus-width = <4>; 226 }; 227}; 228 229&spi0 { 230 status = "okay"; 231 mmc@0 { 232 compatible = "mmc-spi-slot"; 233 reg = <0>; 234 spi-max-frequency = <20000000>; 235 voltage-ranges = <3300 3300>; 236 disable-wp; 237 gpios = <&gpio 15 GPIO_ACTIVE_LOW>; 238 }; 239}; 240 241ð0 { 242 status = "okay"; 243 phy-mode = "gmii"; 244 phy-handle = <&phy0>; 245 phy0: ethernet-phy@0 { 246 reg = <0>; 247 }; 248}; 249 250&pwm0 { 251 status = "okay"; 252}; 253 254&pwm1 { 255 status = "okay"; 256}; 257 258&gpio { 259 status = "okay"; 260 gpio-line-names = "J29.1", "PMICNTB", "PMICSHDN", "J8.1", "J8.3", 261 "PCIe_PWREN", "THERM", "UBRDG_RSTN", "PCIe_PERSTN", 262 "ULPI_RSTN", "J8.2", "UHUB_RSTN", "GEMGXL_RST", "J8.4", 263 "EN_VDD_SD", "SD_CD"; 264}; 265