xref: /freebsd/sys/contrib/device-tree/src/arm64/qcom/msm8916-samsung-grandmax.dts (revision b1fd95c9e24791d44593e611406b41e57826a5b8)
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&reg_motor_vdd {
45	gpio = <&tlmm 72 GPIO_ACTIVE_HIGH>;
46};
47
48&reg_touch_key {
49	status = "disabled";
50};
51
52&tlmm {
53	gpio_leds_default: gpio-led-default-state {
54		pins = "gpio60";
55		function = "gpio";
56
57		drive-strength = <2>;
58		bias-disable;
59	};
60};
61
62&motor_en_default {
63	pins = "gpio72";
64};
65