regmap: return ERR_PTR instead of NULL in regmap_init
authorLars-Peter Clausen <lars@metafoo.de>
Mon, 14 Nov 2011 09:40:15 +0000 (10:40 +0100)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Mon, 14 Nov 2011 21:44:45 +0000 (21:44 +0000)
The regmap_init documentation states that it will either return a pointer to a
valid regmap structure or a ERR_PTR in case of an error. Currently it returns a
NULL pointer in case no bus or no config was given. Since NULL is not a
ERR_PTR a caller might assume that it is a pointer to a valid regmap structure,
so return a ERR_PTR(-EINVAL) instead.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
drivers/base/regmap/regmap.c

index b08df85cedff25e1f2b1b3130da11053211d134c..b84ebf9eecf0d1f752388e533d9e516ab69117a3 100644 (file)
@@ -139,7 +139,7 @@ struct regmap *regmap_init(struct device *dev,
        int ret = -EINVAL;
 
        if (!bus || !config)
-               return NULL;
+               goto err;
 
        map = kzalloc(sizeof(*map), GFP_KERNEL);
        if (map == NULL) {