2015-07-27 13:49:37

by Srinivas Kandagatla

[permalink] [raw]
Subject: [PATCH v1 0/7] APQ8064 dt patches.

Hi Andy,

Here are some DT patches which are fixes + pmic gpio/mpp nodes for APQ8064.
I tested these patches on APQ8064 based IFC6410 board. These patches are
on top of your qcom/dt branch.

I got few more DT patches which depend on the pmic gpio and mpp dt-bindings header file,
this header file is already available in the linux-next, Should I send those patches too?
Or wait till it appears on 4.3-rc1?

Thanks,
srini


Pramod Gurav (1):
ARM: dts: apq8064: Add DT support for GSBI6 and for UART pin mux

Srinivas Kandagatla (6):
ARM: dts: apq8064: remove temporary fixed regulator for mmc
ARM: dts: ifc6410: add real regulators for sdcc nodes.
ARM: dts: qs600: Add real regulators to sdcc
ARM: dts: apq8064: Add pm8921 mfd and its gpio node
ARM: dts: apq8064: add pm8921 mpp support
ARM: dts: apq8064: fix missing gsbi cell-index

arch/arm/boot/dts/qcom-apq8064-cm-qs600.dts | 21 +++++++
arch/arm/boot/dts/qcom-apq8064-ifc6410.dts | 28 +++++++++
arch/arm/boot/dts/qcom-apq8064.dtsi | 91 ++++++++++++++++++++++++-----
3 files changed, 126 insertions(+), 14 deletions(-)

--
1.9.1


2015-07-27 13:50:11

by Srinivas Kandagatla

[permalink] [raw]
Subject: [PATCH v1 1/7] ARM: dts: apq8064: remove temporary fixed regulator for mmc

This patch removes temporary fixed regluator use for mmc.
Board files should use the regulators which are wiredup appropriately.

Signed-off-by: Srinivas Kandagatla <[email protected]>
---
arch/arm/boot/dts/qcom-apq8064.dtsi | 12 ------------
1 file changed, 12 deletions(-)

diff --git a/arch/arm/boot/dts/qcom-apq8064.dtsi b/arch/arm/boot/dts/qcom-apq8064.dtsi
index df2061e..1e1706e 100644
--- a/arch/arm/boot/dts/qcom-apq8064.dtsi
+++ b/arch/arm/boot/dts/qcom-apq8064.dtsi
@@ -448,14 +448,6 @@
};

/* 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{
compatible = "qcom,bam-v1.3.0";
reg = <0x12402000 0x8000>;
@@ -505,7 +497,6 @@
non-removable;
cap-sd-highspeed;
cap-mmc-highspeed;
- vmmc-supply = <&vsdcc_fixed>;
dmas = <&sdcc1bam 2>, <&sdcc1bam 1>;
dma-names = "tx", "rx";
};
@@ -524,7 +515,6 @@
cap-mmc-highspeed;
max-frequency = <192000000>;
no-1-8-v;
- vmmc-supply = <&vsdcc_fixed>;
dmas = <&sdcc3bam 2>, <&sdcc3bam 1>;
dma-names = "tx", "rx";
};
@@ -542,8 +532,6 @@
cap-sd-highspeed;
cap-mmc-highspeed;
max-frequency = <48000000>;
- vmmc-supply = <&vsdcc_fixed>;
- vqmmc-supply = <&vsdcc_fixed>;
dmas = <&sdcc4bam 2>, <&sdcc4bam 1>;
dma-names = "tx", "rx";
pinctrl-names = "default";
--
1.9.1

2015-07-27 13:50:20

by Srinivas Kandagatla

[permalink] [raw]
Subject: [PATCH v1 2/7] ARM: dts: ifc6410: add real regulators for sdcc nodes.

This patch adds real regulators for all the three sdcc nodes.

Signed-off-by: Srinivas Kandagatla <[email protected]>
---
arch/arm/boot/dts/qcom-apq8064-ifc6410.dts | 15 +++++++++++++++
1 file changed, 15 insertions(+)

diff --git a/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts b/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts
index a7c939b..cdfcf02 100644
--- a/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts
+++ b/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts
@@ -73,6 +73,12 @@
bias-pull-down;
};

+ pm8921_l5: l5 {
+ regulator-min-microvolt = <2750000>;
+ regulator-max-microvolt = <3000000>;
+ bias-pull-down;
+ };
+
pm8921_l6: l6 {
regulator-min-microvolt = <2950000>;
regulator-max-microvolt = <2950000>;
@@ -84,6 +90,10 @@
regulator-max-microvolt = <1900000>;
bias-pull-down;
};
+
+ pm8921_lvs1: lvs1 {
+ bias-pull-down;
+ };
};
};

@@ -175,11 +185,14 @@
/* eMMC */
sdcc1: sdcc@12400000 {
status = "okay";
+ vmmc-supply = <&pm8921_l5>;
+ vqmmc-supply = <&pm8921_s4>;
};

/* External micro SD card */
sdcc3: sdcc@12180000 {
status = "okay";
+ vmmc-supply = <&pm8921_l6>;
pinctrl-names = "default";
pinctrl-0 = <&card_detect>;
cd-gpios = <&tlmm_pinmux 26 GPIO_ACTIVE_LOW>;
@@ -187,6 +200,8 @@
/* WLAN */
sdcc4: sdcc@121c0000 {
status = "okay";
+ vmmc-supply = <&ext_3p3v>;
+ vqmmc-supply = <&pm8921_lvs1>;
};
};
};
--
1.9.1

2015-07-27 13:50:32

by Srinivas Kandagatla

[permalink] [raw]
Subject: [PATCH v1 3/7] ARM: dts: qs600: Add real regulators to sdcc

This patch adds real regulators to sdcc nodes.

Signed-off-by: Srinivas Kandagatla <[email protected]>
---
arch/arm/boot/dts/qcom-apq8064-cm-qs600.dts | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

diff --git a/arch/arm/boot/dts/qcom-apq8064-cm-qs600.dts b/arch/arm/boot/dts/qcom-apq8064-cm-qs600.dts
index 71512b3..23ff599 100644
--- a/arch/arm/boot/dts/qcom-apq8064-cm-qs600.dts
+++ b/arch/arm/boot/dts/qcom-apq8064-cm-qs600.dts
@@ -67,6 +67,12 @@
bias-pull-down;
};

+ pm8921_l5: l5 {
+ regulator-min-microvolt = <2750000>;
+ regulator-max-microvolt = <3000000>;
+ bias-pull-down;
+ };
+
pm8921_l23: l23 {
regulator-min-microvolt = <1700000>;
regulator-max-microvolt = <1900000>;
@@ -140,19 +146,34 @@
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 {
/* eMMC */
sdcc1: sdcc@12400000 {
status = "okay";
+ vmmc-supply = <&pm8921_l5>;
+ vqmmc-supply = <&pm8921_s4>;
};

/* External micro SD card */
sdcc3: sdcc@12180000 {
status = "okay";
+ vmmc-supply = <&v3p3_fixed>;
};
/* WLAN */
sdcc4: sdcc@121c0000 {
status = "okay";
+ vmmc-supply = <&v3p3_fixed>;
+ vqmmc-supply = <&v3p3_fixed>;
+ mmc-pwrseq = <&sdcc4_pwrseq>;
};
};
};
--
1.9.1

2015-07-27 13:52:02

by Srinivas Kandagatla

[permalink] [raw]
Subject: [PATCH v1 4/7] ARM: dts: apq8064: Add pm8921 mfd and its gpio node

This patch adds pmic gpio node to the device tree, this node is
necessary for devices like wlan to control reset gpio.

Signed-off-by: Srinivas Kandagatla <[email protected]>
---
arch/arm/boot/dts/qcom-apq8064.dtsi | 36 +++++++++++++++++++++++++++++++++++-
1 file changed, 35 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/qcom-apq8064.dtsi b/arch/arm/boot/dts/qcom-apq8064.dtsi
index 1e1706e..647a7e0 100644
--- a/arch/arm/boot/dts/qcom-apq8064.dtsi
+++ b/arch/arm/boot/dts/qcom-apq8064.dtsi
@@ -6,7 +6,6 @@
#include <dt-bindings/clock/qcom,mmcc-msm8960.h>
#include <dt-bindings/soc/qcom,gsbi.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
-
/ {
model = "Qualcomm APQ8064";
compatible = "qcom,apq8064";
@@ -287,6 +286,41 @@
compatible = "qcom,ssbi";
reg = <0x00500000 0x1000>;
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>;
+
+ };
+ };
};

gcc: clock-controller@900000 {
--
1.9.1

2015-07-27 13:52:13

by Srinivas Kandagatla

[permalink] [raw]
Subject: [PATCH v1 5/7] ARM: dts: apq8064: add pm8921 mpp support

This patch adds pmic pm8921 mpp gpio controller node.

Signed-off-by: Srinivas Kandagatla <[email protected]>
---
arch/arm/boot/dts/qcom-apq8064.dtsi | 12 ++++++++++++
1 file changed, 12 insertions(+)

diff --git a/arch/arm/boot/dts/qcom-apq8064.dtsi b/arch/arm/boot/dts/qcom-apq8064.dtsi
index 647a7e0..da214f1 100644
--- a/arch/arm/boot/dts/qcom-apq8064.dtsi
+++ b/arch/arm/boot/dts/qcom-apq8064.dtsi
@@ -320,6 +320,18 @@
#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>;
+ };
+
};
};

--
1.9.1

2015-07-27 13:52:21

by Srinivas Kandagatla

[permalink] [raw]
Subject: [PATCH v1 6/7] ARM: dts: apq8064: Add DT support for GSBI6 and for UART pin mux

From: Pramod Gurav <[email protected]>

This change adds DT support for GSBI6 and muxes the gpio pins
as UART lines. Also defines a alias for serial port on these lines.

Signed-off-by: Pramod Gurav <[email protected]>
[Srinivas Kandagatla]: fix pinctrl location and rename alias correctly
Signed-off-by: Srinivas Kandagatla <[email protected]>
---
arch/arm/boot/dts/qcom-apq8064-ifc6410.dts | 13 +++++++++++++
arch/arm/boot/dts/qcom-apq8064.dtsi | 30 +++++++++++++++++++++++++++++-
2 files changed, 42 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts b/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts
index cdfcf02..ec6a736 100644
--- a/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts
+++ b/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts
@@ -7,6 +7,7 @@

aliases {
serial0 = &gsbi7_serial;
+ serial1 = &gsbi6_serial;
};

soc {
@@ -125,6 +126,18 @@
};
};

+ gsbi@16500000 {
+ status = "ok";
+ qcom,mode = <GSBI_PROT_I2C_UART>;
+
+ serial@16540000 {
+ status = "ok";
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart_pins>;
+ };
+ };
+
gsbi@16600000 {
status = "ok";
qcom,mode = <GSBI_PROT_I2C_UART>;
diff --git a/arch/arm/boot/dts/qcom-apq8064.dtsi b/arch/arm/boot/dts/qcom-apq8064.dtsi
index da214f1..b7c282b 100644
--- a/arch/arm/boot/dts/qcom-apq8064.dtsi
+++ b/arch/arm/boot/dts/qcom-apq8064.dtsi
@@ -126,6 +126,13 @@
function = "gsbi3";
};
};
+
+ uart_pins: uart_pins {
+ mux {
+ pins = "gpio14", "gpio15", "gpio16", "gpio17";
+ function = "gsbi6";
+ };
+ };
};

intc: interrupt-controller@2000000 {
@@ -248,7 +255,6 @@
#address-cells = <1>;
#size-cells = <1>;
ranges;
-
i2c3: i2c@16280000 {
compatible = "qcom,i2c-qup-v1.1.1";
reg = <0x16280000 0x1000>;
@@ -259,6 +265,28 @@
};
};

+ 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 {
status = "disabled";
compatible = "qcom,gsbi-v1.0.0";
--
1.9.1

2015-07-27 13:52:29

by Srinivas Kandagatla

[permalink] [raw]
Subject: [PATCH v1 7/7] ARM: dts: apq8064: fix missing gsbi cell-index

Without this i2c instance for missing cell-index nodes would fail, fix
it by adding correct cell-index.

Signed-off-by: Srinivas Kandagatla <[email protected]>
---
arch/arm/boot/dts/qcom-apq8064.dtsi | 1 +
1 file changed, 1 insertion(+)

diff --git a/arch/arm/boot/dts/qcom-apq8064.dtsi b/arch/arm/boot/dts/qcom-apq8064.dtsi
index b7c282b..d2e94d6 100644
--- a/arch/arm/boot/dts/qcom-apq8064.dtsi
+++ b/arch/arm/boot/dts/qcom-apq8064.dtsi
@@ -249,6 +249,7 @@
gsbi3: gsbi@16200000 {
status = "disabled";
compatible = "qcom,gsbi-v1.0.0";
+ cell-index = <3>;
reg = <0x16200000 0x100>;
clocks = <&gcc GSBI3_H_CLK>;
clock-names = "iface";
--
1.9.1

2015-07-27 19:06:45

by Andy Gross

[permalink] [raw]
Subject: Re: [PATCH v1 0/7] APQ8064 dt patches.

On Mon, Jul 27, 2015 at 02:49:05PM +0100, Srinivas Kandagatla wrote:
> Hi Andy,
>
> Here are some DT patches which are fixes + pmic gpio/mpp nodes for APQ8064.
> I tested these patches on APQ8064 based IFC6410 board. These patches are
> on top of your qcom/dt branch.
>
> I got few more DT patches which depend on the pmic gpio and mpp dt-bindings header file,
> this header file is already available in the linux-next, Should I send those patches too?
> Or wait till it appears on 4.3-rc1?

Send em. I can at least add them to my next branch.

--
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project

2015-07-27 20:32:59

by Andy Gross

[permalink] [raw]
Subject: Re: [PATCH v1 2/7] ARM: dts: ifc6410: add real regulators for sdcc nodes.

On Mon, Jul 27, 2015 at 02:50:12PM +0100, Srinivas Kandagatla wrote:

<snip>

> sdcc3: sdcc@12180000 {
> status = "okay";
> + vmmc-supply = <&pm8921_l6>;
> pinctrl-names = "default";
> pinctrl-0 = <&card_detect>;
> cd-gpios = <&tlmm_pinmux 26 GPIO_ACTIVE_LOW>;
> @@ -187,6 +200,8 @@
> /* WLAN */
> sdcc4: sdcc@121c0000 {
> status = "okay";
> + vmmc-supply = <&ext_3p3v>;

Where is ext_3p3v defined?

> + vqmmc-supply = <&pm8921_lvs1>;

--
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project

2015-07-27 20:36:49

by Andy Gross

[permalink] [raw]
Subject: Re: [PATCH v1 3/7] ARM: dts: qs600: Add real regulators to sdcc

On Mon, Jul 27, 2015 at 02:50:20PM +0100, Srinivas Kandagatla wrote:

<snip>

> /* WLAN */
> sdcc4: sdcc@121c0000 {
> status = "okay";
> + vmmc-supply = <&v3p3_fixed>;
> + vqmmc-supply = <&v3p3_fixed>;
> + mmc-pwrseq = <&sdcc4_pwrseq>;

Where is sdcc4_pwrseq defined?


--
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project

2015-07-27 20:46:45

by Andy Gross

[permalink] [raw]
Subject: Re: [PATCH v1 4/7] ARM: dts: apq8064: Add pm8921 mfd and its gpio node

On Mon, Jul 27, 2015 at 02:51:52PM +0100, Srinivas Kandagatla wrote:
> This patch adds pmic gpio node to the device tree, this node is
> necessary for devices like wlan to control reset gpio.
>
> Signed-off-by: Srinivas Kandagatla <[email protected]>
> ---

Applied. thanks!

--
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project

2015-07-27 20:54:22

by Andy Gross

[permalink] [raw]
Subject: Re: [PATCH v1 5/7] ARM: dts: apq8064: add pm8921 mpp support

On Mon, Jul 27, 2015 at 02:52:02PM +0100, Srinivas Kandagatla wrote:
> This patch adds pmic pm8921 mpp gpio controller node.
>
> Signed-off-by: Srinivas Kandagatla <[email protected]>
> ---

Applied. Thanks!

--
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project

2015-07-27 20:55:18

by Andy Gross

[permalink] [raw]
Subject: Re: [PATCH v1 7/7] ARM: dts: apq8064: fix missing gsbi cell-index

On Mon, Jul 27, 2015 at 02:52:19PM +0100, Srinivas Kandagatla wrote:
> Without this i2c instance for missing cell-index nodes would fail, fix
> it by adding correct cell-index.
>
> Signed-off-by: Srinivas Kandagatla <[email protected]>
> ---

Applied. Thanks.

--
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project

2015-07-27 20:58:03

by Andy Gross

[permalink] [raw]
Subject: Re: [PATCH v1 6/7] ARM: dts: apq8064: Add DT support for GSBI6 and for UART pin mux

On Mon, Jul 27, 2015 at 02:52:10PM +0100, Srinivas Kandagatla wrote:
> From: Pramod Gurav <[email protected]>
>
> This change adds DT support for GSBI6 and muxes the gpio pins
> as UART lines. Also defines a alias for serial port on these lines.
>
> Signed-off-by: Pramod Gurav <[email protected]>
> [Srinivas Kandagatla]: fix pinctrl location and rename alias correctly
> Signed-off-by: Srinivas Kandagatla <[email protected]>
> ---

Applied. Thanks.

--
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project

2015-07-28 08:07:55

by Srinivas Kandagatla

[permalink] [raw]
Subject: Re: [PATCH v1 2/7] ARM: dts: ifc6410: add real regulators for sdcc nodes.



On 27/07/15 21:32, Andy Gross wrote:
> On Mon, Jul 27, 2015 at 02:50:12PM +0100, Srinivas Kandagatla wrote:
>
> <snip>
>
>> sdcc3: sdcc@12180000 {
>> status = "okay";
>> + vmmc-supply = <&pm8921_l6>;
>> pinctrl-names = "default";
>> pinctrl-0 = <&card_detect>;
>> cd-gpios = <&tlmm_pinmux 26 GPIO_ACTIVE_LOW>;
>> @@ -187,6 +200,8 @@
>> /* WLAN */
>> sdcc4: sdcc@121c0000 {
>> status = "okay";
>> + vmmc-supply = <&ext_3p3v>;
>
> Where is ext_3p3v defined?
Oops, This is missing in this patch, I think re-ordering few other
patches introduced this. I will send a these 3 patches as we discussed.

--srini
>
>> + vqmmc-supply = <&pm8921_lvs1>;
>