162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Copyright 2018-2022 Toradex
462306a36Sopenharmony_ci */
562306a36Sopenharmony_ci
662306a36Sopenharmony_ci/ {
762306a36Sopenharmony_ci	chosen {
862306a36Sopenharmony_ci		stdout-path = "serial0:115200n8";
962306a36Sopenharmony_ci	};
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci	gpio-keys {
1262306a36Sopenharmony_ci		compatible = "gpio-keys";
1362306a36Sopenharmony_ci		pinctrl-names = "default";
1462306a36Sopenharmony_ci		pinctrl-0 = <&pinctrl_snvs_gpiokeys>;
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ci		power {
1762306a36Sopenharmony_ci			label = "Wake-Up";
1862306a36Sopenharmony_ci			gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>;
1962306a36Sopenharmony_ci			linux,code = <KEY_WAKEUP>;
2062306a36Sopenharmony_ci			debounce-interval = <10>;
2162306a36Sopenharmony_ci			wakeup-source;
2262306a36Sopenharmony_ci		};
2362306a36Sopenharmony_ci	};
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ci	reg_3v3: regulator-3v3 {
2662306a36Sopenharmony_ci		compatible = "regulator-fixed";
2762306a36Sopenharmony_ci		regulator-name = "3.3V";
2862306a36Sopenharmony_ci		regulator-min-microvolt = <3300000>;
2962306a36Sopenharmony_ci		regulator-max-microvolt = <3300000>;
3062306a36Sopenharmony_ci	};
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_ci	reg_5v0: regulator-5v0 {
3362306a36Sopenharmony_ci		compatible = "regulator-fixed";
3462306a36Sopenharmony_ci		regulator-name = "5V";
3562306a36Sopenharmony_ci		regulator-min-microvolt = <5000000>;
3662306a36Sopenharmony_ci		regulator-max-microvolt = <5000000>;
3762306a36Sopenharmony_ci	};
3862306a36Sopenharmony_ci
3962306a36Sopenharmony_ci	reg_usbh_vbus: regulator-usbh-vbus {
4062306a36Sopenharmony_ci		compatible = "regulator-fixed";
4162306a36Sopenharmony_ci		pinctrl-names = "default";
4262306a36Sopenharmony_ci		pinctrl-0 = <&pinctrl_usbh_reg>;
4362306a36Sopenharmony_ci		regulator-name = "VCC_USB[1-4]";
4462306a36Sopenharmony_ci		regulator-min-microvolt = <5000000>;
4562306a36Sopenharmony_ci		regulator-max-microvolt = <5000000>;
4662306a36Sopenharmony_ci		gpio = <&gpio1 2 GPIO_ACTIVE_LOW>;
4762306a36Sopenharmony_ci		vin-supply = <&reg_5v0>;
4862306a36Sopenharmony_ci	};
4962306a36Sopenharmony_ci};
5062306a36Sopenharmony_ci
5162306a36Sopenharmony_ci&adc1 {
5262306a36Sopenharmony_ci	status = "okay";
5362306a36Sopenharmony_ci};
5462306a36Sopenharmony_ci
5562306a36Sopenharmony_ci&gpio1 {
5662306a36Sopenharmony_ci	/*
5762306a36Sopenharmony_ci	 * uart25_tx_on turns the UART transceiver on. If one wants to turn the
5862306a36Sopenharmony_ci	 * transceiver off, that property has to be deleted and the gpio handled
5962306a36Sopenharmony_ci	 * in userspace.
6062306a36Sopenharmony_ci	 * The same applies to uart1_tx_on.
6162306a36Sopenharmony_ci	 */
6262306a36Sopenharmony_ci	uart25_tx_on-hog {
6362306a36Sopenharmony_ci		gpio-hog;
6462306a36Sopenharmony_ci		gpios = <15 0>;
6562306a36Sopenharmony_ci		output-high;
6662306a36Sopenharmony_ci	};
6762306a36Sopenharmony_ci};
6862306a36Sopenharmony_ci
6962306a36Sopenharmony_ci&gpio2 {
7062306a36Sopenharmony_ci	uart1_tx_on-hog {
7162306a36Sopenharmony_ci		gpio-hog;
7262306a36Sopenharmony_ci		gpios = <7 0>;
7362306a36Sopenharmony_ci		output-high;
7462306a36Sopenharmony_ci	};
7562306a36Sopenharmony_ci};
7662306a36Sopenharmony_ci
7762306a36Sopenharmony_ci&i2c1 {
7862306a36Sopenharmony_ci	status = "okay";
7962306a36Sopenharmony_ci
8062306a36Sopenharmony_ci	/* M41T0M6 real time clock on carrier board */
8162306a36Sopenharmony_ci	m41t0m6: rtc@68 {
8262306a36Sopenharmony_ci		compatible = "st,m41t0";
8362306a36Sopenharmony_ci		reg = <0x68>;
8462306a36Sopenharmony_ci	};
8562306a36Sopenharmony_ci};
8662306a36Sopenharmony_ci
8762306a36Sopenharmony_ci/* PWM <A> */
8862306a36Sopenharmony_ci&pwm4 {
8962306a36Sopenharmony_ci	status = "okay";
9062306a36Sopenharmony_ci};
9162306a36Sopenharmony_ci
9262306a36Sopenharmony_ci/* PWM <B> */
9362306a36Sopenharmony_ci&pwm5 {
9462306a36Sopenharmony_ci	status = "okay";
9562306a36Sopenharmony_ci};
9662306a36Sopenharmony_ci
9762306a36Sopenharmony_ci/* PWM <C> */
9862306a36Sopenharmony_ci&pwm6 {
9962306a36Sopenharmony_ci	status = "okay";
10062306a36Sopenharmony_ci};
10162306a36Sopenharmony_ci
10262306a36Sopenharmony_ci/* PWM <D> */
10362306a36Sopenharmony_ci&pwm7 {
10462306a36Sopenharmony_ci	status = "okay";
10562306a36Sopenharmony_ci};
10662306a36Sopenharmony_ci
10762306a36Sopenharmony_ci&uart1 {
10862306a36Sopenharmony_ci	status = "okay";
10962306a36Sopenharmony_ci};
11062306a36Sopenharmony_ci
11162306a36Sopenharmony_ci&uart2 {
11262306a36Sopenharmony_ci	status = "okay";
11362306a36Sopenharmony_ci};
11462306a36Sopenharmony_ci
11562306a36Sopenharmony_ci&uart5 {
11662306a36Sopenharmony_ci	status = "okay";
11762306a36Sopenharmony_ci};
11862306a36Sopenharmony_ci
11962306a36Sopenharmony_ci&usbotg1 {
12062306a36Sopenharmony_ci	disable-over-current;
12162306a36Sopenharmony_ci	vbus-supply = <&reg_usbh_vbus>;
12262306a36Sopenharmony_ci	status = "okay";
12362306a36Sopenharmony_ci};
12462306a36Sopenharmony_ci
12562306a36Sopenharmony_ci&usbotg2 {
12662306a36Sopenharmony_ci	disable-over-current;
12762306a36Sopenharmony_ci	vbus-supply = <&reg_usbh_vbus>;
12862306a36Sopenharmony_ci	status = "okay";
12962306a36Sopenharmony_ci};
13062306a36Sopenharmony_ci
13162306a36Sopenharmony_ci&usdhc1 {
13262306a36Sopenharmony_ci	vmmc-supply = <&reg_3v3>;
13362306a36Sopenharmony_ci	status = "okay";
13462306a36Sopenharmony_ci};
135