linux/drivers/media/platform/verisilicon/rockchip_av1_entropymode.h

/* SPDX-License-Identifier: GPL-2.0-only */

#ifndef _ROCKCHIP_AV1_ENTROPYMODE_H_
#define _ROCKCHIP_AV1_ENTROPYMODE_H_

#include <linux/types.h>

struct hantro_ctx;

#define AV1_INTER_MODE_CONTEXTS
#define AV1_INTRA_MODES
#define AV1_REF_CONTEXTS
#define AV1_SWITCHABLE_FILTERS
#define AV1_TX_SIZE_CONTEXTS
#define BLOCK_SIZE_GROUPS
#define BR_CDF_SIZE
#define BWD_REFS
#define CFL_ALLOWED_TYPES
#define CFL_ALPHA_CONTEXTS
#define CFL_ALPHABET_SIZE
#define CFL_JOINT_SIGNS
#define CDF_SIZE(x)
#define COMP_GROUP_IDX_CONTEXTS
#define COMP_INDEX_CONTEXTS
#define COMP_INTER_CONTEXTS
#define COMP_REF_TYPE_CONTEXTS
#define COMPOUND_TYPES
#define DC_SIGN_CONTEXTS
#define DELTA_LF_PROBS
#define DELTA_Q_PROBS
#define DIRECTIONAL_MODES
#define DRL_MODE_CONTEXTS
#define EOB_COEF_CONTEXTS
#define EXT_TX_SIZES
#define EXT_TX_TYPES
#define EXTTX_SIZES
#define FRAME_LF_COUNT
#define FWD_REFS
#define GLOBALMV_MODE_CONTEXTS
#define ICDF(x)
#define INTER_COMPOUND_MODES
#define INTERINTRA_MODES
#define INTRA_INTER_CONTEXTS
#define KF_MODE_CONTEXTS
#define LEVEL_CONTEXTS
#define MAX_ANGLE_DELTA
#define MAX_MB_SEGMENTS
#define MAX_SEGMENTS
#define MAX_TX_CATS
#define MAX_TX_DEPTH
#define MBSKIP_CONTEXTS
#define MOTION_MODES
#define MOTION_MODE_CONTEXTS
#define NEWMV_MODE_CONTEXTS
#define NUM_BASE_LEVELS
#define NUM_REF_FRAMES
#define PALETTE_BLOCK_SIZES
#define PALETTE_IDX_CONTEXTS
#define PALETTE_SIZES
#define PALETTE_UV_MODE_CONTEXTS
#define PALETTE_Y_MODE_CONTEXTS
#define PARTITION_PLOFFSET
#define NUM_PARTITION_CONTEXTS
#define PLANE_TYPES
#define PREDICTION_PROBS
#define REF_CONTEXTS
#define REFMV_MODE_CONTEXTS
#define SEG_TEMPORAL_PRED_CTXS
#define SIG_COEF_CONTEXTS
#define SIG_COEF_CONTEXTS_EOB
#define SINGLE_REFS
#define SKIP_CONTEXTS
#define SKIP_MODE_CONTEXTS
#define SPATIAL_PREDICTION_PROBS
#define SWITCHABLE_FILTER_CONTEXTS
#define TOKEN_CDF_Q_CTXS
#define TX_SIZES
#define TX_SIZE_CONTEXTS
#define TX_TYPES
#define TXB_SKIP_CONTEXTS
#define TXFM_PARTITION_CONTEXTS
#define UNI_COMP_REF_CONTEXTS
#define UNIDIR_COMP_REFS
#define UV_INTRA_MODES
#define VARTX_PART_CONTEXTS
#define ZEROMV_MODE_CONTEXTS

enum blocksizetype {};

enum filterintramodetype {};

enum frametype {};

enum txsize {};

enum {};

enum mb_prediction_mode {};

enum partitiontype {};

struct mvcdfs {};

struct av1cdfs {};

void rockchip_av1_store_cdfs(struct hantro_ctx *ctx,
			     u32 refresh_frame_flags);
void rockchip_av1_get_cdfs(struct hantro_ctx *ctx, u32 ref_idx);
void rockchip_av1_set_default_cdfs(struct av1cdfs *cdfs,
				   struct mvcdfs *cdfs_ndvc);
void rockchip_av1_default_coeff_probs(u32 base_qindex, void *ptr);

#endif /* _ROCKCHIP_AV1_ENTROPYMODE_H_ */