162306a36Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Device Tree Source for the RZ/{G2L,V2L} SMARC pincontrol parts
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/pinctrl/rzg2l-pinctrl.h>
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci&pinctrl {
1262306a36Sopenharmony_ci	pinctrl-0 = <&sound_clk_pins>;
1362306a36Sopenharmony_ci	pinctrl-names = "default";
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ci	can0_pins: can0 {
1662306a36Sopenharmony_ci		pinmux = <RZG2L_PORT_PINMUX(10, 1, 2)>, /* TX */
1762306a36Sopenharmony_ci			 <RZG2L_PORT_PINMUX(11, 0, 2)>; /* RX */
1862306a36Sopenharmony_ci	};
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ci	/* SW7 should be at position 2->3 so that GPIO8_CAN0_STB line is activated */
2162306a36Sopenharmony_ci	can0-stb-hog {
2262306a36Sopenharmony_ci		gpio-hog;
2362306a36Sopenharmony_ci		gpios = <RZG2L_GPIO(42, 2) GPIO_ACTIVE_HIGH>;
2462306a36Sopenharmony_ci		output-low;
2562306a36Sopenharmony_ci		line-name = "can0_stb";
2662306a36Sopenharmony_ci	};
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_ci	can1_pins: can1 {
2962306a36Sopenharmony_ci		pinmux = <RZG2L_PORT_PINMUX(12, 1, 2)>, /* TX */
3062306a36Sopenharmony_ci			 <RZG2L_PORT_PINMUX(13, 0, 2)>; /* RX */
3162306a36Sopenharmony_ci	};
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ci	/* SW8 should be at position 2->3 so that GPIO9_CAN1_STB line is activated */
3462306a36Sopenharmony_ci	can1-stb-hog {
3562306a36Sopenharmony_ci		gpio-hog;
3662306a36Sopenharmony_ci		gpios = <RZG2L_GPIO(42, 3) GPIO_ACTIVE_HIGH>;
3762306a36Sopenharmony_ci		output-low;
3862306a36Sopenharmony_ci		line-name = "can1_stb";
3962306a36Sopenharmony_ci	};
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci	i2c0_pins: i2c0 {
4262306a36Sopenharmony_ci		pins = "RIIC0_SDA", "RIIC0_SCL";
4362306a36Sopenharmony_ci		input-enable;
4462306a36Sopenharmony_ci	};
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_ci	i2c1_pins: i2c1 {
4762306a36Sopenharmony_ci		pins = "RIIC1_SDA", "RIIC1_SCL";
4862306a36Sopenharmony_ci		input-enable;
4962306a36Sopenharmony_ci	};
5062306a36Sopenharmony_ci
5162306a36Sopenharmony_ci	i2c3_pins: i2c3 {
5262306a36Sopenharmony_ci		pinmux = <RZG2L_PORT_PINMUX(18, 0, 3)>, /* SDA */
5362306a36Sopenharmony_ci			 <RZG2L_PORT_PINMUX(18, 1, 3)>; /* SCL */
5462306a36Sopenharmony_ci	};
5562306a36Sopenharmony_ci
5662306a36Sopenharmony_ci	mtu3_pins: mtu3 {
5762306a36Sopenharmony_ci		mtu3-ext-clk-input-pin {
5862306a36Sopenharmony_ci			pinmux = <RZG2L_PORT_PINMUX(48, 0, 4)>, /* MTCLKA */
5962306a36Sopenharmony_ci				 <RZG2L_PORT_PINMUX(48, 1, 4)>; /* MTCLKB */
6062306a36Sopenharmony_ci		};
6162306a36Sopenharmony_ci
6262306a36Sopenharmony_ci		mtu3-pwm {
6362306a36Sopenharmony_ci			pinmux = <RZG2L_PORT_PINMUX(44, 0, 4)>, /* MTIOC3A */
6462306a36Sopenharmony_ci				 <RZG2L_PORT_PINMUX(44, 1, 4)>, /* MTIOC3B */
6562306a36Sopenharmony_ci				 <RZG2L_PORT_PINMUX(44, 2, 4)>, /* MTIOC3C */
6662306a36Sopenharmony_ci				 <RZG2L_PORT_PINMUX(44, 3, 4)>; /* MTIOC3D */
6762306a36Sopenharmony_ci		};
6862306a36Sopenharmony_ci
6962306a36Sopenharmony_ci#if MTU3_COUNTER_Z_PHASE_SIGNAL
7062306a36Sopenharmony_ci		mtu3-zphase-clk {
7162306a36Sopenharmony_ci			pinmux = <RZG2L_PORT_PINMUX(19, 0, 3)>; /* MTIOC1A */
7262306a36Sopenharmony_ci		};
7362306a36Sopenharmony_ci#endif /* MTU3_COUNTER_Z_PHASE_SIGNAL */
7462306a36Sopenharmony_ci	};
7562306a36Sopenharmony_ci
7662306a36Sopenharmony_ci	scif0_pins: scif0 {
7762306a36Sopenharmony_ci		pinmux = <RZG2L_PORT_PINMUX(38, 0, 1)>,	/* TxD */
7862306a36Sopenharmony_ci			 <RZG2L_PORT_PINMUX(38, 1, 1)>;	/* RxD */
7962306a36Sopenharmony_ci	};
8062306a36Sopenharmony_ci
8162306a36Sopenharmony_ci	scif2_pins: scif2 {
8262306a36Sopenharmony_ci		pinmux = <RZG2L_PORT_PINMUX(48, 0, 1)>, /* TxD */
8362306a36Sopenharmony_ci			 <RZG2L_PORT_PINMUX(48, 1, 1)>, /* RxD */
8462306a36Sopenharmony_ci			 <RZG2L_PORT_PINMUX(48, 3, 1)>, /* CTS# */
8562306a36Sopenharmony_ci			 <RZG2L_PORT_PINMUX(48, 4, 1)>; /* RTS# */
8662306a36Sopenharmony_ci	};
8762306a36Sopenharmony_ci
8862306a36Sopenharmony_ci	sd1-pwr-en-hog {
8962306a36Sopenharmony_ci		gpio-hog;
9062306a36Sopenharmony_ci		gpios = <RZG2L_GPIO(39, 2) GPIO_ACTIVE_HIGH>;
9162306a36Sopenharmony_ci		output-high;
9262306a36Sopenharmony_ci		line-name = "sd1_pwr_en";
9362306a36Sopenharmony_ci	};
9462306a36Sopenharmony_ci
9562306a36Sopenharmony_ci	sdhi1_pins: sd1 {
9662306a36Sopenharmony_ci		sd1_data {
9762306a36Sopenharmony_ci			pins = "SD1_DATA0", "SD1_DATA1", "SD1_DATA2", "SD1_DATA3";
9862306a36Sopenharmony_ci			power-source = <3300>;
9962306a36Sopenharmony_ci		};
10062306a36Sopenharmony_ci
10162306a36Sopenharmony_ci		sd1_ctrl {
10262306a36Sopenharmony_ci			pins = "SD1_CLK", "SD1_CMD";
10362306a36Sopenharmony_ci			power-source = <3300>;
10462306a36Sopenharmony_ci		};
10562306a36Sopenharmony_ci
10662306a36Sopenharmony_ci		sd1_mux {
10762306a36Sopenharmony_ci			pinmux = <RZG2L_PORT_PINMUX(19, 0, 1)>; /* SD1_CD */
10862306a36Sopenharmony_ci		};
10962306a36Sopenharmony_ci	};
11062306a36Sopenharmony_ci
11162306a36Sopenharmony_ci	sdhi1_pins_uhs: sd1_uhs {
11262306a36Sopenharmony_ci		sd1_data_uhs {
11362306a36Sopenharmony_ci			pins = "SD1_DATA0", "SD1_DATA1", "SD1_DATA2", "SD1_DATA3";
11462306a36Sopenharmony_ci			power-source = <1800>;
11562306a36Sopenharmony_ci		};
11662306a36Sopenharmony_ci
11762306a36Sopenharmony_ci		sd1_ctrl_uhs {
11862306a36Sopenharmony_ci			pins = "SD1_CLK", "SD1_CMD";
11962306a36Sopenharmony_ci			power-source = <1800>;
12062306a36Sopenharmony_ci		};
12162306a36Sopenharmony_ci
12262306a36Sopenharmony_ci		sd1_mux_uhs {
12362306a36Sopenharmony_ci			pinmux = <RZG2L_PORT_PINMUX(19, 0, 1)>; /* SD1_CD */
12462306a36Sopenharmony_ci		};
12562306a36Sopenharmony_ci	};
12662306a36Sopenharmony_ci
12762306a36Sopenharmony_ci	sound_clk_pins: sound_clk {
12862306a36Sopenharmony_ci		pins = "AUDIO_CLK1", "AUDIO_CLK2";
12962306a36Sopenharmony_ci		input-enable;
13062306a36Sopenharmony_ci	};
13162306a36Sopenharmony_ci
13262306a36Sopenharmony_ci	spi1_pins: spi1 {
13362306a36Sopenharmony_ci		pinmux = <RZG2L_PORT_PINMUX(44, 0, 1)>, /* CK */
13462306a36Sopenharmony_ci			 <RZG2L_PORT_PINMUX(44, 1, 1)>, /* MOSI */
13562306a36Sopenharmony_ci			 <RZG2L_PORT_PINMUX(44, 2, 1)>, /* MISO */
13662306a36Sopenharmony_ci			 <RZG2L_PORT_PINMUX(44, 3, 1)>; /* SSL */
13762306a36Sopenharmony_ci	};
13862306a36Sopenharmony_ci
13962306a36Sopenharmony_ci	ssi0_pins: ssi0 {
14062306a36Sopenharmony_ci		pinmux = <RZG2L_PORT_PINMUX(45, 0, 1)>, /* BCK */
14162306a36Sopenharmony_ci			 <RZG2L_PORT_PINMUX(45, 1, 1)>, /* RCK */
14262306a36Sopenharmony_ci			 <RZG2L_PORT_PINMUX(45, 2, 1)>, /* TXD */
14362306a36Sopenharmony_ci			 <RZG2L_PORT_PINMUX(45, 3, 1)>; /* RXD */
14462306a36Sopenharmony_ci	};
14562306a36Sopenharmony_ci
14662306a36Sopenharmony_ci	usb0_pins: usb0 {
14762306a36Sopenharmony_ci		pinmux = <RZG2L_PORT_PINMUX(4, 0, 1)>, /* VBUS */
14862306a36Sopenharmony_ci			 <RZG2L_PORT_PINMUX(5, 0, 1)>, /* OVC */
14962306a36Sopenharmony_ci			 <RZG2L_PORT_PINMUX(5, 1, 1)>; /* OTG_ID */
15062306a36Sopenharmony_ci	};
15162306a36Sopenharmony_ci
15262306a36Sopenharmony_ci	usb1_pins: usb1 {
15362306a36Sopenharmony_ci		pinmux = <RZG2L_PORT_PINMUX(42, 0, 1)>, /* VBUS */
15462306a36Sopenharmony_ci			 <RZG2L_PORT_PINMUX(42, 1, 1)>; /* OVC */
15562306a36Sopenharmony_ci	};
15662306a36Sopenharmony_ci};
15762306a36Sopenharmony_ci
158