aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/omap3isp/isppreview.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/media/video/omap3isp/isppreview.c')
-rw-r--r--drivers/media/video/omap3isp/isppreview.c25
1 files changed, 10 insertions, 15 deletions
diff --git a/drivers/media/video/omap3isp/isppreview.c b/drivers/media/video/omap3isp/isppreview.c
index ccb876fe023..6d0fb2c8c26 100644
--- a/drivers/media/video/omap3isp/isppreview.c
+++ b/drivers/media/video/omap3isp/isppreview.c
@@ -116,11 +116,11 @@ static struct omap3isp_prev_csc flr_prev_csc = {
116#define PREV_MIN_IN_HEIGHT 8 116#define PREV_MIN_IN_HEIGHT 8
117#define PREV_MAX_IN_HEIGHT 16384 117#define PREV_MAX_IN_HEIGHT 16384
118 118
119#define PREV_MIN_OUT_WIDTH 0 119#define PREV_MIN_OUT_WIDTH 0
120#define PREV_MIN_OUT_HEIGHT 0 120#define PREV_MIN_OUT_HEIGHT 0
121#define PREV_MAX_OUT_WIDTH 1280 121#define PREV_MAX_OUT_WIDTH_REV_1 1280
122#define PREV_MAX_OUT_WIDTH_ES2 3300 122#define PREV_MAX_OUT_WIDTH_REV_2 3300
123#define PREV_MAX_OUT_WIDTH_3630 4096 123#define PREV_MAX_OUT_WIDTH_REV_15 4096
124 124
125/* 125/*
126 * Coeficient Tables for the submodules in Preview. 126 * Coeficient Tables for the submodules in Preview.
@@ -1306,14 +1306,14 @@ static unsigned int preview_max_out_width(struct isp_prev_device *prev)
1306 1306
1307 switch (isp->revision) { 1307 switch (isp->revision) {
1308 case ISP_REVISION_1_0: 1308 case ISP_REVISION_1_0:
1309 return PREV_MAX_OUT_WIDTH; 1309 return PREV_MAX_OUT_WIDTH_REV_1;
1310 1310
1311 case ISP_REVISION_2_0: 1311 case ISP_REVISION_2_0:
1312 default: 1312 default:
1313 return PREV_MAX_OUT_WIDTH_ES2; 1313 return PREV_MAX_OUT_WIDTH_REV_2;
1314 1314
1315 case ISP_REVISION_15_0: 1315 case ISP_REVISION_15_0:
1316 return PREV_MAX_OUT_WIDTH_3630; 1316 return PREV_MAX_OUT_WIDTH_REV_15;
1317 } 1317 }
1318} 1318}
1319 1319
@@ -1404,16 +1404,14 @@ static void preview_isr_buffer(struct isp_prev_device *prev)
1404 int restart = 0; 1404 int restart = 0;
1405 1405
1406 if (prev->input == PREVIEW_INPUT_MEMORY) { 1406 if (prev->input == PREVIEW_INPUT_MEMORY) {
1407 buffer = omap3isp_video_buffer_next(&prev->video_in, 1407 buffer = omap3isp_video_buffer_next(&prev->video_in);
1408 prev->error);
1409 if (buffer != NULL) 1408 if (buffer != NULL)
1410 preview_set_inaddr(prev, buffer->isp_addr); 1409 preview_set_inaddr(prev, buffer->isp_addr);
1411 pipe->state |= ISP_PIPELINE_IDLE_INPUT; 1410 pipe->state |= ISP_PIPELINE_IDLE_INPUT;
1412 } 1411 }
1413 1412
1414 if (prev->output & PREVIEW_OUTPUT_MEMORY) { 1413 if (prev->output & PREVIEW_OUTPUT_MEMORY) {
1415 buffer = omap3isp_video_buffer_next(&prev->video_out, 1414 buffer = omap3isp_video_buffer_next(&prev->video_out);
1416 prev->error);
1417 if (buffer != NULL) { 1415 if (buffer != NULL) {
1418 preview_set_outaddr(prev, buffer->isp_addr); 1416 preview_set_outaddr(prev, buffer->isp_addr);
1419 restart = 1; 1417 restart = 1;
@@ -1440,8 +1438,6 @@ static void preview_isr_buffer(struct isp_prev_device *prev)
1440 default: 1438 default:
1441 return; 1439 return;
1442 } 1440 }
1443
1444 prev->error = 0;
1445} 1441}
1446 1442
1447/* 1443/*
@@ -1565,7 +1561,6 @@ static int preview_set_stream(struct v4l2_subdev *sd, int enable)
1565 omap3isp_subclk_enable(isp, OMAP3_ISP_SUBCLK_PREVIEW); 1561 omap3isp_subclk_enable(isp, OMAP3_ISP_SUBCLK_PREVIEW);
1566 preview_configure(prev); 1562 preview_configure(prev);
1567 atomic_set(&prev->stopping, 0); 1563 atomic_set(&prev->stopping, 0);
1568 prev->error = 0;
1569 preview_print_status(prev); 1564 preview_print_status(prev);
1570 } 1565 }
1571 1566