From: Stephan Gerhold <stephan.gerhold@linaro.org>
To: Jassi Brar <jassisinghbrar@gmail.com>,
Bjorn Andersson <andersson@kernel.org>
Cc: Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Michael Turquette <mturquette@baylibre.com>,
Stephen Boyd <sboyd@kernel.org>,
linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org,
devicetree@vger.kernel.org, linux-clk@vger.kernel.org,
Georgi Djakov <djakov@kernel.org>,
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Subject: [PATCH 2/4] mailbox: qcom-apcs-ipc: Assign OF node to clock controller child device
Date: Tue, 06 May 2025 15:10:09 +0200 [thread overview]
Message-ID: <20250506-qcom-apcs-mailbox-cc-v1-2-b54dddb150a5@linaro.org> (raw)
In-Reply-To: <20250506-qcom-apcs-mailbox-cc-v1-0-b54dddb150a5@linaro.org>
Currently, the child device for the clock controller inside the APCS block
is created without any OF node assigned, so the drivers need to rely on the
parent device for obtaining any resources.
Add support for defining the clock controller inside a "clock-controller"
subnode to break up circular dependencies between the mailbox and required
parent clocks of the clock controller. For backwards compatibility, if the
subnode is not defined, reuse the OF node from the parent device.
Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
---
drivers/mailbox/qcom-apcs-ipc-mailbox.c | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/drivers/mailbox/qcom-apcs-ipc-mailbox.c b/drivers/mailbox/qcom-apcs-ipc-mailbox.c
index 11c41e935a3619b74ad0f5e2d82699ca8aa05722..8b24ec0fa191efc975625d9b9270140ad1fe7b9b 100644
--- a/drivers/mailbox/qcom-apcs-ipc-mailbox.c
+++ b/drivers/mailbox/qcom-apcs-ipc-mailbox.c
@@ -116,10 +116,18 @@ 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_AUTO,
- NULL, 0);
+ struct device_node *np = of_get_child_by_name(pdev->dev.of_node,
+ "clock-controller");
+ struct platform_device_info pdevinfo = {
+ .parent = &pdev->dev,
+ .name = apcs_data->clk_name,
+ .id = PLATFORM_DEVID_AUTO,
+ .fwnode = of_fwnode_handle(np) ?: pdev->dev.fwnode,
+ .of_node_reused = !np,
+ };
+
+ apcs->clk = platform_device_register_full(&pdevinfo);
+ of_node_put(np);
if (IS_ERR(apcs->clk))
dev_err(&pdev->dev, "failed to register APCS clk\n");
}
--
2.47.2
next prev parent reply other threads:[~2025-05-06 13:10 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-06 13:10 [PATCH 0/4] mailbox: qcom-apcs-ipc: Avoid circular dependency with clock controller Stephan Gerhold
2025-05-06 13:10 ` [PATCH 1/4] dt-bindings: mailbox: qcom,apcs: Add separate node for clock-controller Stephan Gerhold
2025-05-11 22:48 ` Bjorn Andersson
2025-05-13 13:16 ` Stephan Gerhold
2025-05-14 16:08 ` Rob Herring
2025-05-14 21:12 ` Stephan Gerhold
2025-05-21 9:20 ` Krzysztof Kozlowski
2025-05-22 19:53 ` Stephan Gerhold
2025-05-23 9:06 ` Krzysztof Kozlowski
2025-05-23 9:29 ` Stephan Gerhold
2025-06-11 3:31 ` Bjorn Andersson
2025-06-11 6:30 ` Krzysztof Kozlowski
2025-06-21 20:51 ` Stephen Boyd
2025-06-23 13:17 ` Stephan Gerhold
2025-07-17 17:30 ` Bjorn Andersson
2025-05-23 8:42 ` Krzysztof Kozlowski
2025-05-23 8:59 ` Stephan Gerhold
2025-05-23 9:07 ` Krzysztof Kozlowski
2025-05-06 13:10 ` Stephan Gerhold [this message]
2025-05-26 19:47 ` [PATCH 2/4] mailbox: qcom-apcs-ipc: Assign OF node to clock controller child device Jassi Brar
2025-05-28 19:21 ` Dmitry Baryshkov
2025-05-06 13:10 ` [PATCH 3/4] clk: qcom: apcs-msm8916: Obtain clock from own OF node Stephan Gerhold
2025-05-06 13:10 ` [PATCH 4/4] clk: qcom: apcs-sdx55: " Stephan Gerhold
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250506-qcom-apcs-mailbox-cc-v1-2-b54dddb150a5@linaro.org \
--to=stephan.gerhold@linaro.org \
--cc=andersson@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=djakov@kernel.org \
--cc=jassisinghbrar@gmail.com \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-clk@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=manivannan.sadhasivam@linaro.org \
--cc=mturquette@baylibre.com \
--cc=robh@kernel.org \
--cc=sboyd@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).