1*626f048bSMateusz Kulikowski/*
2*626f048bSMateusz Kulikowski * Qualcomm APQ8016 based Dragonboard 410C board device tree source
3*626f048bSMateusz Kulikowski *
4*626f048bSMateusz Kulikowski * (C) Copyright 2015 Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
5*626f048bSMateusz Kulikowski *
6*626f048bSMateusz Kulikowski * SPDX-License-Identifier:	GPL-2.0+
7*626f048bSMateusz Kulikowski */
8*626f048bSMateusz Kulikowski
9*626f048bSMateusz Kulikowski/dts-v1/;
10*626f048bSMateusz Kulikowski
11*626f048bSMateusz Kulikowski#include "skeleton64.dtsi"
12*626f048bSMateusz Kulikowski
13*626f048bSMateusz Kulikowski/ {
14*626f048bSMateusz Kulikowski	model = "Qualcomm Technologies, Inc. Dragonboard 410c";
15*626f048bSMateusz Kulikowski	compatible = "qcom,dragonboard", "qcom,apq8016-sbc";
16*626f048bSMateusz Kulikowski	qcom,msm-id = <0xce 0x0 0xf8 0x0 0xf9 0x0 0xfa 0x0 0xf7 0x0>;
17*626f048bSMateusz Kulikowski	qcom,board-id = <0x10018 0x0>;
18*626f048bSMateusz Kulikowski	#address-cells = <0x2>;
19*626f048bSMateusz Kulikowski	#size-cells = <0x2>;
20*626f048bSMateusz Kulikowski
21*626f048bSMateusz Kulikowski	memory {
22*626f048bSMateusz Kulikowski		device_type = "memory";
23*626f048bSMateusz Kulikowski		reg = <0 0x80000000 0 0x3da00000>;
24*626f048bSMateusz Kulikowski	};
25*626f048bSMateusz Kulikowski
26*626f048bSMateusz Kulikowski	chosen {
27*626f048bSMateusz Kulikowski		stdout-path = "/soc/serial@78b0000";
28*626f048bSMateusz Kulikowski	};
29*626f048bSMateusz Kulikowski
30*626f048bSMateusz Kulikowski
31*626f048bSMateusz Kulikowski	soc {
32*626f048bSMateusz Kulikowski		#address-cells = <0x1>;
33*626f048bSMateusz Kulikowski		#size-cells = <0x1>;
34*626f048bSMateusz Kulikowski		ranges = <0x0 0x0 0x0 0xffffffff>;
35*626f048bSMateusz Kulikowski		compatible = "simple-bus";
36*626f048bSMateusz Kulikowski
37*626f048bSMateusz Kulikowski		clkc: qcom,gcc@1800000 {
38*626f048bSMateusz Kulikowski			compatible = "qcom,gcc-apq8016";
39*626f048bSMateusz Kulikowski			reg = <0x1800000 0x80000>;
40*626f048bSMateusz Kulikowski			#address-cells = <0x1>;
41*626f048bSMateusz Kulikowski			#size-cells = <0x0>;
42*626f048bSMateusz Kulikowski		};
43*626f048bSMateusz Kulikowski
44*626f048bSMateusz Kulikowski		serial@78b0000 {
45*626f048bSMateusz Kulikowski			compatible = "qcom,msm-uartdm-v1.4";
46*626f048bSMateusz Kulikowski			reg = <0x78b0000 0x200>;
47*626f048bSMateusz Kulikowski			u-boot,dm-pre-reloc;
48*626f048bSMateusz Kulikowski			clock = <&clkc 4>;
49*626f048bSMateusz Kulikowski		};
50*626f048bSMateusz Kulikowski
51*626f048bSMateusz Kulikowski		restart@4ab000 {
52*626f048bSMateusz Kulikowski			compatible = "qcom,pshold";
53*626f048bSMateusz Kulikowski			reg = <0x4ab000 0x4>;
54*626f048bSMateusz Kulikowski		};
55*626f048bSMateusz Kulikowski
56*626f048bSMateusz Kulikowski		soc_gpios: pinctrl@1000000 {
57*626f048bSMateusz Kulikowski			compatible = "qcom,apq8016-pinctrl";
58*626f048bSMateusz Kulikowski			reg = <0x1000000 0x300000>;
59*626f048bSMateusz Kulikowski			gpio-controller;
60*626f048bSMateusz Kulikowski			gpio-count = <122>;
61*626f048bSMateusz Kulikowski			gpio-bank-name="soc";
62*626f048bSMateusz Kulikowski			#gpio-cells = <1>;
63*626f048bSMateusz Kulikowski		};
64*626f048bSMateusz Kulikowski
65*626f048bSMateusz Kulikowski		ehci@78d9000 {
66*626f048bSMateusz Kulikowski			compatible = "qcom,ehci-host";
67*626f048bSMateusz Kulikowski			reg = <0x78d9000 0x400>;
68*626f048bSMateusz Kulikowski		};
69*626f048bSMateusz Kulikowski
70*626f048bSMateusz Kulikowski		sdhci@07824000 {
71*626f048bSMateusz Kulikowski			compatible = "qcom,sdhci-msm-v4";
72*626f048bSMateusz Kulikowski			reg = <0x7824900 0x11c 0x7824000 0x800>;
73*626f048bSMateusz Kulikowski			bus-width = <0x8>;
74*626f048bSMateusz Kulikowski			index = <0x0>;
75*626f048bSMateusz Kulikowski			non-removable;
76*626f048bSMateusz Kulikowski			clock = <&clkc 0>;
77*626f048bSMateusz Kulikowski			clock-frequency = <100000000>;
78*626f048bSMateusz Kulikowski		};
79*626f048bSMateusz Kulikowski
80*626f048bSMateusz Kulikowski		sdhci@07864000 {
81*626f048bSMateusz Kulikowski			compatible = "qcom,sdhci-msm-v4";
82*626f048bSMateusz Kulikowski			reg = <0x7864900 0x11c 0x7864000 0x800>;
83*626f048bSMateusz Kulikowski			index = <0x1>;
84*626f048bSMateusz Kulikowski			bus-width = <0x4>;
85*626f048bSMateusz Kulikowski			clock = <&clkc 1>;
86*626f048bSMateusz Kulikowski			clock-frequency = <200000000>;
87*626f048bSMateusz Kulikowski		};
88*626f048bSMateusz Kulikowski
89*626f048bSMateusz Kulikowski		spmi@200f000 {
90*626f048bSMateusz Kulikowski			compatible = "qcom,spmi-pmic-arb";
91*626f048bSMateusz Kulikowski			reg = <0x200f800 0x200 0x2400000 0x400000 0x2c00000 0x400000>;
92*626f048bSMateusz Kulikowski			#address-cells = <0x1>;
93*626f048bSMateusz Kulikowski			#size-cells = <0x1>;
94*626f048bSMateusz Kulikowski			pmic0: pm8916@0 {
95*626f048bSMateusz Kulikowski				compatible = "qcom,spmi-pmic";
96*626f048bSMateusz Kulikowski				reg = <0x0 0x1>;
97*626f048bSMateusz Kulikowski				#address-cells = <0x1>;
98*626f048bSMateusz Kulikowski				#size-cells = <0x1>;
99*626f048bSMateusz Kulikowski
100*626f048bSMateusz Kulikowski				pm8916_pon: pm8916_pon@800 {
101*626f048bSMateusz Kulikowski					compatible = "qcom,pm8916-pwrkey";
102*626f048bSMateusz Kulikowski					reg = <0x800 0x96>;
103*626f048bSMateusz Kulikowski					#gpio-cells = <2>;
104*626f048bSMateusz Kulikowski					gpio-controller;
105*626f048bSMateusz Kulikowski				};
106*626f048bSMateusz Kulikowski
107*626f048bSMateusz Kulikowski				pm8916_gpios: pm8916_gpios@c000 {
108*626f048bSMateusz Kulikowski					compatible = "qcom,pm8916-gpio";
109*626f048bSMateusz Kulikowski					reg = <0xc000 0x400>;
110*626f048bSMateusz Kulikowski					gpio-controller;
111*626f048bSMateusz Kulikowski					gpio-count = <4>;
112*626f048bSMateusz Kulikowski					#gpio-cells = <2>;
113*626f048bSMateusz Kulikowski					gpio-bank-name="pmic";
114*626f048bSMateusz Kulikowski				};
115*626f048bSMateusz Kulikowski			};
116*626f048bSMateusz Kulikowski
117*626f048bSMateusz Kulikowski			pmic1: pm8916@1 {
118*626f048bSMateusz Kulikowski				compatible = "qcom,spmi-pmic";
119*626f048bSMateusz Kulikowski				reg = <0x1 0x1>;
120*626f048bSMateusz Kulikowski			};
121*626f048bSMateusz Kulikowski		};
122*626f048bSMateusz Kulikowski	};
123*626f048bSMateusz Kulikowski
124*626f048bSMateusz Kulikowski	leds {
125*626f048bSMateusz Kulikowski		compatible = "gpio-leds";
126*626f048bSMateusz Kulikowski		user1 {
127*626f048bSMateusz Kulikowski			label = "green:user1";
128*626f048bSMateusz Kulikowski			gpios = <&soc_gpios 21 0>;
129*626f048bSMateusz Kulikowski		};
130*626f048bSMateusz Kulikowski
131*626f048bSMateusz Kulikowski		user2 {
132*626f048bSMateusz Kulikowski			label = "green:user2";
133*626f048bSMateusz Kulikowski			gpios = <&soc_gpios 120 0>;
134*626f048bSMateusz Kulikowski		};
135*626f048bSMateusz Kulikowski
136*626f048bSMateusz Kulikowski		user3 {
137*626f048bSMateusz Kulikowski			label = "green:user3";
138*626f048bSMateusz Kulikowski			gpios = <&pm8916_gpios 0 0>;
139*626f048bSMateusz Kulikowski		};
140*626f048bSMateusz Kulikowski
141*626f048bSMateusz Kulikowski		user4 {
142*626f048bSMateusz Kulikowski			label = "green:user4";
143*626f048bSMateusz Kulikowski			gpios = <&pm8916_gpios 1 0>;
144*626f048bSMateusz Kulikowski		};
145*626f048bSMateusz Kulikowski	};
146*626f048bSMateusz Kulikowski};
147*626f048bSMateusz Kulikowski
148*626f048bSMateusz Kulikowski#include "dragonboard410c-uboot.dtsi"
149