1c35f1b87SPaul Walmsley// SPDX-License-Identifier: (GPL-2.0 OR MIT) 2c35f1b87SPaul Walmsley/* Copyright (c) 2018-2019 SiFive, Inc */ 3c35f1b87SPaul Walmsley 4c35f1b87SPaul Walmsley#include "fu540-c000.dtsi" 50a91330bSYash Shah#include <dt-bindings/gpio/gpio.h> 6c35f1b87SPaul Walmsley 7c35f1b87SPaul Walmsley/* Clock frequency (in Hz) of the PCB crystal for rtcclk */ 8c35f1b87SPaul Walmsley#define RTCCLK_FREQ 1000000 9c35f1b87SPaul Walmsley 10c35f1b87SPaul Walmsley/ { 11c35f1b87SPaul Walmsley model = "SiFive HiFive Unleashed A00"; 1265b2979dSKrzysztof Kozlowski compatible = "sifive,hifive-unleashed-a00", "sifive,fu540-c000", 1365b2979dSKrzysztof Kozlowski "sifive,fu540"; 14c35f1b87SPaul Walmsley 15c35f1b87SPaul Walmsley chosen { 162993c9b0SPaul Walmsley stdout-path = "serial0"; 17c35f1b87SPaul Walmsley }; 18c35f1b87SPaul Walmsley 19c35f1b87SPaul Walmsley cpus { 20c35f1b87SPaul Walmsley timebase-frequency = <RTCCLK_FREQ>; 21c35f1b87SPaul Walmsley }; 22c35f1b87SPaul Walmsley 23c35f1b87SPaul Walmsley memory@80000000 { 24c35f1b87SPaul Walmsley device_type = "memory"; 25c35f1b87SPaul Walmsley reg = <0x0 0x80000000 0x2 0x00000000>; 26c35f1b87SPaul Walmsley }; 27c35f1b87SPaul Walmsley 28c35f1b87SPaul Walmsley hfclk: hfclk { 29c35f1b87SPaul Walmsley #clock-cells = <0>; 30c35f1b87SPaul Walmsley compatible = "fixed-clock"; 31c35f1b87SPaul Walmsley clock-frequency = <33333333>; 32c35f1b87SPaul Walmsley clock-output-names = "hfclk"; 33c35f1b87SPaul Walmsley }; 34c35f1b87SPaul Walmsley 35c35f1b87SPaul Walmsley rtcclk: rtcclk { 36c35f1b87SPaul Walmsley #clock-cells = <0>; 37c35f1b87SPaul Walmsley compatible = "fixed-clock"; 38c35f1b87SPaul Walmsley clock-frequency = <RTCCLK_FREQ>; 39c35f1b87SPaul Walmsley clock-output-names = "rtcclk"; 40c35f1b87SPaul Walmsley }; 410a91330bSYash Shah gpio-restart { 420a91330bSYash Shah compatible = "gpio-restart"; 430a91330bSYash Shah gpios = <&gpio 10 GPIO_ACTIVE_LOW>; 440a91330bSYash Shah }; 45c35f1b87SPaul Walmsley}; 46c35f1b87SPaul Walmsley 4745b03df2SYash Shah&uart0 { 4845b03df2SYash Shah status = "okay"; 4945b03df2SYash Shah}; 5045b03df2SYash Shah 5145b03df2SYash Shah&uart1 { 5245b03df2SYash Shah status = "okay"; 5345b03df2SYash Shah}; 5445b03df2SYash Shah 5545b03df2SYash Shah&i2c0 { 5645b03df2SYash Shah status = "okay"; 5745b03df2SYash Shah}; 5845b03df2SYash Shah 59c35f1b87SPaul Walmsley&qspi0 { 6045b03df2SYash Shah status = "okay"; 61c35f1b87SPaul Walmsley flash@0 { 628ce936c2SKrzysztof Kozlowski compatible = "jedec,spi-nor"; 63c35f1b87SPaul Walmsley reg = <0>; 64c35f1b87SPaul Walmsley spi-max-frequency = <50000000>; 65c35f1b87SPaul Walmsley m25p,fast-read; 66c35f1b87SPaul Walmsley spi-tx-bus-width = <4>; 67c35f1b87SPaul Walmsley spi-rx-bus-width = <4>; 68c35f1b87SPaul Walmsley }; 69c35f1b87SPaul Walmsley}; 70c35f1b87SPaul Walmsley 71c35f1b87SPaul Walmsley&qspi2 { 72c35f1b87SPaul Walmsley status = "okay"; 73c35f1b87SPaul Walmsley mmc@0 { 74c35f1b87SPaul Walmsley compatible = "mmc-spi-slot"; 75c35f1b87SPaul Walmsley reg = <0>; 76c35f1b87SPaul Walmsley spi-max-frequency = <20000000>; 77c35f1b87SPaul Walmsley voltage-ranges = <3300 3300>; 78c35f1b87SPaul Walmsley disable-wp; 79*6331b876SBin Meng gpios = <&gpio 11 GPIO_ACTIVE_LOW>; 80c35f1b87SPaul Walmsley }; 81c35f1b87SPaul Walmsley}; 8226091eefSYash Shah 8326091eefSYash Shahð0 { 8426091eefSYash Shah status = "okay"; 8526091eefSYash Shah phy-mode = "gmii"; 8626091eefSYash Shah phy-handle = <&phy0>; 8726091eefSYash Shah phy0: ethernet-phy@0 { 88be969b7cSSagar Shrikant Kadam compatible = "ethernet-phy-id0007.0771"; 8926091eefSYash Shah reg = <0>; 9026091eefSYash Shah }; 9126091eefSYash Shah}; 92b45e0c30SYash Shah 93b45e0c30SYash Shah&pwm0 { 94b45e0c30SYash Shah status = "okay"; 95b45e0c30SYash Shah}; 96b45e0c30SYash Shah 97b45e0c30SYash Shah&pwm1 { 98b45e0c30SYash Shah status = "okay"; 99b45e0c30SYash Shah}; 10061ffb9d2SYash Shah 10161ffb9d2SYash Shah&gpio { 10261ffb9d2SYash Shah status = "okay"; 10361ffb9d2SYash Shah}; 104