17cc40615SJasper Korten// SPDX-License-Identifier: GPL-2.0-only
27cc40615SJasper Korten
37cc40615SJasper Korten/dts-v1/;
47cc40615SJasper Korten
57cc40615SJasper Korten#include "msm8916-pm8916.dtsi"
67cc40615SJasper Korten#include <dt-bindings/gpio/gpio.h>
77cc40615SJasper Korten#include <dt-bindings/input/input.h>
87cc40615SJasper Korten#include <dt-bindings/interrupt-controller/irq.h>
97cc40615SJasper Korten
107cc40615SJasper Korten/ {
117cc40615SJasper Korten	aliases {
12154f23a8SStephan Gerhold		mmc0 = &sdhc_1; /* eMMC */
13154f23a8SStephan Gerhold		mmc1 = &sdhc_2; /* SD card */
14c310ca82SStephan Gerhold		serial0 = &blsp_uart2;
157cc40615SJasper Korten	};
167cc40615SJasper Korten
177cc40615SJasper Korten	chosen {
187cc40615SJasper Korten		stdout-path = "serial0";
197cc40615SJasper Korten	};
207cc40615SJasper Korten
217cc40615SJasper Korten	reserved-memory {
227cc40615SJasper Korten		/* Additional memory used by Samsung firmware modifications */
237cc40615SJasper Korten		tz-apps@85500000 {
247cc40615SJasper Korten			reg = <0x0 0x85500000 0x0 0xb00000>;
257cc40615SJasper Korten			no-map;
267cc40615SJasper Korten		};
277cc40615SJasper Korten	};
287cc40615SJasper Korten
297cc40615SJasper Korten	gpio-keys {
307cc40615SJasper Korten		compatible = "gpio-keys";
317cc40615SJasper Korten
327cc40615SJasper Korten		pinctrl-0 = <&gpio_keys_default>;
337cc40615SJasper Korten		pinctrl-names = "default";
347cc40615SJasper Korten
357cc40615SJasper Korten		label = "GPIO Buttons";
367cc40615SJasper Korten
377cc40615SJasper Korten		volume-up-button {
387cc40615SJasper Korten			label = "Volume Up";
3941e22c2fSStephan Gerhold			gpios = <&tlmm 107 GPIO_ACTIVE_LOW>;
407cc40615SJasper Korten			linux,code = <KEY_VOLUMEUP>;
417cc40615SJasper Korten		};
427cc40615SJasper Korten
437cc40615SJasper Korten		home-button {
447cc40615SJasper Korten			label = "Home";
4541e22c2fSStephan Gerhold			gpios = <&tlmm 109 GPIO_ACTIVE_LOW>;
467cc40615SJasper Korten			linux,code = <KEY_HOMEPAGE>;
477cc40615SJasper Korten		};
487cc40615SJasper Korten	};
497cc40615SJasper Korten
507cc40615SJasper Korten	gpio-hall-sensor {
517cc40615SJasper Korten		compatible = "gpio-keys";
527cc40615SJasper Korten
537cc40615SJasper Korten		pinctrl-0 = <&gpio_hall_sensor_default>;
547cc40615SJasper Korten		pinctrl-names = "default";
557cc40615SJasper Korten
567cc40615SJasper Korten		label = "GPIO Hall Effect Sensor";
577cc40615SJasper Korten
587cc40615SJasper Korten		hall-sensor-switch {
597cc40615SJasper Korten			label = "Hall Effect Sensor";
6041e22c2fSStephan Gerhold			gpios = <&tlmm 52 GPIO_ACTIVE_LOW>;
617cc40615SJasper Korten			linux,input-type = <EV_SW>;
627cc40615SJasper Korten			linux,code = <SW_LID>;
637cc40615SJasper Korten			linux,can-disable;
647cc40615SJasper Korten		};
657cc40615SJasper Korten	};
667cc40615SJasper Korten};
677cc40615SJasper Korten
687cc40615SJasper Korten&blsp_i2c4 {
697cc40615SJasper Korten	status = "okay";
707cc40615SJasper Korten
717cc40615SJasper Korten	fuelgauge@36 {
727cc40615SJasper Korten		compatible = "maxim,max77849-battery";
737cc40615SJasper Korten		reg = <0x36>;
747cc40615SJasper Korten
757cc40615SJasper Korten		maxim,rsns-microohm = <10000>;
767cc40615SJasper Korten		maxim,over-heat-temp = <600>;
777cc40615SJasper Korten		maxim,over-volt = <4400>;
787cc40615SJasper Korten
7941e22c2fSStephan Gerhold		interrupt-parent = <&tlmm>;
807cc40615SJasper Korten		interrupts = <121 IRQ_TYPE_EDGE_FALLING>;
817cc40615SJasper Korten
827cc40615SJasper Korten		pinctrl-0 = <&fuelgauge_int_default>;
837cc40615SJasper Korten		pinctrl-names = "default";
847cc40615SJasper Korten	};
857cc40615SJasper Korten};
867cc40615SJasper Korten
877cc40615SJasper Korten&blsp_i2c2 {
887cc40615SJasper Korten	status = "okay";
897cc40615SJasper Korten
907cc40615SJasper Korten	light-sensor@10 {
917cc40615SJasper Korten		compatible = "capella,cm3323";
927cc40615SJasper Korten		reg = <0x10>;
937cc40615SJasper Korten	};
947cc40615SJasper Korten
957cc40615SJasper Korten	accelerometer@1d {
967cc40615SJasper Korten		compatible = "st,lis2hh12";
977cc40615SJasper Korten		reg = <0x1d>;
987cc40615SJasper Korten
997cc40615SJasper Korten		vdd-supply = <&pm8916_l17>;
1007cc40615SJasper Korten		vddio-supply = <&pm8916_l5>;
1017cc40615SJasper Korten
10241e22c2fSStephan Gerhold		interrupt-parent = <&tlmm>;
1037cc40615SJasper Korten		interrupts = <115 IRQ_TYPE_LEVEL_HIGH>;
1047cc40615SJasper Korten
1057cc40615SJasper Korten		st,drdy-int-pin = <1>;
1067cc40615SJasper Korten		mount-matrix = "0", "1", "0",
1077cc40615SJasper Korten			      "-1", "0", "0",
1087cc40615SJasper Korten			       "0", "0", "1";
1097cc40615SJasper Korten
1107cc40615SJasper Korten		pinctrl-0 = <&accel_int_default>;
1117cc40615SJasper Korten		pinctrl-names = "default";
1127cc40615SJasper Korten	};
1137cc40615SJasper Korten};
1147cc40615SJasper Korten
115c310ca82SStephan Gerhold&blsp_uart2 {
1167cc40615SJasper Korten	status = "okay";
1177cc40615SJasper Korten};
1187cc40615SJasper Korten
1197cc40615SJasper Korten&pm8916_resin {
1207cc40615SJasper Korten	linux,code = <KEY_VOLUMEDOWN>;
1217cc40615SJasper Korten	status = "okay";
1227cc40615SJasper Korten};
1237cc40615SJasper Korten
124b0a8f16aSStephan Gerhold&pm8916_rpm_regulators {
125b0a8f16aSStephan Gerhold	pm8916_l17: l17 {
126b0a8f16aSStephan Gerhold		regulator-min-microvolt = <2850000>;
127b0a8f16aSStephan Gerhold		regulator-max-microvolt = <2850000>;
128b0a8f16aSStephan Gerhold	};
129b0a8f16aSStephan Gerhold};
130b0a8f16aSStephan Gerhold
1317cc40615SJasper Korten/* FIXME: Replace with MAX77849 MUIC when driver is available */
1327cc40615SJasper Korten&pm8916_usbin {
1337cc40615SJasper Korten	status = "okay";
1347cc40615SJasper Korten};
1357cc40615SJasper Korten
1367cc40615SJasper Korten&sdhc_1 {
1377cc40615SJasper Korten	status = "okay";
1387cc40615SJasper Korten};
1397cc40615SJasper Korten
1407cc40615SJasper Korten&sdhc_2 {
141*c943e4c5SStephan Gerhold	pinctrl-0 = <&sdc2_default &sdc2_cd_default>;
142*c943e4c5SStephan Gerhold	pinctrl-1 = <&sdc2_sleep &sdc2_cd_default>;
1437cc40615SJasper Korten	pinctrl-names = "default", "sleep";
1447cc40615SJasper Korten
14541e22c2fSStephan Gerhold	cd-gpios = <&tlmm 38 GPIO_ACTIVE_LOW>;
1467cc40615SJasper Korten
1477cc40615SJasper Korten	status = "okay";
1487cc40615SJasper Korten};
1497cc40615SJasper Korten
1507cc40615SJasper Korten&usb {
1517cc40615SJasper Korten	dr_mode = "peripheral";
1527cc40615SJasper Korten	extcon = <&pm8916_usbin>;
1537cc40615SJasper Korten
1547cc40615SJasper Korten	status = "okay";
1557cc40615SJasper Korten};
1567cc40615SJasper Korten
1577cc40615SJasper Korten&usb_hs_phy {
1587cc40615SJasper Korten	extcon = <&pm8916_usbin>;
1597cc40615SJasper Korten};
1607cc40615SJasper Korten
16132444424SStephan Gerhold&wcnss {
16232444424SStephan Gerhold	status = "okay";
16332444424SStephan Gerhold};
16432444424SStephan Gerhold
16532444424SStephan Gerhold&wcnss_iris {
16632444424SStephan Gerhold	compatible = "qcom,wcn3660b";
16732444424SStephan Gerhold};
16832444424SStephan Gerhold
16941e22c2fSStephan Gerhold&tlmm {
1707cc40615SJasper Korten	accel_int_default: accel-int-default-state {
1717cc40615SJasper Korten		pins = "gpio115";
1727cc40615SJasper Korten		function = "gpio";
1737cc40615SJasper Korten		drive-strength = <2>;
1747cc40615SJasper Korten		bias-disable;
1757cc40615SJasper Korten	};
1767cc40615SJasper Korten
1777cc40615SJasper Korten	fuelgauge_int_default: fuelgauge-int-default-state {
1787cc40615SJasper Korten		pins = "gpio121";
1797cc40615SJasper Korten		function = "gpio";
1807cc40615SJasper Korten		drive-strength = <2>;
1817cc40615SJasper Korten		bias-disable;
1827cc40615SJasper Korten	};
1837cc40615SJasper Korten
1847cc40615SJasper Korten	gpio_keys_default: gpio-keys-default-state {
1857cc40615SJasper Korten		pins = "gpio107", "gpio109";
1867cc40615SJasper Korten		function = "gpio";
1877cc40615SJasper Korten		drive-strength = <2>;
1887cc40615SJasper Korten		bias-pull-up;
1897cc40615SJasper Korten	};
1907cc40615SJasper Korten
1917cc40615SJasper Korten	gpio_hall_sensor_default: gpio-hall-sensor-default-state {
1927cc40615SJasper Korten		pins = "gpio52";
1937cc40615SJasper Korten		function = "gpio";
1947cc40615SJasper Korten		drive-strength = <2>;
1957cc40615SJasper Korten		bias-disable;
1967cc40615SJasper Korten	};
197dfbda20dSStephan Gerhold
198dfbda20dSStephan Gerhold	sdc2_cd_default: sdc2-cd-default-state {
199dfbda20dSStephan Gerhold		pins = "gpio38";
200dfbda20dSStephan Gerhold		function = "gpio";
201dfbda20dSStephan Gerhold		drive-strength = <2>;
202dfbda20dSStephan Gerhold		bias-disable;
203dfbda20dSStephan Gerhold	};
2047cc40615SJasper Korten};
205