| // SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
| /* |
| * Device Tree Source for the RZ/V2M (r9a09g011) Evaluation Kit Board |
| * |
| * Copyright (C) 2022 Renesas Electronics Corp. |
| */ |
| |
| /dts-v1/; |
| #include "r9a09g011.dtsi" |
| #include <dt-bindings/gpio/gpio.h> |
| #include <dt-bindings/pinctrl/rzv2m-pinctrl.h> |
| |
| / { |
| model = "RZ/V2M Evaluation Kit 2.0"; |
| compatible = "renesas,rzv2mevk2", "renesas,r9a09g011"; |
| |
| aliases { |
| serial0 = &uart0; |
| ethernet0 = &avb; |
| }; |
| |
| chosen { |
| stdout-path = "serial0:115200n8"; |
| }; |
| |
| connector { |
| compatible = "usb-c-connector"; |
| label = "USB-C"; |
| data-role = "dual"; |
| |
| ports { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| port@0 { |
| reg = <0>; |
| hs_ep: endpoint { |
| remote-endpoint = <&usb3_hs_ep>; |
| }; |
| }; |
| |
| port@1 { |
| reg = <1>; |
| ss_ep: endpoint { |
| remote-endpoint = <&hd3ss3220_in_ep>; |
| }; |
| }; |
| }; |
| }; |
| |
| memory@58000000 { |
| device_type = "memory"; |
| /* |
| * first 1.25GiB is reserved for ISP Firmware, |
| * next 128MiB is reserved for secure area. |
| */ |
| reg = <0x0 0x58000000 0x0 0x28000000>; |
| }; |
| |
| memory@180000000 { |
| device_type = "memory"; |
| reg = <0x1 0x80000000 0x0 0x80000000>; |
| }; |
| |
| reg_1v8: regulator-1v8 { |
| compatible = "regulator-fixed"; |
| regulator-name = "fixed-1.8V"; |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <1800000>; |
| regulator-boot-on; |
| regulator-always-on; |
| }; |
| |
| reg_3v3: regulator-3v3 { |
| compatible = "regulator-fixed"; |
| regulator-name = "fixed-3.3V"; |
| regulator-min-microvolt = <3300000>; |
| regulator-max-microvolt = <3300000>; |
| regulator-boot-on; |
| regulator-always-on; |
| }; |
| |
| vccq_sdhi0: regulator-vccq-sdhi0 { |
| compatible = "regulator-gpio"; |
| |
| regulator-name = "SDHI0 VccQ"; |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <3300000>; |
| |
| gpios = <&pwc 0 GPIO_ACTIVE_HIGH>; |
| gpios-states = <1>; |
| states = <3300000 0>, <1800000 1>; |
| }; |
| }; |
| |
| &avb { |
| renesas,no-ether-link; |
| phy-handle = <&phy0>; |
| phy-mode = "gmii"; |
| status = "okay"; |
| |
| phy0: ethernet-phy@0 { |
| compatible = "ethernet-phy-id001c.c916", |
| "ethernet-phy-ieee802.3-c22"; |
| reg = <0>; |
| }; |
| }; |
| |
| &emmc { |
| pinctrl-0 = <&emmc_pins>; |
| pinctrl-1 = <&emmc_pins>; |
| pinctrl-names = "default", "state_uhs"; |
| |
| vmmc-supply = <®_3v3>; |
| vqmmc-supply = <®_1v8>; |
| bus-width = <8>; |
| mmc-hs200-1_8v; |
| no-sd; |
| no-sdio; |
| non-removable; |
| fixed-emmc-driver-type = <1>; |
| max-frequency = <200000000>; |
| status = "okay"; |
| }; |
| |
| &extal_clk { |
| clock-frequency = <48000000>; |
| }; |
| |
| &i2c0 { |
| pinctrl-0 = <&i2c0_pins>; |
| pinctrl-names = "default"; |
| clock-frequency = <400000>; |
| status = "okay"; |
| |
| hd3ss3220@47 { |
| compatible = "ti,hd3ss3220"; |
| reg = <0x47>; |
| |
| ports { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| port@0 { |
| reg = <0>; |
| hd3ss3220_in_ep: endpoint { |
| remote-endpoint = <&ss_ep>; |
| }; |
| }; |
| |
| port@1 { |
| reg = <1>; |
| hd3ss3220_out_ep: endpoint { |
| remote-endpoint = <&usb3_role_switch>; |
| }; |
| }; |
| }; |
| }; |
| }; |
| |
| &i2c2 { |
| pinctrl-0 = <&i2c2_pins>; |
| pinctrl-names = "default"; |
| clock-frequency = <100000>; |
| status = "okay"; |
| }; |
| |
| &pinctrl { |
| emmc_pins: emmc { |
| data { |
| pinmux = <RZV2M_PORT_PINMUX(0, 0, 2)>, /* MMDAT0 */ |
| <RZV2M_PORT_PINMUX(0, 1, 2)>, /* MMDAT1 */ |
| <RZV2M_PORT_PINMUX(0, 2, 2)>, /* MMDAT2 */ |
| <RZV2M_PORT_PINMUX(0, 3, 2)>, /* MMDAT3 */ |
| <RZV2M_PORT_PINMUX(0, 4, 2)>, /* MMDAT4 */ |
| <RZV2M_PORT_PINMUX(0, 5, 2)>, /* MMDAT5 */ |
| <RZV2M_PORT_PINMUX(0, 6, 2)>, /* MMDAT6 */ |
| <RZV2M_PORT_PINMUX(0, 7, 2)>; /* MMDAT7 */ |
| power-source = <1800>; |
| }; |
| |
| ctrl { |
| pinmux = <RZV2M_PORT_PINMUX(0, 10, 2)>, /* MMCMD */ |
| <RZV2M_PORT_PINMUX(0, 11, 2)>; /* MMCLK */ |
| power-source = <1800>; |
| }; |
| }; |
| |
| i2c0_pins: i2c0 { |
| pinmux = <RZV2M_PORT_PINMUX(5, 0, 2)>, /* SDA */ |
| <RZV2M_PORT_PINMUX(5, 1, 2)>; /* SCL */ |
| }; |
| |
| i2c2_pins: i2c2 { |
| pinmux = <RZV2M_PORT_PINMUX(3, 8, 2)>, /* SDA */ |
| <RZV2M_PORT_PINMUX(3, 9, 2)>; /* SCL */ |
| }; |
| |
| sdhi0_pins: sd0 { |
| data { |
| pinmux = <RZV2M_PORT_PINMUX(8, 2, 1)>, /* SD0DAT0 */ |
| <RZV2M_PORT_PINMUX(8, 3, 1)>, /* SD0DAT1 */ |
| <RZV2M_PORT_PINMUX(8, 4, 1)>, /* SD0DAT2 */ |
| <RZV2M_PORT_PINMUX(8, 5, 1)>; /* SD0DAT3 */ |
| power-source = <3300>; |
| }; |
| |
| ctrl { |
| pinmux = <RZV2M_PORT_PINMUX(8, 0, 1)>, /* SD0CMD */ |
| <RZV2M_PORT_PINMUX(8, 1, 1)>; /* SD0CLK */ |
| power-source = <3300>; |
| }; |
| |
| cd { |
| pinmux = <RZV2M_PORT_PINMUX(8, 7, 1)>; /* SD0CD */ |
| power-source = <3300>; |
| }; |
| }; |
| |
| sdhi0_pins_uhs: sd0-uhs { |
| data { |
| pinmux = <RZV2M_PORT_PINMUX(8, 2, 1)>, /* SD0DAT0 */ |
| <RZV2M_PORT_PINMUX(8, 3, 1)>, /* SD0DAT1 */ |
| <RZV2M_PORT_PINMUX(8, 4, 1)>, /* SD0DAT2 */ |
| <RZV2M_PORT_PINMUX(8, 5, 1)>; /* SD0DAT3 */ |
| power-source = <1800>; |
| }; |
| |
| ctrl { |
| pinmux = <RZV2M_PORT_PINMUX(8, 0, 1)>, /* SD0CMD */ |
| <RZV2M_PORT_PINMUX(8, 1, 1)>; /* SD0CLK */ |
| power-source = <1800>; |
| }; |
| |
| cd { |
| pinmux = <RZV2M_PORT_PINMUX(8, 7, 1)>; /* SD0CD */ |
| power-source = <1800>; |
| }; |
| }; |
| |
| uart0_pins: uart0 { |
| pinmux = <RZV2M_PORT_PINMUX(3, 0, 2)>, /* UATX0 */ |
| <RZV2M_PORT_PINMUX(3, 1, 2)>, /* UARX0 */ |
| <RZV2M_PORT_PINMUX(3, 2, 2)>, /* UACTS0N */ |
| <RZV2M_PORT_PINMUX(3, 3, 2)>; /* UARTS0N */ |
| }; |
| }; |
| |
| &pwc { |
| renesas,rzv2m-pwc-power; |
| status = "okay"; |
| }; |
| |
| &sdhi0 { |
| pinctrl-0 = <&sdhi0_pins>; |
| pinctrl-1 = <&sdhi0_pins_uhs>; |
| pinctrl-names = "default", "state_uhs"; |
| |
| vmmc-supply = <®_3v3>; |
| vqmmc-supply = <&vccq_sdhi0>; |
| bus-width = <4>; |
| sd-uhs-sdr50; |
| sd-uhs-sdr104; |
| status = "okay"; |
| }; |
| |
| &uart0 { |
| pinctrl-0 = <&uart0_pins>; |
| pinctrl-names = "default"; |
| |
| uart-has-rtscts; |
| status = "okay"; |
| }; |
| |
| &usb3drd { |
| status = "okay"; |
| }; |
| |
| &usb3host { |
| status = "okay"; |
| }; |
| |
| &usb3peri { |
| companion = <&usb3host>; |
| status = "okay"; |
| usb-role-switch; |
| |
| ports { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| port@0 { |
| reg = <0>; |
| usb3_hs_ep: endpoint { |
| remote-endpoint = <&hs_ep>; |
| }; |
| }; |
| |
| port@1 { |
| reg = <1>; |
| usb3_role_switch: endpoint { |
| remote-endpoint = <&hd3ss3220_out_ep>; |
| }; |
| }; |
| }; |
| }; |
| |
| &wdt0 { |
| status = "okay"; |
| }; |