diff options
author | Sakari Ailus <sakari.ailus@linux.intel.com> | 2020-02-06 19:11:46 -0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab+samsung@kernel.org> | 2020-02-27 17:48:34 -0300 |
commit | 354d5aba6683c41962b591c9b6832a49b160bb46 (patch) | |
tree | d8eeaf75f325a312bb72a1f73abc3d060ba6c43c /drivers/media/i2c/smiapp | |
parent | 1cbe6ddb9faa9f401ff9f986309a03ba4a4dd59f (diff) | |
download | linux-354d5aba6683c41962b591c9b6832a49b160bb46.tar.gz linux-354d5aba6683c41962b591c9b6832a49b160bb46.tar.bz2 linux-354d5aba6683c41962b591c9b6832a49b160bb46.zip |
media: smiapp: Refactor reading SMIA limits
Combine the two trivial functions reading limits into one. Also rename
smiapp_get_all_limits() as smiapp_read_all_smia_limits().
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Diffstat (limited to 'drivers/media/i2c/smiapp')
-rw-r--r-- | drivers/media/i2c/smiapp/smiapp-core.c | 32 |
1 files changed, 10 insertions, 22 deletions
diff --git a/drivers/media/i2c/smiapp/smiapp-core.c b/drivers/media/i2c/smiapp/smiapp-core.c index a6800e5c495d..5e4f6a2ef78e 100644 --- a/drivers/media/i2c/smiapp/smiapp-core.c +++ b/drivers/media/i2c/smiapp/smiapp-core.c @@ -69,37 +69,25 @@ static u32 smiapp_get_limit(struct smiapp_sensor *sensor, #define SMIA_LIM(sensor, limit) \ smiapp_get_limit(sensor, SMIAPP_LIMIT_##limit) -static int smiapp_get_limits(struct smiapp_sensor *sensor, int const *limit, - unsigned int n) +static int smiapp_read_all_smia_limits(struct smiapp_sensor *sensor) { struct i2c_client *client = v4l2_get_subdevdata(&sensor->src->sd); unsigned int i; - u32 val; int rval; - for (i = 0; i < n; i++) { + for (i = 0; i < SMIAPP_LIMIT_LAST; i++) { + u32 val; + rval = smiapp_read( - sensor, smiapp_reg_limits[limit[i]].addr, &val); + sensor, smiapp_reg_limits[i].addr, &val); if (rval) return rval; - sensor->limits[limit[i]] = val; - dev_dbg(&client->dev, "0x%8.8x \"%s\" = %u, 0x%x\n", - smiapp_reg_limits[limit[i]].addr, - smiapp_reg_limits[limit[i]].what, val, val); - } - return 0; -} + sensor->limits[i] = val; -static int smiapp_get_all_limits(struct smiapp_sensor *sensor) -{ - unsigned int i; - int rval; - - for (i = 0; i < SMIAPP_LIMIT_LAST; i++) { - rval = smiapp_get_limits(sensor, &i, 1); - if (rval < 0) - return rval; + dev_dbg(&client->dev, "0x%8.8x \"%s\" = %u, 0x%x\n", + smiapp_reg_limits[i].addr, + smiapp_reg_limits[i].what, val, val); } if (SMIA_LIM(sensor, SCALER_N_MIN) == 0) @@ -2938,7 +2926,7 @@ static int smiapp_probe(struct i2c_client *client) goto out_power_off; } - rval = smiapp_get_all_limits(sensor); + rval = smiapp_read_all_smia_limits(sensor); if (rval) { rval = -ENODEV; goto out_power_off; |