diff options
author | AKASHI Takahiro <takahiro.akashi@linaro.org> | 2023-10-16 14:39:44 +0900 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2023-10-24 17:05:24 -0400 |
commit | c1d2ed0c63a2650aa62b38f648962baf81b0d0fb (patch) | |
tree | ba224d4775ae9e30f35d4a2fbad0d4796e19750d /drivers/firmware | |
parent | fc358b1a760228a61388ac3c17b3850ac8f914dd (diff) | |
download | u-boot-c1d2ed0c63a2650aa62b38f648962baf81b0d0fb.zip u-boot-c1d2ed0c63a2650aa62b38f648962baf81b0d0fb.tar.gz u-boot-c1d2ed0c63a2650aa62b38f648962baf81b0d0fb.tar.bz2 |
power: domain: add SCMI driver
Add power domain driver based on SCMI power domain management protocol.
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Diffstat (limited to 'drivers/firmware')
-rw-r--r-- | drivers/firmware/scmi/scmi_agent-uclass.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/firmware/scmi/scmi_agent-uclass.c b/drivers/firmware/scmi/scmi_agent-uclass.c index 6f585b9..0f1003e 100644 --- a/drivers/firmware/scmi/scmi_agent-uclass.c +++ b/drivers/firmware/scmi/scmi_agent-uclass.c @@ -86,6 +86,9 @@ struct udevice *scmi_get_protocol(struct udevice *dev, case SCMI_PROTOCOL_ID_BASE: proto = priv->base_dev; break; + case SCMI_PROTOCOL_ID_POWER_DOMAIN: + proto = priv->pwdom_dev; + break; case SCMI_PROTOCOL_ID_CLOCK: proto = priv->clock_dev; break; @@ -133,6 +136,9 @@ static int scmi_add_protocol(struct udevice *dev, case SCMI_PROTOCOL_ID_BASE: priv->base_dev = proto; break; + case SCMI_PROTOCOL_ID_POWER_DOMAIN: + priv->pwdom_dev = proto; + break; case SCMI_PROTOCOL_ID_CLOCK: priv->clock_dev = proto; break; @@ -405,6 +411,11 @@ static int scmi_bind_protocols(struct udevice *dev) drv = NULL; name = ofnode_get_name(node); switch (protocol_id) { + case SCMI_PROTOCOL_ID_POWER_DOMAIN: + if (CONFIG_IS_ENABLED(SCMI_POWER_DOMAIN) && + scmi_protocol_is_supported(dev, protocol_id)) + drv = DM_DRIVER_GET(scmi_power_domain); + break; case SCMI_PROTOCOL_ID_CLOCK: if (CONFIG_IS_ENABLED(CLK_SCMI) && scmi_protocol_is_supported(dev, protocol_id)) |