63 #ifndef HWA_VPAC_LDC_H_ 64 #define HWA_VPAC_LDC_H_ 67 #include <VX/vx_kernels.h> 81 #define TIVX_KERNEL_VPAC_LDC_NAME "com.ti.hwa.vpac_ldc" 94 #define TIVX_VPAC_LDC_CMD_SET_READ_BW_LIMIT_PARAMS (0x10000000u) 106 #define TIVX_VPAC_LDC_CMD_SET_BIT_DEPTH_CONV_LUT_PARAMS (0x10000001u) 117 #define TIVX_VPAC_LDC_CMD_GET_ERR_STATUS (0x10000002u) 130 #define TIVX_VPAC_LDC_CMD_SET_LDC_PARAMS (0x10000003u) 147 #define TIVX_VPAC_LDC_CMD_SET_LDC_DCC_PARAMS (0x30000000u) 160 #define TIVX_VPAC_LDC_ALIGN_LSB (0U) 162 #define TIVX_VPAC_LDC_ALIGN_MSB (1U) 165 #define TIVX_VPAC_LDC_INTERPOLATION_BICUBIC (0U) 167 #define TIVX_VPAC_LDC_INTERPOLATION_BILINEAR (1U) 170 #define TIVX_VPAC_LDC_MODE_LUMA_ONLY (0U) 172 #define TIVX_VPAC_LDC_MODE_CHROMA_ONLY (1U) 181 #define TIVX_VPAC_LDC_CALC_MESH_LINE_OFFSET(width, subsample_factor) \ 182 ((((((width)/(subsample_factor))+1) + 15U) & ~15U) * (4U)) 185 #define TIVX_VPAC_LDC_BIT_DEPTH_CONV_LUT_SIZE (513u) 189 #define TIVX_VPAC_LDC_PIX_BLK_OUTOFBOUND_ERR_STATUS (0x1u) 192 #define TIVX_VPAC_LDC_MESH_BLK_OUTOFBOUND_ERR_STATUS (0x2u) 194 #define TIVX_VPAC_LDC_PIX_MEM_OVF_ERR_STATUS (0x4u) 196 #define TIVX_VPAC_LDC_MESH_MEM_OVF_ERR_STATUS (0x8u) 198 #define TIVX_VPAC_LDC_PIX_FRM_OUTOFBOUND_ERR_STATUS (0x10u) 200 #define TIVX_VPAC_LDC_SZ_OVF_ERR_STATUS (0x20u) 202 #define TIVX_VPAC_LDC_SL2_WR_ERR_STATUS (0x80u) 204 #define TIVX_VPAC_LDC_RD_ERR_STATUS (0x100u) 206 #define TIVX_VPAC_LDC_SET_PARAMS_WARP_MATRIX_IDX (0u) 208 #define TIVX_VPAC_LDC_DEF_BLOCK_WIDTH (64u) 209 #define TIVX_VPAC_LDC_DEF_BLOCK_HEIGHT (64u) 210 #define TIVX_VPAC_LDC_DEF_PIXEL_PAD (0u) 241 uint32_t reg_width[3];
243 uint32_t reg_height[3];
struct _vx_image * vx_image
The region_params data structure used by the TIVX_KERNEL_VPAC_LDC kernel.
The remap params structure used by the TIVX_KERNEL_VPAC_LDC kernel. Passed as argument to TIVX_VPAC_L...
#define TIVX_VPAC_LDC_BIT_DEPTH_CONV_LUT_SIZE
uint32_t max_burst_length
void tivx_vpac_ldc_region_params_init(tivx_vpac_ldc_region_params_t *prms)
Function to initialize LDC Region parameters.
uint32_t luma_interpolation_type
void tivxUnRegisterHwaTargetVpacLdcKernels(void)
Function to un-register HWA Kernels on the vpac_ldc Target.
void tivx_vpac_ldc_mesh_params_init(tivx_vpac_ldc_mesh_params_t *prms)
Function to initialize LDC Mesh parameters.
The configuration data structure used by the TIVX_KERNEL_VPAC_LDC kernel.
void tivx_vpac_ldc_bandwidth_params_init(tivx_vpac_ldc_bandwidth_params_t *prms)
Function to initialize Bandwidth limiter parameters.
uint32_t bandwidth_control
The alternative region_params data structure used by the TIVX_KERNEL_VPAC_LDC kernel.
uint32_t input_align_12bit
struct _vx_user_data_object * vx_user_data_object
The User Data Object. User Data Object is a strongly-typed container for other data structures...
uint32_t mesh_frame_height
uint32_t mesh_frame_width
uint32_t subsample_factor
struct _vx_graph * vx_graph
struct _vx_node * vx_node
void tivx_vpac_ldc_multi_region_params_init(tivx_vpac_ldc_multi_region_params_t *prms)
Function to initialize LDC Multi Region parameters.
VX_API_ENTRY vx_node VX_API_CALL tivxVpacLdcNode(vx_graph graph, vx_user_data_object configuration, vx_matrix warp_matrix, vx_user_data_object region_prms, vx_user_data_object mesh_prms, vx_image mesh_img, vx_user_data_object dcc_db, vx_image in_img, vx_image out0_img, vx_image out1_img)
[Graph] Creates a VPAC_LDC Node.
The bandwidth params structure used by the TIVX_KERNEL_VPAC_LDC kernel. Passed as argument to TIVX_VP...
uint32_t out_block_height
struct _vx_matrix * vx_matrix
void tivxRegisterHwaTargetVpacLdcKernels(void)
Function to register HWA Kernels on the vpac_ldc Target.
vx_status(* VX_API_CALL)(vx_reference *ref)
Callback type used to register release callbacks from object dervied from references.
The mesh data structure in the configuration data structure used by the TIVX_KERNEL_VPAC_LDC kernel...
void tivx_vpac_ldc_params_init(tivx_vpac_ldc_params_t *prms)
Function to initialize LDC parameters with the default values.