[PATCH 0/3] Qualcomm: rpmh and regulator fixes
Sumit Garg
sumit.garg at kernel.org
Fri May 1 07:59:16 CEST 2026
Hi Casey,
On Mon, Apr 13, 2026 at 01:06:13PM +0200, Casey Connolly wrote:
> The RPMh API is frustratingly complicated and lacks public
> documentation. With the Linux drivers being the only available sources
> but are highly asynchronous and thus hard to translate to U-Boot.
There is new source of synchronous RPMh upstream driver which is being
pushed to upstream OP-TEE project here [1]. I agree U-Boot single
threaded execution model requires drivers to be simplified coming from
highly asynchronous Linux context.
[1] https://github.com/OP-TEE/optee_os/pull/7796
>
> The main issue seems to relate to sending multiple commands in a single
> TCS request, currently this is only done by the interconnect driver and
> while this may not be the underlying cause it seems to be safer to avoid
> this for now.
Can you share which particular peripheral is being tested here to
reproduce the issues you are facing?
>
> Adjust the bcm-voter driver to avoid sending multiple commands per
> write, and additionally adjust how we send RPMh requests as well as
> improve the cleanup we do prior to booting the OS.
>
Aswin,
Is there something you can help Casey with this multiple RPMh requests
issue?
> Lastly, add a missing piece to the rpmh regulator driver to ensure
> that when a supply gets enabled we also propagate a vote to its parent
> supply. This seems to have been missed from the original port (perhaps
> because the Linux regulator core handles this automatically?) but it is
> necessary for some peripherals on some boards to work (e.g. to ensure
> that the spms supplier for an LDO gets enabled).
>
Again it will be better if you list down the specific peripherals here.
-Sumit
> ---
> Casey Connolly (3):
> soc/qcom: rpmh: properly fix synchronous requests
> soc/qcom: rpmh: only allow rpmh writes of a single command
> power: regulator: qcom-rpmh: propagate votes to parent supplies
>
> drivers/interconnect/qcom/bcm-voter.c | 16 +++---
> drivers/power/regulator/qcom-rpmh-regulator.c | 35 +++++++++++++-
> drivers/soc/qcom/rpmh-rsc.c | 70 ++++++++++++++++++++-------
> drivers/soc/qcom/rpmh.c | 6 +++
> 4 files changed, 102 insertions(+), 25 deletions(-)
> ---
> base-commit: c704af3c8b0f37929bce8c2a4bba27d6e89919c7
>
> // Casey (she/they)
>
More information about the U-Boot
mailing list