1e4d755cfSYoshihiro Shimoda// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2e4d755cfSYoshihiro Shimoda/* 3e4d755cfSYoshihiro Shimoda * Device Tree Source for the White Hawk CPU board 4e4d755cfSYoshihiro Shimoda * 5e4d755cfSYoshihiro Shimoda * Copyright (C) 2022 Renesas Electronics Corp. 6e4d755cfSYoshihiro Shimoda */ 7e4d755cfSYoshihiro Shimoda 8e4d755cfSYoshihiro Shimoda#include "r8a779g0.dtsi" 9e4d755cfSYoshihiro Shimoda 1060dc0e87SGeert Uytterhoeven#include <dt-bindings/gpio/gpio.h> 116672f840SGeert Uytterhoeven#include <dt-bindings/input/input.h> 1260dc0e87SGeert Uytterhoeven#include <dt-bindings/leds/common.h> 1360dc0e87SGeert Uytterhoeven 14e4d755cfSYoshihiro Shimoda/ { 15e4d755cfSYoshihiro Shimoda model = "Renesas White Hawk CPU board"; 16e4d755cfSYoshihiro Shimoda compatible = "renesas,white-hawk-cpu", "renesas,r8a779g0"; 17e4d755cfSYoshihiro Shimoda 187bb9e424SGeert Uytterhoeven aliases { 1996f7071dSGeert Uytterhoeven ethernet0 = &avb0; 207bb9e424SGeert Uytterhoeven serial0 = &hscif0; 217bb9e424SGeert Uytterhoeven }; 227bb9e424SGeert Uytterhoeven 237bb9e424SGeert Uytterhoeven chosen { 24f4b7dffdSKuninori Morimoto bootargs = "ignore_loglevel rw root=/dev/nfs ip=on"; 257bb9e424SGeert Uytterhoeven stdout-path = "serial0:921600n8"; 267bb9e424SGeert Uytterhoeven }; 277bb9e424SGeert Uytterhoeven 286672f840SGeert Uytterhoeven keys { 296672f840SGeert Uytterhoeven compatible = "gpio-keys"; 306672f840SGeert Uytterhoeven 316672f840SGeert Uytterhoeven pinctrl-0 = <&keys_pins>; 326672f840SGeert Uytterhoeven pinctrl-names = "default"; 336672f840SGeert Uytterhoeven 346672f840SGeert Uytterhoeven key-1 { 356672f840SGeert Uytterhoeven gpios = <&gpio5 0 GPIO_ACTIVE_LOW>; 366672f840SGeert Uytterhoeven linux,code = <KEY_1>; 376672f840SGeert Uytterhoeven label = "SW47"; 386672f840SGeert Uytterhoeven wakeup-source; 396672f840SGeert Uytterhoeven debounce-interval = <20>; 406672f840SGeert Uytterhoeven }; 416672f840SGeert Uytterhoeven 426672f840SGeert Uytterhoeven key-2 { 436672f840SGeert Uytterhoeven gpios = <&gpio5 1 GPIO_ACTIVE_LOW>; 446672f840SGeert Uytterhoeven linux,code = <KEY_2>; 456672f840SGeert Uytterhoeven label = "SW48"; 466672f840SGeert Uytterhoeven wakeup-source; 476672f840SGeert Uytterhoeven debounce-interval = <20>; 486672f840SGeert Uytterhoeven }; 496672f840SGeert Uytterhoeven 506672f840SGeert Uytterhoeven key-3 { 516672f840SGeert Uytterhoeven gpios = <&gpio5 2 GPIO_ACTIVE_LOW>; 526672f840SGeert Uytterhoeven linux,code = <KEY_3>; 536672f840SGeert Uytterhoeven label = "SW49"; 546672f840SGeert Uytterhoeven wakeup-source; 556672f840SGeert Uytterhoeven debounce-interval = <20>; 566672f840SGeert Uytterhoeven }; 576672f840SGeert Uytterhoeven }; 586672f840SGeert Uytterhoeven 5960dc0e87SGeert Uytterhoeven leds { 6060dc0e87SGeert Uytterhoeven compatible = "gpio-leds"; 6160dc0e87SGeert Uytterhoeven 6260dc0e87SGeert Uytterhoeven led-1 { 6360dc0e87SGeert Uytterhoeven gpios = <&gpio7 0 GPIO_ACTIVE_HIGH>; 6460dc0e87SGeert Uytterhoeven color = <LED_COLOR_ID_GREEN>; 6560dc0e87SGeert Uytterhoeven function = LED_FUNCTION_INDICATOR; 6660dc0e87SGeert Uytterhoeven function-enumerator = <1>; 6760dc0e87SGeert Uytterhoeven }; 6860dc0e87SGeert Uytterhoeven 6960dc0e87SGeert Uytterhoeven led-2 { 7060dc0e87SGeert Uytterhoeven gpios = <&gpio7 1 GPIO_ACTIVE_HIGH>; 7160dc0e87SGeert Uytterhoeven color = <LED_COLOR_ID_GREEN>; 7260dc0e87SGeert Uytterhoeven function = LED_FUNCTION_INDICATOR; 7360dc0e87SGeert Uytterhoeven function-enumerator = <2>; 7460dc0e87SGeert Uytterhoeven }; 7560dc0e87SGeert Uytterhoeven 7660dc0e87SGeert Uytterhoeven led-3 { 7760dc0e87SGeert Uytterhoeven gpios = <&gpio7 2 GPIO_ACTIVE_HIGH>; 7860dc0e87SGeert Uytterhoeven color = <LED_COLOR_ID_GREEN>; 7960dc0e87SGeert Uytterhoeven function = LED_FUNCTION_INDICATOR; 8060dc0e87SGeert Uytterhoeven function-enumerator = <3>; 8160dc0e87SGeert Uytterhoeven }; 8260dc0e87SGeert Uytterhoeven }; 8360dc0e87SGeert Uytterhoeven 84e4d755cfSYoshihiro Shimoda memory@48000000 { 85e4d755cfSYoshihiro Shimoda device_type = "memory"; 86e4d755cfSYoshihiro Shimoda /* first 128MB is reserved for secure area. */ 87e4d755cfSYoshihiro Shimoda reg = <0x0 0x48000000 0x0 0x78000000>; 88e4d755cfSYoshihiro Shimoda }; 89e4d755cfSYoshihiro Shimoda 90e4d755cfSYoshihiro Shimoda memory@480000000 { 91e4d755cfSYoshihiro Shimoda device_type = "memory"; 92e4d755cfSYoshihiro Shimoda reg = <0x4 0x80000000 0x0 0x80000000>; 93e4d755cfSYoshihiro Shimoda }; 94e4d755cfSYoshihiro Shimoda 95e4d755cfSYoshihiro Shimoda memory@600000000 { 96e4d755cfSYoshihiro Shimoda device_type = "memory"; 97e4d755cfSYoshihiro Shimoda reg = <0x6 0x00000000 0x1 0x00000000>; 98e4d755cfSYoshihiro Shimoda }; 99*34bd9009STakeshi Kihara 100*34bd9009STakeshi Kihara reg_1p8v: regulator-1p8v { 101*34bd9009STakeshi Kihara compatible = "regulator-fixed"; 102*34bd9009STakeshi Kihara regulator-name = "fixed-1.8V"; 103*34bd9009STakeshi Kihara regulator-min-microvolt = <1800000>; 104*34bd9009STakeshi Kihara regulator-max-microvolt = <1800000>; 105*34bd9009STakeshi Kihara regulator-boot-on; 106*34bd9009STakeshi Kihara regulator-always-on; 107*34bd9009STakeshi Kihara }; 108*34bd9009STakeshi Kihara 109*34bd9009STakeshi Kihara reg_3p3v: regulator-3p3v { 110*34bd9009STakeshi Kihara compatible = "regulator-fixed"; 111*34bd9009STakeshi Kihara regulator-name = "fixed-3.3V"; 112*34bd9009STakeshi Kihara regulator-min-microvolt = <3300000>; 113*34bd9009STakeshi Kihara regulator-max-microvolt = <3300000>; 114*34bd9009STakeshi Kihara regulator-boot-on; 115*34bd9009STakeshi Kihara regulator-always-on; 116*34bd9009STakeshi Kihara }; 117e4d755cfSYoshihiro Shimoda}; 118e4d755cfSYoshihiro Shimoda 11996f7071dSGeert Uytterhoeven&avb0 { 12096f7071dSGeert Uytterhoeven pinctrl-0 = <&avb0_pins>; 12196f7071dSGeert Uytterhoeven pinctrl-names = "default"; 12296f7071dSGeert Uytterhoeven phy-handle = <&phy0>; 12396f7071dSGeert Uytterhoeven tx-internal-delay-ps = <2000>; 12496f7071dSGeert Uytterhoeven status = "okay"; 12596f7071dSGeert Uytterhoeven 12696f7071dSGeert Uytterhoeven phy0: ethernet-phy@0 { 12796f7071dSGeert Uytterhoeven compatible = "ethernet-phy-id0022.1622", 12896f7071dSGeert Uytterhoeven "ethernet-phy-ieee802.3-c22"; 12996f7071dSGeert Uytterhoeven rxc-skew-ps = <1500>; 13096f7071dSGeert Uytterhoeven reg = <0>; 13196f7071dSGeert Uytterhoeven interrupt-parent = <&gpio7>; 13296f7071dSGeert Uytterhoeven interrupts = <5 IRQ_TYPE_LEVEL_LOW>; 13396f7071dSGeert Uytterhoeven reset-gpios = <&gpio7 10 GPIO_ACTIVE_LOW>; 13496f7071dSGeert Uytterhoeven }; 13596f7071dSGeert Uytterhoeven}; 13696f7071dSGeert Uytterhoeven 137e4d755cfSYoshihiro Shimoda&extal_clk { 138e4d755cfSYoshihiro Shimoda clock-frequency = <16666666>; 139e4d755cfSYoshihiro Shimoda}; 140e4d755cfSYoshihiro Shimoda 141e4d755cfSYoshihiro Shimoda&extalr_clk { 142e4d755cfSYoshihiro Shimoda clock-frequency = <32768>; 143e4d755cfSYoshihiro Shimoda}; 144e4d755cfSYoshihiro Shimoda 145e4d755cfSYoshihiro Shimoda&hscif0 { 146e4d755cfSYoshihiro Shimoda status = "okay"; 147e4d755cfSYoshihiro Shimoda}; 148e4d755cfSYoshihiro Shimoda 14977643815SGeert Uytterhoeven&i2c0 { 15077643815SGeert Uytterhoeven pinctrl-0 = <&i2c0_pins>; 15177643815SGeert Uytterhoeven pinctrl-names = "default"; 15277643815SGeert Uytterhoeven 15377643815SGeert Uytterhoeven status = "okay"; 15477643815SGeert Uytterhoeven clock-frequency = <400000>; 15577643815SGeert Uytterhoeven 15692378fd2SGeert Uytterhoeven io_expander_a: gpio@20 { 15792378fd2SGeert Uytterhoeven compatible = "onnn,pca9654"; 15892378fd2SGeert Uytterhoeven reg = <0x20>; 15992378fd2SGeert Uytterhoeven interrupt-parent = <&gpio0>; 16092378fd2SGeert Uytterhoeven interrupts = <0 IRQ_TYPE_LEVEL_LOW>; 16192378fd2SGeert Uytterhoeven gpio-controller; 16292378fd2SGeert Uytterhoeven #gpio-cells = <2>; 16392378fd2SGeert Uytterhoeven interrupt-controller; 16492378fd2SGeert Uytterhoeven #interrupt-cells = <2>; 16592378fd2SGeert Uytterhoeven }; 16692378fd2SGeert Uytterhoeven 16777643815SGeert Uytterhoeven eeprom@50 { 16877643815SGeert Uytterhoeven compatible = "rohm,br24g01", "atmel,24c01"; 16977643815SGeert Uytterhoeven label = "cpu-board"; 17077643815SGeert Uytterhoeven reg = <0x50>; 17177643815SGeert Uytterhoeven pagesize = <8>; 17277643815SGeert Uytterhoeven }; 17377643815SGeert Uytterhoeven}; 17477643815SGeert Uytterhoeven 175*34bd9009STakeshi Kihara&mmc0 { 176*34bd9009STakeshi Kihara pinctrl-0 = <&mmc_pins>; 177*34bd9009STakeshi Kihara pinctrl-1 = <&mmc_pins>; 178*34bd9009STakeshi Kihara pinctrl-names = "default", "state_uhs"; 179*34bd9009STakeshi Kihara 180*34bd9009STakeshi Kihara vmmc-supply = <®_3p3v>; 181*34bd9009STakeshi Kihara vqmmc-supply = <®_1p8v>; 182*34bd9009STakeshi Kihara mmc-hs200-1_8v; 183*34bd9009STakeshi Kihara mmc-hs400-1_8v; 184*34bd9009STakeshi Kihara bus-width = <8>; 185*34bd9009STakeshi Kihara no-sd; 186*34bd9009STakeshi Kihara no-sdio; 187*34bd9009STakeshi Kihara non-removable; 188*34bd9009STakeshi Kihara full-pwr-cycle-in-suspend; 189*34bd9009STakeshi Kihara status = "okay"; 190*34bd9009STakeshi Kihara}; 191*34bd9009STakeshi Kihara 1927a8d590dSGeert Uytterhoeven&pfc { 1937a8d590dSGeert Uytterhoeven pinctrl-0 = <&scif_clk_pins>; 1947a8d590dSGeert Uytterhoeven pinctrl-names = "default"; 1957a8d590dSGeert Uytterhoeven 19696f7071dSGeert Uytterhoeven avb0_pins: avb0 { 19796f7071dSGeert Uytterhoeven mux { 19896f7071dSGeert Uytterhoeven groups = "avb0_link", "avb0_mdio", "avb0_rgmii", 19996f7071dSGeert Uytterhoeven "avb0_txcrefclk"; 20096f7071dSGeert Uytterhoeven function = "avb0"; 20196f7071dSGeert Uytterhoeven }; 20296f7071dSGeert Uytterhoeven 20396f7071dSGeert Uytterhoeven pins_mdio { 20496f7071dSGeert Uytterhoeven groups = "avb0_mdio"; 20596f7071dSGeert Uytterhoeven drive-strength = <21>; 20696f7071dSGeert Uytterhoeven }; 20796f7071dSGeert Uytterhoeven 20896f7071dSGeert Uytterhoeven pins_mii { 20996f7071dSGeert Uytterhoeven groups = "avb0_rgmii"; 21096f7071dSGeert Uytterhoeven drive-strength = <21>; 21196f7071dSGeert Uytterhoeven }; 21296f7071dSGeert Uytterhoeven 21396f7071dSGeert Uytterhoeven }; 2147a8d590dSGeert Uytterhoeven hscif0_pins: hscif0 { 2157a8d590dSGeert Uytterhoeven groups = "hscif0_data"; 2167a8d590dSGeert Uytterhoeven function = "hscif0"; 2177a8d590dSGeert Uytterhoeven }; 2187a8d590dSGeert Uytterhoeven 21977643815SGeert Uytterhoeven i2c0_pins: i2c0 { 22077643815SGeert Uytterhoeven groups = "i2c0"; 22177643815SGeert Uytterhoeven function = "i2c0"; 22277643815SGeert Uytterhoeven }; 22377643815SGeert Uytterhoeven 2246672f840SGeert Uytterhoeven keys_pins: keys { 2256672f840SGeert Uytterhoeven pins = "GP_5_0", "GP_5_1", "GP_5_2"; 2266672f840SGeert Uytterhoeven bias-pull-up; 2276672f840SGeert Uytterhoeven }; 2286672f840SGeert Uytterhoeven 229*34bd9009STakeshi Kihara mmc_pins: mmc { 230*34bd9009STakeshi Kihara groups = "mmc_data8", "mmc_ctrl", "mmc_ds"; 231*34bd9009STakeshi Kihara function = "mmc"; 232*34bd9009STakeshi Kihara power-source = <1800>; 233*34bd9009STakeshi Kihara }; 234*34bd9009STakeshi Kihara 2357a8d590dSGeert Uytterhoeven scif_clk_pins: scif_clk { 2367a8d590dSGeert Uytterhoeven groups = "scif_clk"; 2377a8d590dSGeert Uytterhoeven function = "scif_clk"; 2387a8d590dSGeert Uytterhoeven }; 2397a8d590dSGeert Uytterhoeven}; 2407a8d590dSGeert Uytterhoeven 241e4d755cfSYoshihiro Shimoda&scif_clk { 242e4d755cfSYoshihiro Shimoda clock-frequency = <24000000>; 243e4d755cfSYoshihiro Shimoda}; 244495e36c3SGeert Uytterhoeven 245495e36c3SGeert Uytterhoeven&rwdt { 246495e36c3SGeert Uytterhoeven timeout-sec = <60>; 247495e36c3SGeert Uytterhoeven status = "okay"; 248495e36c3SGeert Uytterhoeven}; 249