[PATCH next] drm/xe: Fix a NULL vs IS_ERR() bug in xe_i2c_register_adapter()

Dan Carpenter posted 1 patch 6 months, 3 weeks ago
drivers/gpu/drm/xe/xe_i2c.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[PATCH next] drm/xe: Fix a NULL vs IS_ERR() bug in xe_i2c_register_adapter()
Posted by Dan Carpenter 6 months, 3 weeks ago
The fwnode_create_software_node() function returns error pointers.  It
never returns NULL.  Update the checks to match.

Fixes: f0e53aadd702 ("drm/xe: Support for I2C attached MCUs")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
---
 drivers/gpu/drm/xe/xe_i2c.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_i2c.c b/drivers/gpu/drm/xe/xe_i2c.c
index db9c0340be5c..1f19718db559 100644
--- a/drivers/gpu/drm/xe/xe_i2c.c
+++ b/drivers/gpu/drm/xe/xe_i2c.c
@@ -96,8 +96,8 @@ static int xe_i2c_register_adapter(struct xe_i2c *i2c)
 	int ret;
 
 	fwnode = fwnode_create_software_node(xe_i2c_adapter_properties, NULL);
-	if (!fwnode)
-		return -ENOMEM;
+	if (IS_ERR(fwnode))
+		return PTR_ERR(fwnode);
 
 	/*
 	 * Not using platform_device_register_full() here because we don't have
-- 
2.47.2
Re: [PATCH next] drm/xe: Fix a NULL vs IS_ERR() bug in xe_i2c_register_adapter()
Posted by Rodrigo Vivi 6 months, 3 weeks ago
On Tue, Jul 15, 2025 at 05:59:44PM -0500, Dan Carpenter wrote:
> The fwnode_create_software_node() function returns error pointers.  It
> never returns NULL.  Update the checks to match.
> 
> Fixes: f0e53aadd702 ("drm/xe: Support for I2C attached MCUs")

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>

and pushing soon

> Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
> ---
>  drivers/gpu/drm/xe/xe_i2c.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/xe/xe_i2c.c b/drivers/gpu/drm/xe/xe_i2c.c
> index db9c0340be5c..1f19718db559 100644
> --- a/drivers/gpu/drm/xe/xe_i2c.c
> +++ b/drivers/gpu/drm/xe/xe_i2c.c
> @@ -96,8 +96,8 @@ static int xe_i2c_register_adapter(struct xe_i2c *i2c)
>  	int ret;
>  
>  	fwnode = fwnode_create_software_node(xe_i2c_adapter_properties, NULL);
> -	if (!fwnode)
> -		return -ENOMEM;
> +	if (IS_ERR(fwnode))
> +		return PTR_ERR(fwnode);
>  
>  	/*
>  	 * Not using platform_device_register_full() here because we don't have
> -- 
> 2.47.2
>