Quelle rzg3e-smarc-som.dtsi
Sprache: unbekannt
|
|
// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
/*
* Device Tree Source for the R9A09G047E57 SMARC SoM board.
*
* Copyright (C) 2024 Renesas Electronics Corp.
*/
/*
* Please set the below switch position on the SoM and the corresponding macro
* on the board DTS:
*
* Switch position SYS.1, Macro SW_SD0_DEV_SEL:
* 0 - SD0 is connected to eMMC (default)
* 1 - SD0 is connected to uSD0 card
*
* Switch position SYS.5, Macro SW_LCD_EN:
* 0 - Select Misc. Signals routing
* 1 - Select LCD
*
* Switch position BOOT.6, Macro SW_PDM_EN:
* 0 - Select CAN routing
* 1 - Select PDM
*/
/ {
compatible = "renesas,rzg3e-smarcm", "renesas,r9a09g047e57", "renesas,r9a09g047";
aliases {
ethernet0 = ð0;
ethernet1 = ð1;
i2c2 = &i2c2;
mmc0 = &sdhi0;
mmc2 = &sdhi2;
};
memory@48000000 {
device_type = "memory";
/* First 128MB is reserved for secure area. */
reg = <0x0 0x48000000 0x0 0xf8000000>;
};
reg_1p8v: regulator-1p8v {
compatible = "regulator-fixed";
regulator-name = "fixed-1.8V";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-boot-on;
regulator-always-on;
};
reg_3p3v: regulator-3p3v {
compatible = "regulator-fixed";
regulator-name = "fixed-3.3V";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-boot-on;
regulator-always-on;
};
reg_vdd0p8v_others: regulator-vdd0p8v-others {
compatible = "regulator-fixed";
regulator-name = "fixed-0.8V";
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <800000>;
regulator-boot-on;
regulator-always-on;
};
/* 32.768kHz crystal */
x3: x3-clock {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <32768>;
};
};
&audio_extal_clk {
clock-frequency = <48000000>;
};
ð0 {
phy-handle = <&phy0>;
phy-mode = "rgmii-id";
pinctrl-0 = <ð0_pins>;
pinctrl-names = "default";
status = "okay";
};
ð1 {
phy-handle = <&phy1>;
phy-mode = "rgmii-id";
pinctrl-0 = <ð1_pins>;
pinctrl-names = "default";
status = "okay";
};
&gpu {
status = "okay";
mali-supply = <®_vdd0p8v_others>;
};
&i2c2 {
pinctrl-0 = <&i2c2_pins>;
pinctrl-names = "default";
clock-frequency = <400000>;
status = "okay";
raa215300: pmic@12 {
compatible = "renesas,raa215300";
reg = <0x12>, <0x6f>;
reg-names = "main", "rtc";
clocks = <&x3>;
clock-names = "xin";
pinctrl-0 = <&rtc_irq_pin>;
pinctrl-names = "default";
interrupts-extended = <&pinctrl RZG3E_GPIO(S, 1) IRQ_TYPE_EDGE_FALLING>;
};
};
&mdio0 {
phy0: ethernet-phy@7 {
compatible = "ethernet-phy-id0022.1640",
"ethernet-phy-ieee802.3-c22";
reg = <7>;
interrupts-extended = <&icu 3 IRQ_TYPE_LEVEL_LOW>;
rxc-skew-psec = <1400>;
txc-skew-psec = <1400>;
rxdv-skew-psec = <0>;
txdv-skew-psec = <0>;
rxd0-skew-psec = <0>;
rxd1-skew-psec = <0>;
rxd2-skew-psec = <0>;
rxd3-skew-psec = <0>;
txd0-skew-psec = <0>;
txd1-skew-psec = <0>;
txd2-skew-psec = <0>;
txd3-skew-psec = <0>;
};
};
&mdio1 {
phy1: ethernet-phy@7 {
compatible = "ethernet-phy-id0022.1640",
"ethernet-phy-ieee802.3-c22";
reg = <7>;
interrupts-extended = <&icu 16 IRQ_TYPE_LEVEL_LOW>;
rxc-skew-psec = <1400>;
txc-skew-psec = <1400>;
rxdv-skew-psec = <0>;
txdv-skew-psec = <0>;
rxd0-skew-psec = <0>;
rxd1-skew-psec = <0>;
rxd2-skew-psec = <0>;
rxd3-skew-psec = <0>;
txd0-skew-psec = <0>;
txd1-skew-psec = <0>;
txd2-skew-psec = <0>;
txd3-skew-psec = <0>;
};
};
&pinctrl {
eth0_pins: eth0 {
clk {
pinmux = <RZG3E_PORT_PINMUX(B, 1, 1)>; /* TXC */
output-enable;
};
ctrl {
pinmux = <RZG3E_PORT_PINMUX(A, 1, 1)>, /* MDC */
<RZG3E_PORT_PINMUX(A, 0, 1)>, /* MDIO */
<RZG3E_PORT_PINMUX(C, 2, 15)>, /* PHY_INTR (IRQ2) */
<RZG3E_PORT_PINMUX(C, 1, 1)>, /* RXD3 */
<RZG3E_PORT_PINMUX(C, 0, 1)>, /* RXD2 */
<RZG3E_PORT_PINMUX(B, 7, 1)>, /* RXD1 */
<RZG3E_PORT_PINMUX(B, 6, 1)>, /* RXD0 */
<RZG3E_PORT_PINMUX(B, 0, 1)>, /* RXC */
<RZG3E_PORT_PINMUX(A, 2, 1)>, /* RX_CTL */
<RZG3E_PORT_PINMUX(B, 5, 1)>, /* TXD3 */
<RZG3E_PORT_PINMUX(B, 4, 1)>, /* TXD2 */
<RZG3E_PORT_PINMUX(B, 3, 1)>, /* TXD1 */
<RZG3E_PORT_PINMUX(B, 2, 1)>, /* TXD0 */
<RZG3E_PORT_PINMUX(A, 3, 1)>; /* TX_CTL */
};
};
eth1_pins: eth1 {
clk {
pinmux = <RZG3E_PORT_PINMUX(E, 1, 1)>; /* TXC */
output-enable;
};
ctrl {
pinmux = <RZG3E_PORT_PINMUX(D, 1, 1)>, /* MDC */
<RZG3E_PORT_PINMUX(D, 0, 1)>, /* MDIO */
<RZG3E_PORT_PINMUX(F, 2, 15)>, /* PHY_INTR (IRQ15) */
<RZG3E_PORT_PINMUX(F, 1, 1)>, /* RXD3 */
<RZG3E_PORT_PINMUX(F, 0, 1)>, /* RXD2 */
<RZG3E_PORT_PINMUX(E, 7, 1)>, /* RXD1 */
<RZG3E_PORT_PINMUX(E, 6, 1)>, /* RXD0 */
<RZG3E_PORT_PINMUX(E, 0, 1)>, /* RXC */
<RZG3E_PORT_PINMUX(D, 2, 1)>, /* RX_CTL */
<RZG3E_PORT_PINMUX(E, 5, 1)>, /* TXD3 */
<RZG3E_PORT_PINMUX(E, 4, 1)>, /* TXD2 */
<RZG3E_PORT_PINMUX(E, 3, 1)>, /* TXD1 */
<RZG3E_PORT_PINMUX(E, 2, 1)>, /* TXD0 */
<RZG3E_PORT_PINMUX(D, 3, 1)>; /* TX_CTL */
};
};
i2c2_pins: i2c {
pinmux = <RZG3E_PORT_PINMUX(3, 4, 1)>, /* SCL2 */
<RZG3E_PORT_PINMUX(3, 5, 1)>; /* SDA2 */
};
rtc_irq_pin: rtc-irq {
pins = "PS1";
bias-pull-up;
};
sdhi0_emmc_pins: sd0-emmc {
sd0-ctrl {
pins = "SD0CLK", "SD0CMD";
renesas,output-impedance = <3>;
};
sd0-data {
pins = "SD0DAT0", "SD0DAT1", "SD0DAT2", "SD0DAT3",
"SD0DAT4", "SD0DAT5", "SD0DAT6", "SD0DAT7";
renesas,output-impedance = <3>;
};
sd0-rst {
pins = "SD0RSTN";
renesas,output-impedance = <3>;
};
};
sdhi0_usd_pins: sd0-usd {
sd0-cd {
pinmux = <RZG3E_PORT_PINMUX(5, 0, 8)>;
};
sd0-ctrl {
pins = "SD0CLK", "SD0CMD";
renesas,output-impedance = <3>;
};
sd0-data {
pins = "SD0DAT0", "SD0DAT1", "SD0DAT2", "SD0DAT3";
renesas,output-impedance = <3>;
};
sd0-iovs {
pins = "SD0IOVS";
renesas,output-impedance = <3>;
};
sd0-pwen {
pins = "SD0PWEN";
renesas,output-impedance = <3>;
};
};
sdhi2_pins: sd2 {
sd2-cd {
pinmux = <RZG3E_PORT_PINMUX(K, 0, 1)>; /* SD2CD */
};
sd2-ctrl {
pinmux = <RZG3E_PORT_PINMUX(H, 0, 1)>, /* SD2CLK */
<RZG3E_PORT_PINMUX(H, 1, 1)>; /* SD2CMD */
};
sd2-data {
pinmux = <RZG3E_PORT_PINMUX(H, 2, 1)>, /* SD2DAT0 */
<RZG3E_PORT_PINMUX(H, 3, 1)>, /* SD2DAT1 */
<RZG3E_PORT_PINMUX(H, 4, 1)>, /* SD2DAT2 */
<RZG3E_PORT_PINMUX(H, 5, 1)>; /* SD2DAT3 */
};
sd2-iovs {
pinmux = <RZG3E_PORT_PINMUX(K, 1, 1)>; /* SD2IOVS */
};
sd2-pwen {
pinmux = <RZG3E_PORT_PINMUX(K, 2, 1)>; /* SD2PWEN */
};
};
xspi_pins: xspi0 {
pinmux = <RZG3E_PORT_PINMUX(M, 0, 0)>, /* XSPI0_IO0 */
<RZG3E_PORT_PINMUX(M, 1, 0)>, /* XSPI0_IO1 */
<RZG3E_PORT_PINMUX(M, 2, 0)>, /* XSPI0_IO2 */
<RZG3E_PORT_PINMUX(M, 3, 0)>, /* XSPI0_IO3 */
<RZG3E_PORT_PINMUX(L, 0, 0)>, /* XSPI0_CKP */
<RZG3E_PORT_PINMUX(L, 1, 0)>; /* XSPI0_CS0 */
};
};
&qextal_clk {
clock-frequency = <24000000>;
};
&rtxin_clk {
clock-frequency = <32768>;
};
#if (SW_SD0_DEV_SEL)
&sdhi0 {
pinctrl-0 = <&sdhi0_usd_pins>;
pinctrl-1 = <&sdhi0_usd_pins>;
pinctrl-names = "default", "state_uhs";
vmmc-supply = <®_3p3v>;
vqmmc-supply = <&sdhi0_vqmmc>;
bus-width = <4>;
sd-uhs-sdr50;
sd-uhs-sdr104;
status = "okay";
};
&sdhi0_vqmmc {
status = "okay";
};
#else
&sdhi0 {
pinctrl-0 = <&sdhi0_emmc_pins>;
pinctrl-1 = <&sdhi0_emmc_pins>;
pinctrl-names = "default", "state_uhs";
vmmc-supply = <®_3p3v>;
vqmmc-supply = <®_1p8v>;
bus-width = <8>;
mmc-hs200-1_8v;
non-removable;
fixed-emmc-driver-type = <1>;
status = "okay";
};
#endif
&sdhi2 {
pinctrl-0 = <&sdhi2_pins>;
pinctrl-1 = <&sdhi2_pins>;
pinctrl-names = "default", "state_uhs";
vmmc-supply = <®_3p3v>;
vqmmc-supply = <&sdhi2_vqmmc>;
bus-width = <4>;
sd-uhs-sdr50;
sd-uhs-sdr104;
status = "okay";
};
&sdhi2_vqmmc {
status = "okay";
};
&wdt1 {
status = "okay";
};
&xspi {
pinctrl-0 = <&xspi_pins>;
pinctrl-names = "default";
status = "okay";
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
vcc-supply = <®_1p8v>;
m25p,fast-read;
spi-max-frequency = <50000000>;
spi-tx-bus-width = <4>;
spi-rx-bus-width = <4>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "bl2";
reg = <0x00000000 0x00060000>;
};
partition@60000 {
label = "fip";
reg = <0x00060000 0x007a0000>;
};
partition@800000 {
label = "user";
reg = <0x800000 0x800000>;
};
};
};
};
[ Dauer der Verarbeitung: 0.21 Sekunden
(vorverarbeitet)
]
|
2026-04-07
|