// SPDX-License-Identifier: GPL-2.0
/*
 * Hardkernel's Exynos4412 based ODROID-X board device tree source
 *
 * Copyright (c) 2012 Dongjin Kim <tobetter@gmail.com>
 *
 * Device tree source file for Hardkernel's ODROID-X board which is based
 * on Samsung's Exynos4412 SoC.
 */

/dts-v1/;
#include "exynos4412-odroid-common.dtsi"

/ {
	model = "Hardkernel ODROID-X board based on Exynos4412";
	compatible = "hardkernel,odroid-x", "samsung,exynos4412", "samsung,exynos4";

	memory@40000000 {
		device_type = "memory";
		reg = <0x40000000 0x3FF00000>;
	};

	leds {
		compatible = "gpio-leds";
		led1 {
			label = "led1:heart";
			gpios = <&gpc1 0 GPIO_ACTIVE_LOW>;
			default-state = "on";
			linux,default-trigger = "heartbeat";
		};
		led2 {
			label = "led2:mmc0";
			gpios = <&gpc1 2 GPIO_ACTIVE_LOW>;
			default-state = "on";
			linux,default-trigger = "mmc0";
		};
	};

	gpio_keys {
		pinctrl-0 = <&gpio_power_key &gpio_home_key>;

		home_key {
			gpios = <&gpx2 2 GPIO_ACTIVE_HIGH>;
			linux,code = <KEY_HOME>;
			label = "home key";
			debounce-interval = <10>;
			wakeup-source;
		};
	};

	regulator_p3v3 {
		compatible = "regulator-fixed";
		regulator-name = "p3v3_en";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		gpio = <&gpa1 1 GPIO_ACTIVE_LOW>;
		enable-active-high;
		regulator-always-on;
	};
};

&adc {
	vdd-supply = <&ldo10_reg>;
	status = "okay";
};

/* VDDQ for MSHC (eMMC card) */
&buck8_reg {
	regulator-name = "BUCK8_VDDQ_MMC4_2.8V";
	regulator-min-microvolt = <2800000>;
	regulator-max-microvolt = <2800000>;
};

&ehci {
	port@1 {
		status = "okay";
	};
};

&mshc_0 {
	vqmmc-supply = <&buck8_reg>;
};

&pinctrl_1 {
	gpio_home_key: home_key {
		samsung,pins = "gpx2-2";
		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
	};
};

&serial_2 {
	status = "okay";
};

&serial_3 {
	status = "okay";
};

&sound {
	simple-audio-card,name = "Odroid-X";
	simple-audio-card,widgets =
		"Headphone", "Headphone Jack",
		"Microphone", "Mic Jack",
		"Microphone", "DMIC";
	simple-audio-card,routing =
		"Headphone Jack", "HPL",
		"Headphone Jack", "HPR",
		"IN1", "Mic Jack",
		"Mic Jack", "MICBIAS";
};
