1f5fbb83fSMauro Carvalho Chehab // SPDX-License-Identifier: GPL-2.0
29d4fa1a1SMauro Carvalho Chehab /*
39d4fa1a1SMauro Carvalho Chehab  * Support for Intel Camera Imaging ISP subsystem.
49d4fa1a1SMauro Carvalho Chehab  * Copyright (c) 2015, Intel Corporation.
59d4fa1a1SMauro Carvalho Chehab  *
69d4fa1a1SMauro Carvalho Chehab  * This program is free software; you can redistribute it and/or modify it
79d4fa1a1SMauro Carvalho Chehab  * under the terms and conditions of the GNU General Public License,
89d4fa1a1SMauro Carvalho Chehab  * version 2, as published by the Free Software Foundation.
99d4fa1a1SMauro Carvalho Chehab  *
109d4fa1a1SMauro Carvalho Chehab  * This program is distributed in the hope it will be useful, but WITHOUT
119d4fa1a1SMauro Carvalho Chehab  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
129d4fa1a1SMauro Carvalho Chehab  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
139d4fa1a1SMauro Carvalho Chehab  * more details.
149d4fa1a1SMauro Carvalho Chehab  */
159d4fa1a1SMauro Carvalho Chehab 
16662fb4fcSMauro Carvalho Chehab #include <linux/string.h> /* for memcpy() */
17662fb4fcSMauro Carvalho Chehab 
189d4fa1a1SMauro Carvalho Chehab #include <type_support.h>
199d4fa1a1SMauro Carvalho Chehab #include "system_global.h"
209d4fa1a1SMauro Carvalho Chehab #include "vamem.h"
219d4fa1a1SMauro Carvalho Chehab #include "ia_css_types.h"
229d4fa1a1SMauro Carvalho Chehab #include "ia_css_ctc_table.host.h"
239d4fa1a1SMauro Carvalho Chehab 
249d4fa1a1SMauro Carvalho Chehab struct ia_css_ctc_table       default_ctc_table;
259d4fa1a1SMauro Carvalho Chehab 
269d4fa1a1SMauro Carvalho Chehab 
279d4fa1a1SMauro Carvalho Chehab static const uint16_t
289d4fa1a1SMauro Carvalho Chehab default_ctc_table_data[IA_CSS_VAMEM_2_CTC_TABLE_SIZE] = {
299d4fa1a1SMauro Carvalho Chehab 	0,  384,  837,  957, 1011, 1062, 1083, 1080,
309d4fa1a1SMauro Carvalho Chehab 	1078, 1077, 1053, 1039, 1012,  992,  969,  951,
319d4fa1a1SMauro Carvalho Chehab 	929,  906,  886,  866,  845,  823,  809,  790,
329d4fa1a1SMauro Carvalho Chehab 	772,  758,  741,  726,  711,  701,  688,  675,
339d4fa1a1SMauro Carvalho Chehab 	666,  656,  648,  639,  633,  626,  618,  612,
349d4fa1a1SMauro Carvalho Chehab 	603,  594,  582,  572,  557,  545,  529,  516,
359d4fa1a1SMauro Carvalho Chehab 	504,  491,  480,  467,  459,  447,  438,  429,
369d4fa1a1SMauro Carvalho Chehab 	419,  412,  404,  397,  389,  382,  376,  368,
379d4fa1a1SMauro Carvalho Chehab 	363,  357,  351,  345,  340,  336,  330,  326,
389d4fa1a1SMauro Carvalho Chehab 	321,  318,  312,  308,  304,  300,  297,  294,
399d4fa1a1SMauro Carvalho Chehab 	291,  286,  284,  281,  278,  275,  271,  268,
409d4fa1a1SMauro Carvalho Chehab 	261,  257,  251,  245,  240,  235,  232,  225,
419d4fa1a1SMauro Carvalho Chehab 	223,  218,  213,  209,  206,  204,  199,  197,
429d4fa1a1SMauro Carvalho Chehab 	193,  189,  186,  185,  183,  179,  177,  175,
439d4fa1a1SMauro Carvalho Chehab 	172,  170,  169,  167,  164,  164,  162,  160,
449d4fa1a1SMauro Carvalho Chehab 	158,  157,  156,  154,  154,  152,  151,  150,
459d4fa1a1SMauro Carvalho Chehab 	149,  148,  146,  147,  146,  144,  143,  143,
469d4fa1a1SMauro Carvalho Chehab 	142,  141,  140,  141,  139,  138,  138,  138,
479d4fa1a1SMauro Carvalho Chehab 	137,  136,  136,  135,  134,  134,  134,  133,
489d4fa1a1SMauro Carvalho Chehab 	132,  132,  131,  130,  131,  130,  129,  128,
499d4fa1a1SMauro Carvalho Chehab 	129,  127,  127,  127,  127,  125,  125,  125,
509d4fa1a1SMauro Carvalho Chehab 	123,  123,  122,  120,  118,  115,  114,  111,
519d4fa1a1SMauro Carvalho Chehab 	110,  108,  106,  105,  103,  102,  100,   99,
529d4fa1a1SMauro Carvalho Chehab 	97,   97,   96,   95,   94,   93,   93,   91,
539d4fa1a1SMauro Carvalho Chehab 	91,   91,   90,   90,   89,   89,   88,   88,
549d4fa1a1SMauro Carvalho Chehab 	89,   88,   88,   87,   87,   87,   87,   86,
559d4fa1a1SMauro Carvalho Chehab 	87,   87,   86,   87,   86,   86,   84,   84,
569d4fa1a1SMauro Carvalho Chehab 	82,   80,   78,   76,   74,   72,   70,   68,
579d4fa1a1SMauro Carvalho Chehab 	67,   65,   62,   60,   58,   56,   55,   54,
589d4fa1a1SMauro Carvalho Chehab 	53,   51,   49,   49,   47,   45,   45,   45,
599d4fa1a1SMauro Carvalho Chehab 	41,   40,   39,   39,   34,   33,   34,   32,
609d4fa1a1SMauro Carvalho Chehab 	25,   23,   24,   20,   13,    9,   12,    0,
619d4fa1a1SMauro Carvalho Chehab 	0
629d4fa1a1SMauro Carvalho Chehab };
639d4fa1a1SMauro Carvalho Chehab 
649d4fa1a1SMauro Carvalho Chehab 
659d4fa1a1SMauro Carvalho Chehab void
ia_css_config_ctc_table(void)669d4fa1a1SMauro Carvalho Chehab ia_css_config_ctc_table(void)
679d4fa1a1SMauro Carvalho Chehab {
689d4fa1a1SMauro Carvalho Chehab 	memcpy(default_ctc_table.data.vamem_2, default_ctc_table_data,
699d4fa1a1SMauro Carvalho Chehab 	       sizeof(default_ctc_table_data));
709d4fa1a1SMauro Carvalho Chehab 	default_ctc_table.vamem_type     = IA_CSS_VAMEM_TYPE_2;
719d4fa1a1SMauro Carvalho Chehab }
72