Commit 312146b5 authored by Kevin Hilman's avatar Kevin Hilman

Merge tag 'qcom-dt-for-4.3-rc2' of git://codeaurora.org/quic/kernel/agross-msm into next/late

Qualcomm ARM Based Device Tree Updates for v4.3-rc2

* Add labels for serial nodes to be used for aliasing and stdout-path
* Add stdout-path for APQ8064 Compulab QS600
* Add stdout-path for APQ8064 Inforce 6410
* Add stdout-path for APQ8074 Dragonboard
* Add stdout-path for APQ8084 Inforce 6540
* Add stdout-path for APQ8084 MTP
* Add stdout-path for IPQ8064 AP148
* Add stdout-path for MSM8660 Surf
* Add stdout-path for MSM8960 CDP
* Add stdout-path for MSM8974 Xperia Honami

* tag 'qcom-dt-for-4.3-rc2' of git://codeaurora.org/quic/kernel/agross-msm: (24 commits)
  ARM: dts: qcom: msm8974-sony-xperia-honami: Use stdout-path
  ARM: dts: qcom: msm8960-cdp: Use stdout-path
  ARM: dts: qcom: msm8660-surf: Use stdout-path
  ARM: dts: qcom: ipq8064-ap148: Use stdout-path
  ARM: dts: qcom: apq8084-mtp: Use stdout-path
  ARM: dts: qcom: apq8084-ifc6540: Use stdout-path
  ARM: dts: qcom: apq8074-dragonboard: Use stdout-path
  ARM: dts: qcom: apq8064-ifc6410: Use stdout-path
  ARM: dts: qcom: apq8064-cm-qs600: Use stdout-path
  ARM: dts: qcom: Label serial nodes for aliasing and stdout-path
  ARM: dts: qs600: Add real regulators to sdcc
  ARM: dts: ifc6410: add real regulators for sdcc nodes.
  ARM: dts: apq8064: remove temporary fixed regulator for mmc
  ARM: dts: apq8064: fix missing gsbi cell-index
  ARM: dts: apq8064: Add DT support for GSBI6 and for UART pin mux
  ARM: dts: apq8064: add pm8921 mpp support
  ARM: dts: apq8064: Add pm8921 mfd and its gpio node
  ARM: dts: msm8974: Add smem reservation and node
  ARM: dts: msm8974: Add tcsr mutex node
  ARM: dts: qcom: Add ks8851 node for wired ethernet
  ...
parents 7f981212 8f1dc3cf
...@@ -4,6 +4,14 @@ / { ...@@ -4,6 +4,14 @@ / {
model = "CompuLab CM-QS600"; model = "CompuLab CM-QS600";
compatible = "qcom,apq8064-cm-qs600", "qcom,apq8064"; compatible = "qcom,apq8064-cm-qs600", "qcom,apq8064";
aliases {
serial0 = &gsbi7_serial;
};
chosen {
stdout-path = "serial0:115200n8";
};
soc { soc {
pinctrl@800000 { pinctrl@800000 {
i2c1_pins: i2c1 { i2c1_pins: i2c1 {
...@@ -67,6 +75,12 @@ pm8921_l4: l4 { ...@@ -67,6 +75,12 @@ pm8921_l4: l4 {
bias-pull-down; bias-pull-down;
}; };
pm8921_l5: l5 {
regulator-min-microvolt = <2750000>;
regulator-max-microvolt = <3000000>;
bias-pull-down;
};
pm8921_l23: l23 { pm8921_l23: l23 {
regulator-min-microvolt = <1700000>; regulator-min-microvolt = <1700000>;
regulator-max-microvolt = <1900000>; regulator-max-microvolt = <1900000>;
...@@ -140,19 +154,33 @@ usb4: usb@12530000 { ...@@ -140,19 +154,33 @@ usb4: usb@12530000 {
status = "okay"; status = "okay";
}; };
/* on board fixed 3.3v supply */
v3p3_fixed: v3p3 {
compatible = "regulator-fixed";
regulator-name = "PCIE V3P3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
amba { amba {
/* eMMC */ /* eMMC */
sdcc1: sdcc@12400000 { sdcc1: sdcc@12400000 {
status = "okay"; status = "okay";
vmmc-supply = <&pm8921_l5>;
vqmmc-supply = <&pm8921_s4>;
}; };
/* External micro SD card */ /* External micro SD card */
sdcc3: sdcc@12180000 { sdcc3: sdcc@12180000 {
status = "okay"; status = "okay";
vmmc-supply = <&v3p3_fixed>;
}; };
/* WLAN */ /* WLAN */
sdcc4: sdcc@121c0000 { sdcc4: sdcc@121c0000 {
status = "okay"; status = "okay";
vmmc-supply = <&v3p3_fixed>;
vqmmc-supply = <&v3p3_fixed>;
}; };
}; };
}; };
......
...@@ -7,6 +7,11 @@ / { ...@@ -7,6 +7,11 @@ / {
aliases { aliases {
serial0 = &gsbi7_serial; serial0 = &gsbi7_serial;
serial1 = &gsbi6_serial;
};
chosen {
stdout-path = "serial0:115200n8";
}; };
soc { soc {
...@@ -73,6 +78,12 @@ pm8921_l4: l4 { ...@@ -73,6 +78,12 @@ pm8921_l4: l4 {
bias-pull-down; bias-pull-down;
}; };
pm8921_l5: l5 {
regulator-min-microvolt = <2750000>;
regulator-max-microvolt = <3000000>;
bias-pull-down;
};
pm8921_l6: l6 { pm8921_l6: l6 {
regulator-min-microvolt = <2950000>; regulator-min-microvolt = <2950000>;
regulator-max-microvolt = <2950000>; regulator-max-microvolt = <2950000>;
...@@ -84,9 +95,25 @@ pm8921_l23: l23 { ...@@ -84,9 +95,25 @@ pm8921_l23: l23 {
regulator-max-microvolt = <1900000>; regulator-max-microvolt = <1900000>;
bias-pull-down; bias-pull-down;
}; };
pm8921_lvs1: lvs1 {
bias-pull-down;
};
}; };
}; };
ext_3p3v: regulator-fixed@1 {
compatible = "regulator-fixed";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-name = "ext_3p3v";
regulator-type = "voltage";
startup-delay-us = <0>;
gpio = <&tlmm_pinmux 77 GPIO_ACTIVE_HIGH>;
enable-active-high;
regulator-boot-on;
};
gsbi3: gsbi@16200000 { gsbi3: gsbi@16200000 {
status = "okay"; status = "okay";
qcom,mode = <GSBI_PROT_I2C>; qcom,mode = <GSBI_PROT_I2C>;
...@@ -115,6 +142,18 @@ eeprom: eeprom@52 { ...@@ -115,6 +142,18 @@ eeprom: eeprom@52 {
}; };
}; };
gsbi@16500000 {
status = "ok";
qcom,mode = <GSBI_PROT_I2C_UART>;
serial@16540000 {
status = "ok";
pinctrl-names = "default";
pinctrl-0 = <&uart_pins>;
};
};
gsbi@16600000 { gsbi@16600000 {
status = "ok"; status = "ok";
qcom,mode = <GSBI_PROT_I2C_UART>; qcom,mode = <GSBI_PROT_I2C_UART>;
...@@ -175,11 +214,14 @@ amba { ...@@ -175,11 +214,14 @@ amba {
/* eMMC */ /* eMMC */
sdcc1: sdcc@12400000 { sdcc1: sdcc@12400000 {
status = "okay"; status = "okay";
vmmc-supply = <&pm8921_l5>;
vqmmc-supply = <&pm8921_s4>;
}; };
/* External micro SD card */ /* External micro SD card */
sdcc3: sdcc@12180000 { sdcc3: sdcc@12180000 {
status = "okay"; status = "okay";
vmmc-supply = <&pm8921_l6>;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&card_detect>; pinctrl-0 = <&card_detect>;
cd-gpios = <&tlmm_pinmux 26 GPIO_ACTIVE_LOW>; cd-gpios = <&tlmm_pinmux 26 GPIO_ACTIVE_LOW>;
...@@ -187,6 +229,8 @@ sdcc3: sdcc@12180000 { ...@@ -187,6 +229,8 @@ sdcc3: sdcc@12180000 {
/* WLAN */ /* WLAN */
sdcc4: sdcc@121c0000 { sdcc4: sdcc@121c0000 {
status = "okay"; status = "okay";
vmmc-supply = <&ext_3p3v>;
vqmmc-supply = <&pm8921_lvs1>;
}; };
}; };
}; };
......
...@@ -6,7 +6,6 @@ ...@@ -6,7 +6,6 @@
#include <dt-bindings/clock/qcom,mmcc-msm8960.h> #include <dt-bindings/clock/qcom,mmcc-msm8960.h>
#include <dt-bindings/soc/qcom,gsbi.h> #include <dt-bindings/soc/qcom,gsbi.h>
#include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/interrupt-controller/arm-gic.h>
/ { / {
model = "Qualcomm APQ8064"; model = "Qualcomm APQ8064";
compatible = "qcom,apq8064"; compatible = "qcom,apq8064";
...@@ -127,6 +126,13 @@ mux { ...@@ -127,6 +126,13 @@ mux {
function = "gsbi3"; function = "gsbi3";
}; };
}; };
uart_pins: uart_pins {
mux {
pins = "gpio14", "gpio15", "gpio16", "gpio17";
function = "gsbi6";
};
};
}; };
intc: interrupt-controller@2000000 { intc: interrupt-controller@2000000 {
...@@ -243,13 +249,13 @@ i2c2: i2c@124a0000 { ...@@ -243,13 +249,13 @@ i2c2: i2c@124a0000 {
gsbi3: gsbi@16200000 { gsbi3: gsbi@16200000 {
status = "disabled"; status = "disabled";
compatible = "qcom,gsbi-v1.0.0"; compatible = "qcom,gsbi-v1.0.0";
cell-index = <3>;
reg = <0x16200000 0x100>; reg = <0x16200000 0x100>;
clocks = <&gcc GSBI3_H_CLK>; clocks = <&gcc GSBI3_H_CLK>;
clock-names = "iface"; clock-names = "iface";
#address-cells = <1>; #address-cells = <1>;
#size-cells = <1>; #size-cells = <1>;
ranges; ranges;
i2c3: i2c@16280000 { i2c3: i2c@16280000 {
compatible = "qcom,i2c-qup-v1.1.1"; compatible = "qcom,i2c-qup-v1.1.1";
reg = <0x16280000 0x1000>; reg = <0x16280000 0x1000>;
...@@ -260,6 +266,28 @@ i2c3: i2c@16280000 { ...@@ -260,6 +266,28 @@ i2c3: i2c@16280000 {
}; };
}; };
gsbi6: gsbi@16500000 {
status = "disabled";
compatible = "qcom,gsbi-v1.0.0";
cell-index = <6>;
reg = <0x16500000 0x03>;
clocks = <&gcc GSBI6_H_CLK>;
clock-names = "iface";
#address-cells = <1>;
#size-cells = <1>;
ranges;
gsbi6_serial: serial@16540000 {
compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
reg = <0x16540000 0x100>,
<0x16500000 0x03>;
interrupts = <0 156 0x0>;
clocks = <&gcc GSBI6_UART_CLK>, <&gcc GSBI6_H_CLK>;
clock-names = "core", "iface";
status = "disabled";
};
};
gsbi7: gsbi@16600000 { gsbi7: gsbi@16600000 {
status = "disabled"; status = "disabled";
compatible = "qcom,gsbi-v1.0.0"; compatible = "qcom,gsbi-v1.0.0";
...@@ -287,6 +315,53 @@ qcom,ssbi@500000 { ...@@ -287,6 +315,53 @@ qcom,ssbi@500000 {
compatible = "qcom,ssbi"; compatible = "qcom,ssbi";
reg = <0x00500000 0x1000>; reg = <0x00500000 0x1000>;
qcom,controller-type = "pmic-arbiter"; qcom,controller-type = "pmic-arbiter";
pmicintc: pmic@0 {
compatible = "qcom,pm8921";
interrupt-parent = <&tlmm_pinmux>;
interrupts = <74 8>;
#interrupt-cells = <2>;
interrupt-controller;
#address-cells = <1>;
#size-cells = <0>;
pm8921_gpio: gpio@150 {
compatible = "qcom,pm8921-gpio";
reg = <0x150>;
interrupts = <192 1>, <193 1>, <194 1>,
<195 1>, <196 1>, <197 1>,
<198 1>, <199 1>, <200 1>,
<201 1>, <202 1>, <203 1>,
<204 1>, <205 1>, <206 1>,
<207 1>, <208 1>, <209 1>,
<210 1>, <211 1>, <212 1>,
<213 1>, <214 1>, <215 1>,
<216 1>, <217 1>, <218 1>,
<219 1>, <220 1>, <221 1>,
<222 1>, <223 1>, <224 1>,
<225 1>, <226 1>, <227 1>,
<228 1>, <229 1>, <230 1>,
<231 1>, <232 1>, <233 1>,
<234 1>, <235 1>;
gpio-controller;
#gpio-cells = <2>;
};
pm8921_mpps: mpps@50 {
compatible = "qcom,pm8921-mpp";
reg = <0x50>;
gpio-controller;
#gpio-cells = <2>;
interrupts =
<128 1>, <129 1>, <130 1>, <131 1>,
<132 1>, <133 1>, <134 1>, <135 1>,
<136 1>, <137 1>, <138 1>, <139 1>;
};
};
}; };
gcc: clock-controller@900000 { gcc: clock-controller@900000 {
...@@ -448,14 +523,6 @@ sata0: sata@29000000 { ...@@ -448,14 +523,6 @@ sata0: sata@29000000 {
}; };
/* Temporary fixed regulator */ /* Temporary fixed regulator */
vsdcc_fixed: vsdcc-regulator {
compatible = "regulator-fixed";
regulator-name = "SDCC Power";
regulator-min-microvolt = <2700000>;
regulator-max-microvolt = <2700000>;
regulator-always-on;
};
sdcc1bam:dma@12402000{ sdcc1bam:dma@12402000{
compatible = "qcom,bam-v1.3.0"; compatible = "qcom,bam-v1.3.0";
reg = <0x12402000 0x8000>; reg = <0x12402000 0x8000>;
...@@ -505,7 +572,6 @@ sdcc1: sdcc@12400000 { ...@@ -505,7 +572,6 @@ sdcc1: sdcc@12400000 {
non-removable; non-removable;
cap-sd-highspeed; cap-sd-highspeed;
cap-mmc-highspeed; cap-mmc-highspeed;
vmmc-supply = <&vsdcc_fixed>;
dmas = <&sdcc1bam 2>, <&sdcc1bam 1>; dmas = <&sdcc1bam 2>, <&sdcc1bam 1>;
dma-names = "tx", "rx"; dma-names = "tx", "rx";
}; };
...@@ -524,7 +590,6 @@ sdcc3: sdcc@12180000 { ...@@ -524,7 +590,6 @@ sdcc3: sdcc@12180000 {
cap-mmc-highspeed; cap-mmc-highspeed;
max-frequency = <192000000>; max-frequency = <192000000>;
no-1-8-v; no-1-8-v;
vmmc-supply = <&vsdcc_fixed>;
dmas = <&sdcc3bam 2>, <&sdcc3bam 1>; dmas = <&sdcc3bam 2>, <&sdcc3bam 1>;
dma-names = "tx", "rx"; dma-names = "tx", "rx";
}; };
...@@ -542,8 +607,6 @@ sdcc4: sdcc@121c0000 { ...@@ -542,8 +607,6 @@ sdcc4: sdcc@121c0000 {
cap-sd-highspeed; cap-sd-highspeed;
cap-mmc-highspeed; cap-mmc-highspeed;
max-frequency = <48000000>; max-frequency = <48000000>;
vmmc-supply = <&vsdcc_fixed>;
vqmmc-supply = <&vsdcc_fixed>;
dmas = <&sdcc4bam 2>, <&sdcc4bam 1>; dmas = <&sdcc4bam 2>, <&sdcc4bam 1>;
dma-names = "tx", "rx"; dma-names = "tx", "rx";
pinctrl-names = "default"; pinctrl-names = "default";
......
...@@ -6,6 +6,14 @@ / { ...@@ -6,6 +6,14 @@ / {
model = "Qualcomm APQ8074 Dragonboard"; model = "Qualcomm APQ8074 Dragonboard";
compatible = "qcom,apq8074-dragonboard", "qcom,apq8074"; compatible = "qcom,apq8074-dragonboard", "qcom,apq8074";
aliases {
serial0 = &blsp1_uart2;
};
chosen {
stdout-path = "serial0:115200n8";
};
soc { soc {
serial@f991e000 { serial@f991e000 {
status = "ok"; status = "ok";
......
...@@ -5,6 +5,14 @@ / { ...@@ -5,6 +5,14 @@ / {
model = "Qualcomm APQ8084/IFC6540"; model = "Qualcomm APQ8084/IFC6540";
compatible = "qcom,apq8084-ifc6540", "qcom,apq8084"; compatible = "qcom,apq8084-ifc6540", "qcom,apq8084";
aliases {
serial0 = &blsp2_uart2;
};
chosen {
stdout-path = "serial0:115200n8";
};
soc { soc {
serial@f995e000 { serial@f995e000 {
status = "okay"; status = "okay";
......
...@@ -5,6 +5,14 @@ / { ...@@ -5,6 +5,14 @@ / {
model = "Qualcomm APQ 8084-MTP"; model = "Qualcomm APQ 8084-MTP";
compatible = "qcom,apq8084-mtp", "qcom,apq8084"; compatible = "qcom,apq8084-mtp", "qcom,apq8084";
aliases {
serial0 = &blsp2_uart2;
};
chosen {
stdout-path = "serial0:115200n8";
};
soc { soc {
serial@f995e000 { serial@f995e000 {
status = "okay"; status = "okay";
......
...@@ -234,7 +234,7 @@ tlmm: pinctrl@fd510000 { ...@@ -234,7 +234,7 @@ tlmm: pinctrl@fd510000 {
interrupts = <0 208 0>; interrupts = <0 208 0>;
}; };
serial@f995e000 { blsp2_uart2: serial@f995e000 {
compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
reg = <0xf995e000 0x1000>; reg = <0xf995e000 0x1000>;
interrupts = <0 114 0x0>; interrupts = <0 114 0x0>;
......
...@@ -4,6 +4,14 @@ / { ...@@ -4,6 +4,14 @@ / {
model = "Qualcomm IPQ8064/AP148"; model = "Qualcomm IPQ8064/AP148";
compatible = "qcom,ipq8064-ap148", "qcom,ipq8064"; compatible = "qcom,ipq8064-ap148", "qcom,ipq8064";
aliases {
serial0 = &gsbi4_serial;
};
chosen {
stdout-path = "serial0:115200n8";
};
reserved-memory { reserved-memory {
#address-cells = <1>; #address-cells = <1>;
#size-cells = <1>; #size-cells = <1>;
......
...@@ -197,7 +197,7 @@ gsbi4: gsbi@16300000 { ...@@ -197,7 +197,7 @@ gsbi4: gsbi@16300000 {
syscon-tcsr = <&tcsr>; syscon-tcsr = <&tcsr>;
serial@16340000 { gsbi4_serial: serial@16340000 {
compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm"; compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
reg = <0x16340000 0x1000>, reg = <0x16340000 0x1000>,
<0x16300000 0x1000>; <0x16300000 0x1000>;
......
...@@ -6,6 +6,14 @@ / { ...@@ -6,6 +6,14 @@ / {
model = "Qualcomm MSM8660 SURF"; model = "Qualcomm MSM8660 SURF";
compatible = "qcom,msm8660-surf", "qcom,msm8660"; compatible = "qcom,msm8660-surf", "qcom,msm8660";
aliases {
serial0 = &gsbi12_serial;
};
chosen {
stdout-path = "serial0:115200n8";
};
soc { soc {
gsbi@19c00000 { gsbi@19c00000 {
status = "ok"; status = "ok";
......
...@@ -67,15 +67,16 @@ timer@2000000 { ...@@ -67,15 +67,16 @@ timer@2000000 {
cpu-offset = <0x40000>; cpu-offset = <0x40000>;
}; };
msmgpio: gpio@800000 { tlmm: pinctrl@800000 {
compatible = "qcom,msm-gpio"; compatible = "qcom,msm8660-pinctrl";
reg = <0x00800000 0x4000>; reg = <0x800000 0x4000>;
gpio-controller; gpio-controller;
#gpio-cells = <2>; #gpio-cells = <2>;
ngpio = <173>;
interrupts = <0 16 0x4>; interrupts = <0 16 0x4>;
interrupt-controller; interrupt-controller;
#interrupt-cells = <2>; #interrupt-cells = <2>;
}; };
gcc: clock-controller@900000 { gcc: clock-controller@900000 {
...@@ -97,7 +98,7 @@ gsbi12: gsbi@19c00000 { ...@@ -97,7 +98,7 @@ gsbi12: gsbi@19c00000 {
syscon-tcsr = <&tcsr>; syscon-tcsr = <&tcsr>;
serial@19c40000 { gsbi12_serial: serial@19c40000 {
compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm"; compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
reg = <0x19c40000 0x1000>, reg = <0x19c40000 0x1000>,
<0x19c00000 0x1000>; <0x19c00000 0x1000>;
...@@ -115,7 +116,7 @@ qcom,ssbi@500000 { ...@@ -115,7 +116,7 @@ qcom,ssbi@500000 {
pmicintc: pmic@0 { pmicintc: pmic@0 {
compatible = "qcom,pm8058"; compatible = "qcom,pm8058";
interrupt-parent = <&msmgpio>; interrupt-parent = <&tlmm>;
interrupts = <88 8>; interrupts = <88 8>;
#interrupt-cells = <2>; #interrupt-cells = <2>;
interrupt-controller; interrupt-controller;
......
...@@ -6,6 +6,14 @@ / { ...@@ -6,6 +6,14 @@ / {
model = "Qualcomm MSM8960 CDP"; model = "Qualcomm MSM8960 CDP";
compatible = "qcom,msm8960-cdp", "qcom,msm8960"; compatible = "qcom,msm8960-cdp", "qcom,msm8960";
aliases {
serial0 = &gsbi5_serial;
};
chosen {
stdout-path = "serial0:115200n8";
};
soc { soc {
gsbi@16400000 { gsbi@16400000 {
status = "ok"; status = "ok";
...@@ -26,6 +34,308 @@ sdcc3: sdcc@12180000 { ...@@ -26,6 +34,308 @@ sdcc3: sdcc@12180000 {
status = "okay"; status = "okay";
}; };
}; };
rpm@108000 {
regulators {
compatible = "qcom,rpm-pm8921-regulators";
vin_lvs1_3_6-supply = <&pm8921_s4>;
vin_lvs2-supply = <&pm8921_s4>;
vin_lvs4_5_7-supply = <&pm8921_s4>;
vdd_ncp-supply = <&pm8921_l6>;
vdd_l1_l2_l12_l18-supply = <&pm8921_s4>;
vdd_l21_l23_l29-supply = <&pm8921_s8>;
vdd_l24-supply = <&pm8921_s1>;
vdd_l25-supply = <&pm8921_s1>;
vdd_l27-supply = <&pm8921_s7>;
vdd_l28-supply = <&pm8921_s7>;
/* Buck SMPS */
pm8921_s1: s1 {
regulator-always-on;
regulator-min-microvolt = <1225000>;
regulator-max-microvolt = <1225000>;
qcom,switch-mode-frequency = <3200000>;
bias-pull-down;
};
pm8921_s2: s2 {
regulator-min-microvolt = <1300000>;
regulator-max-microvolt = <1300000>;
qcom,switch-mode-frequency = <1600000>;
bias-pull-down;
};
pm8921_s3: s3 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <1150000>;
qcom,switch-mode-frequency = <4800000>;
bias-pull-down;
};
pm8921_s4: s4 {
regulator-always-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,switch-mode-frequency = <1600000>;
bias-pull-down;
qcom,force-mode = <QCOM_RPM_FORCE_MODE_AUTO>;
};
pm8921_s7: s7 {
regulator-min-microvolt = <1150000>;
regulator-max-microvolt = <1150000>;
qcom,switch-mode-frequency = <3200000>;
bias-pull-down;
};
pm8921_s8: s8 {
regulator-always-on;
regulator-min-microvolt = <2050000>;
regulator-max-microvolt = <2050000>;
qcom,switch-mode-frequency = <1600000>;
bias-pull-down;
};
/* PMOS LDO */
pm8921_l1: l1 {
regulator-always-on;
regulator-min-microvolt = <1050000>;
regulator-max-microvolt = <1050000>;
bias-pull-down;
};
pm8921_l2: l2 {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
bias-pull-down;
};
pm8921_l3: l3 {
regulator-min-microvolt = <3075000>;
regulator-max-microvolt = <3075000>;
bias-pull-down;
};
pm8921_l4: l4 {
regulator-always-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
bias-pull-down;
};
pm8921_l5: l5 {
regulator-min-microvolt = <2950000>;
regulator-max-microvolt = <2950000>;
bias-pull-down;
};
pm8921_l6: l6 {
regulator-min-microvolt = <2950000>;
regulator-max-microvolt = <2950000>;
bias-pull-down;
};
pm8921_l7: l7 {
regulator-always-on;
regulator-min-microvolt = <1850000>;
regulator-max-microvolt = <2950000>;
bias-pull-down;
};
pm8921_l8: l8 {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <3000000>;
bias-pull-down;
};
pm8921_l9: l9 {
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
bias-pull-down;
};
pm8921_l10: l10 {
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
bias-pull-down;
};
pm8921_l11: l11 {
regulator-min-microvolt = <2850000>;
regulator-max-microvolt = <2850000>;
bias-pull-down;
};
pm8921_l12: l12 {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
bias-pull-down;
};
pm8921_l14: l14 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
bias-pull-down;
};
pm8921_l15: l15 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <2950000>;
bias-pull-down;
};
pm8921_l16: l16 {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
bias-pull-down;
};
pm8921_l17: l17 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <2950000>;
bias-pull-down;
};
pm8921_l18: l18 {
regulator-min-microvolt = <1300000>;
regulator-max-microvolt = <1300000>;
bias-pull-down;
};
pm8921_l21: l21 {
regulator-min-microvolt = <1900000>;
regulator-max-microvolt = <1900000>;
bias-pull-down;
};
pm8921_l22: l22 {
regulator-min-microvolt = <2750000>;
regulator-max-microvolt = <2750000>;
bias-pull-down;
};
pm8921_l23: l23 {
regulator-always-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
bias-pull-down;
};
pm8921_l24: l24 {
regulator-min-microvolt = <750000>;
regulator-max-microvolt = <1150000>;
bias-pull-down;
};
pm8921_l25: l25 {
regulator-always-on;
regulator-min-microvolt = <1250000>;
regulator-max-microvolt = <1250000>;
bias-pull-down;
};
/* Low Voltage Switch */
pm8921_lvs1: lvs1 {
bias-pull-down;
};
pm8921_lvs2: lvs2 {
bias-pull-down;
};
pm8921_lvs3: lvs3 {
bias-pull-down;
};
pm8921_lvs4: lvs4 {
bias-pull-down;
};
pm8921_lvs5: lvs5 {
bias-pull-down;
};
pm8921_lvs6: lvs6 {
bias-pull-down;
};
pm8921_lvs7: lvs7 {
bias-pull-down;
};
pm8921_ncp: ncp {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,switch-mode-frequency = <1600000>;
};
};
};
gsbi@16000000 {
status = "ok";
qcom,mode = <GSBI_PROT_SPI>;
pinctrl-names = "default";
pinctrl-0 = <&spi1_default>;
spi@16080000 {
status = "ok";
eth@0 {
compatible = "micrel,ks8851";
reg = <0>;
interrupt-parent = <&msmgpio>;
interrupts = <90 8>;
spi-max-frequency = <5400000>;
vdd-supply = <&ext_l2>;
vdd-io-supply = <&pm8921_lvs6>;
reset-gpios = <&msmgpio 89 0>;
};
};
};
pinctrl@800000 {
spi1_default: spi1_default {
mux {
pins = "gpio6", "gpio7", "gpio9";
function = "gsbi1";
};
mosi {
pins = "gpio6";
drive-strength = <12>;
bias-disable;
};
miso {
pins = "gpio7";
drive-strength = <12>;
bias-disable;
};
cs {
pins = "gpio8";
drive-strength = <12>;
bias-disable;
output-low;
};
clk {
pins = "gpio9";
drive-strength = <12>;
bias-disable;
};
};
};
};
regulators {
compatible = "simple-bus";
ext_l2: gpio-regulator@91 {
compatible = "regulator-fixed";
regulator-name = "ext_l2";
gpio = <&msmgpio 91 0>;
startup-delay-us = <10000>;
enable-active-high;
};
}; };
}; };
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
#include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/clock/qcom,gcc-msm8960.h> #include <dt-bindings/clock/qcom,gcc-msm8960.h>
#include <dt-bindings/mfd/qcom-rpm.h>
#include <dt-bindings/soc/qcom,gsbi.h> #include <dt-bindings/soc/qcom,gsbi.h>
/ { / {
...@@ -73,11 +74,10 @@ timer@200a000 { ...@@ -73,11 +74,10 @@ timer@200a000 {
cpu-offset = <0x80000>; cpu-offset = <0x80000>;
}; };
msmgpio: gpio@800000 { msmgpio: pinctrl@800000 {
compatible = "qcom,msm-gpio"; compatible = "qcom,msm8960-pinctrl";
gpio-controller; gpio-controller;
#gpio-cells = <2>; #gpio-cells = <2>;
ngpio = <150>;
interrupts = <0 16 0x4>; interrupts = <0 16 0x4>;
interrupt-controller; interrupt-controller;
#interrupt-cells = <2>; #interrupt-cells = <2>;
...@@ -105,6 +105,24 @@ clock-controller@4000000 { ...@@ -105,6 +105,24 @@ clock-controller@4000000 {
#reset-cells = <1>; #reset-cells = <1>;
}; };
l2cc: clock-controller@2011000 {
compatible = "syscon";
reg = <0x2011000 0x1000>;
};
rpm@108000 {
compatible = "qcom,rpm-msm8960";
reg = <0x108000 0x1000>;
qcom,ipc = <&l2cc 0x8 2>;
interrupts = <0 19 0>, <0 21 0>, <0 22 0>;
interrupt-names = "ack", "err", "wakeup";
regulators {
compatible = "qcom,rpm-pm8921-regulators";
};
};
acc0: clock-controller@2088000 { acc0: clock-controller@2088000 {
compatible = "qcom,kpss-acc-v1"; compatible = "qcom,kpss-acc-v1";
reg = <0x02088000 0x1000>, <0x02008000 0x1000>; reg = <0x02088000 0x1000>, <0x02008000 0x1000>;
...@@ -139,7 +157,7 @@ gsbi5: gsbi@16400000 { ...@@ -139,7 +157,7 @@ gsbi5: gsbi@16400000 {
syscon-tcsr = <&tcsr>; syscon-tcsr = <&tcsr>;
serial@16440000 { gsbi5_serial: serial@16440000 {
compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm"; compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
reg = <0x16440000 0x1000>, reg = <0x16440000 0x1000>,
<0x16400000 0x1000>; <0x16400000 0x1000>;
...@@ -253,5 +271,30 @@ tcsr: syscon@1a400000 { ...@@ -253,5 +271,30 @@ tcsr: syscon@1a400000 {
compatible = "qcom,tcsr-msm8960", "syscon"; compatible = "qcom,tcsr-msm8960", "syscon";
reg = <0x1a400000 0x100>; reg = <0x1a400000 0x100>;
}; };
gsbi@16000000 {
compatible = "qcom,gsbi-v1.0.0";
cell-index = <1>;
reg = <0x16000000 0x100>;
clocks = <&gcc GSBI1_H_CLK>;
clock-names = "iface";
#address-cells = <1>;
#size-cells = <1>;
ranges;
spi@16080000 {
compatible = "qcom,spi-qup-v1.1.1";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x16080000 0x1000>;
interrupts = <0 147 0>;
spi-max-frequency = <24000000>;
cs-gpios = <&msmgpio 8 0>;
clocks = <&gcc GSBI1_QUP_CLK>, <&gcc GSBI1_H_CLK>;
clock-names = "core", "iface";
status = "disabled";
};
};
}; };
}; };
...@@ -6,6 +6,14 @@ / { ...@@ -6,6 +6,14 @@ / {
model = "Sony Xperia Z1"; model = "Sony Xperia Z1";
compatible = "sony,xperia-honami", "qcom,msm8974"; compatible = "sony,xperia-honami", "qcom,msm8974";
aliases {
serial0 = &blsp1_uart2;
};
chosen {
stdout-path = "serial0:115200n8";
};
memory@0 { memory@0 {
reg = <0 0x40000000>, <0x40000000 0x40000000>; reg = <0 0x40000000>, <0x40000000 0x40000000>;
device_type = "memory"; device_type = "memory";
......
...@@ -9,6 +9,17 @@ / { ...@@ -9,6 +9,17 @@ / {
compatible = "qcom,msm8974"; compatible = "qcom,msm8974";
interrupt-parent = <&intc>; interrupt-parent = <&intc>;
reserved-memory {
#address-cells = <1>;
#size-cells = <1>;
ranges;
smem_region: smem@fa00000 {
reg = <0xfa00000 0x200000>;
no-map;
};
};
cpus { cpus {
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
...@@ -220,6 +231,11 @@ gcc: clock-controller@fc400000 { ...@@ -220,6 +231,11 @@ gcc: clock-controller@fc400000 {
reg = <0xfc400000 0x4000>; reg = <0xfc400000 0x4000>;
}; };
tcsr_mutex_block: syscon@fd484000 {
compatible = "syscon";
reg = <0xfd484000 0x2000>;
};
mmcc: clock-controller@fd8c0000 { mmcc: clock-controller@fd8c0000 {
compatible = "qcom,mmcc-msm8974"; compatible = "qcom,mmcc-msm8974";
#clock-cells = <1>; #clock-cells = <1>;
...@@ -227,7 +243,23 @@ mmcc: clock-controller@fd8c0000 { ...@@ -227,7 +243,23 @@ mmcc: clock-controller@fd8c0000 {
reg = <0xfd8c0000 0x6000>; reg = <0xfd8c0000 0x6000>;
}; };
serial@f991e000 { tcsr_mutex: tcsr-mutex {
compatible = "qcom,tcsr-mutex";
syscon = <&tcsr_mutex_block 0 0x80>;
#hwlock-cells = <1>;
};
smem@fa00000 {
compatible = "qcom,smem";
memory-region = <&smem_region>;
reg = <0xfc428000 0x4000>;
hwlocks = <&tcsr_mutex 3>;
};
blsp1_uart2: serial@f991e000 {
compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
reg = <0xf991e000 0x1000>; reg = <0xf991e000 0x1000>;
interrupts = <0 108 0x0>; interrupts = <0 108 0x0>;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment