18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0 OR MIT) 28c2ecf20Sopenharmony_ci/* Copyright (c) 2018-2019 SiFive, Inc */ 38c2ecf20Sopenharmony_ci 48c2ecf20Sopenharmony_ci#include "fu540-c000.dtsi" 58c2ecf20Sopenharmony_ci#include <dt-bindings/gpio/gpio.h> 68c2ecf20Sopenharmony_ci#include <dt-bindings/leds/common.h> 78c2ecf20Sopenharmony_ci#include <dt-bindings/pwm/pwm.h> 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_ci/* Clock frequency (in Hz) of the PCB crystal for rtcclk */ 108c2ecf20Sopenharmony_ci#define RTCCLK_FREQ 1000000 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_ci/ { 138c2ecf20Sopenharmony_ci #address-cells = <2>; 148c2ecf20Sopenharmony_ci #size-cells = <2>; 158c2ecf20Sopenharmony_ci model = "SiFive HiFive Unleashed A00"; 168c2ecf20Sopenharmony_ci compatible = "sifive,hifive-unleashed-a00", "sifive,fu540-c000"; 178c2ecf20Sopenharmony_ci 188c2ecf20Sopenharmony_ci chosen { 198c2ecf20Sopenharmony_ci stdout-path = "serial0"; 208c2ecf20Sopenharmony_ci }; 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ci cpus { 238c2ecf20Sopenharmony_ci timebase-frequency = <RTCCLK_FREQ>; 248c2ecf20Sopenharmony_ci }; 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_ci memory@80000000 { 278c2ecf20Sopenharmony_ci device_type = "memory"; 288c2ecf20Sopenharmony_ci reg = <0x0 0x80000000 0x2 0x00000000>; 298c2ecf20Sopenharmony_ci }; 308c2ecf20Sopenharmony_ci 318c2ecf20Sopenharmony_ci soc { 328c2ecf20Sopenharmony_ci }; 338c2ecf20Sopenharmony_ci 348c2ecf20Sopenharmony_ci hfclk: hfclk { 358c2ecf20Sopenharmony_ci #clock-cells = <0>; 368c2ecf20Sopenharmony_ci compatible = "fixed-clock"; 378c2ecf20Sopenharmony_ci clock-frequency = <33333333>; 388c2ecf20Sopenharmony_ci clock-output-names = "hfclk"; 398c2ecf20Sopenharmony_ci }; 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_ci rtcclk: rtcclk { 428c2ecf20Sopenharmony_ci #clock-cells = <0>; 438c2ecf20Sopenharmony_ci compatible = "fixed-clock"; 448c2ecf20Sopenharmony_ci clock-frequency = <RTCCLK_FREQ>; 458c2ecf20Sopenharmony_ci clock-output-names = "rtcclk"; 468c2ecf20Sopenharmony_ci }; 478c2ecf20Sopenharmony_ci gpio-restart { 488c2ecf20Sopenharmony_ci compatible = "gpio-restart"; 498c2ecf20Sopenharmony_ci gpios = <&gpio 10 GPIO_ACTIVE_LOW>; 508c2ecf20Sopenharmony_ci }; 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ci led-controller { 538c2ecf20Sopenharmony_ci compatible = "pwm-leds"; 548c2ecf20Sopenharmony_ci 558c2ecf20Sopenharmony_ci led-d1 { 568c2ecf20Sopenharmony_ci pwms = <&pwm0 0 7812500 PWM_POLARITY_INVERTED>; 578c2ecf20Sopenharmony_ci active-low; 588c2ecf20Sopenharmony_ci color = <LED_COLOR_ID_GREEN>; 598c2ecf20Sopenharmony_ci max-brightness = <255>; 608c2ecf20Sopenharmony_ci label = "d1"; 618c2ecf20Sopenharmony_ci }; 628c2ecf20Sopenharmony_ci 638c2ecf20Sopenharmony_ci led-d2 { 648c2ecf20Sopenharmony_ci pwms = <&pwm0 1 7812500 PWM_POLARITY_INVERTED>; 658c2ecf20Sopenharmony_ci active-low; 668c2ecf20Sopenharmony_ci color = <LED_COLOR_ID_GREEN>; 678c2ecf20Sopenharmony_ci max-brightness = <255>; 688c2ecf20Sopenharmony_ci label = "d2"; 698c2ecf20Sopenharmony_ci }; 708c2ecf20Sopenharmony_ci 718c2ecf20Sopenharmony_ci led-d3 { 728c2ecf20Sopenharmony_ci pwms = <&pwm0 2 7812500 PWM_POLARITY_INVERTED>; 738c2ecf20Sopenharmony_ci active-low; 748c2ecf20Sopenharmony_ci color = <LED_COLOR_ID_GREEN>; 758c2ecf20Sopenharmony_ci max-brightness = <255>; 768c2ecf20Sopenharmony_ci label = "d3"; 778c2ecf20Sopenharmony_ci }; 788c2ecf20Sopenharmony_ci 798c2ecf20Sopenharmony_ci led-d4 { 808c2ecf20Sopenharmony_ci pwms = <&pwm0 3 7812500 PWM_POLARITY_INVERTED>; 818c2ecf20Sopenharmony_ci active-low; 828c2ecf20Sopenharmony_ci color = <LED_COLOR_ID_GREEN>; 838c2ecf20Sopenharmony_ci max-brightness = <255>; 848c2ecf20Sopenharmony_ci label = "d4"; 858c2ecf20Sopenharmony_ci }; 868c2ecf20Sopenharmony_ci }; 878c2ecf20Sopenharmony_ci}; 888c2ecf20Sopenharmony_ci 898c2ecf20Sopenharmony_ci&uart0 { 908c2ecf20Sopenharmony_ci status = "okay"; 918c2ecf20Sopenharmony_ci}; 928c2ecf20Sopenharmony_ci 938c2ecf20Sopenharmony_ci&uart1 { 948c2ecf20Sopenharmony_ci status = "okay"; 958c2ecf20Sopenharmony_ci}; 968c2ecf20Sopenharmony_ci 978c2ecf20Sopenharmony_ci&i2c0 { 988c2ecf20Sopenharmony_ci status = "okay"; 998c2ecf20Sopenharmony_ci}; 1008c2ecf20Sopenharmony_ci 1018c2ecf20Sopenharmony_ci&qspi0 { 1028c2ecf20Sopenharmony_ci status = "okay"; 1038c2ecf20Sopenharmony_ci flash@0 { 1048c2ecf20Sopenharmony_ci compatible = "issi,is25wp256", "jedec,spi-nor"; 1058c2ecf20Sopenharmony_ci reg = <0>; 1068c2ecf20Sopenharmony_ci spi-max-frequency = <50000000>; 1078c2ecf20Sopenharmony_ci m25p,fast-read; 1088c2ecf20Sopenharmony_ci spi-tx-bus-width = <4>; 1098c2ecf20Sopenharmony_ci spi-rx-bus-width = <4>; 1108c2ecf20Sopenharmony_ci }; 1118c2ecf20Sopenharmony_ci}; 1128c2ecf20Sopenharmony_ci 1138c2ecf20Sopenharmony_ci&qspi2 { 1148c2ecf20Sopenharmony_ci status = "okay"; 1158c2ecf20Sopenharmony_ci mmc@0 { 1168c2ecf20Sopenharmony_ci compatible = "mmc-spi-slot"; 1178c2ecf20Sopenharmony_ci reg = <0>; 1188c2ecf20Sopenharmony_ci spi-max-frequency = <20000000>; 1198c2ecf20Sopenharmony_ci voltage-ranges = <3300 3300>; 1208c2ecf20Sopenharmony_ci disable-wp; 1218c2ecf20Sopenharmony_ci }; 1228c2ecf20Sopenharmony_ci}; 1238c2ecf20Sopenharmony_ci 1248c2ecf20Sopenharmony_cið0 { 1258c2ecf20Sopenharmony_ci status = "okay"; 1268c2ecf20Sopenharmony_ci phy-mode = "gmii"; 1278c2ecf20Sopenharmony_ci phy-handle = <&phy0>; 1288c2ecf20Sopenharmony_ci phy0: ethernet-phy@0 { 1298c2ecf20Sopenharmony_ci compatible = "ethernet-phy-id0007.0771"; 1308c2ecf20Sopenharmony_ci reg = <0>; 1318c2ecf20Sopenharmony_ci }; 1328c2ecf20Sopenharmony_ci}; 1338c2ecf20Sopenharmony_ci 1348c2ecf20Sopenharmony_ci&pwm0 { 1358c2ecf20Sopenharmony_ci status = "okay"; 1368c2ecf20Sopenharmony_ci}; 1378c2ecf20Sopenharmony_ci 1388c2ecf20Sopenharmony_ci&pwm1 { 1398c2ecf20Sopenharmony_ci status = "okay"; 1408c2ecf20Sopenharmony_ci}; 1418c2ecf20Sopenharmony_ci 1428c2ecf20Sopenharmony_ci&gpio { 1438c2ecf20Sopenharmony_ci status = "okay"; 1448c2ecf20Sopenharmony_ci}; 145