[PATCH] video: meson: dw-hdmi: do not fail probe if HDMI regulator is already enabled

Neil Armstrong neil.armstrong at linaro.org
Tue Oct 8 17:15:26 CEST 2024


On 08/10/2024 16:36, Jonas Karlman wrote:
> Hi Neil,
> 
> On 2024-10-08 14:58, Neil Armstrong wrote:
>> If the regulator is already enabled, this happens if the regulator
>> is set in regulator-always-on, regulator_set_enable() return -EALREADY.
>>
>> Ignore the -EALREADY return since it's not an error.
>>
>> Signed-off-by: Neil Armstrong <neil.armstrong at linaro.org>
>> ---
>>   drivers/video/meson/meson_dw_hdmi.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/video/meson/meson_dw_hdmi.c b/drivers/video/meson/meson_dw_hdmi.c
>> index 587df7beb9b..ee219ce6ec4 100644
>> --- a/drivers/video/meson/meson_dw_hdmi.c
>> +++ b/drivers/video/meson/meson_dw_hdmi.c
>> @@ -419,7 +419,7 @@ static int meson_dw_hdmi_probe(struct udevice *dev)
>>   
>>   	if (!ret) {
>>   		ret = regulator_set_enable(supply, true);
>> -		if (ret)
>> +		if (ret && ret != -EALREADY)
> 
> You could possible relax this further using something like:
> 
>    ret = regulator_set_enable_if_allowed(supply, true);
>    if (ret && ret != -ENOSYS)
> 
> That way you only reach the error state when there is an error with
> supply, for other states e.g. when supply is not found, DM_REGULATOR=n
> or the regulator is already enabled will be treated as success (ret=0).

Nice, thanks for the suggestion :-)

Neil

> 
> Regards,
> Jonas
> 
>>   			return ret;
>>   	}
>>   #endif
>>
>> ---
>> base-commit: 28dc47038edc4e93f32d75a357131bcf01a18d85
>> change-id: 20241008-u-boot-video-fix-hdmi-supply-already-on-e6a9af27b1eb
>>
>> Best regards,
> 



More information about the U-Boot mailing list