| // SPDX-License-Identifier: GPL-2.0-only |
| |
| /dts-v1/; |
| |
| #include "msm8939-pm8916.dtsi" |
| #include <dt-bindings/gpio/gpio.h> |
| |
| / { |
| model = "Huawei Honor 5X / GR5 (2016)"; |
| compatible = "huawei,kiwi", "qcom,msm8939"; |
| chassis-type = "handset"; |
| |
| aliases { |
| mmc0 = &sdhc_1; /* SDC1 eMMC slot */ |
| mmc1 = &sdhc_2; /* SDC2 SD card slot */ |
| serial0 = &blsp_uart2; |
| }; |
| |
| chosen { |
| stdout-path = "serial0"; |
| }; |
| |
| reserved-memory { |
| qseecom_mem: qseecom@84a00000 { |
| reg = <0x0 0x84a00000 0x0 0x1600000>; |
| no-map; |
| }; |
| }; |
| |
| gpio-hall-sensor { |
| compatible = "gpio-keys"; |
| |
| pinctrl-0 = <&gpio_hall_sensor_default>; |
| pinctrl-names = "default"; |
| |
| label = "GPIO Hall Effect Sensor"; |
| |
| event-hall-sensor { |
| label = "Hall Effect Sensor"; |
| gpios = <&tlmm 69 GPIO_ACTIVE_LOW>; |
| linux,input-type = <EV_SW>; |
| linux,code = <SW_LID>; |
| linux,can-disable; |
| }; |
| }; |
| |
| gpio-keys { |
| compatible = "gpio-keys"; |
| |
| pinctrl-0 = <&gpio_keys_default>; |
| pinctrl-names = "default"; |
| |
| label = "GPIO Buttons"; |
| |
| button-volume-up { |
| label = "Volume Up"; |
| gpios = <&tlmm 107 GPIO_ACTIVE_LOW>; |
| linux,code = <KEY_VOLUMEUP>; |
| }; |
| }; |
| |
| usb_id: usb-id { |
| compatible = "linux,extcon-usb-gpio"; |
| id-gpios = <&tlmm 110 GPIO_ACTIVE_HIGH>; |
| pinctrl-0 = <&usb_id_default>; |
| pinctrl-names = "default"; |
| }; |
| }; |
| |
| &blsp_i2c2 { |
| status = "okay"; |
| |
| accelerometer@1e { |
| compatible = "kionix,kx023-1025"; |
| reg = <0x1e>; |
| |
| vdd-supply = <&pm8916_l17>; |
| vddio-supply = <&pm8916_l6>; |
| pinctrl-0 = <&accel_int_default>; |
| pinctrl-names = "default"; |
| mount-matrix = "-1", "0", "0", |
| "0", "1", "0", |
| "0", "0", "1"; |
| }; |
| |
| proximity@39 { |
| compatible = "avago,apds9930"; |
| reg = <0x39>; |
| |
| interrupt-parent = <&tlmm>; |
| interrupts = <113 IRQ_TYPE_EDGE_FALLING>; |
| |
| vdd-supply = <&pm8916_l17>; |
| vddio-supply = <&pm8916_l6>; |
| |
| led-max-microamp = <25000>; |
| amstaos,proximity-diodes = <0>; |
| |
| pinctrl-0 = <&prox_irq_default>; |
| pinctrl-names = "default"; |
| }; |
| }; |
| |
| &blsp_i2c5 { |
| status = "okay"; |
| |
| touchscreen@1c { |
| compatible = "cypress,tt21000"; |
| |
| reg = <0x1c>; |
| interrupt-parent = <&tlmm>; |
| interrupts = <13 IRQ_TYPE_EDGE_FALLING>; |
| |
| reset-gpios = <&tlmm 12 GPIO_ACTIVE_LOW>; |
| |
| /* |
| * NOTE: vdd is not directly supplied by pm8916_l16, it seems to be a |
| * fixed regulator that is automatically enabled by pm8916_l16. |
| */ |
| vdd-supply = <&pm8916_l16>; |
| vddio-supply = <&pm8916_l16>; |
| |
| pinctrl-0 = <&touchscreen_default>; |
| pinctrl-names = "default"; |
| }; |
| }; |
| |
| &blsp_uart2 { |
| status = "okay"; |
| }; |
| |
| &pm8916_l8 { |
| regulator-min-microvolt = <2950000>; |
| regulator-max-microvolt = <2950000>; |
| }; |
| |
| &pm8916_resin { |
| linux,code = <KEY_VOLUMEDOWN>; |
| status = "okay"; |
| }; |
| |
| &pm8916_rpm_regulators { |
| pm8916_l16: l16 { |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <1800000>; |
| }; |
| |
| pm8916_l17: l17 { |
| regulator-min-microvolt = <2850000>; |
| regulator-max-microvolt = <2850000>; |
| }; |
| }; |
| |
| &pm8916_vib { |
| status = "okay"; |
| }; |
| |
| &sdhc_1 { |
| status = "okay"; |
| }; |
| |
| &sdhc_2 { |
| pinctrl-0 = <&sdc2_default &sdc2_cd_default>; |
| pinctrl-1 = <&sdc2_sleep &sdc2_cd_default>; |
| pinctrl-names = "default", "sleep"; |
| |
| cd-gpios = <&tlmm 38 GPIO_ACTIVE_HIGH>; |
| |
| status = "okay"; |
| }; |
| |
| &usb { |
| extcon = <&usb_id>, <&usb_id>; |
| status = "okay"; |
| }; |
| |
| &usb_hs_phy { |
| extcon = <&usb_id>; |
| }; |
| |
| &wcnss { |
| status = "okay"; |
| }; |
| |
| &wcnss_iris { |
| compatible = "qcom,wcn3620"; |
| }; |
| |
| &wcnss_mem { |
| status = "okay"; |
| }; |
| |
| &tlmm { |
| accel_int_default: accel-int-default-state { |
| pins = "gpio115"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-disable; |
| }; |
| |
| gpio_hall_sensor_default: gpio-hall-sensor-default-state { |
| pins = "gpio69"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-disable; |
| }; |
| |
| gpio_keys_default: gpio-keys-default-state { |
| pins = "gpio107"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-pull-up; |
| }; |
| |
| prox_irq_default: prox-irq-default-state { |
| pins = "gpio113"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-disable; |
| }; |
| |
| sdc2_cd_default: sdc2-cd-default-state { |
| pins = "gpio38"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-disable; |
| }; |
| |
| touchscreen_default: touchscreen-default-state { |
| pins = "gpio12", "gpio13"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-disable; |
| }; |
| |
| usb_id_default: usb-id-default-state { |
| pins = "gpio110"; |
| function = "gpio"; |
| drive-strength = <8>; |
| bias-pull-up; |
| }; |
| }; |