/*
 * Qualcomm APQ8016 based Dragonboard 410C board device tree source
 *
 * (C) Copyright 2015 Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
 *
 * SPDX-License-Identifier:	GPL-2.0+
 */

/dts-v1/;

#include "skeleton64.dtsi"

/ {
	model = "Qualcomm Technologies, Inc. Dragonboard 410c";
	compatible = "qcom,dragonboard", "qcom,apq8016-sbc";
	qcom,msm-id = <0xce 0x0 0xf8 0x0 0xf9 0x0 0xfa 0x0 0xf7 0x0>;
	qcom,board-id = <0x10018 0x0>;
	#address-cells = <0x2>;
	#size-cells = <0x2>;

	memory {
		device_type = "memory";
		reg = <0 0x80000000 0 0x3da00000>;
	};

	chosen {
		stdout-path = "/soc/serial@78b0000";
	};


	soc {
		#address-cells = <0x1>;
		#size-cells = <0x1>;
		ranges = <0x0 0x0 0x0 0xffffffff>;
		compatible = "simple-bus";

		clkc: qcom,gcc@1800000 {
			compatible = "qcom,gcc-apq8016";
			reg = <0x1800000 0x80000>;
			#address-cells = <0x1>;
			#size-cells = <0x0>;
		};

		serial@78b0000 {
			compatible = "qcom,msm-uartdm-v1.4";
			reg = <0x78b0000 0x200>;
			u-boot,dm-pre-reloc;
			clock = <&clkc 4>;
		};

		restart@4ab000 {
			compatible = "qcom,pshold";
			reg = <0x4ab000 0x4>;
		};

		soc_gpios: pinctrl@1000000 {
			compatible = "qcom,apq8016-pinctrl";
			reg = <0x1000000 0x300000>;
			gpio-controller;
			gpio-count = <122>;
			gpio-bank-name="soc";
			#gpio-cells = <1>;
		};

		ehci@78d9000 {
			compatible = "qcom,ehci-host";
			reg = <0x78d9000 0x400>;
		};

		sdhci@07824000 {
			compatible = "qcom,sdhci-msm-v4";
			reg = <0x7824900 0x11c 0x7824000 0x800>;
			bus-width = <0x8>;
			index = <0x0>;
			non-removable;
			clock = <&clkc 0>;
			clock-frequency = <100000000>;
		};

		sdhci@07864000 {
			compatible = "qcom,sdhci-msm-v4";
			reg = <0x7864900 0x11c 0x7864000 0x800>;
			index = <0x1>;
			bus-width = <0x4>;
			clock = <&clkc 1>;
			clock-frequency = <200000000>;
		};

		spmi@200f000 {
			compatible = "qcom,spmi-pmic-arb";
			reg = <0x200f800 0x200 0x2400000 0x400000 0x2c00000 0x400000>;
			#address-cells = <0x1>;
			#size-cells = <0x1>;
			pmic0: pm8916@0 {
				compatible = "qcom,spmi-pmic";
				reg = <0x0 0x1>;
				#address-cells = <0x1>;
				#size-cells = <0x1>;

				pm8916_pon: pm8916_pon@800 {
					compatible = "qcom,pm8916-pwrkey";
					reg = <0x800 0x96>;
					#gpio-cells = <2>;
					gpio-controller;
				};

				pm8916_gpios: pm8916_gpios@c000 {
					compatible = "qcom,pm8916-gpio";
					reg = <0xc000 0x400>;
					gpio-controller;
					gpio-count = <4>;
					#gpio-cells = <2>;
					gpio-bank-name="pmic";
				};
			};

			pmic1: pm8916@1 {
				compatible = "qcom,spmi-pmic";
				reg = <0x1 0x1>;
			};
		};
	};

	leds {
		compatible = "gpio-leds";
		user1 {
			label = "green:user1";
			gpios = <&soc_gpios 21 0>;
		};

		user2 {
			label = "green:user2";
			gpios = <&soc_gpios 120 0>;
		};

		user3 {
			label = "green:user3";
			gpios = <&pm8916_gpios 0 0>;
		};

		user4 {
			label = "green:user4";
			gpios = <&pm8916_gpios 1 0>;
		};
	};
};

#include "dragonboard410c-uboot.dtsi"
