aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/platform/exynos4-is
diff options
context:
space:
mode:
authorSylwester Nawrocki <s.nawrocki@samsung.com>2013-04-10 05:27:22 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2013-04-14 14:52:39 -0400
commit03385b8e9d7a9f361c178ea33fa76b39793f85b2 (patch)
tree005676fe3eac099114533c5b9e0d47e88c05fc60 /drivers/media/platform/exynos4-is
parent3530ef0a6ea56636b23b5a15ff645632f7596c04 (diff)
[media] exynos4-is: Remove meaningless test before bit setting
There is no need to check same bit before setting it, since we always end up with a bit set. Remove some of the tests and make set unconditional, in every place where all that needs to be done is just setting a bit. Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/platform/exynos4-is')
-rw-r--r--drivers/media/platform/exynos4-is/fimc-is-param.c40
1 files changed, 9 insertions, 31 deletions
diff --git a/drivers/media/platform/exynos4-is/fimc-is-param.c b/drivers/media/platform/exynos4-is/fimc-is-param.c
index 254740f5e418..53fe2a2b4db3 100644
--- a/drivers/media/platform/exynos4-is/fimc-is-param.c
+++ b/drivers/media/platform/exynos4-is/fimc-is-param.c
@@ -269,9 +269,7 @@ void __is_set_sensor(struct fimc_is *is, int fps)
269 unsigned int index = is->config_index; 269 unsigned int index = is->config_index;
270 struct sensor_param *sensor; 270 struct sensor_param *sensor;
271 struct isp_param *isp; 271 struct isp_param *isp;
272 unsigned long *p_index;
273 272
274 p_index = &is->config[index].p_region_index1;
275 sensor = &is->config[index].sensor; 273 sensor = &is->config[index].sensor;
276 isp = &is->config[index].isp; 274 isp = &is->config[index].isp;
277 275
@@ -286,11 +284,8 @@ void __is_set_sensor(struct fimc_is *is, int fps)
286 isp->otf_input.frametime_max = (u32)1000000 / fps; 284 isp->otf_input.frametime_max = (u32)1000000 / fps;
287 } 285 }
288 286
289 if (!test_bit(PARAM_SENSOR_FRAME_RATE, p_index)) 287 fimc_is_set_param_bit(is, PARAM_SENSOR_FRAME_RATE);
290 fimc_is_set_param_bit(is, PARAM_SENSOR_FRAME_RATE); 288 fimc_is_set_param_bit(is, PARAM_ISP_OTF_INPUT);
291
292 if (!test_bit(PARAM_ISP_OTF_INPUT, p_index))
293 fimc_is_set_param_bit(is, PARAM_ISP_OTF_INPUT);
294} 289}
295 290
296void __is_set_init_isp_aa(struct fimc_is *is) 291void __is_set_init_isp_aa(struct fimc_is *is)
@@ -317,65 +312,54 @@ void __is_set_init_isp_aa(struct fimc_is *is)
317void __is_set_isp_flash(struct fimc_is *is, u32 cmd, u32 redeye) 312void __is_set_isp_flash(struct fimc_is *is, u32 cmd, u32 redeye)
318{ 313{
319 unsigned int index = is->config_index; 314 unsigned int index = is->config_index;
320 struct chain_config *cfg = &is->config[index]; 315 struct isp_param *isp = &is->config[index].isp;
321 struct isp_param *isp = &cfg->isp;
322 316
323 isp->flash.cmd = cmd; 317 isp->flash.cmd = cmd;
324 isp->flash.redeye = redeye; 318 isp->flash.redeye = redeye;
325 isp->flash.err = ISP_FLASH_ERROR_NONE; 319 isp->flash.err = ISP_FLASH_ERROR_NONE;
326 320
327 if (!test_bit(PARAM_ISP_FLASH, &cfg->p_region_index1)) 321 fimc_is_set_param_bit(is, PARAM_ISP_FLASH);
328 fimc_is_set_param_bit(is, PARAM_ISP_FLASH);
329} 322}
330 323
331void __is_set_isp_awb(struct fimc_is *is, u32 cmd, u32 val) 324void __is_set_isp_awb(struct fimc_is *is, u32 cmd, u32 val)
332{ 325{
333 unsigned int index = is->config_index; 326 unsigned int index = is->config_index;
334 struct isp_param *isp; 327 struct isp_param *isp;
335 unsigned long *p_index;
336 328
337 p_index = &is->config[index].p_region_index1;
338 isp = &is->config[index].isp; 329 isp = &is->config[index].isp;
339 330
340 isp->awb.cmd = cmd; 331 isp->awb.cmd = cmd;
341 isp->awb.illumination = val; 332 isp->awb.illumination = val;
342 isp->awb.err = ISP_AWB_ERROR_NONE; 333 isp->awb.err = ISP_AWB_ERROR_NONE;
343 334
344 if (!test_bit(PARAM_ISP_AWB, p_index)) 335 fimc_is_set_param_bit(is, PARAM_ISP_AWB);
345 fimc_is_set_param_bit(is, PARAM_ISP_AWB);
346} 336}
347 337
348void __is_set_isp_effect(struct fimc_is *is, u32 cmd) 338void __is_set_isp_effect(struct fimc_is *is, u32 cmd)
349{ 339{
350 unsigned int index = is->config_index; 340 unsigned int index = is->config_index;
351 struct isp_param *isp; 341 struct isp_param *isp;
352 unsigned long *p_index;
353 342
354 p_index = &is->config[index].p_region_index1;
355 isp = &is->config[index].isp; 343 isp = &is->config[index].isp;
356 344
357 isp->effect.cmd = cmd; 345 isp->effect.cmd = cmd;
358 isp->effect.err = ISP_IMAGE_EFFECT_ERROR_NONE; 346 isp->effect.err = ISP_IMAGE_EFFECT_ERROR_NONE;
359 347
360 if (!test_bit(PARAM_ISP_IMAGE_EFFECT, p_index)) 348 fimc_is_set_param_bit(is, PARAM_ISP_IMAGE_EFFECT);
361 fimc_is_set_param_bit(is, PARAM_ISP_IMAGE_EFFECT);
362} 349}
363 350
364void __is_set_isp_iso(struct fimc_is *is, u32 cmd, u32 val) 351void __is_set_isp_iso(struct fimc_is *is, u32 cmd, u32 val)
365{ 352{
366 unsigned int index = is->config_index; 353 unsigned int index = is->config_index;
367 struct isp_param *isp; 354 struct isp_param *isp;
368 unsigned long *p_index;
369 355
370 p_index = &is->config[index].p_region_index1;
371 isp = &is->config[index].isp; 356 isp = &is->config[index].isp;
372 357
373 isp->iso.cmd = cmd; 358 isp->iso.cmd = cmd;
374 isp->iso.value = val; 359 isp->iso.value = val;
375 isp->iso.err = ISP_ISO_ERROR_NONE; 360 isp->iso.err = ISP_ISO_ERROR_NONE;
376 361
377 if (!test_bit(PARAM_ISP_ISO, p_index)) 362 fimc_is_set_param_bit(is, PARAM_ISP_ISO);
378 fimc_is_set_param_bit(is, PARAM_ISP_ISO);
379} 363}
380 364
381void __is_set_isp_adjust(struct fimc_is *is, u32 cmd, u32 val) 365void __is_set_isp_adjust(struct fimc_is *is, u32 cmd, u32 val)
@@ -464,32 +448,26 @@ void __is_set_isp_afc(struct fimc_is *is, u32 cmd, u32 val)
464{ 448{
465 unsigned int index = is->config_index; 449 unsigned int index = is->config_index;
466 struct isp_param *isp; 450 struct isp_param *isp;
467 unsigned long *p_index;
468 451
469 p_index = &is->config[index].p_region_index1;
470 isp = &is->config[index].isp; 452 isp = &is->config[index].isp;
471 453
472 isp->afc.cmd = cmd; 454 isp->afc.cmd = cmd;
473 isp->afc.manual = val; 455 isp->afc.manual = val;
474 isp->afc.err = ISP_AFC_ERROR_NONE; 456 isp->afc.err = ISP_AFC_ERROR_NONE;
475 457
476 if (!test_bit(PARAM_ISP_AFC, p_index)) 458 fimc_is_set_param_bit(is, PARAM_ISP_AFC);
477 fimc_is_set_param_bit(is, PARAM_ISP_AFC);
478} 459}
479 460
480void __is_set_drc_control(struct fimc_is *is, u32 val) 461void __is_set_drc_control(struct fimc_is *is, u32 val)
481{ 462{
482 unsigned int index = is->config_index; 463 unsigned int index = is->config_index;
483 struct drc_param *drc; 464 struct drc_param *drc;
484 unsigned long *p_index;
485 465
486 p_index = &is->config[index].p_region_index1;
487 drc = &is->config[index].drc; 466 drc = &is->config[index].drc;
488 467
489 drc->control.bypass = val; 468 drc->control.bypass = val;
490 469
491 if (!test_bit(PARAM_DRC_CONTROL, p_index)) 470 fimc_is_set_param_bit(is, PARAM_DRC_CONTROL);
492 fimc_is_set_param_bit(is, PARAM_DRC_CONTROL);
493} 471}
494 472
495void __is_set_fd_control(struct fimc_is *is, u32 val) 473void __is_set_fd_control(struct fimc_is *is, u32 val)