diff options
author | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2011-08-31 09:42:17 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2012-08-11 15:01:43 -0400 |
commit | cf7a3d91ade6c56bfd860b377f84bd58132f7a81 (patch) | |
tree | 9f6fabf3906cde0972f78b2997d2732a05441a5e | |
parent | 73cdc79f9327c2112dff085a439f8302a2bec3ec (diff) |
[media] omap3isp: ccdc: Remove support for interlaced data and master HS/VS mode
Those features are half-implemented and not used. Remove them.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Sakari Ailus <sakari.ailus@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r-- | drivers/media/video/omap3isp/ispccdc.c | 51 | ||||
-rw-r--r-- | drivers/media/video/omap3isp/ispccdc.h | 18 |
2 files changed, 2 insertions, 67 deletions
diff --git a/drivers/media/video/omap3isp/ispccdc.c b/drivers/media/video/omap3isp/ispccdc.c index 4678e2f44973..8dbb55a92fcf 100644 --- a/drivers/media/video/omap3isp/ispccdc.c +++ b/drivers/media/video/omap3isp/ispccdc.c | |||
@@ -967,17 +967,8 @@ static void ccdc_config_sync_if(struct isp_ccdc_device *ccdc, | |||
967 | struct ispccdc_syncif *syncif) | 967 | struct ispccdc_syncif *syncif) |
968 | { | 968 | { |
969 | struct isp_device *isp = to_isp_device(ccdc); | 969 | struct isp_device *isp = to_isp_device(ccdc); |
970 | u32 syn_mode = isp_reg_readl(isp, OMAP3_ISP_IOMEM_CCDC, | 970 | u32 syn_mode = ISPCCDC_SYN_MODE_VDHDEN; |
971 | ISPCCDC_SYN_MODE); | ||
972 | 971 | ||
973 | syn_mode |= ISPCCDC_SYN_MODE_VDHDEN; | ||
974 | |||
975 | if (syncif->fldstat) | ||
976 | syn_mode |= ISPCCDC_SYN_MODE_FLDSTAT; | ||
977 | else | ||
978 | syn_mode &= ~ISPCCDC_SYN_MODE_FLDSTAT; | ||
979 | |||
980 | syn_mode &= ~ISPCCDC_SYN_MODE_DATSIZ_MASK; | ||
981 | switch (syncif->datsz) { | 972 | switch (syncif->datsz) { |
982 | case 8: | 973 | case 8: |
983 | syn_mode |= ISPCCDC_SYN_MODE_DATSIZ_8; | 974 | syn_mode |= ISPCCDC_SYN_MODE_DATSIZ_8; |
@@ -993,47 +984,14 @@ static void ccdc_config_sync_if(struct isp_ccdc_device *ccdc, | |||
993 | break; | 984 | break; |
994 | } | 985 | } |
995 | 986 | ||
996 | if (syncif->fldmode) | ||
997 | syn_mode |= ISPCCDC_SYN_MODE_FLDMODE; | ||
998 | else | ||
999 | syn_mode &= ~ISPCCDC_SYN_MODE_FLDMODE; | ||
1000 | |||
1001 | if (syncif->datapol) | 987 | if (syncif->datapol) |
1002 | syn_mode |= ISPCCDC_SYN_MODE_DATAPOL; | 988 | syn_mode |= ISPCCDC_SYN_MODE_DATAPOL; |
1003 | else | ||
1004 | syn_mode &= ~ISPCCDC_SYN_MODE_DATAPOL; | ||
1005 | |||
1006 | if (syncif->fldpol) | ||
1007 | syn_mode |= ISPCCDC_SYN_MODE_FLDPOL; | ||
1008 | else | ||
1009 | syn_mode &= ~ISPCCDC_SYN_MODE_FLDPOL; | ||
1010 | 989 | ||
1011 | if (syncif->hdpol) | 990 | if (syncif->hdpol) |
1012 | syn_mode |= ISPCCDC_SYN_MODE_HDPOL; | 991 | syn_mode |= ISPCCDC_SYN_MODE_HDPOL; |
1013 | else | ||
1014 | syn_mode &= ~ISPCCDC_SYN_MODE_HDPOL; | ||
1015 | 992 | ||
1016 | if (syncif->vdpol) | 993 | if (syncif->vdpol) |
1017 | syn_mode |= ISPCCDC_SYN_MODE_VDPOL; | 994 | syn_mode |= ISPCCDC_SYN_MODE_VDPOL; |
1018 | else | ||
1019 | syn_mode &= ~ISPCCDC_SYN_MODE_VDPOL; | ||
1020 | |||
1021 | if (syncif->ccdc_mastermode) { | ||
1022 | syn_mode |= ISPCCDC_SYN_MODE_FLDOUT | ISPCCDC_SYN_MODE_VDHDOUT; | ||
1023 | isp_reg_writel(isp, | ||
1024 | syncif->hs_width << ISPCCDC_HD_VD_WID_HDW_SHIFT | ||
1025 | | syncif->vs_width << ISPCCDC_HD_VD_WID_VDW_SHIFT, | ||
1026 | OMAP3_ISP_IOMEM_CCDC, | ||
1027 | ISPCCDC_HD_VD_WID); | ||
1028 | |||
1029 | isp_reg_writel(isp, | ||
1030 | syncif->ppln << ISPCCDC_PIX_LINES_PPLN_SHIFT | ||
1031 | | syncif->hlprf << ISPCCDC_PIX_LINES_HLPRF_SHIFT, | ||
1032 | OMAP3_ISP_IOMEM_CCDC, | ||
1033 | ISPCCDC_PIX_LINES); | ||
1034 | } else | ||
1035 | syn_mode &= ~(ISPCCDC_SYN_MODE_FLDOUT | | ||
1036 | ISPCCDC_SYN_MODE_VDHDOUT); | ||
1037 | 995 | ||
1038 | isp_reg_writel(isp, syn_mode, OMAP3_ISP_IOMEM_CCDC, ISPCCDC_SYN_MODE); | 996 | isp_reg_writel(isp, syn_mode, OMAP3_ISP_IOMEM_CCDC, ISPCCDC_SYN_MODE); |
1039 | 997 | ||
@@ -1154,6 +1112,7 @@ static void ccdc_configure(struct isp_ccdc_device *ccdc) | |||
1154 | omap3isp_configure_bridge(isp, ccdc->input, pdata, shift); | 1112 | omap3isp_configure_bridge(isp, ccdc->input, pdata, shift); |
1155 | 1113 | ||
1156 | ccdc->syncif.datsz = depth_out; | 1114 | ccdc->syncif.datsz = depth_out; |
1115 | ccdc->syncif.datapol = 0; | ||
1157 | ccdc->syncif.hdpol = pdata ? pdata->hs_pol : 0; | 1116 | ccdc->syncif.hdpol = pdata ? pdata->hs_pol : 0; |
1158 | ccdc->syncif.vdpol = pdata ? pdata->vs_pol : 0; | 1117 | ccdc->syncif.vdpol = pdata ? pdata->vs_pol : 0; |
1159 | ccdc_config_sync_if(ccdc, &ccdc->syncif); | 1118 | ccdc_config_sync_if(ccdc, &ccdc->syncif); |
@@ -2487,13 +2446,7 @@ int omap3isp_ccdc_init(struct isp_device *isp) | |||
2487 | INIT_LIST_HEAD(&ccdc->lsc.free_queue); | 2446 | INIT_LIST_HEAD(&ccdc->lsc.free_queue); |
2488 | spin_lock_init(&ccdc->lsc.req_lock); | 2447 | spin_lock_init(&ccdc->lsc.req_lock); |
2489 | 2448 | ||
2490 | ccdc->syncif.ccdc_mastermode = 0; | ||
2491 | ccdc->syncif.datapol = 0; | ||
2492 | ccdc->syncif.datsz = 0; | 2449 | ccdc->syncif.datsz = 0; |
2493 | ccdc->syncif.fldmode = 0; | ||
2494 | ccdc->syncif.fldout = 0; | ||
2495 | ccdc->syncif.fldpol = 0; | ||
2496 | ccdc->syncif.fldstat = 0; | ||
2497 | 2450 | ||
2498 | ccdc->clamp.oblen = 0; | 2451 | ccdc->clamp.oblen = 0; |
2499 | ccdc->clamp.dcsubval = 0; | 2452 | ccdc->clamp.dcsubval = 0; |
diff --git a/drivers/media/video/omap3isp/ispccdc.h b/drivers/media/video/omap3isp/ispccdc.h index 890f6b3a68fd..57007d7b2d56 100644 --- a/drivers/media/video/omap3isp/ispccdc.h +++ b/drivers/media/video/omap3isp/ispccdc.h | |||
@@ -48,35 +48,17 @@ enum ccdc_input_entity { | |||
48 | 48 | ||
49 | /* | 49 | /* |
50 | * struct ispccdc_syncif - Structure for Sync Interface between sensor and CCDC | 50 | * struct ispccdc_syncif - Structure for Sync Interface between sensor and CCDC |
51 | * @ccdc_mastermode: Master mode. 1 - Master, 0 - Slave. | ||
52 | * @fldstat: Field state. 0 - Odd Field, 1 - Even Field. | ||
53 | * @datsz: Data size. | 51 | * @datsz: Data size. |
54 | * @fldmode: 0 - Progressive, 1 - Interlaced. | ||
55 | * @datapol: 0 - Positive, 1 - Negative. | 52 | * @datapol: 0 - Positive, 1 - Negative. |
56 | * @fldpol: 0 - Positive, 1 - Negative. | ||
57 | * @hdpol: 0 - Positive, 1 - Negative. | 53 | * @hdpol: 0 - Positive, 1 - Negative. |
58 | * @vdpol: 0 - Positive, 1 - Negative. | 54 | * @vdpol: 0 - Positive, 1 - Negative. |
59 | * @fldout: 0 - Input, 1 - Output. | ||
60 | * @hs_width: Width of the Horizontal Sync pulse, used for HS/VS Output. | ||
61 | * @vs_width: Width of the Vertical Sync pulse, used for HS/VS Output. | ||
62 | * @ppln: Number of pixels per line, used for HS/VS Output. | ||
63 | * @hlprf: Number of half lines per frame, used for HS/VS Output. | ||
64 | * @bt_r656_en: 1 - Enable ITU-R BT656 mode, 0 - Sync mode. | 55 | * @bt_r656_en: 1 - Enable ITU-R BT656 mode, 0 - Sync mode. |
65 | */ | 56 | */ |
66 | struct ispccdc_syncif { | 57 | struct ispccdc_syncif { |
67 | u8 ccdc_mastermode; | ||
68 | u8 fldstat; | ||
69 | u8 datsz; | 58 | u8 datsz; |
70 | u8 fldmode; | ||
71 | u8 datapol; | 59 | u8 datapol; |
72 | u8 fldpol; | ||
73 | u8 hdpol; | 60 | u8 hdpol; |
74 | u8 vdpol; | 61 | u8 vdpol; |
75 | u8 fldout; | ||
76 | u8 hs_width; | ||
77 | u8 vs_width; | ||
78 | u8 ppln; | ||
79 | u8 hlprf; | ||
80 | u8 bt_r656_en; | 62 | u8 bt_r656_en; |
81 | }; | 63 | }; |
82 | 64 | ||