52 lines
1.1 KiB
C
52 lines
1.1 KiB
C
/* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */
|
|
/*
|
|
* drivers/vpp/aml_vpp.h
|
|
*
|
|
* Copyright (C) 2020 Amlogic, Inc. All rights reserved.
|
|
*
|
|
*/
|
|
|
|
#ifndef __VPP_H__
|
|
#define __VPP_H__
|
|
|
|
/* OSD csc defines */
|
|
enum vpp_matrix_sel_e {
|
|
VPP_MATRIX_0 = 0, /* OSD convert matrix - new from GXL */
|
|
VPP_MATRIX_1, /* vd1 matrix before post-blend */
|
|
VPP_MATRIX_2, /* post matrix */
|
|
VPP_MATRIX_3, /* xvycc matrix */
|
|
VPP_MATRIX_4, /* in video eotf - new from GXL */
|
|
VPP_MATRIX_5, /* in osd eotf - new from GXL */
|
|
VPP_MATRIX_6 /* vd2 matrix before pre-blend */
|
|
};
|
|
#define NUM_MATRIX 6
|
|
|
|
/* matrix names */
|
|
#define VPP_MATRIX_OSD VPP_MATRIX_0
|
|
#define VPP_MATRIX_VD1 VPP_MATRIX_1
|
|
#define VPP_MATRIX_POST VPP_MATRIX_2
|
|
#define VPP_MATRIX_XVYCC VPP_MATRIX_3
|
|
#define VPP_MATRIX_EOTF VPP_MATRIX_4
|
|
#define VPP_MATRIX_OSD_EOTF VPP_MATRIX_5
|
|
#define VPP_MATRIX_VD2 VPP_MATRIX_6
|
|
|
|
#define CSC_ON 1
|
|
#define CSC_OFF 0
|
|
|
|
enum vpp_lut_sel_e {
|
|
VPP_LUT_OSD_EOTF = 0,
|
|
VPP_LUT_OSD_OETF,
|
|
VPP_LUT_EOTF,
|
|
VPP_LUT_OETF
|
|
};
|
|
#define NUM_LUT 4
|
|
|
|
/* matrix registers */
|
|
struct matrix_s {
|
|
u16 pre_offset[3];
|
|
u16 matrix[3][3];
|
|
u16 offset[3];
|
|
u16 right_shift;
|
|
};
|
|
#endif
|