regulator: rk8xx: Return correct voltage for switchout converters

The voltage value for switchout converters is always reported as 0 uV.
When the switch is enabled, it's voltage is same as input supply.

Fix this by implementing get_value for switchout converters.

Fixes: ee30068fa5 ("power: pmic: rk809: support rk809 pmic")
Signed-off-by: shengfei Xu <xsf@rock-chips.com>
[jonas@kwiboo.se: fix checkpatch error, update commit message]
Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
This commit is contained in:
shengfei Xu 2023-08-21 22:30:26 +00:00 committed by Kever Yang
parent 04c38c6c49
commit bb657ffdd6

View file

@ -1032,6 +1032,25 @@ static int switch_get_suspend_enable(struct udevice *dev)
*/
static int switch_get_value(struct udevice *dev)
{
static const char * const supply_name_rk809[] = {
"vcc9-supply",
"vcc8-supply",
};
struct rk8xx_priv *priv = dev_get_priv(dev->parent);
struct udevice *supply;
int id = dev->driver_data - 1;
if (!switch_get_enable(dev))
return 0;
if (priv->variant == RK809_ID) {
if (!uclass_get_device_by_phandle(UCLASS_REGULATOR,
dev->parent,
supply_name_rk809[id],
&supply))
return regulator_get_value(supply);
}
return 0;
}