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