* [PATCH v2 00/11] Qualcomm Shared Memory & RPM drivers
@ 2015-06-26 21:50 bjorn at kryo.se
2015-06-26 21:50 ` [PATCH v2 08/11] ARM: dts: msm8974: Add tcsr mutex node bjorn at kryo.se
` (3 more replies)
0 siblings, 4 replies; 7+ messages in thread
From: bjorn at kryo.se @ 2015-06-26 21:50 UTC (permalink / raw)
To: linux-arm-kernel
From: Bjorn Andersson <bjorn.andersson@sonymobile.com>
This second incarnation of the SMEM, SMD, RPM and pm8x41 regulator series fixes
the review comments received on v1 and adds the dts patches at the end.
Bjorn Andersson (11):
soc: qcom: Add device tree binding for SMEM
soc: qcom: Add Shared Memory Manager driver
soc: qcom: Add device tree binding for Shared Memory Device
soc: qcom: Add Shared Memory Driver
mfd: devicetree: bindings: Add Qualcomm SMD based RPM DT binding
mfd: qcom-smd-rpm: Driver for the Qualcomm RPM over SMD
regulator: qcom: smd: Regulator driver for the Qualcomm RPM
ARM: dts: msm8974: Add tcsr mutex node
ARM: dts: msm8974: Add smem reservation and node
ARM: dts: msm8974: Add smd, rpm and regulator nodes
ARM: dts: xperia-honami: Add regulator nodes for Honami
.../devicetree/bindings/mfd/qcom-rpm-smd.txt | 117 ++
.../devicetree/bindings/soc/qcom/qcom,smd.txt | 79 ++
.../devicetree/bindings/soc/qcom/qcom,smem.txt | 51 +
.../boot/dts/qcom-msm8974-sony-xperia-honami.dts | 199 +++
arch/arm/boot/dts/qcom-msm8974.dtsi | 106 ++
drivers/mfd/Kconfig | 14 +
drivers/mfd/Makefile | 1 +
drivers/mfd/qcom-smd-rpm.c | 236 ++++
drivers/regulator/Kconfig | 12 +
drivers/regulator/Makefile | 1 +
drivers/regulator/qcom_smd-regulator.c | 350 ++++++
drivers/soc/qcom/Kconfig | 16 +
drivers/soc/qcom/Makefile | 2 +
drivers/soc/qcom/smd.c | 1324 ++++++++++++++++++++
drivers/soc/qcom/smem.c | 775 ++++++++++++
include/dt-bindings/mfd/qcom-smd-rpm.h | 28 +
include/linux/mfd/qcom-smd-rpm.h | 35 +
include/linux/soc/qcom/smd.h | 46 +
include/linux/soc/qcom/smem.h | 11 +
19 files changed, 3403 insertions(+)
create mode 100644 Documentation/devicetree/bindings/mfd/qcom-rpm-smd.txt
create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,smd.txt
create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,smem.txt
create mode 100644 drivers/mfd/qcom-smd-rpm.c
create mode 100644 drivers/regulator/qcom_smd-regulator.c
create mode 100644 drivers/soc/qcom/smd.c
create mode 100644 drivers/soc/qcom/smem.c
create mode 100644 include/dt-bindings/mfd/qcom-smd-rpm.h
create mode 100644 include/linux/mfd/qcom-smd-rpm.h
create mode 100644 include/linux/soc/qcom/smd.h
create mode 100644 include/linux/soc/qcom/smem.h
--
1.9.3 (Apple Git-50)
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2 08/11] ARM: dts: msm8974: Add tcsr mutex node
2015-06-26 21:50 [PATCH v2 00/11] Qualcomm Shared Memory & RPM drivers bjorn at kryo.se
@ 2015-06-26 21:50 ` bjorn at kryo.se
2015-07-23 20:42 ` Andy Gross
2015-06-26 21:50 ` [PATCH v2 09/11] ARM: dts: msm8974: Add smem reservation and node bjorn at kryo.se
` (2 subsequent siblings)
3 siblings, 1 reply; 7+ messages in thread
From: bjorn at kryo.se @ 2015-06-26 21:50 UTC (permalink / raw)
To: linux-arm-kernel
From: Bjorn Andersson <bjorn.andersson@sonymobile.com>
Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
---
arch/arm/boot/dts/qcom-msm8974.dtsi | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi
index 37b47b5..7c7b7dc 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -220,6 +220,11 @@
reg = <0xfc400000 0x4000>;
};
+ tcsr_mutex_block: syscon at fd484000 {
+ compatible = "syscon";
+ reg = <0xfd484000 0x2000>;
+ };
+
mmcc: clock-controller at fd8c0000 {
compatible = "qcom,mmcc-msm8974";
#clock-cells = <1>;
@@ -227,6 +232,13 @@
reg = <0xfd8c0000 0x6000>;
};
+ tcsr_mutex: tcsr-mutex {
+ compatible = "qcom,tcsr-mutex";
+ syscon = <&tcsr_mutex_block 0 0x80>;
+
+ #hwlock-cells = <1>;
+ };
+
serial at f991e000 {
compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
reg = <0xf991e000 0x1000>;
--
1.9.3 (Apple Git-50)
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 09/11] ARM: dts: msm8974: Add smem reservation and node
2015-06-26 21:50 [PATCH v2 00/11] Qualcomm Shared Memory & RPM drivers bjorn at kryo.se
2015-06-26 21:50 ` [PATCH v2 08/11] ARM: dts: msm8974: Add tcsr mutex node bjorn at kryo.se
@ 2015-06-26 21:50 ` bjorn at kryo.se
2015-07-23 20:51 ` Andy Gross
2015-06-26 21:50 ` [PATCH v2 10/11] ARM: dts: msm8974: Add smd, rpm and regulator nodes bjorn at kryo.se
2015-06-26 21:50 ` [PATCH v2 11/11] ARM: dts: xperia-honami: Add regulator nodes for Honami bjorn at kryo.se
3 siblings, 1 reply; 7+ messages in thread
From: bjorn at kryo.se @ 2015-06-26 21:50 UTC (permalink / raw)
To: linux-arm-kernel
From: Bjorn Andersson <bjorn.andersson@sonymobile.com>
Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
---
arch/arm/boot/dts/qcom-msm8974.dtsi | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi
index 7c7b7dc..d7c99b8 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -9,6 +9,17 @@
compatible = "qcom,msm8974";
interrupt-parent = <&intc>;
+ reserved-memory {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges;
+
+ smem_region: smem at fa00000 {
+ reg = <0xfa00000 0x200000>;
+ no-map;
+ };
+ };
+
cpus {
#address-cells = <1>;
#size-cells = <0>;
@@ -239,6 +250,15 @@
#hwlock-cells = <1>;
};
+ smem at fa00000 {
+ compatible = "qcom,smem";
+
+ memory-region = <&smem_region>;
+ reg = <0xfc428000 0x4000>;
+
+ hwlocks = <&tcsr_mutex 3>;
+ };
+
serial at f991e000 {
compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
reg = <0xf991e000 0x1000>;
--
1.9.3 (Apple Git-50)
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 10/11] ARM: dts: msm8974: Add smd, rpm and regulator nodes
2015-06-26 21:50 [PATCH v2 00/11] Qualcomm Shared Memory & RPM drivers bjorn at kryo.se
2015-06-26 21:50 ` [PATCH v2 08/11] ARM: dts: msm8974: Add tcsr mutex node bjorn at kryo.se
2015-06-26 21:50 ` [PATCH v2 09/11] ARM: dts: msm8974: Add smem reservation and node bjorn at kryo.se
@ 2015-06-26 21:50 ` bjorn at kryo.se
2015-06-26 21:50 ` [PATCH v2 11/11] ARM: dts: xperia-honami: Add regulator nodes for Honami bjorn at kryo.se
3 siblings, 0 replies; 7+ messages in thread
From: bjorn at kryo.se @ 2015-06-26 21:50 UTC (permalink / raw)
To: linux-arm-kernel
From: Bjorn Andersson <bjorn.andersson@sonymobile.com>
Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
---
arch/arm/boot/dts/qcom-msm8974.dtsi | 74 +++++++++++++++++++++++++++++++++++++
1 file changed, 74 insertions(+)
diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi
index d7c99b8..65f5496 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -114,6 +114,11 @@
<0xf9002000 0x1000>;
};
+ apcs: syscon at f9011000 {
+ compatible = "syscon";
+ reg = <0xf9011000 0x1000>;
+ };
+
timer at f9020000 {
#address-cells = <1>;
#size-cells = <1>;
@@ -334,4 +339,73 @@
#interrupt-cells = <4>;
};
};
+
+ smd {
+ compatible = "qcom,smd";
+
+ rpm {
+ interrupts = <0 168 1>;
+ qcom,ipc = <&apcs 8 0>;
+ qcom,smd-edge = <15>;
+
+ rpm_requests {
+ compatible = "qcom,rpm-msm8974";
+ qcom,smd-channels = "rpm_requests";
+
+ pm8841-regulators {
+ compatible = "qcom,rpm-pm8841-regulators";
+
+ pm8841_s1: s1 {};
+ pm8841_s2: s2 {};
+ pm8841_s3: s3 {};
+ pm8841_s4: s4 {};
+ pm8841_s5: s5 {};
+ pm8841_s6: s6 {};
+ pm8841_s7: s7 {};
+ pm8841_s8: s8 {};
+ };
+
+ pm8941-regulators {
+ compatible = "qcom,rpm-pm8941-regulators";
+
+ pm8941_s1: s1 {};
+ pm8941_s2: s2 {};
+ pm8941_s3: s3 {};
+ pm8941_5v: s4 {};
+
+ pm8941_l1: l1 {};
+ pm8941_l2: l2 {};
+ pm8941_l3: l3 {};
+ pm8941_l4: l4 {};
+ pm8941_l5: l5 {};
+ pm8941_l6: l6 {};
+ pm8941_l7: l7 {};
+ pm8941_l8: l8 {};
+ pm8941_l9: l9 {};
+ pm8941_l10: l10 {};
+ pm8941_l11: l11 {};
+ pm8941_l12: l12 {};
+ pm8941_l13: l13 {};
+ pm8941_l14: l14 {};
+ pm8941_l15: l15 {};
+ pm8941_l16: l16 {};
+ pm8941_l17: l17 {};
+ pm8941_l18: l18 {};
+ pm8941_l19: l19 {};
+ pm8941_l20: l20 {};
+ pm8941_l21: l21 {};
+ pm8941_l22: l22 {};
+ pm8941_l23: l23 {};
+ pm8941_l24: l24 {};
+
+ pm8941_lvs1: lvs1 {};
+ pm8941_lvs2: lvs2 {};
+ pm8941_lvs3: lvs3 {};
+
+ pm8941_5vs1: 5vs1 {};
+ pm8941_5vs2: 5vs2 {};
+ };
+ };
+ };
+ };
};
--
1.9.3 (Apple Git-50)
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 11/11] ARM: dts: xperia-honami: Add regulator nodes for Honami
2015-06-26 21:50 [PATCH v2 00/11] Qualcomm Shared Memory & RPM drivers bjorn at kryo.se
` (2 preceding siblings ...)
2015-06-26 21:50 ` [PATCH v2 10/11] ARM: dts: msm8974: Add smd, rpm and regulator nodes bjorn at kryo.se
@ 2015-06-26 21:50 ` bjorn at kryo.se
3 siblings, 0 replies; 7+ messages in thread
From: bjorn at kryo.se @ 2015-06-26 21:50 UTC (permalink / raw)
To: linux-arm-kernel
From: Bjorn Andersson <bjorn.andersson@sonymobile.com>
Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
---
.../boot/dts/qcom-msm8974-sony-xperia-honami.dts | 199 +++++++++++++++++++++
1 file changed, 199 insertions(+)
diff --git a/arch/arm/boot/dts/qcom-msm8974-sony-xperia-honami.dts b/arch/arm/boot/dts/qcom-msm8974-sony-xperia-honami.dts
index bd35b06..49605ca 100644
--- a/arch/arm/boot/dts/qcom-msm8974-sony-xperia-honami.dts
+++ b/arch/arm/boot/dts/qcom-msm8974-sony-xperia-honami.dts
@@ -10,10 +10,209 @@
reg = <0 0x40000000>, <0x40000000 0x40000000>;
device_type = "memory";
};
+
+ smd {
+ rpm {
+ 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_bypass>;
+ vdd_l13_l20_l23_l24-supply = <&vreg_boost_bypass>;
+ vdd_l21-supply = <&vreg_boost_bypass>;
+ vin_5vs-supply = <&pm8941_5v>;
+
+ s1 {
+ regulator-min-microvolt = <1300000>;
+ regulator-max-microvolt = <1300000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ s2 {
+ regulator-min-microvolt = <2150000>;
+ regulator-max-microvolt = <2150000>;
+ regulator-boot-on;
+ };
+
+ s3 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ s4 {
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ };
+
+ l1 {
+ regulator-min-microvolt = <1225000>;
+ regulator-max-microvolt = <1225000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ l2 {
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ };
+
+ l3 {
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ };
+
+ l4 {
+ regulator-min-microvolt = <1225000>;
+ regulator-max-microvolt = <1225000>;
+ };
+
+ l5 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+
+ l6 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-boot-on;
+ };
+
+ l7 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-boot-on;
+ };
+
+ l8 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+
+ l9 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <2950000>;
+ };
+
+ l11 {
+ regulator-min-microvolt = <1300000>;
+ regulator-max-microvolt = <1350000>;
+ };
+
+ l12 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-boot-on;
+ };
+
+ l13 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <2950000>;
+ regulator-boot-on;
+ };
+
+ l14 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+
+ l15 {
+ regulator-min-microvolt = <2050000>;
+ regulator-max-microvolt = <2050000>;
+ };
+
+ l16 {
+ regulator-min-microvolt = <2700000>;
+ regulator-max-microvolt = <2700000>;
+ };
+
+ l17 {
+ regulator-min-microvolt = <2700000>;
+ regulator-max-microvolt = <2700000>;
+ };
+
+ l18 {
+ regulator-min-microvolt = <2850000>;
+ regulator-max-microvolt = <2850000>;
+ };
+
+ l19 {
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ };
+
+ l20 {
+ regulator-min-microvolt = <2950000>;
+ regulator-max-microvolt = <2950000>;
+ regulator-boot-on;
+ };
+
+ l21 {
+ regulator-min-microvolt = <2950000>;
+ regulator-max-microvolt = <2950000>;
+ regulator-boot-on;
+ };
+
+ l22 {
+ regulator-min-microvolt = <3000000>;
+ regulator-max-microvolt = <3000000>;
+ };
+
+ l23 {
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ };
+
+ l24 {
+ regulator-min-microvolt = <3075000>;
+ regulator-max-microvolt = <3075000>;
+ regulator-boot-on;
+ };
+ };
+ };
+ };
+ };
+
+ vreg_boost_bypass: vreg-boost-bypass {
+ compatible = "regulator-fixed";
+
+ regulator-name = "vreg-boost-bypass";
+ regulator-min-microvolt = <3150000>;
+ regulator-max-microvolt = <3150000>;
+
+ regulator-always-on;
+ regulator-boot-on;
+
+ gpio = <&pm8941_gpios 21 0>;
+ enable-active-high;
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&boost_bypass_en>;
+
+ };
};
&soc {
serial at f991e000 {
status = "ok";
};
+
+};
+
+&spmi_bus {
+ pm8941 at 0 {
+ gpios at c000 {
+ boost_bypass_en: boost-bypass-en {
+ always-on {
+ pins = "gpio21";
+ function = "normal";
+ };
+ };
+ };
+ };
};
--
1.9.3 (Apple Git-50)
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 08/11] ARM: dts: msm8974: Add tcsr mutex node
2015-06-26 21:50 ` [PATCH v2 08/11] ARM: dts: msm8974: Add tcsr mutex node bjorn at kryo.se
@ 2015-07-23 20:42 ` Andy Gross
0 siblings, 0 replies; 7+ messages in thread
From: Andy Gross @ 2015-07-23 20:42 UTC (permalink / raw)
To: linux-arm-kernel
On Fri, Jun 26, 2015 at 02:50:16PM -0700, bjorn at kryo.se wrote:
> From: Bjorn Andersson <bjorn.andersson@sonymobile.com>
>
> Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
> ---
> arch/arm/boot/dts/qcom-msm8974.dtsi | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
Applied, thanks!
--
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2 09/11] ARM: dts: msm8974: Add smem reservation and node
2015-06-26 21:50 ` [PATCH v2 09/11] ARM: dts: msm8974: Add smem reservation and node bjorn at kryo.se
@ 2015-07-23 20:51 ` Andy Gross
0 siblings, 0 replies; 7+ messages in thread
From: Andy Gross @ 2015-07-23 20:51 UTC (permalink / raw)
To: linux-arm-kernel
On Fri, Jun 26, 2015 at 02:50:17PM -0700, bjorn at kryo.se wrote:
> From: Bjorn Andersson <bjorn.andersson@sonymobile.com>
>
> Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
> ---
Applied, thanks.
--
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2015-07-23 20:51 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-26 21:50 [PATCH v2 00/11] Qualcomm Shared Memory & RPM drivers bjorn at kryo.se
2015-06-26 21:50 ` [PATCH v2 08/11] ARM: dts: msm8974: Add tcsr mutex node bjorn at kryo.se
2015-07-23 20:42 ` Andy Gross
2015-06-26 21:50 ` [PATCH v2 09/11] ARM: dts: msm8974: Add smem reservation and node bjorn at kryo.se
2015-07-23 20:51 ` Andy Gross
2015-06-26 21:50 ` [PATCH v2 10/11] ARM: dts: msm8974: Add smd, rpm and regulator nodes bjorn at kryo.se
2015-06-26 21:50 ` [PATCH v2 11/11] ARM: dts: xperia-honami: Add regulator nodes for Honami bjorn at kryo.se
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).