162306a36Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0 OR MIT) 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Device Tree Source for the Spider CPU board 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * Copyright (C) 2021 Renesas Electronics Corp. 662306a36Sopenharmony_ci */ 762306a36Sopenharmony_ci 862306a36Sopenharmony_ci#include <dt-bindings/gpio/gpio.h> 962306a36Sopenharmony_ci#include <dt-bindings/leds/common.h> 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci#include "r8a779f0.dtsi" 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci/ { 1462306a36Sopenharmony_ci model = "Renesas Spider CPU board"; 1562306a36Sopenharmony_ci compatible = "renesas,spider-cpu", "renesas,r8a779f0"; 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ci aliases { 1862306a36Sopenharmony_ci serial0 = &hscif0; 1962306a36Sopenharmony_ci serial1 = &scif0; 2062306a36Sopenharmony_ci }; 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ci chosen { 2362306a36Sopenharmony_ci bootargs = "ignore_loglevel rw root=/dev/nfs ip=on"; 2462306a36Sopenharmony_ci stdout-path = "serial0:1843200n8"; 2562306a36Sopenharmony_ci }; 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ci leds { 2862306a36Sopenharmony_ci compatible = "gpio-leds"; 2962306a36Sopenharmony_ci 3062306a36Sopenharmony_ci led-7 { 3162306a36Sopenharmony_ci gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>; 3262306a36Sopenharmony_ci color = <LED_COLOR_ID_GREEN>; 3362306a36Sopenharmony_ci function = LED_FUNCTION_INDICATOR; 3462306a36Sopenharmony_ci function-enumerator = <7>; 3562306a36Sopenharmony_ci }; 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ci led-8 { 3862306a36Sopenharmony_ci gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>; 3962306a36Sopenharmony_ci color = <LED_COLOR_ID_GREEN>; 4062306a36Sopenharmony_ci function = LED_FUNCTION_INDICATOR; 4162306a36Sopenharmony_ci function-enumerator = <8>; 4262306a36Sopenharmony_ci }; 4362306a36Sopenharmony_ci }; 4462306a36Sopenharmony_ci 4562306a36Sopenharmony_ci memory@48000000 { 4662306a36Sopenharmony_ci device_type = "memory"; 4762306a36Sopenharmony_ci /* first 128MB is reserved for secure area. */ 4862306a36Sopenharmony_ci reg = <0x0 0x48000000 0x0 0x78000000>; 4962306a36Sopenharmony_ci }; 5062306a36Sopenharmony_ci 5162306a36Sopenharmony_ci memory@480000000 { 5262306a36Sopenharmony_ci device_type = "memory"; 5362306a36Sopenharmony_ci reg = <0x4 0x80000000 0x0 0x80000000>; 5462306a36Sopenharmony_ci }; 5562306a36Sopenharmony_ci 5662306a36Sopenharmony_ci rc21012_ufs: clk-rc21012-ufs { 5762306a36Sopenharmony_ci compatible = "fixed-clock"; 5862306a36Sopenharmony_ci clock-frequency = <38400000>; 5962306a36Sopenharmony_ci #clock-cells = <0>; 6062306a36Sopenharmony_ci }; 6162306a36Sopenharmony_ci 6262306a36Sopenharmony_ci reg_1p8v: regulator-1p8v { 6362306a36Sopenharmony_ci compatible = "regulator-fixed"; 6462306a36Sopenharmony_ci regulator-name = "fixed-1.8V"; 6562306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 6662306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 6762306a36Sopenharmony_ci regulator-boot-on; 6862306a36Sopenharmony_ci regulator-always-on; 6962306a36Sopenharmony_ci }; 7062306a36Sopenharmony_ci 7162306a36Sopenharmony_ci reg_3p3v: regulator-3p3v { 7262306a36Sopenharmony_ci compatible = "regulator-fixed"; 7362306a36Sopenharmony_ci regulator-name = "fixed-3.3V"; 7462306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 7562306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 7662306a36Sopenharmony_ci regulator-boot-on; 7762306a36Sopenharmony_ci regulator-always-on; 7862306a36Sopenharmony_ci }; 7962306a36Sopenharmony_ci}; 8062306a36Sopenharmony_ci 8162306a36Sopenharmony_ci&extal_clk { 8262306a36Sopenharmony_ci clock-frequency = <20000000>; 8362306a36Sopenharmony_ci}; 8462306a36Sopenharmony_ci 8562306a36Sopenharmony_ci&extalr_clk { 8662306a36Sopenharmony_ci clock-frequency = <32768>; 8762306a36Sopenharmony_ci}; 8862306a36Sopenharmony_ci 8962306a36Sopenharmony_ci&hscif0 { 9062306a36Sopenharmony_ci pinctrl-0 = <&hscif0_pins>; 9162306a36Sopenharmony_ci pinctrl-names = "default"; 9262306a36Sopenharmony_ci 9362306a36Sopenharmony_ci uart-has-rtscts; 9462306a36Sopenharmony_ci status = "okay"; 9562306a36Sopenharmony_ci}; 9662306a36Sopenharmony_ci 9762306a36Sopenharmony_ci&i2c0 { 9862306a36Sopenharmony_ci pinctrl-0 = <&i2c0_pins>; 9962306a36Sopenharmony_ci pinctrl-names = "default"; 10062306a36Sopenharmony_ci 10162306a36Sopenharmony_ci status = "okay"; 10262306a36Sopenharmony_ci clock-frequency = <400000>; 10362306a36Sopenharmony_ci 10462306a36Sopenharmony_ci gpio_exp_20: gpio@20 { 10562306a36Sopenharmony_ci compatible = "ti,tca9554"; 10662306a36Sopenharmony_ci reg = <0x20>; 10762306a36Sopenharmony_ci gpio-controller; 10862306a36Sopenharmony_ci #gpio-cells = <2>; 10962306a36Sopenharmony_ci }; 11062306a36Sopenharmony_ci}; 11162306a36Sopenharmony_ci 11262306a36Sopenharmony_ci&i2c4 { 11362306a36Sopenharmony_ci pinctrl-0 = <&i2c4_pins>; 11462306a36Sopenharmony_ci pinctrl-names = "default"; 11562306a36Sopenharmony_ci 11662306a36Sopenharmony_ci status = "okay"; 11762306a36Sopenharmony_ci clock-frequency = <400000>; 11862306a36Sopenharmony_ci 11962306a36Sopenharmony_ci eeprom@50 { 12062306a36Sopenharmony_ci compatible = "rohm,br24g01", "atmel,24c01"; 12162306a36Sopenharmony_ci label = "cpu-board"; 12262306a36Sopenharmony_ci reg = <0x50>; 12362306a36Sopenharmony_ci pagesize = <8>; 12462306a36Sopenharmony_ci }; 12562306a36Sopenharmony_ci}; 12662306a36Sopenharmony_ci 12762306a36Sopenharmony_ci/* 12862306a36Sopenharmony_ci * This board also has a microSD slot which we will not support upstream 12962306a36Sopenharmony_ci * because we cannot directly switch voltages in software. 13062306a36Sopenharmony_ci */ 13162306a36Sopenharmony_ci&mmc0 { 13262306a36Sopenharmony_ci pinctrl-0 = <&mmc_pins>; 13362306a36Sopenharmony_ci pinctrl-1 = <&mmc_pins>; 13462306a36Sopenharmony_ci pinctrl-names = "default", "state_uhs"; 13562306a36Sopenharmony_ci 13662306a36Sopenharmony_ci vmmc-supply = <®_3p3v>; 13762306a36Sopenharmony_ci vqmmc-supply = <®_1p8v>; 13862306a36Sopenharmony_ci mmc-hs200-1_8v; 13962306a36Sopenharmony_ci mmc-hs400-1_8v; 14062306a36Sopenharmony_ci bus-width = <8>; 14162306a36Sopenharmony_ci no-sd; 14262306a36Sopenharmony_ci no-sdio; 14362306a36Sopenharmony_ci non-removable; 14462306a36Sopenharmony_ci full-pwr-cycle-in-suspend; 14562306a36Sopenharmony_ci status = "okay"; 14662306a36Sopenharmony_ci}; 14762306a36Sopenharmony_ci 14862306a36Sopenharmony_ci&pfc { 14962306a36Sopenharmony_ci pinctrl-0 = <&scif_clk_pins>; 15062306a36Sopenharmony_ci pinctrl-names = "default"; 15162306a36Sopenharmony_ci 15262306a36Sopenharmony_ci hscif0_pins: hscif0 { 15362306a36Sopenharmony_ci groups = "hscif0_data", "hscif0_ctrl"; 15462306a36Sopenharmony_ci function = "hscif0"; 15562306a36Sopenharmony_ci }; 15662306a36Sopenharmony_ci 15762306a36Sopenharmony_ci i2c0_pins: i2c0 { 15862306a36Sopenharmony_ci groups = "i2c0"; 15962306a36Sopenharmony_ci function = "i2c0"; 16062306a36Sopenharmony_ci }; 16162306a36Sopenharmony_ci 16262306a36Sopenharmony_ci i2c4_pins: i2c4 { 16362306a36Sopenharmony_ci groups = "i2c4"; 16462306a36Sopenharmony_ci function = "i2c4"; 16562306a36Sopenharmony_ci }; 16662306a36Sopenharmony_ci 16762306a36Sopenharmony_ci mmc_pins: mmc { 16862306a36Sopenharmony_ci groups = "mmc_data8", "mmc_ctrl", "mmc_ds"; 16962306a36Sopenharmony_ci function = "mmc"; 17062306a36Sopenharmony_ci power-source = <1800>; 17162306a36Sopenharmony_ci }; 17262306a36Sopenharmony_ci 17362306a36Sopenharmony_ci scif0_pins: scif0 { 17462306a36Sopenharmony_ci groups = "scif0_data", "scif0_ctrl"; 17562306a36Sopenharmony_ci function = "scif0"; 17662306a36Sopenharmony_ci }; 17762306a36Sopenharmony_ci 17862306a36Sopenharmony_ci scif_clk_pins: scif_clk { 17962306a36Sopenharmony_ci groups = "scif_clk"; 18062306a36Sopenharmony_ci function = "scif_clk"; 18162306a36Sopenharmony_ci }; 18262306a36Sopenharmony_ci}; 18362306a36Sopenharmony_ci 18462306a36Sopenharmony_ci&rwdt { 18562306a36Sopenharmony_ci timeout-sec = <60>; 18662306a36Sopenharmony_ci status = "okay"; 18762306a36Sopenharmony_ci}; 18862306a36Sopenharmony_ci 18962306a36Sopenharmony_ci&scif0 { 19062306a36Sopenharmony_ci pinctrl-0 = <&scif0_pins>; 19162306a36Sopenharmony_ci pinctrl-names = "default"; 19262306a36Sopenharmony_ci 19362306a36Sopenharmony_ci uart-has-rtscts; 19462306a36Sopenharmony_ci status = "okay"; 19562306a36Sopenharmony_ci}; 19662306a36Sopenharmony_ci 19762306a36Sopenharmony_ci&scif_clk { 19862306a36Sopenharmony_ci clock-frequency = <24000000>; 19962306a36Sopenharmony_ci}; 20062306a36Sopenharmony_ci 20162306a36Sopenharmony_ci&ufs { 20262306a36Sopenharmony_ci status = "okay"; 20362306a36Sopenharmony_ci}; 20462306a36Sopenharmony_ci 20562306a36Sopenharmony_ci&ufs30_clk { 20662306a36Sopenharmony_ci compatible = "gpio-gate-clock"; 20762306a36Sopenharmony_ci clocks = <&rc21012_ufs>; 20862306a36Sopenharmony_ci enable-gpios = <&gpio_exp_20 4 GPIO_ACTIVE_LOW>; 20962306a36Sopenharmony_ci /delete-property/ clock-frequency; 21062306a36Sopenharmony_ci}; 211