Re: [PATCH v3 04/12] soc: qcom: geni-se: Add resources activation/deactivation helpers

From: Praveen Talari

Date: Mon Feb 02 2026 - 11:30:08 EST


Hi

On 1/30/2026 5:41 PM, Konrad Dybcio wrote:
On 1/12/26 11:47 AM, Praveen Talari wrote:
The GENI SE protocol drivers (I2C, SPI, UART) implement similar resource
activation/deactivation sequences independently, leading to code
duplication.

Introduce geni_se_resources_activate()/geni_se_resources_deactivate() to
power on/off resources.The activate function enables ICC, clocks, and TLMM
whereas the deactivate function disables resources in reverse order
including OPP rate reset, clocks, ICC and TLMM.

Signed-off-by: Praveen Talari <praveen.talari@xxxxxxxxxxxxxxxx>
---

[...]

+int geni_se_resources_deactivate(struct geni_se *se)
+{
+ int ret;
+
+ if (has_acpi_companion(se->dev))
+ return 0;
+
+ if (se->has_opp)
+ dev_pm_opp_set_rate(se->dev, 0);
+
+ ret = pinctrl_pm_select_sleep_state(se->dev);
+ if (ret)
+ return ret;
+
+ geni_se_clks_off(se);
+
+ if (se->core_clk)
+ clk_disable_unprepare(se->core_clk);

All clk APIs already perform a null-check internally, perhaps this call
could be merged into geni_se_clks_off()?

Sure, will do in next patch.

Thanks,
Praveen


Konrad