rk3288: iep support yuv denoise
authorljf <ljf@rock-chips.com>
Tue, 22 Apr 2014 09:02:46 +0000 (17:02 +0800)
committerljf <ljf@rock-chips.com>
Tue, 22 Apr 2014 09:02:46 +0000 (17:02 +0800)
drivers/video/rockchip/iep/hw_iep_reg.c
drivers/video/rockchip/iep/hw_iep_reg.h

index f926bee4404c754e62286bd71938fb40a5c9aef5..175ae424e9c16f5bb0d831e80ae47f1a1edf37ca 100755 (executable)
@@ -381,6 +381,10 @@ static void iep_config_color_enh(IEP_MSG *iep_msg)
 static void iep_config_yuv_dns(IEP_MSG *iep_msg)\r
 {\r
     IEP_REGB_YUV_DNS_EN(iep_msg->base, iep_msg->yuv_3D_denoise_en);\r
+    IEP_REGB_YUV_DNS_LUMA_SPAT_SEL(iep_msg->base, 0);\r
+    IEP_REGB_YUV_DNS_LUMA_TEMP_SEL(iep_msg->base, 1);\r
+    IEP_REGB_YUV_DNS_CHROMA_SPAT_SEL(iep_msg->base, 2);\r
+    IEP_REGB_YUV_DNS_CHROMA_TEMP_SEL(iep_msg->base, 3);\r
 #ifdef IEP_PRINT_INFO\r
     IEP_DBG("//==yuv denoise config========================// \n\n");\r
     IEP_DBG("sw_yuv_dns_en              = %d;//0:yuv 3d denoise disable; 1:enable\n\n", iep_msg->yuv_3D_denoise_en);\r
index 3f66966f9986279b217f52d7f61b4d424d52b16c..a28dd8110be9decbf29c43ed81f970b8358f69d0 100755 (executable)
@@ -234,6 +234,10 @@ enum iep_mmu_cmd {
 #define     IEP_REGB_COLOR_BAR_U_Z(x)         (((x)&0xff ) <<  8  )\r
 #define     IEP_REGB_COLOR_BAR_Y_Z(x)         (((x)&0xff ) <<  0  )\r
 //iep_enh_rgb_cnfg\r
+#define     IEP_REGB_YUV_DNS_LUMA_SPAT_SEL_Z(x)   (((x)&0x3  ) <<  30 )\r
+#define     IEP_REGB_YUV_DNS_LUMA_TEMP_SEL_Z(x)   (((x)&0x3  ) <<  28 )\r
+#define     IEP_REGB_YUV_DNS_CHROMA_SPAT_SEL_Z(x) (((x)&0x3  ) <<  26 )\r
+#define     IEP_REGB_YUV_DNS_CHROMA_TEMP_SEL_Z(x) (((x)&0x3  ) <<  24 )\r
 #define     IEP_REGB_ENH_THRESHOLD_Z(x)       (((x)&0xff ) <<  16 )\r
 #define     IEP_REGB_ENH_ALPHA_Z(x)           (((x)&0x3f ) <<  8  )\r
 #define     IEP_REGB_ENH_RADIUS_Z(x)          (((x)&0x3  ) <<  0  )\r
@@ -394,6 +398,10 @@ enum iep_mmu_cmd {
 #define     IEP_REGB_COLOR_BAR_U_Y         (0xff  <<  8 )\r
 #define     IEP_REGB_COLOR_BAR_Y_Y         (0xff  <<  0 )\r
 //iep_enh_rgb_cnfg\r
+#define     IEP_REGB_YUV_DNS_LUMA_SPAT_SEL_Y (0x3   <<  30)\r
+#define     IEP_REGB_YUV_DNS_LUMA_TEMP_SEL_Y (0x3   <<  28)\r
+#define     IEP_REGB_YUV_DNS_CHROMA_SPAT_SEL_Y (0x3  <<  26)\r
+#define     IEP_REGB_YUV_DNS_CHROMA_TEMP_SEL_Y (0x3  <<  24)\r
 #define     IEP_REGB_ENH_THRESHOLD_Y       (0xff  <<  16)\r
 #define     IEP_REGB_ENH_ALPHA_Y           (0x3f  <<  8 )\r
 #define     IEP_REGB_ENH_RADIUS_Y          (0x3   <<  0 )\r
@@ -563,6 +571,10 @@ enum iep_mmu_cmd {
 #define     IEP_REGB_COLOR_BAR_U(base, x)         ConfRegBits32(base, RAW_rIEP_ENH_YUV_CNFG_2,rIEP_ENH_YUV_CNFG_2,IEP_REGB_COLOR_BAR_U_Y,IEP_REGB_COLOR_BAR_U_Z(x))\r
 #define     IEP_REGB_COLOR_BAR_Y(base, x)         ConfRegBits32(base, RAW_rIEP_ENH_YUV_CNFG_2,rIEP_ENH_YUV_CNFG_2,IEP_REGB_COLOR_BAR_Y_Y,IEP_REGB_COLOR_BAR_Y_Z(x))\r
 //iep_enh_rgb_cnfg\r
+#define     IEP_REGB_YUV_DNS_LUMA_SPAT_SEL(base, x) ConfRegBits32(base, RAW_rIEP_ENH_RGB_CNFG,rIEP_ENH_RGB_CNFG,IEP_REGB_YUV_DNS_LUMA_SPAT_SEL_Y,IEP_REGB_YUV_DNS_LUMA_SPAT_SEL_Z(x))\r
+#define     IEP_REGB_YUV_DNS_LUMA_TEMP_SEL(base, x) ConfRegBits32(base, RAW_rIEP_ENH_RGB_CNFG,rIEP_ENH_RGB_CNFG,IEP_REGB_YUV_DNS_LUMA_TEMP_SEL_Y,IEP_REGB_YUV_DNS_LUMA_TEMP_SEL_Z(x))\r
+#define     IEP_REGB_YUV_DNS_CHROMA_SPAT_SEL(base, x) ConfRegBits32(base, RAW_rIEP_ENH_RGB_CNFG,rIEP_ENH_RGB_CNFG,IEP_REGB_YUV_DNS_CHROMA_SPAT_SEL_Y,IEP_REGB_YUV_DNS_CHROMA_SPAT_SEL_Z(x))\r
+#define     IEP_REGB_YUV_DNS_CHROMA_TEMP_SEL(base, x) ConfRegBits32(base, RAW_rIEP_ENH_RGB_CNFG,rIEP_ENH_RGB_CNFG,IEP_REGB_YUV_DNS_CHROMA_TEMP_SEL_Y,IEP_REGB_YUV_DNS_CHROMA_TEMP_SEL_Z(x))\r
 #define     IEP_REGB_ENH_THRESHOLD(base, x)       ConfRegBits32(base, RAW_rIEP_ENH_RGB_CNFG,rIEP_ENH_RGB_CNFG,IEP_REGB_ENH_THRESHOLD_Y,IEP_REGB_ENH_THRESHOLD_Z(x))\r
 #define     IEP_REGB_ENH_ALPHA(base, x)           ConfRegBits32(base, RAW_rIEP_ENH_RGB_CNFG,rIEP_ENH_RGB_CNFG,IEP_REGB_ENH_ALPHA_Y,IEP_REGB_ENH_ALPHA_Z(x))\r
 #define     IEP_REGB_ENH_RADIUS(base, x)          ConfRegBits32(base, RAW_rIEP_ENH_RGB_CNFG,rIEP_ENH_RGB_CNFG,IEP_REGB_ENH_RADIUS_Y,IEP_REGB_ENH_RADIUS_Z(x))\r