Re: [PATCH] OMAP: I2C: Fix omap_register_i2c_bus() return value on success

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> [111102 04:19]:
> --- a/arch/arm/plat-omap/i2c.c
> +++ b/arch/arm/plat-omap/i2c.c
> @@ -165,7 +165,7 @@ static inline int omap2_i2c_add_bus(int bus_id)
>  			omap_i2c_latency, ARRAY_SIZE(omap_i2c_latency), 0);
>  	WARN(IS_ERR(od), "Could not build omap_device for %s\n", name);
>  
> -	return PTR_ERR(od);
> +	return PTR_RET(od);
>  }
>  #else
>  static inline int omap2_i2c_add_bus(int bus_id)

Thanks applying into fixes after updating it to return pdev instead
of od as below.

Tony


From: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
Date: Wed, 2 Nov 2011 12:54:03 +0100
Subject: [PATCH] ARM: OMAP: I2C: Fix omap_register_i2c_bus() return value on success

Commit 4d17aeb1c5b2375769446d13012a98e6d265ec13 ("OMAP: I2C: split
device registration and convert OMAP2+ to omap_device") makes
omap2_i2c_add_bus() return a pointer to an omap_device instead on
success instead of 0.

This breaks the omap_register_i2c_bus() ABI and results in the igep0020
board code detecting an I2C bus registration error when there is none.

Fix the problem by using PTR_RET() instead of PTR_ERR() in
omap2_i2c_add_bus().

Reported-by: Alexander Kinzer <a.kinzer@xxxxxxxxxxxx>
Signed-off-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
[tony@xxxxxxxxxxx: updated to return pdev instead of od]
Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

--- a/arch/arm/plat-omap/i2c.c
+++ b/arch/arm/plat-omap/i2c.c
@@ -184,7 +184,7 @@ static inline int omap2_i2c_add_bus(int bus_id)
 			NULL, 0, 0);
 	WARN(IS_ERR(pdev), "Could not build omap_device for %s\n", name);
 
-	return PTR_ERR(pdev);
+	return PTR_RET(pdev);
 }
 #else
 static inline int omap2_i2c_add_bus(int bus_id)
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux