xref: /linux/arch/arm64/boot/dts/qcom/msm8916-samsung-grandmax.dts (revision a3a02a52bcfcbcc4a637d4b68bf1bc391c9fad02)
1// SPDX-License-Identifier: GPL-2.0-only
2
3/dts-v1/;
4
5#include "msm8916-samsung-e2015-common.dtsi"
6#include <dt-bindings/leds/common.h>
7
8/*
9 * NOTE: The original firmware from Samsung can only boot ARM32 kernels on some
10 * variants.
11 * Unfortunately, the firmware is signed and cannot be replaced easily.
12 * There seems to be no way to boot ARM64 kernels on 32-bit devices at the
13 * moment, even though the hardware would support it.
14 *
15 * However, it is possible to use this device tree by compiling an ARM32 kernel
16 * instead. For clarity and build testing this device tree is maintained next
17 * to the other MSM8916 device trees. However, it is actually used through
18 * arch/arm/boot/dts/qcom-msm8916-samsung-grandmax.dts
19 */
20
21/ {
22	model = "Samsung Galaxy Grand Max";
23	compatible = "samsung,grandmax", "qcom,msm8916";
24	chassis-type = "handset";
25
26	/delete-node/ gpio-hall-sensor;
27	/delete-node/ i2c-nfc;
28	/delete-node/ i2c-tkey;
29
30	gpio-leds {
31		compatible = "gpio-leds";
32		led-keyled {
33			function = LED_FUNCTION_KBD_BACKLIGHT;
34			color = <LED_COLOR_ID_WHITE>;
35
36			gpios = <&tlmm 60 GPIO_ACTIVE_HIGH>;
37
38			pinctrl-names = "default";
39			pinctrl-0 = <&gpio_leds_default>;
40		};
41	};
42};
43
44&battery {
45	charge-term-current-microamp = <150000>;
46	constant-charge-current-max-microamp = <1000000>;
47	constant-charge-voltage-max-microvolt = <4400000>;
48};
49
50&reg_motor_vdd {
51	gpio = <&tlmm 72 GPIO_ACTIVE_HIGH>;
52};
53
54&reg_touch_key {
55	status = "disabled";
56};
57
58&sound {
59	model = "samsung-gmax"; /* No secondary microphone */
60};
61
62&tlmm {
63	gpio_leds_default: gpio-led-default-state {
64		pins = "gpio60";
65		function = "gpio";
66
67		drive-strength = <2>;
68		bias-disable;
69	};
70};
71
72&motor_en_default {
73	pins = "gpio72";
74};
75