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

Commit c349462a authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "clk: qcom: gdsc: Add support to configure clk_dis_wait value"

parents 2265760a d770d3e6
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -37,6 +37,8 @@ Optional properties:
			to be force-enabled prior to turning on the core. The
			clock-name which denotes the root clock should be
			"core_root_clk".
 - qcom,clk-dis-wait-val: Input value for CLK_DIS_WAIT controls state transition
			 delay after halting clock in the collapsible core.
 - reg-names:		Names of the bases for the above "reg" registers.
			Ex. "base", "domain_addr".
 - qcom,no-status-check-on-disable: Do not poll the status bit when GDSC
+6 −2
Original line number Diff line number Diff line
@@ -343,7 +343,7 @@ static int gdsc_probe(struct platform_device *pdev)
	struct regulator_init_data *init_data;
	struct resource *res;
	struct gdsc *sc;
	uint32_t regval;
	uint32_t regval, clk_dis_wait_val = CLK_DIS_WAIT_VAL;
	bool retain_mem, retain_periph, support_hw_trigger;
	int i, ret;

@@ -434,9 +434,13 @@ static int gdsc_probe(struct platform_device *pdev)
	regval = readl_relaxed(sc->gdscr);
	regval &= ~(HW_CONTROL_MASK | SW_OVERRIDE_MASK);

	if (!of_property_read_u32(pdev->dev.of_node, "qcom,clk-dis-wait-val",
				  &clk_dis_wait_val))
		clk_dis_wait_val = clk_dis_wait_val << 12;

	/* Configure wait time between states. */
	regval &= ~(EN_REST_WAIT_MASK | EN_FEW_WAIT_MASK | CLK_DIS_WAIT_MASK);
	regval |= EN_REST_WAIT_VAL | EN_FEW_WAIT_VAL | CLK_DIS_WAIT_VAL;
	regval |= EN_REST_WAIT_VAL | EN_FEW_WAIT_VAL | clk_dis_wait_val;
	writel_relaxed(regval, sc->gdscr);

	sc->no_status_check_on_disable =