[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210503081334.17143-3-shawn.guo@linaro.org>
Date: Mon, 3 May 2021 16:13:34 +0800
From: Shawn Guo <shawn.guo@...aro.org>
To: Jassi Brar <jassisinghbrar@...il.com>
Cc: Rob Herring <robh+dt@...nel.org>,
Sivaprakash Murugesan <sivaprak@...eaurora.org>,
Bjorn Andersson <bjorn.andersson@...aro.org>,
Benjamin Li <benl@...areup.com>, devicetree@...r.kernel.org,
linux-arm-msm@...r.kernel.org, linux-kernel@...r.kernel.org,
Shawn Guo <shawn.guo@...aro.org>
Subject: [PATCH v2 2/2] mailbox: qcom: Add MSM8939 APCS support
MSM8939 has 3 APCS instances for Cluster0 (little cores), Cluster1 (big
cores) and CCI (Cache Coherent Interconnect). Although only APCS of
Cluster0 and Cluster1 have IPC bits, each of 3 APCS has A53PLL clock
control bits. That said, we need to register 3 'qcom-apcs-msm8916-clk'
devices to instantiate all 3 clocks. Let's use PLATFORM_DEVID_AUTO
rather than PLATFORM_DEVID_NONE for platform_device_register_data()
call. Otherwise, the second A53PLL clock registration will fail due
to duplicate device name.
[ 0.519657] sysfs: cannot create duplicate filename '/bus/platform/devices/qcom-apcs-msm8916-clk'
...
[ 0.661158] qcom_apcs_ipc b111000.mailbox: failed to register APCS clk
Signed-off-by: Shawn Guo <shawn.guo@...aro.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@...aro.org>
---
drivers/mailbox/qcom-apcs-ipc-mailbox.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/mailbox/qcom-apcs-ipc-mailbox.c b/drivers/mailbox/qcom-apcs-ipc-mailbox.c
index f25324d03842..1699ec38bc3b 100644
--- a/drivers/mailbox/qcom-apcs-ipc-mailbox.c
+++ b/drivers/mailbox/qcom-apcs-ipc-mailbox.c
@@ -132,7 +132,7 @@ static int qcom_apcs_ipc_probe(struct platform_device *pdev)
if (apcs_data->clk_name) {
apcs->clk = platform_device_register_data(&pdev->dev,
apcs_data->clk_name,
- PLATFORM_DEVID_NONE,
+ PLATFORM_DEVID_AUTO,
NULL, 0);
if (IS_ERR(apcs->clk))
dev_err(&pdev->dev, "failed to register APCS clk\n");
@@ -158,6 +158,7 @@ static const struct of_device_id qcom_apcs_ipc_of_match[] = {
{ .compatible = "qcom,ipq6018-apcs-apps-global", .data = &ipq6018_apcs_data },
{ .compatible = "qcom,ipq8074-apcs-apps-global", .data = &ipq8074_apcs_data },
{ .compatible = "qcom,msm8916-apcs-kpss-global", .data = &msm8916_apcs_data },
+ { .compatible = "qcom,msm8939-apcs-kpss-global", .data = &msm8916_apcs_data },
{ .compatible = "qcom,msm8994-apcs-kpss-global", .data = &msm8994_apcs_data },
{ .compatible = "qcom,msm8996-apcs-hmss-global", .data = &msm8996_apcs_data },
{ .compatible = "qcom,msm8998-apcs-hmss-global", .data = &msm8998_apcs_data },
--
2.17.1
Powered by blists - more mailing lists