From 8e4bff4cab0ddac6060645b0715210484d02ff40 Mon Sep 17 00:00:00 2001 From: Yuval Adam <_@yuv.al> Date: Wed, 30 Aug 2017 08:25:59 +0000 Subject: Initial file dump from open source release --- drivers/media/sprd_isp/Kconfig | 10 + drivers/media/sprd_isp/Makefile | 186 ++ drivers/media/sprd_isp/Shark_reg_isp.h | 70 + drivers/media/sprd_isp/compat_isp_drv.c | 356 ++++ drivers/media/sprd_isp/compat_isp_drv.h | 23 + drivers/media/sprd_isp/compat_isp_drv_kernel.c | 327 ++++ drivers/media/sprd_isp/compat_isp_drv_kernel.h | 26 + drivers/media/sprd_isp/isp1.0/Shark_reg_isp.h | 70 + drivers/media/sprd_isp/isp1.0/Tiger_reg_isp.h | 91 + .../media/sprd_isp/isp1.0/compat_isp_drv_kernel.c | 327 ++++ .../media/sprd_isp/isp1.0/compat_isp_drv_kernel.h | 26 + drivers/media/sprd_isp/isp1.0/isp_drv_kernel.c | 1494 ++++++++++++++++ drivers/media/sprd_isp/isp1.0/isp_drv_null.c | 305 ++++ drivers/media/sprd_isp/isp2.0/pike/inc/isp_block.h | 72 + drivers/media/sprd_isp/isp2.0/pike/inc/isp_drv.h | 94 + drivers/media/sprd_isp/isp2.0/pike/inc/isp_reg.h | 801 +++++++++ .../media/sprd_isp/isp2.0/pike/src/isp_cfg_param.c | 133 ++ .../media/sprd_isp/isp2.0/pike/src/isp_k_1d_lsc.c | 146 ++ .../media/sprd_isp/isp2.0/pike/src/isp_k_2d_lsc.c | 537 ++++++ drivers/media/sprd_isp/isp2.0/pike/src/isp_k_aca.c | 78 + .../sprd_isp/isp2.0/pike/src/isp_k_anti_flicker.c | 155 ++ .../media/sprd_isp/isp2.0/pike/src/isp_k_arbiter.c | 177 ++ drivers/media/sprd_isp/isp2.0/pike/src/isp_k_awb.c | 191 +++ drivers/media/sprd_isp/isp2.0/pike/src/isp_k_bdn.c | 121 ++ .../sprd_isp/isp2.0/pike/src/isp_k_binning4awb.c | 231 +++ drivers/media/sprd_isp/isp2.0/pike/src/isp_k_blc.c | 66 + drivers/media/sprd_isp/isp2.0/pike/src/isp_k_bpc.c | 101 ++ .../sprd_isp/isp2.0/pike/src/isp_k_brightness.c | 67 + .../sprd_isp/isp2.0/pike/src/isp_k_capability.c | 195 +++ drivers/media/sprd_isp/isp2.0/pike/src/isp_k_cce.c | 147 ++ drivers/media/sprd_isp/isp2.0/pike/src/isp_k_cdn.c | 109 ++ drivers/media/sprd_isp/isp2.0/pike/src/isp_k_cfa.c | 90 + .../media/sprd_isp/isp2.0/pike/src/isp_k_cmc10.c | 93 + .../media/sprd_isp/isp2.0/pike/src/isp_k_cmc8.c | 92 + .../media/sprd_isp/isp2.0/pike/src/isp_k_common.c | 411 +++++ .../sprd_isp/isp2.0/pike/src/isp_k_contrast.c | 67 + drivers/media/sprd_isp/isp2.0/pike/src/isp_k_csa.c | 68 + drivers/media/sprd_isp/isp2.0/pike/src/isp_k_csc.c | 114 ++ drivers/media/sprd_isp/isp2.0/pike/src/isp_k_css.c | 112 ++ drivers/media/sprd_isp/isp2.0/pike/src/isp_k_ct.c | 92 + .../sprd_isp/isp2.0/pike/src/isp_k_dispatch.c | 143 ++ .../media/sprd_isp/isp2.0/pike/src/isp_k_edge.c | 128 ++ .../media/sprd_isp/isp2.0/pike/src/isp_k_emboss.c | 74 + .../media/sprd_isp/isp2.0/pike/src/isp_k_fetch.c | 127 ++ .../media/sprd_isp/isp2.0/pike/src/isp_k_gamma.c | 143 ++ .../media/sprd_isp/isp2.0/pike/src/isp_k_grgb.c | 70 + drivers/media/sprd_isp/isp2.0/pike/src/isp_k_hdr.c | 142 ++ .../media/sprd_isp/isp2.0/pike/src/isp_k_hist.c | 131 ++ .../media/sprd_isp/isp2.0/pike/src/isp_k_hist2.c | 95 ++ drivers/media/sprd_isp/isp2.0/pike/src/isp_k_hsv.c | 95 ++ drivers/media/sprd_isp/isp2.0/pike/src/isp_k_hua.c | 68 + drivers/media/sprd_isp/isp2.0/pike/src/isp_k_isr.c | 101 ++ drivers/media/sprd_isp/isp2.0/pike/src/isp_k_nlc.c | 83 + drivers/media/sprd_isp/isp2.0/pike/src/isp_k_nlm.c | 202 +++ drivers/media/sprd_isp/isp2.0/pike/src/isp_k_pgg.c | 67 + .../sprd_isp/isp2.0/pike/src/isp_k_post_cdn.c | 129 ++ .../media/sprd_isp/isp2.0/pike/src/isp_k_pre_cdn.c | 135 ++ .../sprd_isp/isp2.0/pike/src/isp_k_pre_cdn_rgb.c | 73 + .../sprd_isp/isp2.0/pike/src/isp_k_prefilter.c | 73 + .../media/sprd_isp/isp2.0/pike/src/isp_k_pstrz.c | 71 + drivers/media/sprd_isp/isp2.0/pike/src/isp_k_pwd.c | 123 ++ .../media/sprd_isp/isp2.0/pike/src/isp_k_raw_aem.c | 255 +++ .../media/sprd_isp/isp2.0/pike/src/isp_k_raw_afm.c | 497 ++++++ .../media/sprd_isp/isp2.0/pike/src/isp_k_rgb2y.c | 62 + .../media/sprd_isp/isp2.0/pike/src/isp_k_rgb_afm.c | 415 +++++ .../sprd_isp/isp2.0/pike/src/isp_k_rgb_gain.c | 69 + .../sprd_isp/isp2.0/pike/src/isp_k_rgb_gain2.c | 67 + .../media/sprd_isp/isp2.0/pike/src/isp_k_store.c | 101 ++ .../sprd_isp/isp2.0/pike/src/isp_k_uv_prefilter.c | 68 + .../media/sprd_isp/isp2.0/pike/src/isp_k_y_delay.c | 63 + .../media/sprd_isp/isp2.0/pike/src/isp_k_y_gamma.c | 133 ++ .../media/sprd_isp/isp2.0/pike/src/isp_k_yiq_aem.c | 121 ++ .../media/sprd_isp/isp2.0/pike/src/isp_k_yiq_afm.c | 120 ++ .../media/sprd_isp/isp2.0/pike/src/isp_k_yuv_nlm.c | 135 ++ .../media/sprd_isp/isp2.0/tshark2/inc/isp_block.h | 67 + .../media/sprd_isp/isp2.0/tshark2/inc/isp_drv.h | 95 ++ .../media/sprd_isp/isp2.0/tshark2/inc/isp_reg.h | 676 ++++++++ .../sprd_isp/isp2.0/tshark2/src/isp_cfg_param.c | 131 ++ .../sprd_isp/isp2.0/tshark2/src/isp_k_1d_lsc.c | 146 ++ .../sprd_isp/isp2.0/tshark2/src/isp_k_2d_lsc.c | 537 ++++++ .../media/sprd_isp/isp2.0/tshark2/src/isp_k_aca.c | 78 + .../isp2.0/tshark2/src/isp_k_anti_flicker.c | 150 ++ .../sprd_isp/isp2.0/tshark2/src/isp_k_arbiter.c | 177 ++ .../media/sprd_isp/isp2.0/tshark2/src/isp_k_awb.c | 192 +++ .../media/sprd_isp/isp2.0/tshark2/src/isp_k_bdn.c | 121 ++ .../isp2.0/tshark2/src/isp_k_binning4awb.c | 249 +++ .../media/sprd_isp/isp2.0/tshark2/src/isp_k_blc.c | 66 + .../media/sprd_isp/isp2.0/tshark2/src/isp_k_bpc.c | 101 ++ .../sprd_isp/isp2.0/tshark2/src/isp_k_brightness.c | 67 + .../sprd_isp/isp2.0/tshark2/src/isp_k_capability.c | 202 +++ .../media/sprd_isp/isp2.0/tshark2/src/isp_k_cce.c | 147 ++ .../media/sprd_isp/isp2.0/tshark2/src/isp_k_cdn.c | 109 ++ .../media/sprd_isp/isp2.0/tshark2/src/isp_k_cfa.c | 90 + .../sprd_isp/isp2.0/tshark2/src/isp_k_cmc10.c | 93 + .../media/sprd_isp/isp2.0/tshark2/src/isp_k_cmc8.c | 92 + .../sprd_isp/isp2.0/tshark2/src/isp_k_common.c | 533 ++++++ .../sprd_isp/isp2.0/tshark2/src/isp_k_contrast.c | 67 + .../media/sprd_isp/isp2.0/tshark2/src/isp_k_csa.c | 68 + .../media/sprd_isp/isp2.0/tshark2/src/isp_k_csc.c | 114 ++ .../media/sprd_isp/isp2.0/tshark2/src/isp_k_css.c | 112 ++ .../media/sprd_isp/isp2.0/tshark2/src/isp_k_ct.c | 98 ++ .../sprd_isp/isp2.0/tshark2/src/isp_k_dispatch.c | 143 ++ .../media/sprd_isp/isp2.0/tshark2/src/isp_k_edge.c | 126 ++ .../sprd_isp/isp2.0/tshark2/src/isp_k_emboss.c | 74 + .../sprd_isp/isp2.0/tshark2/src/isp_k_fetch.c | 126 ++ .../sprd_isp/isp2.0/tshark2/src/isp_k_gamma.c | 131 ++ .../media/sprd_isp/isp2.0/tshark2/src/isp_k_grgb.c | 70 + .../media/sprd_isp/isp2.0/tshark2/src/isp_k_hist.c | 131 ++ .../sprd_isp/isp2.0/tshark2/src/isp_k_hist2.c | 94 + .../media/sprd_isp/isp2.0/tshark2/src/isp_k_hsv.c | 95 ++ .../media/sprd_isp/isp2.0/tshark2/src/isp_k_hua.c | 68 + .../sprd_isp/isp2.0/tshark2/src/isp_k_iircnr.c | 133 ++ .../media/sprd_isp/isp2.0/tshark2/src/isp_k_isr.c | 102 ++ .../media/sprd_isp/isp2.0/tshark2/src/isp_k_nlc.c | 83 + .../media/sprd_isp/isp2.0/tshark2/src/isp_k_nlm.c | 250 +++ .../media/sprd_isp/isp2.0/tshark2/src/isp_k_pgg.c | 67 + .../sprd_isp/isp2.0/tshark2/src/isp_k_post_cdn.c | 128 ++ .../sprd_isp/isp2.0/tshark2/src/isp_k_pre_cdn.c | 135 ++ .../isp2.0/tshark2/src/isp_k_pre_cdn_rgb.c | 73 + .../sprd_isp/isp2.0/tshark2/src/isp_k_prefilter.c | 73 + .../sprd_isp/isp2.0/tshark2/src/isp_k_pstrz.c | 71 + .../media/sprd_isp/isp2.0/tshark2/src/isp_k_pwd.c | 123 ++ .../sprd_isp/isp2.0/tshark2/src/isp_k_raw_aem.c | 255 +++ .../sprd_isp/isp2.0/tshark2/src/isp_k_raw_afm.c | 497 ++++++ .../sprd_isp/isp2.0/tshark2/src/isp_k_raw_sizer.c | 369 ++++ .../sprd_isp/isp2.0/tshark2/src/isp_k_rgb_gain.c | 69 + .../sprd_isp/isp2.0/tshark2/src/isp_k_rgb_gain2.c | 69 + .../sprd_isp/isp2.0/tshark2/src/isp_k_store.c | 101 ++ .../sprd_isp/isp2.0/tshark2/src/isp_k_y_delay.c | 63 + .../sprd_isp/isp2.0/tshark2/src/isp_k_y_gamma.c | 121 ++ .../sprd_isp/isp2.0/tshark2/src/isp_k_yiq_aem.c | 256 +++ .../sprd_isp/isp2.0/tshark2/src/isp_k_yiq_afm.c | 193 +++ drivers/media/sprd_isp/isp_drv.c | 1800 ++++++++++++++++++++ 133 files changed, 22917 insertions(+) create mode 100644 drivers/media/sprd_isp/Kconfig create mode 100644 drivers/media/sprd_isp/Makefile create mode 100644 drivers/media/sprd_isp/Shark_reg_isp.h create mode 100755 drivers/media/sprd_isp/compat_isp_drv.c create mode 100644 drivers/media/sprd_isp/compat_isp_drv.h create mode 100644 drivers/media/sprd_isp/compat_isp_drv_kernel.c create mode 100644 drivers/media/sprd_isp/compat_isp_drv_kernel.h create mode 100644 drivers/media/sprd_isp/isp1.0/Shark_reg_isp.h create mode 100644 drivers/media/sprd_isp/isp1.0/Tiger_reg_isp.h create mode 100644 drivers/media/sprd_isp/isp1.0/compat_isp_drv_kernel.c create mode 100644 drivers/media/sprd_isp/isp1.0/compat_isp_drv_kernel.h create mode 100644 drivers/media/sprd_isp/isp1.0/isp_drv_kernel.c create mode 100644 drivers/media/sprd_isp/isp1.0/isp_drv_null.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/inc/isp_block.h create mode 100644 drivers/media/sprd_isp/isp2.0/pike/inc/isp_drv.h create mode 100644 drivers/media/sprd_isp/isp2.0/pike/inc/isp_reg.h create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_cfg_param.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_1d_lsc.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_2d_lsc.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_aca.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_anti_flicker.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_arbiter.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_awb.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_bdn.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_binning4awb.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_blc.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_bpc.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_brightness.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_capability.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_cce.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_cdn.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_cfa.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_cmc10.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_cmc8.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_common.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_contrast.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_csa.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_csc.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_css.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_ct.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_dispatch.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_edge.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_emboss.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_fetch.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_gamma.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_grgb.c create mode 100755 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_hdr.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_hist.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_hist2.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_hsv.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_hua.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_isr.c create mode 100755 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_nlc.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_nlm.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_pgg.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_post_cdn.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_pre_cdn.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_pre_cdn_rgb.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_prefilter.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_pstrz.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_pwd.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_raw_aem.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_raw_afm.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_rgb2y.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_rgb_afm.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_rgb_gain.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_rgb_gain2.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_store.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_uv_prefilter.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_y_delay.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_y_gamma.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_yiq_aem.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_yiq_afm.c create mode 100644 drivers/media/sprd_isp/isp2.0/pike/src/isp_k_yuv_nlm.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/inc/isp_block.h create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/inc/isp_drv.h create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/inc/isp_reg.h create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_cfg_param.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_1d_lsc.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_2d_lsc.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_aca.c create mode 100755 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_anti_flicker.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_arbiter.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_awb.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_bdn.c create mode 100755 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_binning4awb.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_blc.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_bpc.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_brightness.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_capability.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_cce.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_cdn.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_cfa.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_cmc10.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_cmc8.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_common.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_contrast.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_csa.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_csc.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_css.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_ct.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_dispatch.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_edge.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_emboss.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_fetch.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_gamma.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_grgb.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_hist.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_hist2.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_hsv.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_hua.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_iircnr.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_isr.c create mode 100755 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_nlc.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_nlm.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_pgg.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_post_cdn.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_pre_cdn.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_pre_cdn_rgb.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_prefilter.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_pstrz.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_pwd.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_raw_aem.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_raw_afm.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_raw_sizer.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_rgb_gain.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_rgb_gain2.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_store.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_y_delay.c create mode 100644 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_y_gamma.c create mode 100755 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_yiq_aem.c create mode 100755 drivers/media/sprd_isp/isp2.0/tshark2/src/isp_k_yiq_afm.c create mode 100644 drivers/media/sprd_isp/isp_drv.c (limited to 'drivers/media/sprd_isp') diff --git a/drivers/media/sprd_isp/Kconfig b/drivers/media/sprd_isp/Kconfig new file mode 100644 index 00000000..92c45005 --- /dev/null +++ b/drivers/media/sprd_isp/Kconfig @@ -0,0 +1,10 @@ +menu "SoC Video for the SPREADTRUM SC88XX" + +config SND_SC88XX_SOC_SPRDPHONE + tristate "sprdphone -- SoC Audio for the SPREADTRUM SC88XX chips with intergrated VBC codec" +# depends on ARCH_SC8800S + select SND_PCM + help + Say Y if you want to built in to kernel, Say M for ko module. + +endmenu diff --git a/drivers/media/sprd_isp/Makefile b/drivers/media/sprd_isp/Makefile new file mode 100644 index 00000000..d9f2fb31 --- /dev/null +++ b/drivers/media/sprd_isp/Makefile @@ -0,0 +1,186 @@ +include drivers/media/sprd_dcam/common/Makefile.inc +#ccflags-y += -Idrivers/media/sprd_dcam/common + +tshark2_isp_like:=0 + +ifeq ($(CONFIG_MACH_SP9830IEA_5M_H100),y) +tshark2_isp_like=1 +endif + +ifeq ($(CONFIG_MACH_SP9830IEB_5M_H100),y) +tshark2_isp_like=1 +endif + +ifeq ($(CONFIG_MACH_SP9830IEC_4M_H100),y) +tshark2_isp_like=1 +endif + +ifeq ($(CONFIG_MACH_SP7720EA),y) +pike_isp_like=1 +endif + +ifeq ($(CONFIG_ARCH_SCX30G2),y) +tshark2_isp_like=1 +endif + +ifeq ($(CONFIG_ARCH_SCX35LT8),y) +tshark2_isp_like=1 +endif + +ifeq ($(CONFIG_MACH_SHARKLS_Z3LTE),y) +tshark2_isp_like=1 +endif + +obj-y += sprd_isp.o +ccflags-y += -Idrivers/media/sprd_dcam/common + + +ifeq ($(CONFIG_ARCH_SCX35),y) + +ifeq ($(CONFIG_ARCH_SCX15),y) +sprd_isp-objs := isp1.0/isp_drv_null.o + +else ifeq ($(strip $(tshark2_isp_like)),1) +ccflags-y += -Idrivers/media/sprd_isp/isp2.0/tshark2/inc + +sprd_isp-objs := isp_drv.o \ + isp2.0/tshark2/src/isp_cfg_param.o \ + isp2.0/tshark2/src/isp_k_capability.o \ + isp2.0/tshark2/src/isp_k_isr.o \ + isp2.0/tshark2/src/isp_k_pgg.o \ + isp2.0/tshark2/src/isp_k_blc.o \ + isp2.0/tshark2/src/isp_k_rgb_gain.o \ + isp2.0/tshark2/src/isp_k_pwd.o \ + isp2.0/tshark2/src/isp_k_nlc.o \ + isp2.0/tshark2/src/isp_k_2d_lsc.o \ + isp2.0/tshark2/src/isp_k_1d_lsc.o \ + isp2.0/tshark2/src/isp_k_binning4awb.o \ + isp2.0/tshark2/src/isp_k_awb.o \ + isp2.0/tshark2/src/isp_k_raw_aem.o \ + isp2.0/tshark2/src/isp_k_bpc.o \ + isp2.0/tshark2/src/isp_k_bdn.o \ + isp2.0/tshark2/src/isp_k_grgb.o \ + isp2.0/tshark2/src/isp_k_rgb_gain2.o \ + isp2.0/tshark2/src/isp_k_nlm.o \ + isp2.0/tshark2/src/isp_k_cfa.o \ + isp2.0/tshark2/src/isp_k_cmc10.o \ + isp2.0/tshark2/src/isp_k_gamma.o \ + isp2.0/tshark2/src/isp_k_cmc8.o \ + isp2.0/tshark2/src/isp_k_ct.o \ + isp2.0/tshark2/src/isp_k_cce.o \ + isp2.0/tshark2/src/isp_k_hsv.o \ + isp2.0/tshark2/src/isp_k_csc.o \ + isp2.0/tshark2/src/isp_k_pre_cdn_rgb.o \ + isp2.0/tshark2/src/isp_k_pstrz.o \ + isp2.0/tshark2/src/isp_k_raw_afm.o \ + isp2.0/tshark2/src/isp_k_yiq_aem.o \ + isp2.0/tshark2/src/isp_k_anti_flicker.o \ + isp2.0/tshark2/src/isp_k_yiq_afm.o \ + isp2.0/tshark2/src/isp_k_pre_cdn.o \ + isp2.0/tshark2/src/isp_k_prefilter.o \ + isp2.0/tshark2/src/isp_k_brightness.o \ + isp2.0/tshark2/src/isp_k_contrast.o \ + isp2.0/tshark2/src/isp_k_hist.o \ + isp2.0/tshark2/src/isp_k_hist2.o \ + isp2.0/tshark2/src/isp_k_aca.o \ + isp2.0/tshark2/src/isp_k_cdn.o \ + isp2.0/tshark2/src/isp_k_edge.o \ + isp2.0/tshark2/src/isp_k_css.o \ + isp2.0/tshark2/src/isp_k_csa.o \ + isp2.0/tshark2/src/isp_k_hua.o \ + isp2.0/tshark2/src/isp_k_post_cdn.o \ + isp2.0/tshark2/src/isp_k_emboss.o \ + isp2.0/tshark2/src/isp_k_y_gamma.o \ + isp2.0/tshark2/src/isp_k_y_delay.o \ + isp2.0/tshark2/src/isp_k_iircnr.o \ + isp2.0/tshark2/src/isp_k_fetch.o \ + isp2.0/tshark2/src/isp_k_store.o \ + isp2.0/tshark2/src/isp_k_dispatch.o \ + isp2.0/tshark2/src/isp_k_arbiter.o \ + isp2.0/tshark2/src/isp_k_raw_sizer.o \ + isp2.0/tshark2/src/isp_k_common.o + +ifeq ($(CONFIG_64BIT),y) +sprd_isp-objs += compat_isp_drv.o +endif + +else ifeq ($(strip $(pike_isp_like)),1) +ccflags-y += -Idrivers/media/sprd_isp/isp2.0/pike/inc + +sprd_isp-objs := isp_drv.o \ + isp2.0/pike/src/isp_cfg_param.o \ + isp2.0/pike/src/isp_k_capability.o \ + isp2.0/pike/src/isp_k_isr.o \ + isp2.0/pike/src/isp_k_pgg.o \ + isp2.0/pike/src/isp_k_blc.o \ + isp2.0/pike/src/isp_k_rgb_gain.o \ + isp2.0/pike/src/isp_k_pwd.o \ + isp2.0/pike/src/isp_k_nlc.o \ + isp2.0/pike/src/isp_k_2d_lsc.o \ + isp2.0/pike/src/isp_k_1d_lsc.o \ + isp2.0/pike/src/isp_k_binning4awb.o \ + isp2.0/pike/src/isp_k_awb.o \ + isp2.0/pike/src/isp_k_raw_aem.o \ + isp2.0/pike/src/isp_k_bpc.o \ + isp2.0/pike/src/isp_k_bdn.o \ + isp2.0/pike/src/isp_k_grgb.o \ + isp2.0/pike/src/isp_k_rgb_gain2.o \ + isp2.0/pike/src/isp_k_nlm.o \ + isp2.0/pike/src/isp_k_cfa.o \ + isp2.0/pike/src/isp_k_cmc10.o \ + isp2.0/pike/src/isp_k_gamma.o \ + isp2.0/pike/src/isp_k_cmc8.o \ + isp2.0/pike/src/isp_k_ct.o \ + isp2.0/pike/src/isp_k_cce.o \ + isp2.0/pike/src/isp_k_hsv.o \ + isp2.0/pike/src/isp_k_csc.o \ + isp2.0/pike/src/isp_k_pre_cdn_rgb.o \ + isp2.0/pike/src/isp_k_pstrz.o \ + isp2.0/pike/src/isp_k_raw_afm.o \ + isp2.0/pike/src/isp_k_yiq_aem.o \ + isp2.0/pike/src/isp_k_anti_flicker.o \ + isp2.0/pike/src/isp_k_yiq_afm.o \ + isp2.0/pike/src/isp_k_pre_cdn.o \ + isp2.0/pike/src/isp_k_prefilter.o \ + isp2.0/pike/src/isp_k_brightness.o \ + isp2.0/pike/src/isp_k_contrast.o \ + isp2.0/pike/src/isp_k_hist.o \ + isp2.0/pike/src/isp_k_hist2.o \ + isp2.0/pike/src/isp_k_aca.o \ + isp2.0/pike/src/isp_k_cdn.o \ + isp2.0/pike/src/isp_k_edge.o \ + isp2.0/pike/src/isp_k_css.o \ + isp2.0/pike/src/isp_k_csa.o \ + isp2.0/pike/src/isp_k_hua.o \ + isp2.0/pike/src/isp_k_post_cdn.o \ + isp2.0/pike/src/isp_k_emboss.o \ + isp2.0/pike/src/isp_k_y_gamma.o \ + isp2.0/pike/src/isp_k_y_delay.o \ + isp2.0/pike/src/isp_k_fetch.o \ + isp2.0/pike/src/isp_k_store.o \ + isp2.0/pike/src/isp_k_dispatch.o \ + isp2.0/pike/src/isp_k_arbiter.o \ + isp2.0/pike/src/isp_k_hdr.o \ + isp2.0/pike/src/isp_k_rgb2y.o \ + isp2.0/pike/src/isp_k_uv_prefilter.o \ + isp2.0/pike/src/isp_k_yuv_nlm.o \ + isp2.0/pike/src/isp_k_common.o + +else +ccflags-y += -Idrivers/media/sprd_isp/isp1.0 +sprd_isp-objs := isp1.0/isp_drv_kernel.o +ifeq ($(CONFIG_64BIT),y) +sprd_isp-objs += isp1.0/compat_isp_drv_kernel.o +endif +endif + +endif + +ifeq ($(CONFIG_ARCH_SC8825),y) +ccflags-y += -Idrivers/media/sprd_isp/isp1.0 +sprd_isp-objs := isp1.0/isp_drv_kernel.o +endif + +obj-y += sprd_isp.o + + diff --git a/drivers/media/sprd_isp/Shark_reg_isp.h b/drivers/media/sprd_isp/Shark_reg_isp.h new file mode 100644 index 00000000..6b99f9ea --- /dev/null +++ b/drivers/media/sprd_isp/Shark_reg_isp.h @@ -0,0 +1,70 @@ +/* + * Copyright (C) 2012 Spreadtrum Communications Inc. + * + * This software is licensed under the terms of the GNU General Public + * License version 2, as published by the Free Software Foundation, and + * may be copied, distributed, and modified under those terms. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ +#ifndef _TIGER_REG_ISP_H_ +#define _TIGER_REG_ISP_H_ +#ifndef CONFIG_64BIT +#include +#else +#include +#endif + +#ifdef __cplusplus +extern "C" +{ +#endif + + + + +#define ISP_DCAM_BASE DCAM_BASE +#define ISP_DCAM_INT_STS (ISP_DCAM_BASE + 0x003CUL) +#define ISP_DCAM_INT_CLR (ISP_DCAM_BASE + 0x0044UL) + +#define ISP_BASE_ADDR ISP_BASE +#define ISP_LNC_STATUS (ISP_BASE_ADDR+0x0200UL) +#define ISP_LNC_LOAD (ISP_BASE_ADDR+0x0220UL) +#define ISP_AXI_MASTER (ISP_BASE_ADDR+0x2000UL) +#define ISP_INT_RAW (ISP_BASE_ADDR+0x2080UL) +#define ISP_INT_STATUS (ISP_BASE_ADDR+0x2084UL) +#define ISP_INT_EN (ISP_BASE_ADDR+0x2078UL) +#define ISP_INT_CLEAR (ISP_BASE_ADDR+0x207cUL) +#define ISP_REG_MAX_SIZE SPRD_ISP_SIZE +#define ISP_AXI_MASTER_STOP (ISP_BASE_ADDR + 0X2054UL) + +#define ISP_AHB_BASE SPRD_MMAHB_BASE +#define ISP_MODULE_EB (ISP_AHB_BASE + 0x0000UL) +#define ISP_MODULE_RESET (ISP_AHB_BASE + 0x0004UL) +#define ISP_CORE_CLK_EB (ISP_AHB_BASE + 0x0008UL) + +#define ISP_CLOCK_BASE SPRD_MMCKG_BASE +#define ISP_CLOCK (ISP_CLOCK_BASE + 0X34) + + +/*irq line number in system*/ +#define ISP_IRQ IRQ_ISP_INT + +#define ISP_EB_BIT BIT_2 +#define ISP_RST_LOG_BIT BIT_2 +#define ISP_RST_CFG_BIT BIT_3 +#define ISP_CORE_CLK_EB_BIT BIT_4 +#define ISP_AXI_MASTER_STOP_BIT BIT_0 + +#define ISP_IRQ_HW_MASK_V0001 (0x1fffffff) +#define ISP_IRQ_NUM_V0001 (29) +#define ISP_TMP_BUF_SIZE_MAX_V0001 (32 * 1024) + +#ifdef __cplusplus +} +#endif + +#endif //_TIGER_REG_ISP_H_ diff --git a/drivers/media/sprd_isp/compat_isp_drv.c b/drivers/media/sprd_isp/compat_isp_drv.c new file mode 100755 index 00000000..497ae777 --- /dev/null +++ b/drivers/media/sprd_isp/compat_isp_drv.c @@ -0,0 +1,356 @@ +/* + * Copyright (C) 2012 Spreadtrum Communications Inc. + * + * This software is licensed under the terms of the GNU General Public + * License version 2, as published by the Free Software Foundation, and + * may be copied, distributed, and modified under those terms. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include +#include +#include +#include