diff options
Diffstat (limited to 'drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0')
6 files changed, 0 insertions, 338 deletions
diff --git a/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr.host.c b/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr.host.c deleted file mode 100644 index abcb531f51cc..000000000000 --- a/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr.host.c +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Support for Intel Camera Imaging ISP subsystem. - * Copyright (c) 2015, Intel Corporation. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms and conditions of the GNU General Public License, - * version 2, as published by the Free Software Foundation. - * - * This program is distributed in the hope 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 "ia_css_types.h" -#include "sh_css_defs.h" -#include "ia_css_debug.h" -#include "sh_css_frac.h" - -#include "ia_css_xnr.host.h" - -const struct ia_css_xnr_config default_xnr_config = { - /* default threshold 6400 translates to 25 on ISP. */ - 6400 -}; - -void -ia_css_xnr_table_vamem_encode( - struct sh_css_isp_xnr_vamem_params *to, - const struct ia_css_xnr_table *from, - unsigned size) -{ - (void)size; - memcpy (&to->xnr, &from->data, sizeof(to->xnr)); -} - -void -ia_css_xnr_encode( - struct sh_css_isp_xnr_params *to, - const struct ia_css_xnr_config *from, - unsigned size) -{ - (void)size; - - to->threshold = - (uint16_t)uDIGIT_FITTING(from->threshold, 16, SH_CSS_ISP_YUV_BITS); -} - -void -ia_css_xnr_table_debug_dtrace( - const struct ia_css_xnr_table *config, - unsigned level) -{ - (void)config; - (void)level; -} - -void -ia_css_xnr_debug_dtrace( - const struct ia_css_xnr_config *config, - unsigned level) -{ - ia_css_debug_dtrace(level, - "config.threshold=%d\n", config->threshold); -} diff --git a/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr.host.h b/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr.host.h deleted file mode 100644 index eb3425eafbbe..000000000000 --- a/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr.host.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Support for Intel Camera Imaging ISP subsystem. - * Copyright (c) 2015, Intel Corporation. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms and conditions of the GNU General Public License, - * version 2, as published by the Free Software Foundation. - * - * This program is distributed in the hope 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 __IA_CSS_XNR_HOST_H -#define __IA_CSS_XNR_HOST_H - -#include "sh_css_params.h" - -#include "ia_css_xnr_param.h" -#include "ia_css_xnr_table.host.h" - -extern const struct ia_css_xnr_config default_xnr_config; - -void -ia_css_xnr_table_vamem_encode( - struct sh_css_isp_xnr_vamem_params *to, - const struct ia_css_xnr_table *from, - unsigned size); - -void -ia_css_xnr_encode( - struct sh_css_isp_xnr_params *to, - const struct ia_css_xnr_config *from, - unsigned size); - -void -ia_css_xnr_table_debug_dtrace( - const struct ia_css_xnr_table *s3a, - unsigned level); - -void -ia_css_xnr_debug_dtrace( - const struct ia_css_xnr_config *config, - unsigned level); - -#endif /* __IA_CSS_XNR_HOST_H */ diff --git a/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr_param.h b/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr_param.h deleted file mode 100644 index a5caebbe2f84..000000000000 --- a/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr_param.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Support for Intel Camera Imaging ISP subsystem. - * Copyright (c) 2015, Intel Corporation. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms and conditions of the GNU General Public License, - * version 2, as published by the Free Software Foundation. - * - * This program is distributed in the hope 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 __IA_CSS_XNR_PARAM_H -#define __IA_CSS_XNR_PARAM_H - -#include "type_support.h" -#include <system_global.h> - -#ifndef PIPE_GENERATION -#if defined(HAS_VAMEM_VERSION_2) -#define SH_CSS_ISP_XNR_TABLE_SIZE_LOG2 IA_CSS_VAMEM_2_XNR_TABLE_SIZE_LOG2 -#define SH_CSS_ISP_XNR_TABLE_SIZE IA_CSS_VAMEM_2_XNR_TABLE_SIZE -#elif defined(HAS_VAMEM_VERSION_1) -#define SH_CSS_ISP_XNR_TABLE_SIZE_LOG2 IA_CSS_VAMEM_1_XNR_TABLE_SIZE_LOG2 -#define SH_CSS_ISP_XNR_TABLE_SIZE IA_CSS_VAMEM_1_XNR_TABLE_SIZE -#else -#error "Unknown vamem type" -#endif - - -#else -/* For pipe generation, the size is not relevant */ -#define SH_CSS_ISP_XNR_TABLE_SIZE 0 -#endif - -/* This should be vamem_data_t, but that breaks the pipe generator */ -struct sh_css_isp_xnr_vamem_params { - uint16_t xnr[SH_CSS_ISP_XNR_TABLE_SIZE]; -}; - -struct sh_css_isp_xnr_params { - /* XNR threshold. - * type:u0.16 but actual valid range is:[0,255] - * valid range is dependent on SH_CSS_ISP_YUV_BITS (currently 8bits) - * default: 25 */ - uint16_t threshold; -}; - -#endif /* __IA_CSS_XNR_PARAM_H */ diff --git a/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr_table.host.c b/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr_table.host.c deleted file mode 100644 index cd5fb72fce3f..000000000000 --- a/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr_table.host.c +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Support for Intel Camera Imaging ISP subsystem. - * Copyright (c) 2015, Intel Corporation. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms and conditions of the GNU General Public License, - * version 2, as published by the Free Software Foundation. - * - * This program is distributed in the hope 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 <type_support.h> -#include <string_support.h> /* memcpy */ -#include "system_global.h" -#include "vamem.h" -#include "ia_css_types.h" -#include "ia_css_xnr_table.host.h" - -struct ia_css_xnr_table default_xnr_table; - -#if defined(HAS_VAMEM_VERSION_2) - -static const uint16_t -default_xnr_table_data[IA_CSS_VAMEM_2_XNR_TABLE_SIZE] = { - /* 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */ - 8191>>1, 4096>>1, 2730>>1, 2048>>1, 1638>>1, 1365>>1, 1170>>1, 1024>>1, 910>>1, 819>>1, 744>>1, 682>>1, 630>>1, 585>>1, - 546>>1, 512>>1, - - /* 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 */ - 481>>1, 455>>1, 431>>1, 409>>1, 390>>1, 372>>1, 356>>1, 341>>1, 327>>1, 315>>1, 303>>1, 292>>1, 282>>1, 273>>1, 264>>1, - 256>>1, - - /* 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 */ - 248>>1, 240>>1, 234>>1, 227>>1, 221>>1, 215>>1, 210>>1, 204>>1, 199>>1, 195>>1, 190>>1, 186>>1, 182>>1, 178>>1, 174>>1, - 170>>1, - - /* 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 */ - 167>>1, 163>>1, 160>>1, 157>>1, 154>>1, 151>>1, 148>>1, 146>>1, 143>>1, 141>>1, 138>>1, 136>>1, 134>>1, 132>>1, 130>>1, 128>>1 -}; - -#elif defined(HAS_VAMEM_VERSION_1) - -static const uint16_t -default_xnr_table_data[IA_CSS_VAMEM_1_XNR_TABLE_SIZE] = { - /* 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */ - 8191>>1, 4096>>1, 2730>>1, 2048>>1, 1638>>1, 1365>>1, 1170>>1, 1024>>1, 910>>1, 819>>1, 744>>1, 682>>1, 630>>1, 585>>1, - 546>>1, 512>>1, - - /* 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 */ - 481>>1, 455>>1, 431>>1, 409>>1, 390>>1, 372>>1, 356>>1, 341>>1, 327>>1, 315>>1, 303>>1, 292>>1, 282>>1, 273>>1, 264>>1, - 256>>1, - - /* 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 */ - 248>>1, 240>>1, 234>>1, 227>>1, 221>>1, 215>>1, 210>>1, 204>>1, 199>>1, 195>>1, 190>>1, 186>>1, 182>>1, 178>>1, 174>>1, - 170>>1, - - /* 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 */ - 167>>1, 163>>1, 160>>1, 157>>1, 154>>1, 151>>1, 148>>1, 146>>1, 143>>1, 141>>1, 138>>1, 136>>1, 134>>1, 132>>1, 130>>1, 128>>1 -}; - -#else -#error "sh_css_params.c: VAMEM version must \ - be one of {VAMEM_VERSION_1, VAMEM_VERSION_2}" -#endif - -void -ia_css_config_xnr_table(void) -{ -#if defined(HAS_VAMEM_VERSION_2) - memcpy(default_xnr_table.data.vamem_2, default_xnr_table_data, - sizeof(default_xnr_table_data)); - default_xnr_table.vamem_type = IA_CSS_VAMEM_TYPE_2; -#else - memcpy(default_xnr_table.data.vamem_1, default_xnr_table_data, - sizeof(default_xnr_table_data)); - default_xnr_table.vamem_type = IA_CSS_VAMEM_TYPE_1; -#endif -} diff --git a/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr_table.host.h b/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr_table.host.h deleted file mode 100644 index 130086713a7f..000000000000 --- a/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr_table.host.h +++ /dev/null @@ -1,22 +0,0 @@ -/* - * Support for Intel Camera Imaging ISP subsystem. - * Copyright (c) 2015, Intel Corporation. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms and conditions of the GNU General Public License, - * version 2, as published by the Free Software Foundation. - * - * This program is distributed in the hope 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 __IA_CSS_XNR_TABLE_HOST_H -#define __IA_CSS_XNR_TABLE_HOST_H - -extern struct ia_css_xnr_table default_xnr_table; - -void ia_css_config_xnr_table(void); - -#endif /* __IA_CSS_XNR_TABLE_HOST_H */ diff --git a/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr_types.h b/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr_types.h deleted file mode 100644 index d2b634211a3f..000000000000 --- a/drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/xnr/xnr_1.0/ia_css_xnr_types.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Support for Intel Camera Imaging ISP subsystem. - * Copyright (c) 2015, Intel Corporation. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms and conditions of the GNU General Public License, - * version 2, as published by the Free Software Foundation. - * - * This program is distributed in the hope 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 __IA_CSS_XNR_TYPES_H -#define __IA_CSS_XNR_TYPES_H - -/* @file -* CSS-API header file for Extra Noise Reduction (XNR) parameters. -*/ - -/* XNR table. - * - * NOTE: The driver does not need to set this table, - * because the default values are set inside the css. - * - * This table contains coefficients used for division in XNR. - * - * u0.12, [0,4095], - * {4095, 2048, 1365, .........., 65, 64} - * ({1/1, 1/2, 1/3, ............., 1/63, 1/64}) - * - * ISP block: XNR1 - * ISP1: XNR1 is used. - * ISP2: XNR1 is used. - * - */ - -/* Number of elements in the xnr table. */ -#define IA_CSS_VAMEM_1_XNR_TABLE_SIZE_LOG2 6 -/* Number of elements in the xnr table. */ -#define IA_CSS_VAMEM_1_XNR_TABLE_SIZE (1U<<IA_CSS_VAMEM_1_XNR_TABLE_SIZE_LOG2) - -/* Number of elements in the xnr table. */ -#define IA_CSS_VAMEM_2_XNR_TABLE_SIZE_LOG2 6 -/* Number of elements in the xnr table. */ -#define IA_CSS_VAMEM_2_XNR_TABLE_SIZE (1U<<IA_CSS_VAMEM_2_XNR_TABLE_SIZE_LOG2) - -/** IA_CSS_VAMEM_TYPE_1(ISP2300) or - IA_CSS_VAMEM_TYPE_2(ISP2400) */ -union ia_css_xnr_data { - uint16_t vamem_1[IA_CSS_VAMEM_1_XNR_TABLE_SIZE]; - /** Coefficients table on vamem type1. u0.12, [0,4095] */ - uint16_t vamem_2[IA_CSS_VAMEM_2_XNR_TABLE_SIZE]; - /** Coefficients table on vamem type2. u0.12, [0,4095] */ -}; - -struct ia_css_xnr_table { - enum ia_css_vamem_type vamem_type; - union ia_css_xnr_data data; -}; - -struct ia_css_xnr_config { - /* XNR threshold. - * type:u0.16 valid range:[0,65535] - * default: 6400 */ - uint16_t threshold; -}; - -#endif /* __IA_CSS_XNR_TYPES_H */ - |