of: Remove duplicated code for validating property and value
authorTony Prisk <linux@prisktech.co.nz>
Wed, 3 Apr 2013 04:57:11 +0000 (17:57 +1300)
committerTony Prisk <linux@prisktech.co.nz>
Thu, 4 Apr 2013 04:59:18 +0000 (17:59 +1300)
commitdaeec1f083e02c9ee235e29d2cb28d7b9e81d899
tree1b0ad81b8cf846513ba03536d855e6d9183cac64
parent3daf37260e965aa4bb060db99c2ed10b28109e04
of: Remove duplicated code for validating property and value

Several functions in of/base.c have the same code duplicated for
finding and validating a property and value.

struct property *prop = of_find_property(np, propname, NULL);
if (!prop)
return -EINVAL;
if (!prop->value)
return -ENODATA;
if (<some length> > prop->length)
return -EOVERFLOW;

This patch adds of_find_property_value_of_size() which performs the
equivalent of the above code and removes the instances where it was
duplicated in several functions.

Reported-by: Rob Herring <robherring2@gmail.com>
Signed-off-by: Tony Prisk <linux@prisktech.co.nz>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Rob Herring <rob.herring@calxeda.com>
drivers/of/base.c