summaryrefslogtreecommitdiff
path: root/drivers/media/i2c/smiapp/smiapp-regs.c
diff options
context:
space:
mode:
authorSakari Ailus <sakari.ailus@linux.intel.com>2014-04-12 23:41:12 +0400
committerMauro Carvalho Chehab <m.chehab@samsung.com>2014-04-23 18:10:27 +0400
commitb05cd219ec200c1c91d59011f8692d9b1c166fbc (patch)
treeb6ee7fecaf6c723ba4fa7c2e0983234d9c299470 /drivers/media/i2c/smiapp/smiapp-regs.c
parent6fcc7a528d5e23940af5acdfb1bae09088d7b662 (diff)
downloadlinux-b05cd219ec200c1c91d59011f8692d9b1c166fbc.tar.xz
[media] smiapp: Fix determining the need for 8-bit read access
8-bit reads are needed in some cases; however the condition used was wrong. Regular access (register width) was used if: len == SMIAPP_REG_8BIT && !only8 This causes 8-bit read access to be used always. The operator should be || instead: regular access can be used for 8-bit reads OR if allowed otherwise. Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Diffstat (limited to 'drivers/media/i2c/smiapp/smiapp-regs.c')
-rw-r--r--drivers/media/i2c/smiapp/smiapp-regs.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/media/i2c/smiapp/smiapp-regs.c b/drivers/media/i2c/smiapp/smiapp-regs.c
index 5d0151a0bf18..c2db20538ebb 100644
--- a/drivers/media/i2c/smiapp/smiapp-regs.c
+++ b/drivers/media/i2c/smiapp/smiapp-regs.c
@@ -172,7 +172,7 @@ static int __smiapp_read(struct smiapp_sensor *sensor, u32 reg, u32 *val,
&& len != SMIAPP_REG_32BIT)
return -EINVAL;
- if (len == SMIAPP_REG_8BIT && !only8)
+ if (len == SMIAPP_REG_8BIT || !only8)
rval = ____smiapp_read(sensor, (u16)reg, len, val);
else
rval = ____smiapp_read_8only(sensor, (u16)reg, len, val);