1*83d290c5STom Rini// SPDX-License-Identifier: GPL-2.0+
2626f048bSMateusz Kulikowski/*
3626f048bSMateusz Kulikowski * Qualcomm APQ8016 based Dragonboard 410C board device tree source
4626f048bSMateusz Kulikowski *
5626f048bSMateusz Kulikowski * (C) Copyright 2015 Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
6626f048bSMateusz Kulikowski */
7626f048bSMateusz Kulikowski
8626f048bSMateusz Kulikowski/dts-v1/;
9626f048bSMateusz Kulikowski
10626f048bSMateusz Kulikowski#include "skeleton64.dtsi"
11626f048bSMateusz Kulikowski
12626f048bSMateusz Kulikowski/ {
13626f048bSMateusz Kulikowski	model = "Qualcomm Technologies, Inc. Dragonboard 410c";
14626f048bSMateusz Kulikowski	compatible = "qcom,dragonboard", "qcom,apq8016-sbc";
15626f048bSMateusz Kulikowski	qcom,msm-id = <0xce 0x0 0xf8 0x0 0xf9 0x0 0xfa 0x0 0xf7 0x0>;
16626f048bSMateusz Kulikowski	qcom,board-id = <0x10018 0x0>;
17626f048bSMateusz Kulikowski	#address-cells = <0x2>;
18626f048bSMateusz Kulikowski	#size-cells = <0x2>;
19626f048bSMateusz Kulikowski
20626f048bSMateusz Kulikowski	memory {
21626f048bSMateusz Kulikowski		device_type = "memory";
22626f048bSMateusz Kulikowski		reg = <0 0x80000000 0 0x3da00000>;
23626f048bSMateusz Kulikowski	};
24626f048bSMateusz Kulikowski
2535bdd839SRob Clark	reserved-memory {
2635bdd839SRob Clark		#address-cells = <2>;
2735bdd839SRob Clark		#size-cells = <2>;
2835bdd839SRob Clark		ranges;
2935bdd839SRob Clark	};
3035bdd839SRob Clark
31626f048bSMateusz Kulikowski	chosen {
32626f048bSMateusz Kulikowski		stdout-path = "/soc/serial@78b0000";
33626f048bSMateusz Kulikowski	};
34626f048bSMateusz Kulikowski
35626f048bSMateusz Kulikowski	soc {
36626f048bSMateusz Kulikowski		#address-cells = <0x1>;
37626f048bSMateusz Kulikowski		#size-cells = <0x1>;
38626f048bSMateusz Kulikowski		ranges = <0x0 0x0 0x0 0xffffffff>;
39626f048bSMateusz Kulikowski		compatible = "simple-bus";
40626f048bSMateusz Kulikowski
41626f048bSMateusz Kulikowski		clkc: qcom,gcc@1800000 {
42626f048bSMateusz Kulikowski			compatible = "qcom,gcc-apq8016";
43626f048bSMateusz Kulikowski			reg = <0x1800000 0x80000>;
44626f048bSMateusz Kulikowski			#address-cells = <0x1>;
45626f048bSMateusz Kulikowski			#size-cells = <0x0>;
46626f048bSMateusz Kulikowski		};
47626f048bSMateusz Kulikowski
48626f048bSMateusz Kulikowski		serial@78b0000 {
49626f048bSMateusz Kulikowski			compatible = "qcom,msm-uartdm-v1.4";
50626f048bSMateusz Kulikowski			reg = <0x78b0000 0x200>;
51626f048bSMateusz Kulikowski			u-boot,dm-pre-reloc;
52626f048bSMateusz Kulikowski			clock = <&clkc 4>;
53626f048bSMateusz Kulikowski		};
54626f048bSMateusz Kulikowski
55626f048bSMateusz Kulikowski		soc_gpios: pinctrl@1000000 {
56626f048bSMateusz Kulikowski			compatible = "qcom,apq8016-pinctrl";
57626f048bSMateusz Kulikowski			reg = <0x1000000 0x300000>;
58626f048bSMateusz Kulikowski			gpio-controller;
59626f048bSMateusz Kulikowski			gpio-count = <122>;
60626f048bSMateusz Kulikowski			gpio-bank-name="soc";
61626f048bSMateusz Kulikowski			#gpio-cells = <1>;
62626f048bSMateusz Kulikowski		};
63626f048bSMateusz Kulikowski
64626f048bSMateusz Kulikowski		ehci@78d9000 {
65626f048bSMateusz Kulikowski			compatible = "qcom,ehci-host";
66626f048bSMateusz Kulikowski			reg = <0x78d9000 0x400>;
67626f048bSMateusz Kulikowski		};
68626f048bSMateusz Kulikowski
69626f048bSMateusz Kulikowski		sdhci@07824000 {
70626f048bSMateusz Kulikowski			compatible = "qcom,sdhci-msm-v4";
71626f048bSMateusz Kulikowski			reg = <0x7824900 0x11c 0x7824000 0x800>;
72626f048bSMateusz Kulikowski			bus-width = <0x8>;
73626f048bSMateusz Kulikowski			index = <0x0>;
74626f048bSMateusz Kulikowski			non-removable;
75626f048bSMateusz Kulikowski			clock = <&clkc 0>;
76626f048bSMateusz Kulikowski			clock-frequency = <100000000>;
77626f048bSMateusz Kulikowski		};
78626f048bSMateusz Kulikowski
79626f048bSMateusz Kulikowski		sdhci@07864000 {
80626f048bSMateusz Kulikowski			compatible = "qcom,sdhci-msm-v4";
81626f048bSMateusz Kulikowski			reg = <0x7864900 0x11c 0x7864000 0x800>;
82626f048bSMateusz Kulikowski			index = <0x1>;
83626f048bSMateusz Kulikowski			bus-width = <0x4>;
84626f048bSMateusz Kulikowski			clock = <&clkc 1>;
85626f048bSMateusz Kulikowski			clock-frequency = <200000000>;
86626f048bSMateusz Kulikowski		};
87626f048bSMateusz Kulikowski
88e2beb872SJorge Ramirez-Ortiz		wcnss {
89e2beb872SJorge Ramirez-Ortiz			bt {
90e2beb872SJorge Ramirez-Ortiz				compatible="qcom,wcnss-bt";
91e2beb872SJorge Ramirez-Ortiz			};
92e2beb872SJorge Ramirez-Ortiz
93e2beb872SJorge Ramirez-Ortiz			wifi {
94e2beb872SJorge Ramirez-Ortiz				compatible="qcom,wcnss-wlan";
95e2beb872SJorge Ramirez-Ortiz			};
96e2beb872SJorge Ramirez-Ortiz		};
97e2beb872SJorge Ramirez-Ortiz
98626f048bSMateusz Kulikowski		spmi@200f000 {
99626f048bSMateusz Kulikowski			compatible = "qcom,spmi-pmic-arb";
100626f048bSMateusz Kulikowski			reg = <0x200f800 0x200 0x2400000 0x400000 0x2c00000 0x400000>;
101626f048bSMateusz Kulikowski			#address-cells = <0x1>;
102626f048bSMateusz Kulikowski			#size-cells = <0x1>;
103626f048bSMateusz Kulikowski			pmic0: pm8916@0 {
104626f048bSMateusz Kulikowski				compatible = "qcom,spmi-pmic";
105626f048bSMateusz Kulikowski				reg = <0x0 0x1>;
106626f048bSMateusz Kulikowski				#address-cells = <0x1>;
107626f048bSMateusz Kulikowski				#size-cells = <0x1>;
108626f048bSMateusz Kulikowski
109626f048bSMateusz Kulikowski				pm8916_pon: pm8916_pon@800 {
110626f048bSMateusz Kulikowski					compatible = "qcom,pm8916-pwrkey";
111626f048bSMateusz Kulikowski					reg = <0x800 0x96>;
112626f048bSMateusz Kulikowski					#gpio-cells = <2>;
113626f048bSMateusz Kulikowski					gpio-controller;
114626f048bSMateusz Kulikowski				};
115626f048bSMateusz Kulikowski
116626f048bSMateusz Kulikowski				pm8916_gpios: pm8916_gpios@c000 {
117626f048bSMateusz Kulikowski					compatible = "qcom,pm8916-gpio";
118626f048bSMateusz Kulikowski					reg = <0xc000 0x400>;
119626f048bSMateusz Kulikowski					gpio-controller;
120626f048bSMateusz Kulikowski					gpio-count = <4>;
121626f048bSMateusz Kulikowski					#gpio-cells = <2>;
122626f048bSMateusz Kulikowski					gpio-bank-name="pmic";
123626f048bSMateusz Kulikowski				};
124626f048bSMateusz Kulikowski			};
125626f048bSMateusz Kulikowski
126626f048bSMateusz Kulikowski			pmic1: pm8916@1 {
127626f048bSMateusz Kulikowski				compatible = "qcom,spmi-pmic";
128626f048bSMateusz Kulikowski				reg = <0x1 0x1>;
129626f048bSMateusz Kulikowski			};
130626f048bSMateusz Kulikowski		};
131626f048bSMateusz Kulikowski	};
132626f048bSMateusz Kulikowski
133626f048bSMateusz Kulikowski	leds {
134626f048bSMateusz Kulikowski		compatible = "gpio-leds";
135626f048bSMateusz Kulikowski		user1 {
136626f048bSMateusz Kulikowski			label = "green:user1";
137626f048bSMateusz Kulikowski			gpios = <&soc_gpios 21 0>;
138626f048bSMateusz Kulikowski		};
139626f048bSMateusz Kulikowski
140626f048bSMateusz Kulikowski		user2 {
141626f048bSMateusz Kulikowski			label = "green:user2";
142626f048bSMateusz Kulikowski			gpios = <&soc_gpios 120 0>;
143626f048bSMateusz Kulikowski		};
144626f048bSMateusz Kulikowski
145626f048bSMateusz Kulikowski		user3 {
146626f048bSMateusz Kulikowski			label = "green:user3";
147626f048bSMateusz Kulikowski			gpios = <&pm8916_gpios 0 0>;
148626f048bSMateusz Kulikowski		};
149626f048bSMateusz Kulikowski
150626f048bSMateusz Kulikowski		user4 {
151626f048bSMateusz Kulikowski			label = "green:user4";
152626f048bSMateusz Kulikowski			gpios = <&pm8916_gpios 1 0>;
153626f048bSMateusz Kulikowski		};
154626f048bSMateusz Kulikowski	};
155626f048bSMateusz Kulikowski};
156626f048bSMateusz Kulikowski
157626f048bSMateusz Kulikowski#include "dragonboard410c-uboot.dtsi"
158