| From e2144d91266b3e2b111fa3ca6b298fac71e2308b Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Thu, 29 Aug 2019 10:27:58 +0200 |
| Subject: mbox: qcom: add APCS child device for QCS404 |
| |
| From: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org> |
| |
| [ Upstream commit 78c86458a440ff356073c21b568cb58ddb67b82b ] |
| |
| There is clock controller functionality in the APCS hardware block of |
| qcs404 devices similar to msm8916. |
| |
| Co-developed-by: Niklas Cassel <niklas.cassel@linaro.org> |
| Signed-off-by: Niklas Cassel <niklas.cassel@linaro.org> |
| Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org> |
| Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org> |
| Reviewed-by: Stephen Boyd <sboyd@kernel.org> |
| Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/mailbox/qcom-apcs-ipc-mailbox.c | 8 ++++++-- |
| 1 file changed, 6 insertions(+), 2 deletions(-) |
| |
| diff --git a/drivers/mailbox/qcom-apcs-ipc-mailbox.c b/drivers/mailbox/qcom-apcs-ipc-mailbox.c |
| index 333ed4a9d4b8f..5255dcb551a78 100644 |
| --- a/drivers/mailbox/qcom-apcs-ipc-mailbox.c |
| +++ b/drivers/mailbox/qcom-apcs-ipc-mailbox.c |
| @@ -55,7 +55,6 @@ static const struct mbox_chan_ops qcom_apcs_ipc_ops = { |
| |
| static int qcom_apcs_ipc_probe(struct platform_device *pdev) |
| { |
| - struct device_node *np = pdev->dev.of_node; |
| struct qcom_apcs_ipc *apcs; |
| struct regmap *regmap; |
| struct resource *res; |
| @@ -63,6 +62,11 @@ static int qcom_apcs_ipc_probe(struct platform_device *pdev) |
| void __iomem *base; |
| unsigned long i; |
| int ret; |
| + const struct of_device_id apcs_clk_match_table[] = { |
| + { .compatible = "qcom,msm8916-apcs-kpss-global", }, |
| + { .compatible = "qcom,qcs404-apcs-apps-global", }, |
| + {} |
| + }; |
| |
| apcs = devm_kzalloc(&pdev->dev, sizeof(*apcs), GFP_KERNEL); |
| if (!apcs) |
| @@ -97,7 +101,7 @@ static int qcom_apcs_ipc_probe(struct platform_device *pdev) |
| return ret; |
| } |
| |
| - if (of_device_is_compatible(np, "qcom,msm8916-apcs-kpss-global")) { |
| + if (of_match_device(apcs_clk_match_table, &pdev->dev)) { |
| apcs->clk = platform_device_register_data(&pdev->dev, |
| "qcom-apcs-msm8916-clk", |
| -1, NULL, 0); |
| -- |
| 2.20.1 |
| |