* [PATCHv2 0/2] qcom_rpm: add support for IPQ8064 resources
@ 2015-03-26 18:29 Stephen Boyd
2015-03-26 18:29 ` [PATCHv2 1/2] mfd: devicetree: qcom_rpm: document " Stephen Boyd
2015-03-26 18:29 ` [PATCHv2 2/2] mfd: qcom_rpm: add support for IPQ8064 Stephen Boyd
0 siblings, 2 replies; 5+ messages in thread
From: Stephen Boyd @ 2015-03-26 18:29 UTC (permalink / raw)
To: linux-arm-kernel
This is a resend of the IPQ RPM support that Josh sent a while back.
I've removed the regulator part because that has been done a different
way now.
Josh Cartwright (2):
mfd: devicetree: qcom_rpm: document IPQ8064 resources
mfd: qcom_rpm: add support for IPQ8064
Documentation/devicetree/bindings/mfd/qcom-rpm.txt | 1 +
drivers/mfd/qcom_rpm.c | 41 ++++++++++++++++++++++
include/dt-bindings/mfd/qcom-rpm.h | 6 ++++
3 files changed, 48 insertions(+)
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCHv2 1/2] mfd: devicetree: qcom_rpm: document IPQ8064 resources
2015-03-26 18:29 [PATCHv2 0/2] qcom_rpm: add support for IPQ8064 resources Stephen Boyd
@ 2015-03-26 18:29 ` Stephen Boyd
2015-03-26 20:08 ` Lee Jones
2015-03-26 18:29 ` [PATCHv2 2/2] mfd: qcom_rpm: add support for IPQ8064 Stephen Boyd
1 sibling, 1 reply; 5+ messages in thread
From: Stephen Boyd @ 2015-03-26 18:29 UTC (permalink / raw)
To: linux-arm-kernel
From: Josh Cartwright <joshc@codeaurora.org>
The IPQ8064 SoC has several RPM-controlled resources, an NSS fabrick
clock and four regulator resources. Provide definitions for them.
Signed-off-by: Josh Cartwright <joshc@codeaurora.org>
[sboyd at codeaurora.org: Drop regulator part of binding]
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
---
Documentation/devicetree/bindings/mfd/qcom-rpm.txt | 1 +
include/dt-bindings/mfd/qcom-rpm.h | 6 ++++++
2 files changed, 7 insertions(+)
diff --git a/Documentation/devicetree/bindings/mfd/qcom-rpm.txt b/Documentation/devicetree/bindings/mfd/qcom-rpm.txt
index 85e31980017a..94d9ae8d5168 100644
--- a/Documentation/devicetree/bindings/mfd/qcom-rpm.txt
+++ b/Documentation/devicetree/bindings/mfd/qcom-rpm.txt
@@ -12,6 +12,7 @@ frequencies.
"qcom,rpm-apq8064"
"qcom,rpm-msm8660"
"qcom,rpm-msm8960"
+ "qcom,rpm-ipq8064"
- reg:
Usage: required
diff --git a/include/dt-bindings/mfd/qcom-rpm.h b/include/dt-bindings/mfd/qcom-rpm.h
index 388a6f3d6165..13a9d4bf2662 100644
--- a/include/dt-bindings/mfd/qcom-rpm.h
+++ b/include/dt-bindings/mfd/qcom-rpm.h
@@ -141,6 +141,12 @@
#define QCOM_RPM_SYS_FABRIC_MODE 131
#define QCOM_RPM_USB_OTG_SWITCH 132
#define QCOM_RPM_VDDMIN_GPIO 133
+#define QCOM_RPM_NSS_FABRIC_0_CLK 134
+#define QCOM_RPM_NSS_FABRIC_1_CLK 135
+#define QCOM_RPM_SMB208_S1a 136
+#define QCOM_RPM_SMB208_S1b 137
+#define QCOM_RPM_SMB208_S2a 138
+#define QCOM_RPM_SMB208_S2b 139
/*
* Constants used to select force mode for regulators.
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCHv2 2/2] mfd: qcom_rpm: add support for IPQ8064
2015-03-26 18:29 [PATCHv2 0/2] qcom_rpm: add support for IPQ8064 resources Stephen Boyd
2015-03-26 18:29 ` [PATCHv2 1/2] mfd: devicetree: qcom_rpm: document " Stephen Boyd
@ 2015-03-26 18:29 ` Stephen Boyd
2015-03-26 20:09 ` Lee Jones
1 sibling, 1 reply; 5+ messages in thread
From: Stephen Boyd @ 2015-03-26 18:29 UTC (permalink / raw)
To: linux-arm-kernel
From: Josh Cartwright <joshc@codeaurora.org>
The IPQ8064 also includes an RPM following the same message structure as
other chips. In addition, it supports a few new resource types to
support the NSS fabric clocks and the SMB208/SMB209 regulators found on
the reference boards.
Signed-off-by: Josh Cartwright <joshc@codeaurora.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
---
drivers/mfd/qcom_rpm.c | 41 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)
diff --git a/drivers/mfd/qcom_rpm.c b/drivers/mfd/qcom_rpm.c
index f696328c2933..12e324319573 100644
--- a/drivers/mfd/qcom_rpm.c
+++ b/drivers/mfd/qcom_rpm.c
@@ -323,10 +323,51 @@ static const struct qcom_rpm_data msm8960_template = {
.n_resources = ARRAY_SIZE(msm8960_rpm_resource_table),
};
+static const struct qcom_rpm_resource ipq806x_rpm_resource_table[] = {
+ [QCOM_RPM_CXO_CLK] = { 25, 9, 5, 1 },
+ [QCOM_RPM_PXO_CLK] = { 26, 10, 6, 1 },
+ [QCOM_RPM_APPS_FABRIC_CLK] = { 27, 11, 8, 1 },
+ [QCOM_RPM_SYS_FABRIC_CLK] = { 28, 12, 9, 1 },
+ [QCOM_RPM_NSS_FABRIC_0_CLK] = { 29, 13, 10, 1 },
+ [QCOM_RPM_DAYTONA_FABRIC_CLK] = { 30, 14, 11, 1 },
+ [QCOM_RPM_SFPB_CLK] = { 31, 15, 12, 1 },
+ [QCOM_RPM_CFPB_CLK] = { 32, 16, 13, 1 },
+ [QCOM_RPM_NSS_FABRIC_1_CLK] = { 33, 17, 14, 1 },
+ [QCOM_RPM_EBI1_CLK] = { 34, 18, 16, 1 },
+ [QCOM_RPM_APPS_FABRIC_HALT] = { 35, 19, 18, 2 },
+ [QCOM_RPM_APPS_FABRIC_MODE] = { 37, 20, 19, 3 },
+ [QCOM_RPM_APPS_FABRIC_IOCTL] = { 40, 21, 20, 1 },
+ [QCOM_RPM_APPS_FABRIC_ARB] = { 41, 22, 21, 12 },
+ [QCOM_RPM_SYS_FABRIC_HALT] = { 53, 23, 22, 2 },
+ [QCOM_RPM_SYS_FABRIC_MODE] = { 55, 24, 23, 3 },
+ [QCOM_RPM_SYS_FABRIC_IOCTL] = { 58, 25, 24, 1 },
+ [QCOM_RPM_SYS_FABRIC_ARB] = { 59, 26, 25, 30 },
+ [QCOM_RPM_MM_FABRIC_HALT] = { 89, 27, 26, 2 },
+ [QCOM_RPM_MM_FABRIC_MODE] = { 91, 28, 27, 3 },
+ [QCOM_RPM_MM_FABRIC_IOCTL] = { 94, 29, 28, 1 },
+ [QCOM_RPM_MM_FABRIC_ARB] = { 95, 30, 29, 2 },
+ [QCOM_RPM_CXO_BUFFERS] = { 209, 33, 31, 1 },
+ [QCOM_RPM_USB_OTG_SWITCH] = { 210, 34, 32, 1 },
+ [QCOM_RPM_HDMI_SWITCH] = { 211, 35, 33, 1 },
+ [QCOM_RPM_DDR_DMM] = { 212, 36, 34, 2 },
+ [QCOM_RPM_VDDMIN_GPIO] = { 215, 40, 39, 1 },
+ [QCOM_RPM_SMB208_S1a] = { 216, 41, 90, 2 },
+ [QCOM_RPM_SMB208_S1b] = { 218, 43, 91, 2 },
+ [QCOM_RPM_SMB208_S2a] = { 220, 45, 92, 2 },
+ [QCOM_RPM_SMB208_S2b] = { 222, 47, 93, 2 },
+};
+
+static const struct qcom_rpm_data ipq806x_template = {
+ .version = 3,
+ .resource_table = ipq806x_rpm_resource_table,
+ .n_resources = ARRAY_SIZE(ipq806x_rpm_resource_table),
+};
+
static const struct of_device_id qcom_rpm_of_match[] = {
{ .compatible = "qcom,rpm-apq8064", .data = &apq8064_template },
{ .compatible = "qcom,rpm-msm8660", .data = &msm8660_template },
{ .compatible = "qcom,rpm-msm8960", .data = &msm8960_template },
+ { .compatible = "qcom,rpm-ipq8064", .data = &ipq806x_template },
{ }
};
MODULE_DEVICE_TABLE(of, qcom_rpm_of_match);
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCHv2 1/2] mfd: devicetree: qcom_rpm: document IPQ8064 resources
2015-03-26 18:29 ` [PATCHv2 1/2] mfd: devicetree: qcom_rpm: document " Stephen Boyd
@ 2015-03-26 20:08 ` Lee Jones
0 siblings, 0 replies; 5+ messages in thread
From: Lee Jones @ 2015-03-26 20:08 UTC (permalink / raw)
To: linux-arm-kernel
On Thu, 26 Mar 2015, Stephen Boyd wrote:
> From: Josh Cartwright <joshc@codeaurora.org>
>
> The IPQ8064 SoC has several RPM-controlled resources, an NSS fabrick
> clock and four regulator resources. Provide definitions for them.
>
> Signed-off-by: Josh Cartwright <joshc@codeaurora.org>
> [sboyd at codeaurora.org: Drop regulator part of binding]
> Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
> ---
> Documentation/devicetree/bindings/mfd/qcom-rpm.txt | 1 +
> include/dt-bindings/mfd/qcom-rpm.h | 6 ++++++
> 2 files changed, 7 insertions(+)
Thanks for re-basing. Patch applied.
> diff --git a/Documentation/devicetree/bindings/mfd/qcom-rpm.txt b/Documentation/devicetree/bindings/mfd/qcom-rpm.txt
> index 85e31980017a..94d9ae8d5168 100644
> --- a/Documentation/devicetree/bindings/mfd/qcom-rpm.txt
> +++ b/Documentation/devicetree/bindings/mfd/qcom-rpm.txt
> @@ -12,6 +12,7 @@ frequencies.
> "qcom,rpm-apq8064"
> "qcom,rpm-msm8660"
> "qcom,rpm-msm8960"
> + "qcom,rpm-ipq8064"
>
> - reg:
> Usage: required
> diff --git a/include/dt-bindings/mfd/qcom-rpm.h b/include/dt-bindings/mfd/qcom-rpm.h
> index 388a6f3d6165..13a9d4bf2662 100644
> --- a/include/dt-bindings/mfd/qcom-rpm.h
> +++ b/include/dt-bindings/mfd/qcom-rpm.h
> @@ -141,6 +141,12 @@
> #define QCOM_RPM_SYS_FABRIC_MODE 131
> #define QCOM_RPM_USB_OTG_SWITCH 132
> #define QCOM_RPM_VDDMIN_GPIO 133
> +#define QCOM_RPM_NSS_FABRIC_0_CLK 134
> +#define QCOM_RPM_NSS_FABRIC_1_CLK 135
> +#define QCOM_RPM_SMB208_S1a 136
> +#define QCOM_RPM_SMB208_S1b 137
> +#define QCOM_RPM_SMB208_S2a 138
> +#define QCOM_RPM_SMB208_S2b 139
>
> /*
> * Constants used to select force mode for regulators.
--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCHv2 2/2] mfd: qcom_rpm: add support for IPQ8064
2015-03-26 18:29 ` [PATCHv2 2/2] mfd: qcom_rpm: add support for IPQ8064 Stephen Boyd
@ 2015-03-26 20:09 ` Lee Jones
0 siblings, 0 replies; 5+ messages in thread
From: Lee Jones @ 2015-03-26 20:09 UTC (permalink / raw)
To: linux-arm-kernel
On Thu, 26 Mar 2015, Stephen Boyd wrote:
> From: Josh Cartwright <joshc@codeaurora.org>
>
> The IPQ8064 also includes an RPM following the same message structure as
> other chips. In addition, it supports a few new resource types to
> support the NSS fabric clocks and the SMB208/SMB209 regulators found on
> the reference boards.
>
> Signed-off-by: Josh Cartwright <joshc@codeaurora.org>
> Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
> ---
> drivers/mfd/qcom_rpm.c | 41 +++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 41 insertions(+)
Thanks for re-basing. Patch applied.
> diff --git a/drivers/mfd/qcom_rpm.c b/drivers/mfd/qcom_rpm.c
> index f696328c2933..12e324319573 100644
> --- a/drivers/mfd/qcom_rpm.c
> +++ b/drivers/mfd/qcom_rpm.c
> @@ -323,10 +323,51 @@ static const struct qcom_rpm_data msm8960_template = {
> .n_resources = ARRAY_SIZE(msm8960_rpm_resource_table),
> };
>
> +static const struct qcom_rpm_resource ipq806x_rpm_resource_table[] = {
> + [QCOM_RPM_CXO_CLK] = { 25, 9, 5, 1 },
> + [QCOM_RPM_PXO_CLK] = { 26, 10, 6, 1 },
> + [QCOM_RPM_APPS_FABRIC_CLK] = { 27, 11, 8, 1 },
> + [QCOM_RPM_SYS_FABRIC_CLK] = { 28, 12, 9, 1 },
> + [QCOM_RPM_NSS_FABRIC_0_CLK] = { 29, 13, 10, 1 },
> + [QCOM_RPM_DAYTONA_FABRIC_CLK] = { 30, 14, 11, 1 },
> + [QCOM_RPM_SFPB_CLK] = { 31, 15, 12, 1 },
> + [QCOM_RPM_CFPB_CLK] = { 32, 16, 13, 1 },
> + [QCOM_RPM_NSS_FABRIC_1_CLK] = { 33, 17, 14, 1 },
> + [QCOM_RPM_EBI1_CLK] = { 34, 18, 16, 1 },
> + [QCOM_RPM_APPS_FABRIC_HALT] = { 35, 19, 18, 2 },
> + [QCOM_RPM_APPS_FABRIC_MODE] = { 37, 20, 19, 3 },
> + [QCOM_RPM_APPS_FABRIC_IOCTL] = { 40, 21, 20, 1 },
> + [QCOM_RPM_APPS_FABRIC_ARB] = { 41, 22, 21, 12 },
> + [QCOM_RPM_SYS_FABRIC_HALT] = { 53, 23, 22, 2 },
> + [QCOM_RPM_SYS_FABRIC_MODE] = { 55, 24, 23, 3 },
> + [QCOM_RPM_SYS_FABRIC_IOCTL] = { 58, 25, 24, 1 },
> + [QCOM_RPM_SYS_FABRIC_ARB] = { 59, 26, 25, 30 },
> + [QCOM_RPM_MM_FABRIC_HALT] = { 89, 27, 26, 2 },
> + [QCOM_RPM_MM_FABRIC_MODE] = { 91, 28, 27, 3 },
> + [QCOM_RPM_MM_FABRIC_IOCTL] = { 94, 29, 28, 1 },
> + [QCOM_RPM_MM_FABRIC_ARB] = { 95, 30, 29, 2 },
> + [QCOM_RPM_CXO_BUFFERS] = { 209, 33, 31, 1 },
> + [QCOM_RPM_USB_OTG_SWITCH] = { 210, 34, 32, 1 },
> + [QCOM_RPM_HDMI_SWITCH] = { 211, 35, 33, 1 },
> + [QCOM_RPM_DDR_DMM] = { 212, 36, 34, 2 },
> + [QCOM_RPM_VDDMIN_GPIO] = { 215, 40, 39, 1 },
> + [QCOM_RPM_SMB208_S1a] = { 216, 41, 90, 2 },
> + [QCOM_RPM_SMB208_S1b] = { 218, 43, 91, 2 },
> + [QCOM_RPM_SMB208_S2a] = { 220, 45, 92, 2 },
> + [QCOM_RPM_SMB208_S2b] = { 222, 47, 93, 2 },
> +};
> +
> +static const struct qcom_rpm_data ipq806x_template = {
> + .version = 3,
> + .resource_table = ipq806x_rpm_resource_table,
> + .n_resources = ARRAY_SIZE(ipq806x_rpm_resource_table),
> +};
> +
> static const struct of_device_id qcom_rpm_of_match[] = {
> { .compatible = "qcom,rpm-apq8064", .data = &apq8064_template },
> { .compatible = "qcom,rpm-msm8660", .data = &msm8660_template },
> { .compatible = "qcom,rpm-msm8960", .data = &msm8960_template },
> + { .compatible = "qcom,rpm-ipq8064", .data = &ipq806x_template },
> { }
> };
> MODULE_DEVICE_TABLE(of, qcom_rpm_of_match);
--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2015-03-26 20:09 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-26 18:29 [PATCHv2 0/2] qcom_rpm: add support for IPQ8064 resources Stephen Boyd
2015-03-26 18:29 ` [PATCHv2 1/2] mfd: devicetree: qcom_rpm: document " Stephen Boyd
2015-03-26 20:08 ` Lee Jones
2015-03-26 18:29 ` [PATCHv2 2/2] mfd: qcom_rpm: add support for IPQ8064 Stephen Boyd
2015-03-26 20:09 ` Lee Jones
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).