Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 16188882 authored by Tirupathi Reddy's avatar Tirupathi Reddy
Browse files

clk: qcom: add rpmh managed clocks for sdxpoorwills



Add clock instances for rpmh managed clocks for sdxpoorwills.

CRs-Fixed: 2136750
Change-Id: I401db1147f38b3b29e9e6caaecbbb531520d9800
Signed-off-by: default avatarTirupathi Reddy <tirupath@codeaurora.org>
parent 76913944
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -3,6 +3,7 @@ Qualcomm Technologies, Inc. RPMh Clocks


Required properties :
Required properties :
- compatible : shall contain "qcom,rpmh-clk-sdm845" or "qcom,rpmh-clk-sdm670"
- compatible : shall contain "qcom,rpmh-clk-sdm845" or "qcom,rpmh-clk-sdm670"
	       or "qcom,rpmh-clk-sdxpoorwills"


- #clock-cells : must contain 1
- #clock-cells : must contain 1
- mboxes : list of RPMh mailbox phandle and channel identifier tuples.
- mboxes : list of RPMh mailbox phandle and channel identifier tuples.
+19 −4
Original line number Original line Diff line number Diff line
@@ -318,17 +318,30 @@ static const struct clk_rpmh_desc clk_rpmh_sdm845 = {
static const struct of_device_id clk_rpmh_match_table[] = {
static const struct of_device_id clk_rpmh_match_table[] = {
	{ .compatible = "qcom,rpmh-clk-sdm845", .data = &clk_rpmh_sdm845},
	{ .compatible = "qcom,rpmh-clk-sdm845", .data = &clk_rpmh_sdm845},
	{ .compatible = "qcom,rpmh-clk-sdm670", .data = &clk_rpmh_sdm845},
	{ .compatible = "qcom,rpmh-clk-sdm670", .data = &clk_rpmh_sdm845},
	{ .compatible = "qcom,rpmh-clk-sdxpoorwills", .data = &clk_rpmh_sdm845},
	{ }
	{ }
};
};
MODULE_DEVICE_TABLE(of, clk_rpmh_match_table);
MODULE_DEVICE_TABLE(of, clk_rpmh_match_table);


static void clk_rpmh_sdm670_fixup_sdm670(void)
static void clk_rpmh_sdm670_fixup(void)
{
{
	sdm845_rpmh_clocks[RPMH_RF_CLK3] = NULL;
	sdm845_rpmh_clocks[RPMH_RF_CLK3] = NULL;
	sdm845_rpmh_clocks[RPMH_RF_CLK3_A] = NULL;
	sdm845_rpmh_clocks[RPMH_RF_CLK3_A] = NULL;
}
}


static int clk_rpmh_sdm670_fixup(struct platform_device *pdev)
static void clk_rpmh_sdxpoorwills_fixup(void)
{
	sdm845_rpmh_clocks[RPMH_LN_BB_CLK2] = NULL;
	sdm845_rpmh_clocks[RPMH_LN_BB_CLK2_A] = NULL;
	sdm845_rpmh_clocks[RPMH_LN_BB_CLK3] = NULL;
	sdm845_rpmh_clocks[RPMH_LN_BB_CLK3_A] = NULL;
	sdm845_rpmh_clocks[RPMH_RF_CLK2] = NULL;
	sdm845_rpmh_clocks[RPMH_RF_CLK2_A] = NULL;
	sdm845_rpmh_clocks[RPMH_RF_CLK3] = NULL;
	sdm845_rpmh_clocks[RPMH_RF_CLK3_A] = NULL;
}

static int clk_rpmh_fixup(struct platform_device *pdev)
{
{
	const char *compat = NULL;
	const char *compat = NULL;
	int compatlen = 0;
	int compatlen = 0;
@@ -338,7 +351,9 @@ static int clk_rpmh_sdm670_fixup(struct platform_device *pdev)
		return -EINVAL;
		return -EINVAL;


	if (!strcmp(compat, "qcom,rpmh-clk-sdm670"))
	if (!strcmp(compat, "qcom,rpmh-clk-sdm670"))
		clk_rpmh_sdm670_fixup_sdm670();
		clk_rpmh_sdm670_fixup();
	else if (!strcmp(compat, "qcom,rpmh-clk-sdxpoorwills"))
		clk_rpmh_sdxpoorwills_fixup();


	return 0;
	return 0;
}
}
@@ -410,7 +425,7 @@ static int clk_rpmh_probe(struct platform_device *pdev)
		goto err2;
		goto err2;
	}
	}


	ret = clk_rpmh_sdm670_fixup(pdev);
	ret = clk_rpmh_fixup(pdev);
	if (ret)
	if (ret)
		return ret;
		return ret;