1// SPDX-License-Identifier: GPL-2.0-only 2 3#include "msm8916-pm8916.dtsi" 4#include <dt-bindings/gpio/gpio.h> 5#include <dt-bindings/input/input.h> 6#include <dt-bindings/interrupt-controller/irq.h> 7 8/ { 9 aliases { 10 mmc0 = &sdhc_1; /* eMMC */ 11 mmc1 = &sdhc_2; /* SD card */ 12 serial0 = &blsp_uart2; 13 }; 14 15 chosen { 16 stdout-path = "serial0"; 17 }; 18 19 reserved-memory { 20 /* Additional memory used by Samsung firmware modifications */ 21 tz-apps@85500000 { 22 reg = <0x0 0x85500000 0x0 0xb00000>; 23 no-map; 24 }; 25 }; 26 27 gpio_hall_sensor: gpio-hall-sensor { 28 compatible = "gpio-keys"; 29 30 pinctrl-names = "default"; 31 pinctrl-0 = <&gpio_hall_sensor_default>; 32 33 label = "GPIO Hall Effect Sensor"; 34 35 event-hall-sensor { 36 label = "Hall Effect Sensor"; 37 gpios = <&tlmm 52 GPIO_ACTIVE_LOW>; 38 linux,input-type = <EV_SW>; 39 linux,code = <SW_LID>; 40 linux,can-disable; 41 }; 42 }; 43 44 gpio-keys { 45 compatible = "gpio-keys"; 46 47 pinctrl-names = "default"; 48 pinctrl-0 = <&gpio_keys_default>; 49 50 label = "GPIO Buttons"; 51 52 button-volume-up { 53 label = "Volume Up"; 54 gpios = <&tlmm 107 GPIO_ACTIVE_LOW>; 55 linux,code = <KEY_VOLUMEUP>; 56 }; 57 58 button-home { 59 label = "Home Key"; 60 gpios = <&tlmm 109 GPIO_ACTIVE_LOW>; 61 linux,code = <KEY_HOMEPAGE>; 62 }; 63 }; 64 65 i2c_muic: i2c-muic { 66 compatible = "i2c-gpio"; 67 sda-gpios = <&tlmm 105 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; 68 scl-gpios = <&tlmm 106 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; 69 70 pinctrl-names = "default"; 71 pinctrl-0 = <&muic_i2c_default>; 72 73 #address-cells = <1>; 74 #size-cells = <0>; 75 76 muic: extcon@25 { 77 compatible = "siliconmitus,sm5703-muic"; 78 reg = <0x25>; 79 80 interrupt-parent = <&tlmm>; 81 interrupts = <12 IRQ_TYPE_EDGE_FALLING>; 82 83 pinctrl-names = "default"; 84 pinctrl-0 = <&muic_int_default>; 85 }; 86 }; 87}; 88 89&blsp_uart2 { 90 status = "okay"; 91}; 92 93&pm8916_resin { 94 status = "okay"; 95 linux,code = <KEY_VOLUMEDOWN>; 96}; 97 98&sdhc_1 { 99 status = "okay"; 100 101 pinctrl-names = "default", "sleep"; 102 pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>; 103 pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>; 104}; 105 106&sdhc_2 { 107 status = "okay"; 108 109 pinctrl-names = "default", "sleep"; 110 pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>; 111 pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>; 112 113 cd-gpios = <&tlmm 38 GPIO_ACTIVE_LOW>; 114}; 115 116&usb { 117 extcon = <&muic>, <&muic>; 118 status = "okay"; 119}; 120 121&usb_hs_phy { 122 extcon = <&muic>; 123}; 124 125&wcnss { 126 status = "okay"; 127}; 128 129&wcnss_iris { 130 compatible = "qcom,wcn3620"; 131}; 132 133&tlmm { 134 gpio_hall_sensor_default: gpio-hall-sensor-default-state { 135 pins = "gpio52"; 136 function = "gpio"; 137 138 drive-strength = <2>; 139 bias-disable; 140 }; 141 142 gpio_keys_default: gpio-keys-default-state { 143 pins = "gpio107", "gpio109"; 144 function = "gpio"; 145 146 drive-strength = <2>; 147 bias-pull-up; 148 }; 149 150 muic_i2c_default: muic-i2c-default-state { 151 pins = "gpio105", "gpio106"; 152 function = "gpio"; 153 154 drive-strength = <2>; 155 bias-disable; 156 }; 157 158 muic_int_default: muic-int-default-state { 159 pins = "gpio12"; 160 function = "gpio"; 161 162 drive-strength = <2>; 163 bias-disable; 164 }; 165}; 166