summaryrefslogtreecommitdiffstats
path: root/drivers/media/i2c
diff options
context:
space:
mode:
authorSakari Ailus <sakari.ailus@iki.fi>2014-11-30 12:33:55 -0300
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>2015-04-02 17:26:30 -0300
commit3f39fb0f1e52617fc502d989cac72dd3779fccd4 (patch)
treee548a7bca9953e7865851d3cd6b5b24192025cec /drivers/media/i2c
parent152635c6eadf41931892cccaac5fe8b627d9951b (diff)
downloadlinux-stable-3f39fb0f1e52617fc502d989cac72dd3779fccd4.tar.gz
linux-stable-3f39fb0f1e52617fc502d989cac72dd3779fccd4.tar.bz2
linux-stable-3f39fb0f1e52617fc502d989cac72dd3779fccd4.zip
[media] smiapp: Use of_property_read_u64_array() to read a 64-bit number array
of_property_read_u64_array() wasn't yet part of the kernel tree when the functionality was needed. Do use it now. Signed-off-by: Sakari Ailus <sakari.ailus@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Diffstat (limited to 'drivers/media/i2c')
-rw-r--r--drivers/media/i2c/smiapp/smiapp-core.c24
1 files changed, 5 insertions, 19 deletions
diff --git a/drivers/media/i2c/smiapp/smiapp-core.c b/drivers/media/i2c/smiapp/smiapp-core.c
index f1eb259ce618..6de10f94cff7 100644
--- a/drivers/media/i2c/smiapp/smiapp-core.c
+++ b/drivers/media/i2c/smiapp/smiapp-core.c
@@ -2977,10 +2977,7 @@ static struct smiapp_platform_data *smiapp_get_pdata(struct device *dev)
struct smiapp_platform_data *pdata;
struct v4l2_of_endpoint bus_cfg;
struct device_node *ep;
- struct property *prop;
- __be32 *val;
uint32_t asize;
- unsigned int i;
int rval;
if (!dev->of_node)
@@ -3042,23 +3039,12 @@ static struct smiapp_platform_data *smiapp_get_pdata(struct device *dev)
}
asize /= sizeof(*pdata->op_sys_clock);
- /*
- * Read a 64-bit array --- this will be replaced with a
- * of_property_read_u64_array() once it's merged.
- */
- prop = of_find_property(dev->of_node, "link-frequencies", NULL);
- if (!prop)
- goto out_err;
- if (!prop->value)
- goto out_err;
- if (asize * sizeof(*pdata->op_sys_clock) > prop->length)
- goto out_err;
- val = prop->value;
- if (IS_ERR(val))
+ rval = of_property_read_u64_array(
+ dev->of_node, "link-frequencies", pdata->op_sys_clock, asize);
+ if (rval) {
+ dev_warn(dev, "can't get link-frequencies\n");
goto out_err;
-
- for (i = 0; i < asize; i++)
- pdata->op_sys_clock[i] = of_read_number(val + i * 2, 2);
+ }
for (; asize > 0; asize--)
dev_dbg(dev, "freq %d: %lld\n", asize - 1,