diff mbox series

phy: phy-rockchip-inno-usb2: Handle failed extcon allocation better

Message ID 5fa7796d71e2f46344e972bc98a54539f55b6109.1723551599.git.dsimic@manjaro.org
State New
Headers show
Series phy: phy-rockchip-inno-usb2: Handle failed extcon allocation better | expand

Commit Message

Dragan Simic Aug. 13, 2024, 6:38 p.m. UTC
Return the actual error code upon failure to allocate extcon device, instead
of hardcoding -ENOMEM.  While there, produce an appropriate error message.

Signed-off-by: Dragan Simic <dsimic@manjaro.org>
---
 drivers/phy/rockchip/phy-rockchip-inno-usb2.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Comments

Heiko Stübner Aug. 15, 2024, 4:12 p.m. UTC | #1
Am Dienstag, 13. August 2024, 20:38:17 CEST schrieb Dragan Simic:
> Return the actual error code upon failure to allocate extcon device, instead
> of hardcoding -ENOMEM.  While there, produce an appropriate error message.
> 
> Signed-off-by: Dragan Simic <dsimic@manjaro.org>
> ---
>  drivers/phy/rockchip/phy-rockchip-inno-usb2.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
> index 4f71373ae6e1..d33418a1e7a8 100644
> --- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
> +++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
> @@ -434,8 +434,10 @@ static int rockchip_usb2phy_extcon_register(struct rockchip_usb2phy *rphy)
>  		edev = devm_extcon_dev_allocate(rphy->dev,
>  						rockchip_usb2phy_extcon_cable);
>  
> -		if (IS_ERR(edev))
> -			return -ENOMEM;
> +		if (IS_ERR(edev)) {
> +			dev_err(rphy->dev, "failed to allocate extcon device\n");
> +			return PTR_ERR(edev);
> +		}

maybe even use dev_err_probe?

rockchip_usb2phy_extcon_register() gets called from the probe function,
so even using it is also sematically correct ;-) .


Heiko

>  
>  		ret = devm_extcon_dev_register(rphy->dev, edev);
>  		if (ret) {
>
Dragan Simic Aug. 17, 2024, 6:52 a.m. UTC | #2
Hello Heiko,

On 2024-08-15 18:12, Heiko Stübner wrote:
> Am Dienstag, 13. August 2024, 20:38:17 CEST schrieb Dragan Simic:
>> Return the actual error code upon failure to allocate extcon device, 
>> instead
>> of hardcoding -ENOMEM.  While there, produce an appropriate error 
>> message.
>> 
>> Signed-off-by: Dragan Simic <dsimic@manjaro.org>
>> ---
>>  drivers/phy/rockchip/phy-rockchip-inno-usb2.c | 6 ++++--
>>  1 file changed, 4 insertions(+), 2 deletions(-)
>> 
>> diff --git a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c 
>> b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
>> index 4f71373ae6e1..d33418a1e7a8 100644
>> --- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
>> +++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
>> @@ -434,8 +434,10 @@ static int 
>> rockchip_usb2phy_extcon_register(struct rockchip_usb2phy *rphy)
>>  		edev = devm_extcon_dev_allocate(rphy->dev,
>>  						rockchip_usb2phy_extcon_cable);
>> 
>> -		if (IS_ERR(edev))
>> -			return -ENOMEM;
>> +		if (IS_ERR(edev)) {
>> +			dev_err(rphy->dev, "failed to allocate extcon device\n");
>> +			return PTR_ERR(edev);
>> +		}
> 
> maybe even use dev_err_probe?
> 
> rockchip_usb2phy_extcon_register() gets called from the probe function,
> so even using it is also sematically correct ;-) .

Good suggestion, thanks!  I'll use dev_err_probe() in the v2, albeit it
also calls for turning this into a small patch series that additionally
replaces dev_err() with dev_err_probe() in the rockchip_usb2phy_probe()
function, for consistency. :)

>>  		ret = devm_extcon_dev_register(rphy->dev, edev);
>>  		if (ret) {
>>
diff mbox series

Patch

diff --git a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
index 4f71373ae6e1..d33418a1e7a8 100644
--- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
+++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
@@ -434,8 +434,10 @@  static int rockchip_usb2phy_extcon_register(struct rockchip_usb2phy *rphy)
 		edev = devm_extcon_dev_allocate(rphy->dev,
 						rockchip_usb2phy_extcon_cable);
 
-		if (IS_ERR(edev))
-			return -ENOMEM;
+		if (IS_ERR(edev)) {
+			dev_err(rphy->dev, "failed to allocate extcon device\n");
+			return PTR_ERR(edev);
+		}
 
 		ret = devm_extcon_dev_register(rphy->dev, edev);
 		if (ret) {