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