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 pmic@58 { 63 compatible = "dlg,da9063"; 64 reg = <0x58>; 65 interrupt-parent = <&gpio>; 66 interrupts = <1 IRQ_TYPE_LEVEL_LOW>; 67 interrupt-controller; 68 69 regulators { 70 vdd_bcore1: bcore1 { 71 regulator-min-microvolt = <900000>; 72 regulator-max-microvolt = <900000>; 73 regulator-min-microamp = <5000000>; 74 regulator-max-microamp = <5000000>; 75 regulator-always-on; 76 }; 77 78 vdd_bcore2: bcore2 { 79 regulator-min-microvolt = <900000>; 80 regulator-max-microvolt = <900000>; 81 regulator-min-microamp = <5000000>; 82 regulator-max-microamp = <5000000>; 83 regulator-always-on; 84 }; 85 86 vdd_bpro: bpro { 87 regulator-min-microvolt = <1800000>; 88 regulator-max-microvolt = <1800000>; 89 regulator-min-microamp = <2500000>; 90 regulator-max-microamp = <2500000>; 91 regulator-always-on; 92 }; 93 94 vdd_bperi: bperi { 95 regulator-min-microvolt = <1050000>; 96 regulator-max-microvolt = <1050000>; 97 regulator-min-microamp = <1500000>; 98 regulator-max-microamp = <1500000>; 99 regulator-always-on; 100 }; 101 102 vdd_bmem: bmem { 103 regulator-min-microvolt = <1200000>; 104 regulator-max-microvolt = <1200000>; 105 regulator-min-microamp = <3000000>; 106 regulator-max-microamp = <3000000>; 107 regulator-always-on; 108 }; 109 110 vdd_bio: bio { 111 regulator-min-microvolt = <1200000>; 112 regulator-max-microvolt = <1200000>; 113 regulator-min-microamp = <3000000>; 114 regulator-max-microamp = <3000000>; 115 regulator-always-on; 116 }; 117 118 vdd_ldo1: ldo1 { 119 regulator-min-microvolt = <1800000>; 120 regulator-max-microvolt = <1800000>; 121 regulator-min-microamp = <100000>; 122 regulator-max-microamp = <100000>; 123 regulator-always-on; 124 }; 125 126 vdd_ldo2: ldo2 { 127 regulator-min-microvolt = <1800000>; 128 regulator-max-microvolt = <1800000>; 129 regulator-min-microamp = <200000>; 130 regulator-max-microamp = <200000>; 131 regulator-always-on; 132 }; 133 134 vdd_ldo3: ldo3 { 135 regulator-min-microvolt = <1800000>; 136 regulator-max-microvolt = <1800000>; 137 regulator-min-microamp = <200000>; 138 regulator-max-microamp = <200000>; 139 regulator-always-on; 140 }; 141 142 vdd_ldo4: ldo4 { 143 regulator-min-microvolt = <1800000>; 144 regulator-max-microvolt = <1800000>; 145 regulator-min-microamp = <200000>; 146 regulator-max-microamp = <200000>; 147 regulator-always-on; 148 }; 149 150 vdd_ldo5: ldo5 { 151 regulator-min-microvolt = <1800000>; 152 regulator-max-microvolt = <1800000>; 153 regulator-min-microamp = <100000>; 154 regulator-max-microamp = <100000>; 155 regulator-always-on; 156 }; 157 158 vdd_ldo6: ldo6 { 159 regulator-min-microvolt = <3300000>; 160 regulator-max-microvolt = <3300000>; 161 regulator-min-microamp = <200000>; 162 regulator-max-microamp = <200000>; 163 regulator-always-on; 164 }; 165 166 vdd_ldo7: ldo7 { 167 regulator-min-microvolt = <1800000>; 168 regulator-max-microvolt = <1800000>; 169 regulator-min-microamp = <200000>; 170 regulator-max-microamp = <200000>; 171 regulator-always-on; 172 }; 173 174 vdd_ldo8: ldo8 { 175 regulator-min-microvolt = <1800000>; 176 regulator-max-microvolt = <1800000>; 177 regulator-min-microamp = <200000>; 178 regulator-max-microamp = <200000>; 179 regulator-always-on; 180 }; 181 182 vdd_ld09: ldo9 { 183 regulator-min-microvolt = <1050000>; 184 regulator-max-microvolt = <1050000>; 185 regulator-min-microamp = <200000>; 186 regulator-max-microamp = <200000>; 187 }; 188 189 vdd_ldo10: ldo10 { 190 regulator-min-microvolt = <1000000>; 191 regulator-max-microvolt = <1000000>; 192 regulator-min-microamp = <300000>; 193 regulator-max-microamp = <300000>; 194 }; 195 196 vdd_ldo11: ldo11 { 197 regulator-min-microvolt = <2500000>; 198 regulator-max-microvolt = <2500000>; 199 regulator-min-microamp = <300000>; 200 regulator-max-microamp = <300000>; 201 regulator-always-on; 202 }; 203 }; 204 }; 205}; 206 207&qspi0 { 208 status = "okay"; 209 flash@0 { 210 compatible = "jedec,spi-nor"; 211 reg = <0>; 212 spi-max-frequency = <50000000>; 213 m25p,fast-read; 214 spi-tx-bus-width = <4>; 215 spi-rx-bus-width = <4>; 216 }; 217}; 218 219&spi0 { 220 status = "okay"; 221 mmc@0 { 222 compatible = "mmc-spi-slot"; 223 reg = <0>; 224 spi-max-frequency = <20000000>; 225 voltage-ranges = <3300 3300>; 226 disable-wp; 227 gpios = <&gpio 15 GPIO_ACTIVE_LOW>; 228 }; 229}; 230 231ð0 { 232 status = "okay"; 233 phy-mode = "gmii"; 234 phy-handle = <&phy0>; 235 phy0: ethernet-phy@0 { 236 reg = <0>; 237 }; 238}; 239 240&pwm0 { 241 status = "okay"; 242}; 243 244&pwm1 { 245 status = "okay"; 246}; 247 248&gpio { 249 status = "okay"; 250 gpio-line-names = "J29.1", "PMICNTB", "PMICSHDN", "J8.1", "J8.3", 251 "PCIe_PWREN", "THERM", "UBRDG_RSTN", "PCIe_PERSTN", 252 "ULPI_RSTN", "J8.2", "UHUB_RSTN", "GEMGXL_RST", "J8.4", 253 "EN_VDD_SD", "SD_CD"; 254}; 255