1*05c618f3SKrzysztof Kozlowski// SPDX-License-Identifier: (GPL-2.0 OR MIT) 208b8699eSYoshihiro Shimoda/* 308b8699eSYoshihiro Shimoda * Device Tree Source for the Spider CPU board 408b8699eSYoshihiro Shimoda * 508b8699eSYoshihiro Shimoda * Copyright (C) 2021 Renesas Electronics Corp. 608b8699eSYoshihiro Shimoda */ 708b8699eSYoshihiro Shimoda 8c3b8f309SYoshihiro Shimoda#include <dt-bindings/gpio/gpio.h> 9406b5af4SGeert Uytterhoeven#include <dt-bindings/leds/common.h> 10406b5af4SGeert Uytterhoeven 1108b8699eSYoshihiro Shimoda#include "r8a779f0.dtsi" 1208b8699eSYoshihiro Shimoda 1308b8699eSYoshihiro Shimoda/ { 1408b8699eSYoshihiro Shimoda model = "Renesas Spider CPU board"; 1508b8699eSYoshihiro Shimoda compatible = "renesas,spider-cpu", "renesas,r8a779f0"; 1608b8699eSYoshihiro Shimoda 175c2b5a28SGeert Uytterhoeven aliases { 18872f9184SWolfram Sang serial0 = &hscif0; 195c2b5a28SGeert Uytterhoeven serial1 = &scif0; 205c2b5a28SGeert Uytterhoeven }; 215c2b5a28SGeert Uytterhoeven 225c2b5a28SGeert Uytterhoeven chosen { 23567934a8SKuninori Morimoto bootargs = "ignore_loglevel rw root=/dev/nfs ip=on"; 24872f9184SWolfram Sang stdout-path = "serial0:1843200n8"; 255c2b5a28SGeert Uytterhoeven }; 265c2b5a28SGeert Uytterhoeven 27406b5af4SGeert Uytterhoeven leds { 28406b5af4SGeert Uytterhoeven compatible = "gpio-leds"; 29406b5af4SGeert Uytterhoeven 30406b5af4SGeert Uytterhoeven led-7 { 31406b5af4SGeert Uytterhoeven gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>; 32406b5af4SGeert Uytterhoeven color = <LED_COLOR_ID_GREEN>; 33406b5af4SGeert Uytterhoeven function = LED_FUNCTION_INDICATOR; 34406b5af4SGeert Uytterhoeven function-enumerator = <7>; 35406b5af4SGeert Uytterhoeven }; 36406b5af4SGeert Uytterhoeven 37406b5af4SGeert Uytterhoeven led-8 { 38406b5af4SGeert Uytterhoeven gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>; 39406b5af4SGeert Uytterhoeven color = <LED_COLOR_ID_GREEN>; 40406b5af4SGeert Uytterhoeven function = LED_FUNCTION_INDICATOR; 41406b5af4SGeert Uytterhoeven function-enumerator = <8>; 42406b5af4SGeert Uytterhoeven }; 43406b5af4SGeert Uytterhoeven }; 44406b5af4SGeert Uytterhoeven 4508b8699eSYoshihiro Shimoda memory@48000000 { 4608b8699eSYoshihiro Shimoda device_type = "memory"; 4708b8699eSYoshihiro Shimoda /* first 128MB is reserved for secure area. */ 4808b8699eSYoshihiro Shimoda reg = <0x0 0x48000000 0x0 0x78000000>; 4908b8699eSYoshihiro Shimoda }; 5008b8699eSYoshihiro Shimoda 5108b8699eSYoshihiro Shimoda memory@480000000 { 5208b8699eSYoshihiro Shimoda device_type = "memory"; 5308b8699eSYoshihiro Shimoda reg = <0x4 0x80000000 0x0 0x80000000>; 5408b8699eSYoshihiro Shimoda }; 551ada3e53SWolfram Sang 56c3b8f309SYoshihiro Shimoda rc21012_ufs: clk-rc21012-ufs { 57c3b8f309SYoshihiro Shimoda compatible = "fixed-clock"; 58c3b8f309SYoshihiro Shimoda clock-frequency = <38400000>; 59c3b8f309SYoshihiro Shimoda #clock-cells = <0>; 60c3b8f309SYoshihiro Shimoda }; 61c3b8f309SYoshihiro Shimoda 621ada3e53SWolfram Sang reg_1p8v: regulator-1p8v { 631ada3e53SWolfram Sang compatible = "regulator-fixed"; 641ada3e53SWolfram Sang regulator-name = "fixed-1.8V"; 651ada3e53SWolfram Sang regulator-min-microvolt = <1800000>; 661ada3e53SWolfram Sang regulator-max-microvolt = <1800000>; 671ada3e53SWolfram Sang regulator-boot-on; 681ada3e53SWolfram Sang regulator-always-on; 691ada3e53SWolfram Sang }; 701ada3e53SWolfram Sang 711ada3e53SWolfram Sang reg_3p3v: regulator-3p3v { 721ada3e53SWolfram Sang compatible = "regulator-fixed"; 731ada3e53SWolfram Sang regulator-name = "fixed-3.3V"; 741ada3e53SWolfram Sang regulator-min-microvolt = <3300000>; 751ada3e53SWolfram Sang regulator-max-microvolt = <3300000>; 761ada3e53SWolfram Sang regulator-boot-on; 771ada3e53SWolfram Sang regulator-always-on; 781ada3e53SWolfram Sang }; 7908b8699eSYoshihiro Shimoda}; 8008b8699eSYoshihiro Shimoda 8108b8699eSYoshihiro Shimoda&extal_clk { 8208b8699eSYoshihiro Shimoda clock-frequency = <20000000>; 8308b8699eSYoshihiro Shimoda}; 8408b8699eSYoshihiro Shimoda 8508b8699eSYoshihiro Shimoda&extalr_clk { 8608b8699eSYoshihiro Shimoda clock-frequency = <32768>; 8708b8699eSYoshihiro Shimoda}; 8808b8699eSYoshihiro Shimoda 89872f9184SWolfram Sang&hscif0 { 90872f9184SWolfram Sang pinctrl-0 = <&hscif0_pins>; 91872f9184SWolfram Sang pinctrl-names = "default"; 92872f9184SWolfram Sang 93872f9184SWolfram Sang uart-has-rtscts; 94872f9184SWolfram Sang status = "okay"; 95872f9184SWolfram Sang}; 96872f9184SWolfram Sang 97c3b8f309SYoshihiro Shimoda&i2c0 { 98c3b8f309SYoshihiro Shimoda pinctrl-0 = <&i2c0_pins>; 99c3b8f309SYoshihiro Shimoda pinctrl-names = "default"; 100c3b8f309SYoshihiro Shimoda 101c3b8f309SYoshihiro Shimoda status = "okay"; 102c3b8f309SYoshihiro Shimoda clock-frequency = <400000>; 103c3b8f309SYoshihiro Shimoda 104c3b8f309SYoshihiro Shimoda gpio_exp_20: gpio@20 { 105c3b8f309SYoshihiro Shimoda compatible = "ti,tca9554"; 106c3b8f309SYoshihiro Shimoda reg = <0x20>; 107c3b8f309SYoshihiro Shimoda gpio-controller; 108c3b8f309SYoshihiro Shimoda #gpio-cells = <2>; 109c3b8f309SYoshihiro Shimoda }; 110c3b8f309SYoshihiro Shimoda}; 111c3b8f309SYoshihiro Shimoda 112b74d5d65SGeert Uytterhoeven&i2c4 { 113b74d5d65SGeert Uytterhoeven pinctrl-0 = <&i2c4_pins>; 114b74d5d65SGeert Uytterhoeven pinctrl-names = "default"; 115b74d5d65SGeert Uytterhoeven 116b74d5d65SGeert Uytterhoeven status = "okay"; 117b74d5d65SGeert Uytterhoeven clock-frequency = <400000>; 118b74d5d65SGeert Uytterhoeven 119b74d5d65SGeert Uytterhoeven eeprom@50 { 120b74d5d65SGeert Uytterhoeven compatible = "rohm,br24g01", "atmel,24c01"; 121b74d5d65SGeert Uytterhoeven label = "cpu-board"; 122b74d5d65SGeert Uytterhoeven reg = <0x50>; 123b74d5d65SGeert Uytterhoeven pagesize = <8>; 124b74d5d65SGeert Uytterhoeven }; 125b74d5d65SGeert Uytterhoeven}; 126b74d5d65SGeert Uytterhoeven 1271ada3e53SWolfram Sang/* 1281ada3e53SWolfram Sang * This board also has a microSD slot which we will not support upstream 1291ada3e53SWolfram Sang * because we cannot directly switch voltages in software. 1301ada3e53SWolfram Sang */ 1311ada3e53SWolfram Sang&mmc0 { 1321ada3e53SWolfram Sang pinctrl-0 = <&mmc_pins>; 1331ada3e53SWolfram Sang pinctrl-1 = <&mmc_pins>; 1341ada3e53SWolfram Sang pinctrl-names = "default", "state_uhs"; 1351ada3e53SWolfram Sang 1361ada3e53SWolfram Sang vmmc-supply = <®_3p3v>; 1371ada3e53SWolfram Sang vqmmc-supply = <®_1p8v>; 1381ada3e53SWolfram Sang mmc-hs200-1_8v; 1391ada3e53SWolfram Sang mmc-hs400-1_8v; 1401ada3e53SWolfram Sang bus-width = <8>; 1411ada3e53SWolfram Sang no-sd; 1421ada3e53SWolfram Sang no-sdio; 1431ada3e53SWolfram Sang non-removable; 1441ada3e53SWolfram Sang full-pwr-cycle-in-suspend; 1451ada3e53SWolfram Sang status = "okay"; 1461ada3e53SWolfram Sang}; 1471ada3e53SWolfram Sang 1481ef36224SGeert Uytterhoeven&pfc { 1491ef36224SGeert Uytterhoeven pinctrl-0 = <&scif_clk_pins>; 1501ef36224SGeert Uytterhoeven pinctrl-names = "default"; 1511ef36224SGeert Uytterhoeven 152872f9184SWolfram Sang hscif0_pins: hscif0 { 153872f9184SWolfram Sang groups = "hscif0_data", "hscif0_ctrl"; 154872f9184SWolfram Sang function = "hscif0"; 155872f9184SWolfram Sang }; 156872f9184SWolfram Sang 157c3b8f309SYoshihiro Shimoda i2c0_pins: i2c0 { 158c3b8f309SYoshihiro Shimoda groups = "i2c0"; 159c3b8f309SYoshihiro Shimoda function = "i2c0"; 160c3b8f309SYoshihiro Shimoda }; 161c3b8f309SYoshihiro Shimoda 162b74d5d65SGeert Uytterhoeven i2c4_pins: i2c4 { 163b74d5d65SGeert Uytterhoeven groups = "i2c4"; 164b74d5d65SGeert Uytterhoeven function = "i2c4"; 165b74d5d65SGeert Uytterhoeven }; 166b74d5d65SGeert Uytterhoeven 1671ada3e53SWolfram Sang mmc_pins: mmc { 1681ada3e53SWolfram Sang groups = "mmc_data8", "mmc_ctrl", "mmc_ds"; 1691ada3e53SWolfram Sang function = "mmc"; 1701ada3e53SWolfram Sang power-source = <1800>; 1711ada3e53SWolfram Sang }; 1721ada3e53SWolfram Sang 1731614c862SWolfram Sang scif0_pins: scif0 { 1741614c862SWolfram Sang groups = "scif0_data", "scif0_ctrl"; 1751614c862SWolfram Sang function = "scif0"; 1761614c862SWolfram Sang }; 1771614c862SWolfram Sang 1781ef36224SGeert Uytterhoeven scif_clk_pins: scif_clk { 1791ef36224SGeert Uytterhoeven groups = "scif_clk"; 1801ef36224SGeert Uytterhoeven function = "scif_clk"; 1811ef36224SGeert Uytterhoeven }; 1821ef36224SGeert Uytterhoeven}; 1831ef36224SGeert Uytterhoeven 18410690504SGeert Uytterhoeven&rwdt { 18510690504SGeert Uytterhoeven timeout-sec = <60>; 18610690504SGeert Uytterhoeven status = "okay"; 18710690504SGeert Uytterhoeven}; 18810690504SGeert Uytterhoeven 1893896b8f0SGeert Uytterhoeven&scif0 { 1903896b8f0SGeert Uytterhoeven pinctrl-0 = <&scif0_pins>; 1911ef36224SGeert Uytterhoeven pinctrl-names = "default"; 1921ef36224SGeert Uytterhoeven 1931ef36224SGeert Uytterhoeven uart-has-rtscts; 19408b8699eSYoshihiro Shimoda status = "okay"; 19508b8699eSYoshihiro Shimoda}; 1961ef36224SGeert Uytterhoeven 1971ef36224SGeert Uytterhoeven&scif_clk { 1981ef36224SGeert Uytterhoeven clock-frequency = <24000000>; 1991ef36224SGeert Uytterhoeven}; 200c3b8f309SYoshihiro Shimoda 201c3b8f309SYoshihiro Shimoda&ufs { 202c3b8f309SYoshihiro Shimoda status = "okay"; 203c3b8f309SYoshihiro Shimoda}; 204c3b8f309SYoshihiro Shimoda 205c3b8f309SYoshihiro Shimoda&ufs30_clk { 206c3b8f309SYoshihiro Shimoda compatible = "gpio-gate-clock"; 207c3b8f309SYoshihiro Shimoda clocks = <&rc21012_ufs>; 208c3b8f309SYoshihiro Shimoda enable-gpios = <&gpio_exp_20 4 GPIO_ACTIVE_LOW>; 209c3b8f309SYoshihiro Shimoda /delete-property/ clock-frequency; 210c3b8f309SYoshihiro Shimoda}; 211