ARM: dts: qcom-msm8974pro-*: Use the 8974pro name in DT filenames
authorKonrad Dybcio <konrad.dybcio@somainline.org>
Fri, 15 Apr 2022 11:56:25 +0000 (13:56 +0200)
committerBjorn Andersson <bjorn.andersson@linaro.org>
Wed, 20 Apr 2022 02:09:34 +0000 (21:09 -0500)
Add the 'pro' part to the filenames of DTs of devices that are based on
this SoC to make in easier to differentiate between Snapdragon 800- and
801-based platforms.

Signed-off-by: Konrad Dybcio <konrad.dybcio@somainline.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220415115633.575010-16-konrad.dybcio@somainline.org
arch/arm/boot/dts/Makefile
arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts [deleted file]
arch/arm/boot/dts/qcom-msm8974-sony-xperia-shinano-castor.dts [deleted file]
arch/arm/boot/dts/qcom-msm8974pro-samsung-klte.dts [new file with mode: 0644]
arch/arm/boot/dts/qcom-msm8974pro-sony-xperia-shinano-castor.dts [new file with mode: 0644]

index abc7c3a65579a55752d738ff546c7d088e298bf6..56aa6fc4d3a492f28a70332ee38b4392cd86b88a 100644 (file)
@@ -1003,10 +1003,10 @@ dtb-$(CONFIG_ARCH_QCOM) += \
        qcom-msm8960-cdp.dtb \
        qcom-msm8974-fairphone-fp2.dtb \
        qcom-msm8974-lge-nexus5-hammerhead.dtb \
-       qcom-msm8974-samsung-klte.dtb \
        qcom-msm8974-sony-xperia-rhine-amami.dtb \
        qcom-msm8974-sony-xperia-rhine-honami.dtb \
-       qcom-msm8974-sony-xperia-shinano-castor.dtb \
+       qcom-msm8974pro-samsung-klte.dtb \
+       qcom-msm8974pro-sony-xperia-shinano-castor.dtb \
        qcom-mdm9615-wp8548-mangoh-green.dtb \
        qcom-sdx55-mtp.dtb \
        qcom-sdx55-t55.dtb \
diff --git a/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts b/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts
deleted file mode 100644 (file)
index 3b1ea8c..0000000
+++ /dev/null
@@ -1,872 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-#include "qcom-msm8974pro.dtsi"
-#include "qcom-pma8084.dtsi"
-#include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
-#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
-#include <dt-bindings/leds/common.h>
-
-/ {
-       model = "Samsung Galaxy S5";
-       compatible = "samsung,klte", "qcom,msm8974";
-
-       aliases {
-               serial0 = &blsp1_uart1;
-               mmc0 = &sdhc_1; /* SDC1 eMMC slot */
-               mmc1 = &sdhc_3; /* SDC2 SD card slot */
-       };
-
-       chosen {
-               stdout-path = "serial0:115200n8";
-       };
-
-       gpio-keys {
-               compatible = "gpio-keys";
-
-               pinctrl-names = "default";
-               pinctrl-0 = <&gpio_keys_pin_a>;
-
-               volume-down {
-                       label = "volume_down";
-                       gpios = <&pma8084_gpios 2 GPIO_ACTIVE_LOW>;
-                       linux,input-type = <1>;
-                       linux,code = <KEY_VOLUMEDOWN>;
-                       debounce-interval = <15>;
-               };
-
-               home-key {
-                       label = "home_key";
-                       gpios = <&pma8084_gpios 3 GPIO_ACTIVE_LOW>;
-                       linux,input-type = <1>;
-                       linux,code = <KEY_HOMEPAGE>;
-                       wakeup-source;
-                       debounce-interval = <15>;
-               };
-
-               volume-up {
-                       label = "volume_up";
-                       gpios = <&pma8084_gpios 5 GPIO_ACTIVE_LOW>;
-                       linux,input-type = <1>;
-                       linux,code = <KEY_VOLUMEUP>;
-                       debounce-interval = <15>;
-               };
-       };
-
-       i2c-gpio-touchkey {
-               compatible = "i2c-gpio";
-               #address-cells = <1>;
-               #size-cells = <0>;
-               sda-gpios = <&tlmm 95 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
-               scl-gpios = <&tlmm 96 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
-               pinctrl-names = "default";
-               pinctrl-0 = <&i2c_touchkey_pins>;
-
-               touchkey@20 {
-                       compatible = "cypress,tm2-touchkey";
-                       reg = <0x20>;
-
-                       interrupt-parent = <&pma8084_gpios>;
-                       interrupts = <6 IRQ_TYPE_EDGE_FALLING>;
-                       pinctrl-names = "default";
-                       pinctrl-0 = <&touchkey_pin>;
-
-                       vcc-supply = <&max77826_ldo15>;
-                       vdd-supply = <&pma8084_l19>;
-
-                       linux,keycodes = <KEY_APPSELECT KEY_BACK>;
-               };
-       };
-
-       i2c-gpio-led {
-               compatible = "i2c-gpio";
-               #address-cells = <1>;
-               #size-cells = <0>;
-               scl-gpios = <&tlmm 121 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
-               sda-gpios = <&tlmm 120 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
-               pinctrl-names = "default";
-               pinctrl-0 = <&i2c_led_gpioex_pins>;
-
-               i2c-gpio,delay-us = <2>;
-
-               gpio_expander: gpio@20 {
-                       compatible = "nxp,pcal6416";
-                       reg = <0x20>;
-
-                       gpio-controller;
-                       #gpio-cells = <2>;
-
-                       vcc-supply = <&pma8084_s4>;
-
-                       pinctrl-names = "default";
-                       pinctrl-0 = <&gpioex_pin>;
-
-                       reset-gpios = <&tlmm 145 GPIO_ACTIVE_LOW>;
-               };
-
-               led-controller@30 {
-                       compatible = "panasonic,an30259a";
-                       reg = <0x30>;
-
-                       #address-cells = <1>;
-                       #size-cells = <0>;
-
-                       led@1 {
-                               reg = <1>;
-                               function = LED_FUNCTION_STATUS;
-                               color = <LED_COLOR_ID_RED>;
-                       };
-
-                       led@2 {
-                               reg = <2>;
-                               function = LED_FUNCTION_STATUS;
-                               color = <LED_COLOR_ID_GREEN>;
-                       };
-
-                       led@3 {
-                               reg = <3>;
-                               function = LED_FUNCTION_STATUS;
-                               color = <LED_COLOR_ID_BLUE>;
-                       };
-               };
-       };
-
-       vreg_wlan: wlan-regulator {
-               compatible = "regulator-fixed";
-
-               regulator-name = "wl-reg";
-               regulator-min-microvolt = <3300000>;
-               regulator-max-microvolt = <3300000>;
-
-               gpio = <&gpio_expander 8 GPIO_ACTIVE_HIGH>;
-               enable-active-high;
-       };
-
-       vreg_panel: panel-regulator {
-               compatible = "regulator-fixed";
-
-               pinctrl-names = "default";
-               pinctrl-0 = <&panel_en_pin>;
-
-               regulator-name = "panel-vddr-reg";
-               regulator-min-microvolt = <1500000>;
-               regulator-max-microvolt = <1500000>;
-
-               gpio = <&pma8084_gpios 14 GPIO_ACTIVE_HIGH>;
-               enable-active-high;
-       };
-
-       /delete-node/ vreg-boost;
-};
-
-&blsp1_i2c2 {
-       status = "okay";
-
-       pinctrl-names = "default";
-       pinctrl-0 = <&i2c2_pins>;
-
-       touchscreen@20 {
-               compatible = "syna,rmi4-i2c";
-               reg = <0x20>;
-
-               interrupt-parent = <&pma8084_gpios>;
-               interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
-
-               vdd-supply = <&max77826_ldo13>;
-               vio-supply = <&pma8084_lvs2>;
-
-               pinctrl-names = "default";
-               pinctrl-0 = <&touch_pin>;
-
-               syna,startup-delay-ms = <100>;
-
-               #address-cells = <1>;
-               #size-cells = <0>;
-
-               rmi4-f01@1 {
-                       reg = <0x1>;
-                       syna,nosleep-mode = <1>;
-               };
-
-               rmi4-f12@12 {
-                       reg = <0x12>;
-                       syna,sensor-type = <1>;
-               };
-       };
-};
-
-&blsp1_i2c6 {
-       status = "okay";
-
-       pinctrl-names = "default";
-       pinctrl-0 = <&i2c6_pins>;
-
-       pmic@60 {
-               reg = <0x60>;
-               compatible = "maxim,max77826";
-
-               regulators {
-                       max77826_ldo1: LDO1 {
-                               regulator-min-microvolt = <1200000>;
-                               regulator-max-microvolt = <1200000>;
-                       };
-
-                       max77826_ldo2: LDO2 {
-                               regulator-min-microvolt = <1000000>;
-                               regulator-max-microvolt = <1000000>;
-                       };
-
-                       max77826_ldo3: LDO3 {
-                               regulator-min-microvolt = <1200000>;
-                               regulator-max-microvolt = <1200000>;
-                       };
-
-                       max77826_ldo4: LDO4 {
-                               regulator-min-microvolt = <1800000>;
-                               regulator-max-microvolt = <1800000>;
-                       };
-
-                       max77826_ldo5: LDO5 {
-                               regulator-min-microvolt = <1800000>;
-                               regulator-max-microvolt = <1800000>;
-                       };
-
-                       max77826_ldo6: LDO6 {
-                               regulator-min-microvolt = <1800000>;
-                               regulator-max-microvolt = <3300000>;
-                       };
-
-                       max77826_ldo7: LDO7 {
-                               regulator-min-microvolt = <1800000>;
-                               regulator-max-microvolt = <1800000>;
-                       };
-
-                       max77826_ldo8: LDO8 {
-                               regulator-min-microvolt = <1800000>;
-                               regulator-max-microvolt = <3300000>;
-                       };
-
-                       max77826_ldo9: LDO9 {
-                               regulator-min-microvolt = <1800000>;
-                               regulator-max-microvolt = <1800000>;
-                       };
-
-                       max77826_ldo10: LDO10 {
-                               regulator-min-microvolt = <2800000>;
-                               regulator-max-microvolt = <2950000>;
-                       };
-
-                       max77826_ldo11: LDO11 {
-                               regulator-min-microvolt = <2700000>;
-                               regulator-max-microvolt = <2950000>;
-                       };
-
-                       max77826_ldo12: LDO12 {
-                               regulator-min-microvolt = <2500000>;
-                               regulator-max-microvolt = <3300000>;
-                       };
-
-                       max77826_ldo13: LDO13 {
-                               regulator-min-microvolt = <3300000>;
-                               regulator-max-microvolt = <3300000>;
-                       };
-
-                       max77826_ldo14: LDO14 {
-                               regulator-min-microvolt = <3300000>;
-                               regulator-max-microvolt = <3300000>;
-                       };
-
-                       max77826_ldo15: LDO15 {
-                               regulator-min-microvolt = <1800000>;
-                               regulator-max-microvolt = <1800000>;
-                       };
-
-                       max77826_buck: BUCK {
-                               regulator-min-microvolt = <1225000>;
-                               regulator-max-microvolt = <1225000>;
-                       };
-
-                       max77826_buckboost: BUCKBOOST {
-                               regulator-min-microvolt = <3400000>;
-                               regulator-max-microvolt = <3400000>;
-                       };
-               };
-       };
-};
-
-&blsp1_uart2 {
-       status = "okay";
-};
-
-&blsp2_i2c6 {
-       status = "okay";
-
-       pinctrl-names = "default";
-       pinctrl-0 = <&i2c12_pins>;
-
-       fuelgauge@36 {
-               compatible = "maxim,max17048";
-               reg = <0x36>;
-
-               maxim,double-soc;
-               maxim,rcomp = /bits/ 8 <0x56>;
-
-               interrupt-parent = <&pma8084_gpios>;
-               interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
-
-               pinctrl-names = "default";
-               pinctrl-0 = <&fuelgauge_pin>;
-       };
-};
-
-&blsp2_uart2 {
-       status = "okay";
-
-       pinctrl-names = "default", "sleep";
-       pinctrl-0 = <&blsp2_uart2_pins_active>;
-       pinctrl-1 = <&blsp2_uart2_pins_sleep>;
-
-       bluetooth {
-               compatible = "brcm,bcm43540-bt";
-               max-speed = <3000000>;
-               pinctrl-names = "default";
-               pinctrl-0 = <&bt_pins>;
-               device-wakeup-gpios = <&tlmm 91 GPIO_ACTIVE_HIGH>;
-               shutdown-gpios = <&gpio_expander 9 GPIO_ACTIVE_HIGH>;
-               interrupt-parent = <&tlmm>;
-               interrupts = <75 IRQ_TYPE_LEVEL_HIGH>;
-               interrupt-names = "host-wakeup";
-       };
-};
-
-&dsi0 {
-       status = "okay";
-
-       vdda-supply = <&pma8084_l2>;
-       vdd-supply = <&pma8084_l22>;
-       vddio-supply = <&pma8084_l12>;
-
-       panel: panel@0 {
-               reg = <0>;
-               compatible = "samsung,s6e3fa2";
-
-               pinctrl-names = "default";
-               pinctrl-0 = <&panel_te_pin &panel_rst_pin>;
-
-               iovdd-supply = <&pma8084_lvs4>;
-               vddr-supply = <&vreg_panel>;
-
-               reset-gpios = <&pma8084_gpios 17 GPIO_ACTIVE_LOW>;
-               te-gpios = <&tlmm 12 GPIO_ACTIVE_HIGH>;
-
-               port {
-                       panel_in: endpoint {
-                               remote-endpoint = <&dsi0_out>;
-                       };
-               };
-       };
-};
-
-&dsi0_out {
-       remote-endpoint = <&panel_in>;
-       data-lanes = <0 1 2 3>;
-};
-
-&dsi0_phy {
-       status = "okay";
-
-       vddio-supply = <&pma8084_l12>;
-};
-
-&gpu {
-       status = "okay";
-};
-
-&mdss {
-       status = "okay";
-};
-
-&otg {
-       status = "okay";
-
-       phys = <&usb_hs1_phy>;
-       phy-select = <&tcsr 0xb000 0>;
-
-       hnp-disable;
-       srp-disable;
-       adp-disable;
-
-       ulpi {
-               phy@a {
-                       status = "okay";
-
-                       v1p8-supply = <&pma8084_l6>;
-                       v3p3-supply = <&pma8084_l24>;
-
-                       qcom,init-seq = /bits/ 8 <0x1 0x64>;
-               };
-       };
-};
-
-&pma8084_gpios {
-       gpio_keys_pin_a: gpio-keys-active {
-               pins = "gpio2", "gpio3", "gpio5";
-               function = "normal";
-
-               bias-pull-up;
-               power-source = <PMA8084_GPIO_S4>;
-       };
-
-       touchkey_pin: touchkey-int-pin {
-               pins = "gpio6";
-               function = "normal";
-               bias-disable;
-               input-enable;
-               power-source = <PMA8084_GPIO_S4>;
-       };
-
-       touch_pin: touchscreen-int-pin {
-               pins = "gpio8";
-               function = "normal";
-               bias-disable;
-               input-enable;
-               power-source = <PMA8084_GPIO_S4>;
-       };
-
-       panel_en_pin: panel-en-pin {
-               pins = "gpio14";
-               function = "normal";
-               bias-pull-up;
-               power-source = <PMA8084_GPIO_S4>;
-               qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
-       };
-
-       wlan_sleep_clk_pin: wlan-sleep-clk-pin {
-               pins = "gpio16";
-               function = "func2";
-
-               output-high;
-               power-source = <PMA8084_GPIO_S4>;
-               qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>;
-       };
-
-       panel_rst_pin: panel-rst-pin {
-               pins = "gpio17";
-               function = "normal";
-               bias-disable;
-               power-source = <PMA8084_GPIO_S4>;
-               qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
-       };
-
-       fuelgauge_pin: fuelgauge-int-pin {
-               pins = "gpio21";
-               function = "normal";
-               bias-disable;
-               input-enable;
-               power-source = <PMA8084_GPIO_S4>;
-       };
-};
-
-&remoteproc_adsp {
-       cx-supply = <&pma8084_s2>;
-};
-
-&remoteproc_mss {
-       cx-supply = <&pma8084_s2>;
-       mss-supply = <&pma8084_s6>;
-       mx-supply = <&pma8084_s1>;
-       pll-supply = <&pma8084_l12>;
-};
-
-&rpm_requests {
-       pma8084-regulators {
-               compatible = "qcom,rpm-pma8084-regulators";
-
-               pma8084_s1: s1 {
-                       regulator-min-microvolt = <675000>;
-                       regulator-max-microvolt = <1050000>;
-                       regulator-always-on;
-               };
-
-               pma8084_s2: s2 {
-                       regulator-min-microvolt = <500000>;
-                       regulator-max-microvolt = <1050000>;
-               };
-
-               pma8084_s3: s3 {
-                       regulator-min-microvolt = <1300000>;
-                       regulator-max-microvolt = <1300000>;
-               };
-
-               pma8084_s4: s4 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <1800000>;
-               };
-
-               pma8084_s5: s5 {
-                       regulator-min-microvolt = <2150000>;
-                       regulator-max-microvolt = <2150000>;
-               };
-
-               pma8084_s6: s6 {
-                       regulator-min-microvolt = <1050000>;
-                       regulator-max-microvolt = <1050000>;
-               };
-
-               pma8084_l1: l1 {
-                       regulator-min-microvolt = <1225000>;
-                       regulator-max-microvolt = <1225000>;
-               };
-
-               pma8084_l2: l2 {
-                       regulator-min-microvolt = <1200000>;
-                       regulator-max-microvolt = <1200000>;
-               };
-
-               pma8084_l3: l3 {
-                       regulator-min-microvolt = <1050000>;
-                       regulator-max-microvolt = <1200000>;
-               };
-
-               pma8084_l4: l4 {
-                       regulator-min-microvolt = <1200000>;
-                       regulator-max-microvolt = <1225000>;
-               };
-
-               pma8084_l5: l5 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <1800000>;
-               };
-
-               pma8084_l6: l6 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <1800000>;
-               };
-
-               pma8084_l7: l7 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <1800000>;
-               };
-
-               pma8084_l8: l8 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <1800000>;
-               };
-
-               pma8084_l9: l9 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <2950000>;
-               };
-
-               pma8084_l10: l10 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <2950000>;
-               };
-
-               pma8084_l11: l11 {
-                       regulator-min-microvolt = <1300000>;
-                       regulator-max-microvolt = <1300000>;
-               };
-
-               pma8084_l12: l12 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <1800000>;
-                       regulator-always-on;
-               };
-
-               pma8084_l13: l13 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <2950000>;
-               };
-
-               pma8084_l14: l14 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <1800000>;
-               };
-
-               pma8084_l15: l15 {
-                       regulator-min-microvolt = <2050000>;
-                       regulator-max-microvolt = <2050000>;
-               };
-
-               pma8084_l16: l16 {
-                       regulator-min-microvolt = <2700000>;
-                       regulator-max-microvolt = <2700000>;
-               };
-
-               pma8084_l17: l17 {
-                       regulator-min-microvolt = <2850000>;
-                       regulator-max-microvolt = <2850000>;
-               };
-
-               pma8084_l18: l18 {
-                       regulator-min-microvolt = <2850000>;
-                       regulator-max-microvolt = <2850000>;
-               };
-
-               pma8084_l19: l19 {
-                       regulator-min-microvolt = <3300000>;
-                       regulator-max-microvolt = <3300000>;
-               };
-
-               pma8084_l20: l20 {
-                       regulator-min-microvolt = <2950000>;
-                       regulator-max-microvolt = <2950000>;
-                       regulator-system-load = <200000>;
-                       regulator-allow-set-load;
-               };
-
-               pma8084_l21: l21 {
-                       regulator-min-microvolt = <2950000>;
-                       regulator-max-microvolt = <2950000>;
-                       regulator-system-load = <200000>;
-                       regulator-allow-set-load;
-               };
-
-               pma8084_l22: l22 {
-                       regulator-min-microvolt = <3000000>;
-                       regulator-max-microvolt = <3300000>;
-               };
-
-               pma8084_l23: l23 {
-                       regulator-min-microvolt = <3000000>;
-                       regulator-max-microvolt = <3000000>;
-               };
-
-               pma8084_l24: l24 {
-                       regulator-min-microvolt = <3075000>;
-                       regulator-max-microvolt = <3075000>;
-               };
-
-               pma8084_l25: l25 {
-                       regulator-min-microvolt = <2100000>;
-                       regulator-max-microvolt = <2100000>;
-               };
-
-               pma8084_l26: l26 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <2050000>;
-               };
-
-               pma8084_l27: l27 {
-                       regulator-min-microvolt = <1000000>;
-                       regulator-max-microvolt = <1225000>;
-               };
-
-               pma8084_lvs1: lvs1 {};
-               pma8084_lvs2: lvs2 {};
-               pma8084_lvs3: lvs3 {};
-               pma8084_lvs4: lvs4 {};
-
-               pma8084_5vs1: 5vs1 {};
-       };
-};
-
-&sdhc_1 {
-       status = "okay";
-
-       vmmc-supply = <&pma8084_l20>;
-       vqmmc-supply = <&pma8084_s4>;
-
-       pinctrl-names = "default";
-       pinctrl-0 = <&sdhc1_pin_a>;
-};
-
-&sdhc_2 {
-       status = "okay";
-       max-frequency = <100000000>;
-
-       pinctrl-names = "default";
-       pinctrl-0 = <&sdhc3_pin_a>;
-
-       vmmc-supply = <&vreg_wlan>;
-       vqmmc-supply = <&pma8084_s4>;
-
-       non-removable;
-
-       #address-cells = <1>;
-       #size-cells = <0>;
-
-       wifi@1 {
-               reg = <1>;
-               compatible = "brcm,bcm4329-fmac";
-
-               interrupt-parent = <&tlmm>;
-               interrupts = <92 IRQ_TYPE_LEVEL_HIGH>;
-               interrupt-names = "host-wake";
-
-               pinctrl-names = "default";
-               pinctrl-0 = <&wlan_sleep_clk_pin &wifi_pin>;
-       };
-};
-
-&sdhc_3 {
-       status = "okay";
-       max-frequency = <100000000>;
-
-       vmmc-supply = <&pma8084_l21>;
-       vqmmc-supply = <&pma8084_l13>;
-
-       /*
-        * cd-gpio is intentionally disabled. If enabled, an SD card
-        * present during boot is not initialized correctly. Without
-        * cd-gpios the driver resorts to polling, so hotplug works.
-        */
-       pinctrl-names = "default";
-       pinctrl-0 = <&sdhc2_pin_a /* &sdhc2_cd_pin */>;
-       /* cd-gpios = <&tlmm 62 GPIO_ACTIVE_LOW>; */
-};
-
-&tlmm {
-       blsp2_uart2_pins_active: blsp2-uart2-pins-active {
-               pins = "gpio45", "gpio46", "gpio47", "gpio48";
-               function = "blsp_uart8";
-               drive-strength = <8>;
-               bias-disable;
-       };
-
-       blsp2_uart2_pins_sleep: blsp2-uart2-pins-sleep {
-               pins = "gpio45", "gpio46", "gpio47", "gpio48";
-               function = "gpio";
-               drive-strength = <2>;
-               bias-pull-down;
-       };
-
-       bt_pins: bt-pins {
-               hostwake {
-                       pins = "gpio75";
-                       function = "gpio";
-                       drive-strength = <16>;
-                       input-enable;
-               };
-
-               devwake {
-                       pins = "gpio91";
-                       function = "gpio";
-                       drive-strength = <2>;
-               };
-       };
-
-       sdhc1_pin_a: sdhc1-pin-active {
-               clk {
-                       pins = "sdc1_clk";
-                       drive-strength = <4>;
-                       bias-disable;
-               };
-
-               cmd-data {
-                       pins = "sdc1_cmd", "sdc1_data";
-                       drive-strength = <4>;
-                       bias-pull-up;
-               };
-       };
-
-       sdhc2_pin_a: sdhc2-pin-active {
-               clk-cmd-data {
-                       pins = "gpio35", "gpio36", "gpio37", "gpio38",
-                               "gpio39", "gpio40";
-                       function = "sdc3";
-                       drive-strength = <8>;
-                       bias-disable;
-               };
-       };
-
-       sdhc2_cd_pin: sdhc2-cd {
-               pins = "gpio62";
-               function = "gpio";
-
-               drive-strength = <2>;
-               bias-disable;
-       };
-
-       sdhc3_pin_a: sdhc3-pin-active {
-               clk {
-                       pins = "sdc2_clk";
-                       drive-strength = <6>;
-                       bias-disable;
-               };
-
-               cmd-data {
-                       pins = "sdc2_cmd", "sdc2_data";
-                       drive-strength = <6>;
-                       bias-pull-up;
-               };
-       };
-
-       i2c2_pins: i2c2 {
-               mux {
-                       pins = "gpio6", "gpio7";
-                       function = "blsp_i2c2";
-
-                       drive-strength = <2>;
-                       bias-disable;
-               };
-       };
-
-       i2c6_pins: i2c6 {
-               mux {
-                       pins = "gpio29", "gpio30";
-                       function = "blsp_i2c6";
-
-                       drive-strength = <2>;
-                       bias-disable;
-               };
-       };
-
-       i2c12_pins: i2c12 {
-               mux {
-                       pins = "gpio87", "gpio88";
-                       function = "blsp_i2c12";
-
-                       drive-strength = <2>;
-                       bias-disable;
-               };
-       };
-
-       i2c_touchkey_pins: i2c-touchkey {
-               mux {
-                       pins = "gpio95", "gpio96";
-                       function = "gpio";
-                       input-enable;
-                       bias-pull-up;
-               };
-       };
-
-       i2c_led_gpioex_pins: i2c-led-gpioex {
-               mux {
-                       pins = "gpio120", "gpio121";
-                       function = "gpio";
-                       input-enable;
-                       bias-pull-down;
-               };
-       };
-
-       gpioex_pin: gpioex {
-               res {
-                       pins = "gpio145";
-                       function = "gpio";
-
-                       bias-pull-up;
-                       drive-strength = <2>;
-               };
-       };
-
-       wifi_pin: wifi {
-               int {
-                       pins = "gpio92";
-                       function = "gpio";
-
-                       input-enable;
-                       bias-pull-down;
-               };
-       };
-
-       panel_te_pin: panel {
-               te {
-                       pins = "gpio12";
-                       function = "mdp_vsync";
-
-                       drive-strength = <2>;
-                       bias-disable;
-               };
-       };
-};
diff --git a/arch/arm/boot/dts/qcom-msm8974-sony-xperia-shinano-castor.dts b/arch/arm/boot/dts/qcom-msm8974-sony-xperia-shinano-castor.dts
deleted file mode 100644 (file)
index 687f614..0000000
+++ /dev/null
@@ -1,697 +0,0 @@
-#include "qcom-msm8974pro.dtsi"
-#include "qcom-pm8841.dtsi"
-#include "qcom-pm8941.dtsi"
-#include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
-#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
-
-/ {
-       model = "Sony Xperia Z2 Tablet";
-       compatible = "sony,xperia-castor", "qcom,msm8974";
-
-       aliases {
-               serial0 = &blsp1_uart2;
-               serial1 = &blsp2_uart1;
-       };
-
-       chosen {
-               stdout-path = "serial0:115200n8";
-       };
-
-       gpio-keys {
-               compatible = "gpio-keys";
-
-               pinctrl-names = "default";
-               pinctrl-0 = <&gpio_keys_pin_a>;
-
-               volume-down {
-                       label = "volume_down";
-                       gpios = <&pm8941_gpios 2 GPIO_ACTIVE_LOW>;
-                       linux,input-type = <1>;
-                       linux,code = <KEY_VOLUMEDOWN>;
-               };
-
-               camera-snapshot {
-                       label = "camera_snapshot";
-                       gpios = <&pm8941_gpios 3 GPIO_ACTIVE_LOW>;
-                       linux,input-type = <1>;
-                       linux,code = <KEY_CAMERA>;
-               };
-
-               camera-focus {
-                       label = "camera_focus";
-                       gpios = <&pm8941_gpios 4 GPIO_ACTIVE_LOW>;
-                       linux,input-type = <1>;
-                       linux,code = <KEY_CAMERA_FOCUS>;
-               };
-
-               volume-up {
-                       label = "volume_up";
-                       gpios = <&pm8941_gpios 5 GPIO_ACTIVE_LOW>;
-                       linux,input-type = <1>;
-                       linux,code = <KEY_VOLUMEUP>;
-               };
-       };
-
-       vreg_bl_vddio: lcd-backlight-vddio {
-               compatible = "regulator-fixed";
-               regulator-name = "vreg_bl_vddio";
-               regulator-min-microvolt = <3150000>;
-               regulator-max-microvolt = <3150000>;
-
-               gpio = <&tlmm 69 0>;
-               enable-active-high;
-
-               vin-supply = <&pm8941_s3>;
-               startup-delay-us = <70000>;
-
-               pinctrl-names = "default";
-               pinctrl-0 = <&lcd_backlight_en_pin_a>;
-       };
-
-       vreg_vsp: lcd-dcdc-regulator {
-               compatible = "regulator-fixed";
-               regulator-name = "vreg_vsp";
-               regulator-min-microvolt = <5600000>;
-               regulator-max-microvolt = <5600000>;
-
-               gpio = <&pm8941_gpios 20 GPIO_ACTIVE_HIGH>;
-               enable-active-high;
-
-               pinctrl-names = "default";
-               pinctrl-0 = <&lcd_dcdc_en_pin_a>;
-       };
-
-       vreg_wlan: wlan-regulator {
-               compatible = "regulator-fixed";
-
-               regulator-name = "wl-reg";
-               regulator-min-microvolt = <3300000>;
-               regulator-max-microvolt = <3300000>;
-
-               gpio = <&pm8941_gpios 18 GPIO_ACTIVE_HIGH>;
-               enable-active-high;
-
-               pinctrl-names = "default";
-               pinctrl-0 = <&wlan_regulator_pin>;
-       };
-};
-
-&blsp1_uart2 {
-       status = "okay";
-
-       pinctrl-names = "default";
-       pinctrl-0 = <&blsp1_uart2_pin_a>;
-};
-
-&blsp2_i2c2 {
-       status = "okay";
-       clock-frequency = <355000>;
-
-       pinctrl-names = "default";
-       pinctrl-0 = <&i2c8_pins>;
-
-       synaptics@2c {
-               compatible = "syna,rmi4-i2c";
-               reg = <0x2c>;
-
-               interrupt-parent = <&tlmm>;
-               interrupts = <86 IRQ_TYPE_EDGE_FALLING>;
-
-               #address-cells = <1>;
-               #size-cells = <0>;
-
-               vdd-supply = <&pm8941_l22>;
-               vio-supply = <&pm8941_lvs3>;
-
-               pinctrl-names = "default";
-               pinctrl-0 = <&ts_int_pin>;
-
-               syna,startup-delay-ms = <10>;
-
-               rmi-f01@1 {
-                       reg = <0x1>;
-                       syna,nosleep = <1>;
-               };
-
-               rmi-f11@11 {
-                       reg = <0x11>;
-                       syna,f11-flip-x = <1>;
-                       syna,sensor-type = <1>;
-               };
-       };
-};
-
-&blsp2_i2c5 {
-       status = "okay";
-       clock-frequency = <355000>;
-
-       pinctrl-names = "default";
-       pinctrl-0 = <&i2c11_pins>;
-
-       lp8566_wled: backlight@2c {
-               compatible = "ti,lp8556";
-               reg = <0x2c>;
-               power-supply = <&vreg_bl_vddio>;
-
-               bl-name = "backlight";
-               dev-ctrl = /bits/ 8 <0x05>;
-               init-brt = /bits/ 8 <0x3f>;
-               rom_a0h {
-                       rom-addr = /bits/ 8 <0xa0>;
-                       rom-val = /bits/ 8 <0xff>;
-               };
-               rom_a1h {
-                       rom-addr = /bits/ 8 <0xa1>;
-                       rom-val = /bits/ 8 <0x3f>;
-               };
-               rom_a2h {
-                       rom-addr = /bits/ 8 <0xa2>;
-                       rom-val = /bits/ 8 <0x20>;
-               };
-               rom_a3h {
-                       rom-addr = /bits/ 8 <0xa3>;
-                       rom-val = /bits/ 8 <0x5e>;
-               };
-               rom_a4h {
-                       rom-addr = /bits/ 8 <0xa4>;
-                       rom-val = /bits/ 8 <0x02>;
-               };
-               rom_a5h {
-                       rom-addr = /bits/ 8 <0xa5>;
-                       rom-val = /bits/ 8 <0x04>;
-               };
-               rom_a6h {
-                       rom-addr = /bits/ 8 <0xa6>;
-                       rom-val = /bits/ 8 <0x80>;
-               };
-               rom_a7h {
-                       rom-addr = /bits/ 8 <0xa7>;
-                       rom-val = /bits/ 8 <0xf7>;
-               };
-               rom_a9h {
-                       rom-addr = /bits/ 8 <0xa9>;
-                       rom-val = /bits/ 8 <0x80>;
-               };
-               rom_aah {
-                       rom-addr = /bits/ 8 <0xaa>;
-                       rom-val = /bits/ 8 <0x0f>;
-               };
-               rom_aeh {
-                       rom-addr = /bits/ 8 <0xae>;
-                       rom-val = /bits/ 8 <0x0f>;
-               };
-       };
-};
-
-&blsp2_uart1 {
-       status = "okay";
-
-       pinctrl-names = "default";
-       pinctrl-0 = <&blsp2_uart7_pin_a>;
-
-       bluetooth {
-               compatible = "brcm,bcm43438-bt";
-               max-speed = <3000000>;
-
-               pinctrl-names = "default";
-               pinctrl-0 = <&bt_host_wake_pin>,
-                               <&bt_dev_wake_pin>,
-                               <&bt_reg_on_pin>;
-
-               host-wakeup-gpios = <&tlmm 95 GPIO_ACTIVE_HIGH>;
-               device-wakeup-gpios = <&tlmm 96 GPIO_ACTIVE_HIGH>;
-               shutdown-gpios = <&pm8941_gpios 16 GPIO_ACTIVE_HIGH>;
-       };
-};
-
-&otg {
-       status = "okay";
-
-       phys = <&usb_hs1_phy>;
-       phy-select = <&tcsr 0xb000 0>;
-       extcon = <&smbb>, <&usb_id>;
-       vbus-supply = <&chg_otg>;
-
-       hnp-disable;
-       srp-disable;
-       adp-disable;
-
-       ulpi {
-               phy@a {
-                       status = "okay";
-
-                       v1p8-supply = <&pm8941_l6>;
-                       v3p3-supply = <&pm8941_l24>;
-
-                       extcon = <&smbb>;
-                       qcom,init-seq = /bits/ 8 <0x1 0x64>;
-               };
-       };
-};
-
-&pm8941_coincell {
-       status = "okay";
-
-       qcom,rset-ohms = <2100>;
-       qcom,vset-millivolts = <3000>;
-};
-
-&pm8941_gpios {
-       gpio_keys_pin_a: gpio-keys-active {
-               pins = "gpio2", "gpio5";
-               function = "normal";
-
-               bias-pull-up;
-               power-source = <PM8941_GPIO_S3>;
-       };
-
-       bt_reg_on_pin: bt-reg-on {
-               pins = "gpio16";
-               function = "normal";
-
-               output-low;
-               power-source = <PM8941_GPIO_S3>;
-       };
-
-       wlan_sleep_clk_pin: wl-sleep-clk {
-               pins = "gpio17";
-               function = "func2";
-
-               output-high;
-               power-source = <PM8941_GPIO_S3>;
-       };
-
-       wlan_regulator_pin: wl-reg-active {
-               pins = "gpio18";
-               function = "normal";
-
-               bias-disable;
-               power-source = <PM8941_GPIO_S3>;
-       };
-
-       lcd_dcdc_en_pin_a: lcd-dcdc-en-active {
-               pins = "gpio20";
-               function = "normal";
-
-               bias-disable;
-               power-source = <PM8941_GPIO_S3>;
-               input-disable;
-               output-low;
-       };
-
-};
-
-&rpm_requests {
-       pm8941-regulators {
-               vdd_l1_l3-supply = <&pm8941_s1>;
-               vdd_l2_lvs1_2_3-supply = <&pm8941_s3>;
-               vdd_l4_l11-supply = <&pm8941_s1>;
-               vdd_l5_l7-supply = <&pm8941_s2>;
-               vdd_l6_l12_l14_l15-supply = <&pm8941_s2>;
-               vdd_l9_l10_l17_l22-supply = <&vreg_boost>;
-               vdd_l13_l20_l23_l24-supply = <&vreg_boost>;
-               vdd_l21-supply = <&vreg_boost>;
-
-               pm8941_s1: s1 {
-                       regulator-min-microvolt = <1300000>;
-                       regulator-max-microvolt = <1300000>;
-                       regulator-always-on;
-                       regulator-boot-on;
-               };
-
-               pm8941_s2: s2 {
-                       regulator-min-microvolt = <2150000>;
-                       regulator-max-microvolt = <2150000>;
-                       regulator-boot-on;
-               };
-
-               pm8941_s3: s3 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <1800000>;
-                       regulator-system-load = <154000>;
-                       regulator-always-on;
-                       regulator-boot-on;
-               };
-
-               pm8941_s4: s4 {
-                       regulator-min-microvolt = <5000000>;
-                       regulator-max-microvolt = <5000000>;
-               };
-
-               pm8941_l1: l1 {
-                       regulator-min-microvolt = <1225000>;
-                       regulator-max-microvolt = <1225000>;
-                       regulator-always-on;
-                       regulator-boot-on;
-               };
-
-               pm8941_l2: l2 {
-                       regulator-min-microvolt = <1200000>;
-                       regulator-max-microvolt = <1200000>;
-               };
-
-               pm8941_l3: l3 {
-                       regulator-min-microvolt = <1200000>;
-                       regulator-max-microvolt = <1200000>;
-               };
-
-               pm8941_l4: l4 {
-                       regulator-min-microvolt = <1225000>;
-                       regulator-max-microvolt = <1225000>;
-               };
-
-               pm8941_l5: l5 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <1800000>;
-               };
-
-               pm8941_l6: l6 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <1800000>;
-                       regulator-boot-on;
-               };
-
-               pm8941_l7: l7 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <1800000>;
-                       regulator-boot-on;
-               };
-
-               pm8941_l8: l8 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <1800000>;
-               };
-
-               pm8941_l9: l9 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <2950000>;
-               };
-
-               pm8941_l11: l11 {
-                       regulator-min-microvolt = <1300000>;
-                       regulator-max-microvolt = <1350000>;
-               };
-
-               pm8941_l12: l12 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <1800000>;
-                       regulator-always-on;
-                       regulator-boot-on;
-               };
-
-               pm8941_l13: l13 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <2950000>;
-                       regulator-boot-on;
-               };
-
-               pm8941_l14: l14 {
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <1800000>;
-               };
-
-               pm8941_l15: l15 {
-                       regulator-min-microvolt = <2050000>;
-                       regulator-max-microvolt = <2050000>;
-               };
-
-               pm8941_l16: l16 {
-                       regulator-min-microvolt = <2700000>;
-                       regulator-max-microvolt = <2700000>;
-               };
-
-               pm8941_l17: l17 {
-                       regulator-min-microvolt = <2700000>;
-                       regulator-max-microvolt = <2700000>;
-               };
-
-               pm8941_l18: l18 {
-                       regulator-min-microvolt = <2850000>;
-                       regulator-max-microvolt = <2850000>;
-               };
-
-               pm8941_l19: l19 {
-                       regulator-min-microvolt = <2850000>;
-                       regulator-max-microvolt = <2850000>;
-               };
-
-               pm8941_l20: l20 {
-                       regulator-min-microvolt = <2950000>;
-                       regulator-max-microvolt = <2950000>;
-                       regulator-system-load = <500000>;
-                       regulator-allow-set-load;
-                       regulator-boot-on;
-               };
-
-               pm8941_l21: l21 {
-                       regulator-min-microvolt = <2950000>;
-                       regulator-max-microvolt = <2950000>;
-                       regulator-boot-on;
-               };
-
-               pm8941_l22: l22 {
-                       regulator-min-microvolt = <3000000>;
-                       regulator-max-microvolt = <3000000>;
-               };
-
-               pm8941_l23: l23 {
-                       regulator-min-microvolt = <2800000>;
-                       regulator-max-microvolt = <2800000>;
-               };
-
-               pm8941_l24: l24 {
-                       regulator-min-microvolt = <3075000>;
-                       regulator-max-microvolt = <3075000>;
-                       regulator-boot-on;
-               };
-       };
-};
-
-&sdhc_1 {
-       status = "okay";
-
-       vmmc-supply = <&pm8941_l20>;
-       vqmmc-supply = <&pm8941_s3>;
-
-       pinctrl-names = "default";
-       pinctrl-0 = <&sdhc1_pin_a>;
-};
-
-&sdhc_2 {
-       status = "okay";
-
-       vmmc-supply = <&pm8941_l21>;
-       vqmmc-supply = <&pm8941_l13>;
-
-       cd-gpios = <&tlmm 62 GPIO_ACTIVE_LOW>;
-
-       pinctrl-names = "default";
-       pinctrl-0 = <&sdhc2_pin_a>, <&sdhc2_cd_pin_a>;
-};
-
-&sdhc_3 {
-       status = "okay";
-
-       max-frequency = <100000000>;
-       vmmc-supply = <&vreg_wlan>;
-       non-removable;
-
-       pinctrl-names = "default";
-       pinctrl-0 = <&sdhc3_pin_a>;
-
-       #address-cells = <1>;
-       #size-cells = <0>;
-
-       bcrmf@1 {
-               compatible = "brcm,bcm4339-fmac", "brcm,bcm4329-fmac";
-               reg = <1>;
-
-               brcm,drive-strength = <10>;
-
-               pinctrl-names = "default";
-               pinctrl-0 = <&wlan_sleep_clk_pin>;
-       };
-};
-
-&smbb {
-       qcom,fast-charge-safe-current = <1500000>;
-       qcom,fast-charge-current-limit = <1500000>;
-       qcom,dc-current-limit = <1800000>;
-       qcom,fast-charge-safe-voltage = <4400000>;
-       qcom,fast-charge-high-threshold-voltage = <4350000>;
-       qcom,fast-charge-low-threshold-voltage = <3400000>;
-       qcom,auto-recharge-threshold-voltage = <4200000>;
-       qcom,minimum-input-voltage = <4300000>;
-};
-
-&tlmm {
-       blsp1_uart2_pin_a: blsp1-uart2-pin-active {
-               rx {
-                       pins = "gpio5";
-                       function = "blsp_uart2";
-
-                       drive-strength = <2>;
-                       bias-pull-up;
-               };
-
-               tx {
-                       pins = "gpio4";
-                       function = "blsp_uart2";
-
-                       drive-strength = <4>;
-                       bias-disable;
-               };
-       };
-
-       blsp2_uart7_pin_a: blsp2-uart7-pin-active {
-               tx {
-                       pins = "gpio41";
-                       function = "blsp_uart7";
-
-                       drive-strength = <2>;
-                       bias-disable;
-               };
-
-               rx {
-                       pins = "gpio42";
-                       function = "blsp_uart7";
-
-                       drive-strength = <2>;
-                       bias-pull-up;
-               };
-
-               cts {
-                       pins = "gpio43";
-                       function = "blsp_uart7";
-
-                       drive-strength = <2>;
-                       bias-pull-up;
-               };
-
-               rts {
-                       pins = "gpio44";
-                       function = "blsp_uart7";
-
-                       drive-strength = <2>;
-                       bias-disable;
-               };
-       };
-
-       i2c8_pins: i2c8 {
-               mux {
-                       pins = "gpio47", "gpio48";
-                       function = "blsp_i2c8";
-
-                       drive-strength = <2>;
-                       bias-disable;
-               };
-       };
-
-       i2c11_pins: i2c11 {
-               mux {
-                       pins = "gpio83", "gpio84";
-                       function = "blsp_i2c11";
-
-                       drive-strength = <2>;
-                       bias-disable;
-               };
-       };
-
-       lcd_backlight_en_pin_a: lcd-backlight-vddio {
-               pins = "gpio69";
-               drive-strength = <10>;
-               output-low;
-               bias-disable;
-       };
-
-       sdhc1_pin_a: sdhc1-pin-active {
-               clk {
-                       pins = "sdc1_clk";
-                       drive-strength = <16>;
-                       bias-disable;
-               };
-
-               cmd-data {
-                       pins = "sdc1_cmd", "sdc1_data";
-                       drive-strength = <10>;
-                       bias-pull-up;
-               };
-       };
-
-       sdhc2_cd_pin_a: sdhc2-cd-pin-active {
-               pins = "gpio62";
-               function = "gpio";
-
-               drive-strength = <2>;
-               bias-disable;
-               };
-
-       sdhc2_pin_a: sdhc2-pin-active {
-               clk {
-                       pins = "sdc2_clk";
-                       drive-strength = <6>;
-                       bias-disable;
-               };
-
-               cmd-data {
-                       pins = "sdc2_cmd", "sdc2_data";
-                       drive-strength = <6>;
-                       bias-pull-up;
-               };
-       };
-
-       sdhc3_pin_a: sdhc3-pin-active {
-               clk {
-                       pins = "gpio40";
-                       function = "sdc3";
-
-                       drive-strength = <10>;
-                       bias-disable;
-               };
-
-               cmd {
-                       pins = "gpio39";
-                       function = "sdc3";
-
-                       drive-strength = <10>;
-                       bias-pull-up;
-               };
-
-               data {
-                       pins = "gpio35", "gpio36", "gpio37", "gpio38";
-                       function = "sdc3";
-
-                       drive-strength = <10>;
-                       bias-pull-up;
-               };
-       };
-
-       ts_int_pin: synaptics {
-               pin {
-                       pins = "gpio86";
-                       function = "gpio";
-
-                       drive-strength = <2>;
-                       bias-disable;
-                       input-enable;
-               };
-       };
-
-       bt_host_wake_pin: bt-host-wake {
-               pins = "gpio95";
-               function = "gpio";
-
-               drive-strength = <2>;
-               bias-disable;
-               output-low;
-       };
-
-       bt_dev_wake_pin: bt-dev-wake {
-               pins = "gpio96";
-               function = "gpio";
-
-               drive-strength = <2>;
-               bias-disable;
-       };
-};
diff --git a/arch/arm/boot/dts/qcom-msm8974pro-samsung-klte.dts b/arch/arm/boot/dts/qcom-msm8974pro-samsung-klte.dts
new file mode 100644 (file)
index 0000000..3b1ea8c
--- /dev/null
@@ -0,0 +1,872 @@
+// SPDX-License-Identifier: GPL-2.0
+#include "qcom-msm8974pro.dtsi"
+#include "qcom-pma8084.dtsi"
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
+#include <dt-bindings/leds/common.h>
+
+/ {
+       model = "Samsung Galaxy S5";
+       compatible = "samsung,klte", "qcom,msm8974";
+
+       aliases {
+               serial0 = &blsp1_uart1;
+               mmc0 = &sdhc_1; /* SDC1 eMMC slot */
+               mmc1 = &sdhc_3; /* SDC2 SD card slot */
+       };
+
+       chosen {
+               stdout-path = "serial0:115200n8";
+       };
+
+       gpio-keys {
+               compatible = "gpio-keys";
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&gpio_keys_pin_a>;
+
+               volume-down {
+                       label = "volume_down";
+                       gpios = <&pma8084_gpios 2 GPIO_ACTIVE_LOW>;
+                       linux,input-type = <1>;
+                       linux,code = <KEY_VOLUMEDOWN>;
+                       debounce-interval = <15>;
+               };
+
+               home-key {
+                       label = "home_key";
+                       gpios = <&pma8084_gpios 3 GPIO_ACTIVE_LOW>;
+                       linux,input-type = <1>;
+                       linux,code = <KEY_HOMEPAGE>;
+                       wakeup-source;
+                       debounce-interval = <15>;
+               };
+
+               volume-up {
+                       label = "volume_up";
+                       gpios = <&pma8084_gpios 5 GPIO_ACTIVE_LOW>;
+                       linux,input-type = <1>;
+                       linux,code = <KEY_VOLUMEUP>;
+                       debounce-interval = <15>;
+               };
+       };
+
+       i2c-gpio-touchkey {
+               compatible = "i2c-gpio";
+               #address-cells = <1>;
+               #size-cells = <0>;
+               sda-gpios = <&tlmm 95 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+               scl-gpios = <&tlmm 96 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&i2c_touchkey_pins>;
+
+               touchkey@20 {
+                       compatible = "cypress,tm2-touchkey";
+                       reg = <0x20>;
+
+                       interrupt-parent = <&pma8084_gpios>;
+                       interrupts = <6 IRQ_TYPE_EDGE_FALLING>;
+                       pinctrl-names = "default";
+                       pinctrl-0 = <&touchkey_pin>;
+
+                       vcc-supply = <&max77826_ldo15>;
+                       vdd-supply = <&pma8084_l19>;
+
+                       linux,keycodes = <KEY_APPSELECT KEY_BACK>;
+               };
+       };
+
+       i2c-gpio-led {
+               compatible = "i2c-gpio";
+               #address-cells = <1>;
+               #size-cells = <0>;
+               scl-gpios = <&tlmm 121 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+               sda-gpios = <&tlmm 120 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&i2c_led_gpioex_pins>;
+
+               i2c-gpio,delay-us = <2>;
+
+               gpio_expander: gpio@20 {
+                       compatible = "nxp,pcal6416";
+                       reg = <0x20>;
+
+                       gpio-controller;
+                       #gpio-cells = <2>;
+
+                       vcc-supply = <&pma8084_s4>;
+
+                       pinctrl-names = "default";
+                       pinctrl-0 = <&gpioex_pin>;
+
+                       reset-gpios = <&tlmm 145 GPIO_ACTIVE_LOW>;
+               };
+
+               led-controller@30 {
+                       compatible = "panasonic,an30259a";
+                       reg = <0x30>;
+
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+
+                       led@1 {
+                               reg = <1>;
+                               function = LED_FUNCTION_STATUS;
+                               color = <LED_COLOR_ID_RED>;
+                       };
+
+                       led@2 {
+                               reg = <2>;
+                               function = LED_FUNCTION_STATUS;
+                               color = <LED_COLOR_ID_GREEN>;
+                       };
+
+                       led@3 {
+                               reg = <3>;
+                               function = LED_FUNCTION_STATUS;
+                               color = <LED_COLOR_ID_BLUE>;
+                       };
+               };
+       };
+
+       vreg_wlan: wlan-regulator {
+               compatible = "regulator-fixed";
+
+               regulator-name = "wl-reg";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+
+               gpio = <&gpio_expander 8 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+       };
+
+       vreg_panel: panel-regulator {
+               compatible = "regulator-fixed";
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&panel_en_pin>;
+
+               regulator-name = "panel-vddr-reg";
+               regulator-min-microvolt = <1500000>;
+               regulator-max-microvolt = <1500000>;
+
+               gpio = <&pma8084_gpios 14 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+       };
+
+       /delete-node/ vreg-boost;
+};
+
+&blsp1_i2c2 {
+       status = "okay";
+
+       pinctrl-names = "default";
+       pinctrl-0 = <&i2c2_pins>;
+
+       touchscreen@20 {
+               compatible = "syna,rmi4-i2c";
+               reg = <0x20>;
+
+               interrupt-parent = <&pma8084_gpios>;
+               interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
+
+               vdd-supply = <&max77826_ldo13>;
+               vio-supply = <&pma8084_lvs2>;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&touch_pin>;
+
+               syna,startup-delay-ms = <100>;
+
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               rmi4-f01@1 {
+                       reg = <0x1>;
+                       syna,nosleep-mode = <1>;
+               };
+
+               rmi4-f12@12 {
+                       reg = <0x12>;
+                       syna,sensor-type = <1>;
+               };
+       };
+};
+
+&blsp1_i2c6 {
+       status = "okay";
+
+       pinctrl-names = "default";
+       pinctrl-0 = <&i2c6_pins>;
+
+       pmic@60 {
+               reg = <0x60>;
+               compatible = "maxim,max77826";
+
+               regulators {
+                       max77826_ldo1: LDO1 {
+                               regulator-min-microvolt = <1200000>;
+                               regulator-max-microvolt = <1200000>;
+                       };
+
+                       max77826_ldo2: LDO2 {
+                               regulator-min-microvolt = <1000000>;
+                               regulator-max-microvolt = <1000000>;
+                       };
+
+                       max77826_ldo3: LDO3 {
+                               regulator-min-microvolt = <1200000>;
+                               regulator-max-microvolt = <1200000>;
+                       };
+
+                       max77826_ldo4: LDO4 {
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <1800000>;
+                       };
+
+                       max77826_ldo5: LDO5 {
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <1800000>;
+                       };
+
+                       max77826_ldo6: LDO6 {
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <3300000>;
+                       };
+
+                       max77826_ldo7: LDO7 {
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <1800000>;
+                       };
+
+                       max77826_ldo8: LDO8 {
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <3300000>;
+                       };
+
+                       max77826_ldo9: LDO9 {
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <1800000>;
+                       };
+
+                       max77826_ldo10: LDO10 {
+                               regulator-min-microvolt = <2800000>;
+                               regulator-max-microvolt = <2950000>;
+                       };
+
+                       max77826_ldo11: LDO11 {
+                               regulator-min-microvolt = <2700000>;
+                               regulator-max-microvolt = <2950000>;
+                       };
+
+                       max77826_ldo12: LDO12 {
+                               regulator-min-microvolt = <2500000>;
+                               regulator-max-microvolt = <3300000>;
+                       };
+
+                       max77826_ldo13: LDO13 {
+                               regulator-min-microvolt = <3300000>;
+                               regulator-max-microvolt = <3300000>;
+                       };
+
+                       max77826_ldo14: LDO14 {
+                               regulator-min-microvolt = <3300000>;
+                               regulator-max-microvolt = <3300000>;
+                       };
+
+                       max77826_ldo15: LDO15 {
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <1800000>;
+                       };
+
+                       max77826_buck: BUCK {
+                               regulator-min-microvolt = <1225000>;
+                               regulator-max-microvolt = <1225000>;
+                       };
+
+                       max77826_buckboost: BUCKBOOST {
+                               regulator-min-microvolt = <3400000>;
+                               regulator-max-microvolt = <3400000>;
+                       };
+               };
+       };
+};
+
+&blsp1_uart2 {
+       status = "okay";
+};
+
+&blsp2_i2c6 {
+       status = "okay";
+
+       pinctrl-names = "default";
+       pinctrl-0 = <&i2c12_pins>;
+
+       fuelgauge@36 {
+               compatible = "maxim,max17048";
+               reg = <0x36>;
+
+               maxim,double-soc;
+               maxim,rcomp = /bits/ 8 <0x56>;
+
+               interrupt-parent = <&pma8084_gpios>;
+               interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&fuelgauge_pin>;
+       };
+};
+
+&blsp2_uart2 {
+       status = "okay";
+
+       pinctrl-names = "default", "sleep";
+       pinctrl-0 = <&blsp2_uart2_pins_active>;
+       pinctrl-1 = <&blsp2_uart2_pins_sleep>;
+
+       bluetooth {
+               compatible = "brcm,bcm43540-bt";
+               max-speed = <3000000>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&bt_pins>;
+               device-wakeup-gpios = <&tlmm 91 GPIO_ACTIVE_HIGH>;
+               shutdown-gpios = <&gpio_expander 9 GPIO_ACTIVE_HIGH>;
+               interrupt-parent = <&tlmm>;
+               interrupts = <75 IRQ_TYPE_LEVEL_HIGH>;
+               interrupt-names = "host-wakeup";
+       };
+};
+
+&dsi0 {
+       status = "okay";
+
+       vdda-supply = <&pma8084_l2>;
+       vdd-supply = <&pma8084_l22>;
+       vddio-supply = <&pma8084_l12>;
+
+       panel: panel@0 {
+               reg = <0>;
+               compatible = "samsung,s6e3fa2";
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&panel_te_pin &panel_rst_pin>;
+
+               iovdd-supply = <&pma8084_lvs4>;
+               vddr-supply = <&vreg_panel>;
+
+               reset-gpios = <&pma8084_gpios 17 GPIO_ACTIVE_LOW>;
+               te-gpios = <&tlmm 12 GPIO_ACTIVE_HIGH>;
+
+               port {
+                       panel_in: endpoint {
+                               remote-endpoint = <&dsi0_out>;
+                       };
+               };
+       };
+};
+
+&dsi0_out {
+       remote-endpoint = <&panel_in>;
+       data-lanes = <0 1 2 3>;
+};
+
+&dsi0_phy {
+       status = "okay";
+
+       vddio-supply = <&pma8084_l12>;
+};
+
+&gpu {
+       status = "okay";
+};
+
+&mdss {
+       status = "okay";
+};
+
+&otg {
+       status = "okay";
+
+       phys = <&usb_hs1_phy>;
+       phy-select = <&tcsr 0xb000 0>;
+
+       hnp-disable;
+       srp-disable;
+       adp-disable;
+
+       ulpi {
+               phy@a {
+                       status = "okay";
+
+                       v1p8-supply = <&pma8084_l6>;
+                       v3p3-supply = <&pma8084_l24>;
+
+                       qcom,init-seq = /bits/ 8 <0x1 0x64>;
+               };
+       };
+};
+
+&pma8084_gpios {
+       gpio_keys_pin_a: gpio-keys-active {
+               pins = "gpio2", "gpio3", "gpio5";
+               function = "normal";
+
+               bias-pull-up;
+               power-source = <PMA8084_GPIO_S4>;
+       };
+
+       touchkey_pin: touchkey-int-pin {
+               pins = "gpio6";
+               function = "normal";
+               bias-disable;
+               input-enable;
+               power-source = <PMA8084_GPIO_S4>;
+       };
+
+       touch_pin: touchscreen-int-pin {
+               pins = "gpio8";
+               function = "normal";
+               bias-disable;
+               input-enable;
+               power-source = <PMA8084_GPIO_S4>;
+       };
+
+       panel_en_pin: panel-en-pin {
+               pins = "gpio14";
+               function = "normal";
+               bias-pull-up;
+               power-source = <PMA8084_GPIO_S4>;
+               qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
+       };
+
+       wlan_sleep_clk_pin: wlan-sleep-clk-pin {
+               pins = "gpio16";
+               function = "func2";
+
+               output-high;
+               power-source = <PMA8084_GPIO_S4>;
+               qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>;
+       };
+
+       panel_rst_pin: panel-rst-pin {
+               pins = "gpio17";
+               function = "normal";
+               bias-disable;
+               power-source = <PMA8084_GPIO_S4>;
+               qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
+       };
+
+       fuelgauge_pin: fuelgauge-int-pin {
+               pins = "gpio21";
+               function = "normal";
+               bias-disable;
+               input-enable;
+               power-source = <PMA8084_GPIO_S4>;
+       };
+};
+
+&remoteproc_adsp {
+       cx-supply = <&pma8084_s2>;
+};
+
+&remoteproc_mss {
+       cx-supply = <&pma8084_s2>;
+       mss-supply = <&pma8084_s6>;
+       mx-supply = <&pma8084_s1>;
+       pll-supply = <&pma8084_l12>;
+};
+
+&rpm_requests {
+       pma8084-regulators {
+               compatible = "qcom,rpm-pma8084-regulators";
+
+               pma8084_s1: s1 {
+                       regulator-min-microvolt = <675000>;
+                       regulator-max-microvolt = <1050000>;
+                       regulator-always-on;
+               };
+
+               pma8084_s2: s2 {
+                       regulator-min-microvolt = <500000>;
+                       regulator-max-microvolt = <1050000>;
+               };
+
+               pma8084_s3: s3 {
+                       regulator-min-microvolt = <1300000>;
+                       regulator-max-microvolt = <1300000>;
+               };
+
+               pma8084_s4: s4 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+               };
+
+               pma8084_s5: s5 {
+                       regulator-min-microvolt = <2150000>;
+                       regulator-max-microvolt = <2150000>;
+               };
+
+               pma8084_s6: s6 {
+                       regulator-min-microvolt = <1050000>;
+                       regulator-max-microvolt = <1050000>;
+               };
+
+               pma8084_l1: l1 {
+                       regulator-min-microvolt = <1225000>;
+                       regulator-max-microvolt = <1225000>;
+               };
+
+               pma8084_l2: l2 {
+                       regulator-min-microvolt = <1200000>;
+                       regulator-max-microvolt = <1200000>;
+               };
+
+               pma8084_l3: l3 {
+                       regulator-min-microvolt = <1050000>;
+                       regulator-max-microvolt = <1200000>;
+               };
+
+               pma8084_l4: l4 {
+                       regulator-min-microvolt = <1200000>;
+                       regulator-max-microvolt = <1225000>;
+               };
+
+               pma8084_l5: l5 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+               };
+
+               pma8084_l6: l6 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+               };
+
+               pma8084_l7: l7 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+               };
+
+               pma8084_l8: l8 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+               };
+
+               pma8084_l9: l9 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <2950000>;
+               };
+
+               pma8084_l10: l10 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <2950000>;
+               };
+
+               pma8084_l11: l11 {
+                       regulator-min-microvolt = <1300000>;
+                       regulator-max-microvolt = <1300000>;
+               };
+
+               pma8084_l12: l12 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       regulator-always-on;
+               };
+
+               pma8084_l13: l13 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <2950000>;
+               };
+
+               pma8084_l14: l14 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+               };
+
+               pma8084_l15: l15 {
+                       regulator-min-microvolt = <2050000>;
+                       regulator-max-microvolt = <2050000>;
+               };
+
+               pma8084_l16: l16 {
+                       regulator-min-microvolt = <2700000>;
+                       regulator-max-microvolt = <2700000>;
+               };
+
+               pma8084_l17: l17 {
+                       regulator-min-microvolt = <2850000>;
+                       regulator-max-microvolt = <2850000>;
+               };
+
+               pma8084_l18: l18 {
+                       regulator-min-microvolt = <2850000>;
+                       regulator-max-microvolt = <2850000>;
+               };
+
+               pma8084_l19: l19 {
+                       regulator-min-microvolt = <3300000>;
+                       regulator-max-microvolt = <3300000>;
+               };
+
+               pma8084_l20: l20 {
+                       regulator-min-microvolt = <2950000>;
+                       regulator-max-microvolt = <2950000>;
+                       regulator-system-load = <200000>;
+                       regulator-allow-set-load;
+               };
+
+               pma8084_l21: l21 {
+                       regulator-min-microvolt = <2950000>;
+                       regulator-max-microvolt = <2950000>;
+                       regulator-system-load = <200000>;
+                       regulator-allow-set-load;
+               };
+
+               pma8084_l22: l22 {
+                       regulator-min-microvolt = <3000000>;
+                       regulator-max-microvolt = <3300000>;
+               };
+
+               pma8084_l23: l23 {
+                       regulator-min-microvolt = <3000000>;
+                       regulator-max-microvolt = <3000000>;
+               };
+
+               pma8084_l24: l24 {
+                       regulator-min-microvolt = <3075000>;
+                       regulator-max-microvolt = <3075000>;
+               };
+
+               pma8084_l25: l25 {
+                       regulator-min-microvolt = <2100000>;
+                       regulator-max-microvolt = <2100000>;
+               };
+
+               pma8084_l26: l26 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <2050000>;
+               };
+
+               pma8084_l27: l27 {
+                       regulator-min-microvolt = <1000000>;
+                       regulator-max-microvolt = <1225000>;
+               };
+
+               pma8084_lvs1: lvs1 {};
+               pma8084_lvs2: lvs2 {};
+               pma8084_lvs3: lvs3 {};
+               pma8084_lvs4: lvs4 {};
+
+               pma8084_5vs1: 5vs1 {};
+       };
+};
+
+&sdhc_1 {
+       status = "okay";
+
+       vmmc-supply = <&pma8084_l20>;
+       vqmmc-supply = <&pma8084_s4>;
+
+       pinctrl-names = "default";
+       pinctrl-0 = <&sdhc1_pin_a>;
+};
+
+&sdhc_2 {
+       status = "okay";
+       max-frequency = <100000000>;
+
+       pinctrl-names = "default";
+       pinctrl-0 = <&sdhc3_pin_a>;
+
+       vmmc-supply = <&vreg_wlan>;
+       vqmmc-supply = <&pma8084_s4>;
+
+       non-removable;
+
+       #address-cells = <1>;
+       #size-cells = <0>;
+
+       wifi@1 {
+               reg = <1>;
+               compatible = "brcm,bcm4329-fmac";
+
+               interrupt-parent = <&tlmm>;
+               interrupts = <92 IRQ_TYPE_LEVEL_HIGH>;
+               interrupt-names = "host-wake";
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&wlan_sleep_clk_pin &wifi_pin>;
+       };
+};
+
+&sdhc_3 {
+       status = "okay";
+       max-frequency = <100000000>;
+
+       vmmc-supply = <&pma8084_l21>;
+       vqmmc-supply = <&pma8084_l13>;
+
+       /*
+        * cd-gpio is intentionally disabled. If enabled, an SD card
+        * present during boot is not initialized correctly. Without
+        * cd-gpios the driver resorts to polling, so hotplug works.
+        */
+       pinctrl-names = "default";
+       pinctrl-0 = <&sdhc2_pin_a /* &sdhc2_cd_pin */>;
+       /* cd-gpios = <&tlmm 62 GPIO_ACTIVE_LOW>; */
+};
+
+&tlmm {
+       blsp2_uart2_pins_active: blsp2-uart2-pins-active {
+               pins = "gpio45", "gpio46", "gpio47", "gpio48";
+               function = "blsp_uart8";
+               drive-strength = <8>;
+               bias-disable;
+       };
+
+       blsp2_uart2_pins_sleep: blsp2-uart2-pins-sleep {
+               pins = "gpio45", "gpio46", "gpio47", "gpio48";
+               function = "gpio";
+               drive-strength = <2>;
+               bias-pull-down;
+       };
+
+       bt_pins: bt-pins {
+               hostwake {
+                       pins = "gpio75";
+                       function = "gpio";
+                       drive-strength = <16>;
+                       input-enable;
+               };
+
+               devwake {
+                       pins = "gpio91";
+                       function = "gpio";
+                       drive-strength = <2>;
+               };
+       };
+
+       sdhc1_pin_a: sdhc1-pin-active {
+               clk {
+                       pins = "sdc1_clk";
+                       drive-strength = <4>;
+                       bias-disable;
+               };
+
+               cmd-data {
+                       pins = "sdc1_cmd", "sdc1_data";
+                       drive-strength = <4>;
+                       bias-pull-up;
+               };
+       };
+
+       sdhc2_pin_a: sdhc2-pin-active {
+               clk-cmd-data {
+                       pins = "gpio35", "gpio36", "gpio37", "gpio38",
+                               "gpio39", "gpio40";
+                       function = "sdc3";
+                       drive-strength = <8>;
+                       bias-disable;
+               };
+       };
+
+       sdhc2_cd_pin: sdhc2-cd {
+               pins = "gpio62";
+               function = "gpio";
+
+               drive-strength = <2>;
+               bias-disable;
+       };
+
+       sdhc3_pin_a: sdhc3-pin-active {
+               clk {
+                       pins = "sdc2_clk";
+                       drive-strength = <6>;
+                       bias-disable;
+               };
+
+               cmd-data {
+                       pins = "sdc2_cmd", "sdc2_data";
+                       drive-strength = <6>;
+                       bias-pull-up;
+               };
+       };
+
+       i2c2_pins: i2c2 {
+               mux {
+                       pins = "gpio6", "gpio7";
+                       function = "blsp_i2c2";
+
+                       drive-strength = <2>;
+                       bias-disable;
+               };
+       };
+
+       i2c6_pins: i2c6 {
+               mux {
+                       pins = "gpio29", "gpio30";
+                       function = "blsp_i2c6";
+
+                       drive-strength = <2>;
+                       bias-disable;
+               };
+       };
+
+       i2c12_pins: i2c12 {
+               mux {
+                       pins = "gpio87", "gpio88";
+                       function = "blsp_i2c12";
+
+                       drive-strength = <2>;
+                       bias-disable;
+               };
+       };
+
+       i2c_touchkey_pins: i2c-touchkey {
+               mux {
+                       pins = "gpio95", "gpio96";
+                       function = "gpio";
+                       input-enable;
+                       bias-pull-up;
+               };
+       };
+
+       i2c_led_gpioex_pins: i2c-led-gpioex {
+               mux {
+                       pins = "gpio120", "gpio121";
+                       function = "gpio";
+                       input-enable;
+                       bias-pull-down;
+               };
+       };
+
+       gpioex_pin: gpioex {
+               res {
+                       pins = "gpio145";
+                       function = "gpio";
+
+                       bias-pull-up;
+                       drive-strength = <2>;
+               };
+       };
+
+       wifi_pin: wifi {
+               int {
+                       pins = "gpio92";
+                       function = "gpio";
+
+                       input-enable;
+                       bias-pull-down;
+               };
+       };
+
+       panel_te_pin: panel {
+               te {
+                       pins = "gpio12";
+                       function = "mdp_vsync";
+
+                       drive-strength = <2>;
+                       bias-disable;
+               };
+       };
+};
diff --git a/arch/arm/boot/dts/qcom-msm8974pro-sony-xperia-shinano-castor.dts b/arch/arm/boot/dts/qcom-msm8974pro-sony-xperia-shinano-castor.dts
new file mode 100644 (file)
index 0000000..687f614
--- /dev/null
@@ -0,0 +1,697 @@
+#include "qcom-msm8974pro.dtsi"
+#include "qcom-pm8841.dtsi"
+#include "qcom-pm8941.dtsi"
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
+
+/ {
+       model = "Sony Xperia Z2 Tablet";
+       compatible = "sony,xperia-castor", "qcom,msm8974";
+
+       aliases {
+               serial0 = &blsp1_uart2;
+               serial1 = &blsp2_uart1;
+       };
+
+       chosen {
+               stdout-path = "serial0:115200n8";
+       };
+
+       gpio-keys {
+               compatible = "gpio-keys";
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&gpio_keys_pin_a>;
+
+               volume-down {
+                       label = "volume_down";
+                       gpios = <&pm8941_gpios 2 GPIO_ACTIVE_LOW>;
+                       linux,input-type = <1>;
+                       linux,code = <KEY_VOLUMEDOWN>;
+               };
+
+               camera-snapshot {
+                       label = "camera_snapshot";
+                       gpios = <&pm8941_gpios 3 GPIO_ACTIVE_LOW>;
+                       linux,input-type = <1>;
+                       linux,code = <KEY_CAMERA>;
+               };
+
+               camera-focus {
+                       label = "camera_focus";
+                       gpios = <&pm8941_gpios 4 GPIO_ACTIVE_LOW>;
+                       linux,input-type = <1>;
+                       linux,code = <KEY_CAMERA_FOCUS>;
+               };
+
+               volume-up {
+                       label = "volume_up";
+                       gpios = <&pm8941_gpios 5 GPIO_ACTIVE_LOW>;
+                       linux,input-type = <1>;
+                       linux,code = <KEY_VOLUMEUP>;
+               };
+       };
+
+       vreg_bl_vddio: lcd-backlight-vddio {
+               compatible = "regulator-fixed";
+               regulator-name = "vreg_bl_vddio";
+               regulator-min-microvolt = <3150000>;
+               regulator-max-microvolt = <3150000>;
+
+               gpio = <&tlmm 69 0>;
+               enable-active-high;
+
+               vin-supply = <&pm8941_s3>;
+               startup-delay-us = <70000>;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&lcd_backlight_en_pin_a>;
+       };
+
+       vreg_vsp: lcd-dcdc-regulator {
+               compatible = "regulator-fixed";
+               regulator-name = "vreg_vsp";
+               regulator-min-microvolt = <5600000>;
+               regulator-max-microvolt = <5600000>;
+
+               gpio = <&pm8941_gpios 20 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&lcd_dcdc_en_pin_a>;
+       };
+
+       vreg_wlan: wlan-regulator {
+               compatible = "regulator-fixed";
+
+               regulator-name = "wl-reg";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+
+               gpio = <&pm8941_gpios 18 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&wlan_regulator_pin>;
+       };
+};
+
+&blsp1_uart2 {
+       status = "okay";
+
+       pinctrl-names = "default";
+       pinctrl-0 = <&blsp1_uart2_pin_a>;
+};
+
+&blsp2_i2c2 {
+       status = "okay";
+       clock-frequency = <355000>;
+
+       pinctrl-names = "default";
+       pinctrl-0 = <&i2c8_pins>;
+
+       synaptics@2c {
+               compatible = "syna,rmi4-i2c";
+               reg = <0x2c>;
+
+               interrupt-parent = <&tlmm>;
+               interrupts = <86 IRQ_TYPE_EDGE_FALLING>;
+
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               vdd-supply = <&pm8941_l22>;
+               vio-supply = <&pm8941_lvs3>;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&ts_int_pin>;
+
+               syna,startup-delay-ms = <10>;
+
+               rmi-f01@1 {
+                       reg = <0x1>;
+                       syna,nosleep = <1>;
+               };
+
+               rmi-f11@11 {
+                       reg = <0x11>;
+                       syna,f11-flip-x = <1>;
+                       syna,sensor-type = <1>;
+               };
+       };
+};
+
+&blsp2_i2c5 {
+       status = "okay";
+       clock-frequency = <355000>;
+
+       pinctrl-names = "default";
+       pinctrl-0 = <&i2c11_pins>;
+
+       lp8566_wled: backlight@2c {
+               compatible = "ti,lp8556";
+               reg = <0x2c>;
+               power-supply = <&vreg_bl_vddio>;
+
+               bl-name = "backlight";
+               dev-ctrl = /bits/ 8 <0x05>;
+               init-brt = /bits/ 8 <0x3f>;
+               rom_a0h {
+                       rom-addr = /bits/ 8 <0xa0>;
+                       rom-val = /bits/ 8 <0xff>;
+               };
+               rom_a1h {
+                       rom-addr = /bits/ 8 <0xa1>;
+                       rom-val = /bits/ 8 <0x3f>;
+               };
+               rom_a2h {
+                       rom-addr = /bits/ 8 <0xa2>;
+                       rom-val = /bits/ 8 <0x20>;
+               };
+               rom_a3h {
+                       rom-addr = /bits/ 8 <0xa3>;
+                       rom-val = /bits/ 8 <0x5e>;
+               };
+               rom_a4h {
+                       rom-addr = /bits/ 8 <0xa4>;
+                       rom-val = /bits/ 8 <0x02>;
+               };
+               rom_a5h {
+                       rom-addr = /bits/ 8 <0xa5>;
+                       rom-val = /bits/ 8 <0x04>;
+               };
+               rom_a6h {
+                       rom-addr = /bits/ 8 <0xa6>;
+                       rom-val = /bits/ 8 <0x80>;
+               };
+               rom_a7h {
+                       rom-addr = /bits/ 8 <0xa7>;
+                       rom-val = /bits/ 8 <0xf7>;
+               };
+               rom_a9h {
+                       rom-addr = /bits/ 8 <0xa9>;
+                       rom-val = /bits/ 8 <0x80>;
+               };
+               rom_aah {
+                       rom-addr = /bits/ 8 <0xaa>;
+                       rom-val = /bits/ 8 <0x0f>;
+               };
+               rom_aeh {
+                       rom-addr = /bits/ 8 <0xae>;
+                       rom-val = /bits/ 8 <0x0f>;
+               };
+       };
+};
+
+&blsp2_uart1 {
+       status = "okay";
+
+       pinctrl-names = "default";
+       pinctrl-0 = <&blsp2_uart7_pin_a>;
+
+       bluetooth {
+               compatible = "brcm,bcm43438-bt";
+               max-speed = <3000000>;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&bt_host_wake_pin>,
+                               <&bt_dev_wake_pin>,
+                               <&bt_reg_on_pin>;
+
+               host-wakeup-gpios = <&tlmm 95 GPIO_ACTIVE_HIGH>;
+               device-wakeup-gpios = <&tlmm 96 GPIO_ACTIVE_HIGH>;
+               shutdown-gpios = <&pm8941_gpios 16 GPIO_ACTIVE_HIGH>;
+       };
+};
+
+&otg {
+       status = "okay";
+
+       phys = <&usb_hs1_phy>;
+       phy-select = <&tcsr 0xb000 0>;
+       extcon = <&smbb>, <&usb_id>;
+       vbus-supply = <&chg_otg>;
+
+       hnp-disable;
+       srp-disable;
+       adp-disable;
+
+       ulpi {
+               phy@a {
+                       status = "okay";
+
+                       v1p8-supply = <&pm8941_l6>;
+                       v3p3-supply = <&pm8941_l24>;
+
+                       extcon = <&smbb>;
+                       qcom,init-seq = /bits/ 8 <0x1 0x64>;
+               };
+       };
+};
+
+&pm8941_coincell {
+       status = "okay";
+
+       qcom,rset-ohms = <2100>;
+       qcom,vset-millivolts = <3000>;
+};
+
+&pm8941_gpios {
+       gpio_keys_pin_a: gpio-keys-active {
+               pins = "gpio2", "gpio5";
+               function = "normal";
+
+               bias-pull-up;
+               power-source = <PM8941_GPIO_S3>;
+       };
+
+       bt_reg_on_pin: bt-reg-on {
+               pins = "gpio16";
+               function = "normal";
+
+               output-low;
+               power-source = <PM8941_GPIO_S3>;
+       };
+
+       wlan_sleep_clk_pin: wl-sleep-clk {
+               pins = "gpio17";
+               function = "func2";
+
+               output-high;
+               power-source = <PM8941_GPIO_S3>;
+       };
+
+       wlan_regulator_pin: wl-reg-active {
+               pins = "gpio18";
+               function = "normal";
+
+               bias-disable;
+               power-source = <PM8941_GPIO_S3>;
+       };
+
+       lcd_dcdc_en_pin_a: lcd-dcdc-en-active {
+               pins = "gpio20";
+               function = "normal";
+
+               bias-disable;
+               power-source = <PM8941_GPIO_S3>;
+               input-disable;
+               output-low;
+       };
+
+};
+
+&rpm_requests {
+       pm8941-regulators {
+               vdd_l1_l3-supply = <&pm8941_s1>;
+               vdd_l2_lvs1_2_3-supply = <&pm8941_s3>;
+               vdd_l4_l11-supply = <&pm8941_s1>;
+               vdd_l5_l7-supply = <&pm8941_s2>;
+               vdd_l6_l12_l14_l15-supply = <&pm8941_s2>;
+               vdd_l9_l10_l17_l22-supply = <&vreg_boost>;
+               vdd_l13_l20_l23_l24-supply = <&vreg_boost>;
+               vdd_l21-supply = <&vreg_boost>;
+
+               pm8941_s1: s1 {
+                       regulator-min-microvolt = <1300000>;
+                       regulator-max-microvolt = <1300000>;
+                       regulator-always-on;
+                       regulator-boot-on;
+               };
+
+               pm8941_s2: s2 {
+                       regulator-min-microvolt = <2150000>;
+                       regulator-max-microvolt = <2150000>;
+                       regulator-boot-on;
+               };
+
+               pm8941_s3: s3 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       regulator-system-load = <154000>;
+                       regulator-always-on;
+                       regulator-boot-on;
+               };
+
+               pm8941_s4: s4 {
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+               };
+
+               pm8941_l1: l1 {
+                       regulator-min-microvolt = <1225000>;
+                       regulator-max-microvolt = <1225000>;
+                       regulator-always-on;
+                       regulator-boot-on;
+               };
+
+               pm8941_l2: l2 {
+                       regulator-min-microvolt = <1200000>;
+                       regulator-max-microvolt = <1200000>;
+               };
+
+               pm8941_l3: l3 {
+                       regulator-min-microvolt = <1200000>;
+                       regulator-max-microvolt = <1200000>;
+               };
+
+               pm8941_l4: l4 {
+                       regulator-min-microvolt = <1225000>;
+                       regulator-max-microvolt = <1225000>;
+               };
+
+               pm8941_l5: l5 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+               };
+
+               pm8941_l6: l6 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       regulator-boot-on;
+               };
+
+               pm8941_l7: l7 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       regulator-boot-on;
+               };
+
+               pm8941_l8: l8 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+               };
+
+               pm8941_l9: l9 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <2950000>;
+               };
+
+               pm8941_l11: l11 {
+                       regulator-min-microvolt = <1300000>;
+                       regulator-max-microvolt = <1350000>;
+               };
+
+               pm8941_l12: l12 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       regulator-always-on;
+                       regulator-boot-on;
+               };
+
+               pm8941_l13: l13 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <2950000>;
+                       regulator-boot-on;
+               };
+
+               pm8941_l14: l14 {
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+               };
+
+               pm8941_l15: l15 {
+                       regulator-min-microvolt = <2050000>;
+                       regulator-max-microvolt = <2050000>;
+               };
+
+               pm8941_l16: l16 {
+                       regulator-min-microvolt = <2700000>;
+                       regulator-max-microvolt = <2700000>;
+               };
+
+               pm8941_l17: l17 {
+                       regulator-min-microvolt = <2700000>;
+                       regulator-max-microvolt = <2700000>;
+               };
+
+               pm8941_l18: l18 {
+                       regulator-min-microvolt = <2850000>;
+                       regulator-max-microvolt = <2850000>;
+               };
+
+               pm8941_l19: l19 {
+                       regulator-min-microvolt = <2850000>;
+                       regulator-max-microvolt = <2850000>;
+               };
+
+               pm8941_l20: l20 {
+                       regulator-min-microvolt = <2950000>;
+                       regulator-max-microvolt = <2950000>;
+                       regulator-system-load = <500000>;
+                       regulator-allow-set-load;
+                       regulator-boot-on;
+               };
+
+               pm8941_l21: l21 {
+                       regulator-min-microvolt = <2950000>;
+                       regulator-max-microvolt = <2950000>;
+                       regulator-boot-on;
+               };
+
+               pm8941_l22: l22 {
+                       regulator-min-microvolt = <3000000>;
+                       regulator-max-microvolt = <3000000>;
+               };
+
+               pm8941_l23: l23 {
+                       regulator-min-microvolt = <2800000>;
+                       regulator-max-microvolt = <2800000>;
+               };
+
+               pm8941_l24: l24 {
+                       regulator-min-microvolt = <3075000>;
+                       regulator-max-microvolt = <3075000>;
+                       regulator-boot-on;
+               };
+       };
+};
+
+&sdhc_1 {
+       status = "okay";
+
+       vmmc-supply = <&pm8941_l20>;
+       vqmmc-supply = <&pm8941_s3>;
+
+       pinctrl-names = "default";
+       pinctrl-0 = <&sdhc1_pin_a>;
+};
+
+&sdhc_2 {
+       status = "okay";
+
+       vmmc-supply = <&pm8941_l21>;
+       vqmmc-supply = <&pm8941_l13>;
+
+       cd-gpios = <&tlmm 62 GPIO_ACTIVE_LOW>;
+
+       pinctrl-names = "default";
+       pinctrl-0 = <&sdhc2_pin_a>, <&sdhc2_cd_pin_a>;
+};
+
+&sdhc_3 {
+       status = "okay";
+
+       max-frequency = <100000000>;
+       vmmc-supply = <&vreg_wlan>;
+       non-removable;
+
+       pinctrl-names = "default";
+       pinctrl-0 = <&sdhc3_pin_a>;
+
+       #address-cells = <1>;
+       #size-cells = <0>;
+
+       bcrmf@1 {
+               compatible = "brcm,bcm4339-fmac", "brcm,bcm4329-fmac";
+               reg = <1>;
+
+               brcm,drive-strength = <10>;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&wlan_sleep_clk_pin>;
+       };
+};
+
+&smbb {
+       qcom,fast-charge-safe-current = <1500000>;
+       qcom,fast-charge-current-limit = <1500000>;
+       qcom,dc-current-limit = <1800000>;
+       qcom,fast-charge-safe-voltage = <4400000>;
+       qcom,fast-charge-high-threshold-voltage = <4350000>;
+       qcom,fast-charge-low-threshold-voltage = <3400000>;
+       qcom,auto-recharge-threshold-voltage = <4200000>;
+       qcom,minimum-input-voltage = <4300000>;
+};
+
+&tlmm {
+       blsp1_uart2_pin_a: blsp1-uart2-pin-active {
+               rx {
+                       pins = "gpio5";
+                       function = "blsp_uart2";
+
+                       drive-strength = <2>;
+                       bias-pull-up;
+               };
+
+               tx {
+                       pins = "gpio4";
+                       function = "blsp_uart2";
+
+                       drive-strength = <4>;
+                       bias-disable;
+               };
+       };
+
+       blsp2_uart7_pin_a: blsp2-uart7-pin-active {
+               tx {
+                       pins = "gpio41";
+                       function = "blsp_uart7";
+
+                       drive-strength = <2>;
+                       bias-disable;
+               };
+
+               rx {
+                       pins = "gpio42";
+                       function = "blsp_uart7";
+
+                       drive-strength = <2>;
+                       bias-pull-up;
+               };
+
+               cts {
+                       pins = "gpio43";
+                       function = "blsp_uart7";
+
+                       drive-strength = <2>;
+                       bias-pull-up;
+               };
+
+               rts {
+                       pins = "gpio44";
+                       function = "blsp_uart7";
+
+                       drive-strength = <2>;
+                       bias-disable;
+               };
+       };
+
+       i2c8_pins: i2c8 {
+               mux {
+                       pins = "gpio47", "gpio48";
+                       function = "blsp_i2c8";
+
+                       drive-strength = <2>;
+                       bias-disable;
+               };
+       };
+
+       i2c11_pins: i2c11 {
+               mux {
+                       pins = "gpio83", "gpio84";
+                       function = "blsp_i2c11";
+
+                       drive-strength = <2>;
+                       bias-disable;
+               };
+       };
+
+       lcd_backlight_en_pin_a: lcd-backlight-vddio {
+               pins = "gpio69";
+               drive-strength = <10>;
+               output-low;
+               bias-disable;
+       };
+
+       sdhc1_pin_a: sdhc1-pin-active {
+               clk {
+                       pins = "sdc1_clk";
+                       drive-strength = <16>;
+                       bias-disable;
+               };
+
+               cmd-data {
+                       pins = "sdc1_cmd", "sdc1_data";
+                       drive-strength = <10>;
+                       bias-pull-up;
+               };
+       };
+
+       sdhc2_cd_pin_a: sdhc2-cd-pin-active {
+               pins = "gpio62";
+               function = "gpio";
+
+               drive-strength = <2>;
+               bias-disable;
+               };
+
+       sdhc2_pin_a: sdhc2-pin-active {
+               clk {
+                       pins = "sdc2_clk";
+                       drive-strength = <6>;
+                       bias-disable;
+               };
+
+               cmd-data {
+                       pins = "sdc2_cmd", "sdc2_data";
+                       drive-strength = <6>;
+                       bias-pull-up;
+               };
+       };
+
+       sdhc3_pin_a: sdhc3-pin-active {
+               clk {
+                       pins = "gpio40";
+                       function = "sdc3";
+
+                       drive-strength = <10>;
+                       bias-disable;
+               };
+
+               cmd {
+                       pins = "gpio39";
+                       function = "sdc3";
+
+                       drive-strength = <10>;
+                       bias-pull-up;
+               };
+
+               data {
+                       pins = "gpio35", "gpio36", "gpio37", "gpio38";
+                       function = "sdc3";
+
+                       drive-strength = <10>;
+                       bias-pull-up;
+               };
+       };
+
+       ts_int_pin: synaptics {
+               pin {
+                       pins = "gpio86";
+                       function = "gpio";
+
+                       drive-strength = <2>;
+                       bias-disable;
+                       input-enable;
+               };
+       };
+
+       bt_host_wake_pin: bt-host-wake {
+               pins = "gpio95";
+               function = "gpio";
+
+               drive-strength = <2>;
+               bias-disable;
+               output-low;
+       };
+
+       bt_dev_wake_pin: bt-dev-wake {
+               pins = "gpio96";
+               function = "gpio";
+
+               drive-strength = <2>;
+               bias-disable;
+       };
+};