1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* 3 * Support for Intel Camera Imaging ISP subsystem. 4 * Copyright (c) 2015, Intel Corporation. 5 * 6 * This program is free software; you can redistribute it and/or modify it 7 * under the terms and conditions of the GNU General Public License, 8 * version 2, as published by the Free Software Foundation. 9 * 10 * This program is distributed in the hope it will be useful, but WITHOUT 11 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 12 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 13 * more details. 14 */ 15 16 #ifndef __GDC_PUBLIC_H_INCLUDED__ 17 #define __GDC_PUBLIC_H_INCLUDED__ 18 19 /*! Write the bicubic interpolation table of GDC[ID] 20 21 \param ID[in] GDC identifier 22 \param data[in] The data matrix to be written 23 24 \pre 25 - data must point to a matrix[4][HRT_GDC_N] 26 27 \implementation dependent 28 - The value of "HRT_GDC_N" is device specific 29 - The LUT should not be partially written 30 - The LUT format is a quadri-phase interpolation 31 table. The layout is device specific 32 - The range of the values data[n][m] is device 33 specific 34 35 \return none, GDC[ID].lut[0...3][0...HRT_GDC_N-1] = data 36 */ 37 void gdc_lut_store( 38 const gdc_ID_t ID, 39 const int data[4][HRT_GDC_N]); 40 41 /*! Convert the bicubic interpolation table of GDC[ID] to the ISP-specific format 42 43 \param ID[in] GDC identifier 44 \param in_lut[in] The data matrix to be converted 45 \param out_lut[out] The data matrix as the output of conversion 46 */ 47 void gdc_lut_convert_to_isp_format( 48 const int in_lut[4][HRT_GDC_N], 49 int out_lut[4][HRT_GDC_N]); 50 51 /*! Return the integer representation of 1.0 of GDC[ID] 52 53 \param ID[in] GDC identifier 54 55 \return unity 56 */ 57 int gdc_get_unity( 58 const gdc_ID_t ID); 59 60 #endif /* __GDC_PUBLIC_H_INCLUDED__ */ 61