aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2013-08-23 04:41:47 -0400
committerMauro Carvalho Chehab <m.chehab@samsung.com>2013-08-24 03:53:58 -0400
commitd345a5e59b0af5919f4d7f2a0d4c8dcae657e9d1 (patch)
treefa6778c9ab6a73dddf5d8b614a7604455e905656 /drivers
parent5c47776a2d6e36f09c6162196155bd59e70edbfb (diff)
[media] s3c-camif: forever loop in camif_hw_set_source_format()
Because "i" is unsigned then "i-- >= 0" is always true. If we don't find what we are looking for then we loop forever. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/media/platform/s3c-camif/camif-regs.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/media/platform/s3c-camif/camif-regs.c b/drivers/media/platform/s3c-camif/camif-regs.c
index a9e3b16460b8..ebf5b184cce4 100644
--- a/drivers/media/platform/s3c-camif/camif-regs.c
+++ b/drivers/media/platform/s3c-camif/camif-regs.c
@@ -106,15 +106,15 @@ static const u32 src_pixfmt_map[8][2] = {
106void camif_hw_set_source_format(struct camif_dev *camif) 106void camif_hw_set_source_format(struct camif_dev *camif)
107{ 107{
108 struct v4l2_mbus_framefmt *mf = &camif->mbus_fmt; 108 struct v4l2_mbus_framefmt *mf = &camif->mbus_fmt;
109 unsigned int i = ARRAY_SIZE(src_pixfmt_map); 109 int i;
110 u32 cfg; 110 u32 cfg;
111 111
112 while (i-- >= 0) { 112 for (i = ARRAY_SIZE(src_pixfmt_map) - 1; i >= 0; i--) {
113 if (src_pixfmt_map[i][0] == mf->code) 113 if (src_pixfmt_map[i][0] == mf->code)
114 break; 114 break;
115 } 115 }
116 116 if (i < 0) {
117 if (i == 0 && src_pixfmt_map[i][0] != mf->code) { 117 i = 0;
118 dev_err(camif->dev, 118 dev_err(camif->dev,
119 "Unsupported pixel code, falling back to %#08x\n", 119 "Unsupported pixel code, falling back to %#08x\n",
120 src_pixfmt_map[i][0]); 120 src_pixfmt_map[i][0]);