gk7205v200-uboot/product/osd/vo/include/vo.h

51 lines
1.6 KiB
C
Raw Normal View History

2025-08-07 17:13:54 +08:00
/*
* Copyright (c) Hunan Goke,Chengdu Goke,Shandong Goke. 2021. All rights reserved.
*/
#ifndef __VO_H__
#define __VO_H__
#include "common_vo.h"
#define VO_RECT_ALIGN 2
#define VO_ALPHA_OPACITY 0xFF /* opacity alpha */
#define VOU_ALIGN(val, align) (((val) + (align) - 1) & (~((align) - 1)))
#define VO_MAX_VTTH_WATERLINE 8191
/* typical value of video size */
typedef enum {
VO_DISP_1080_WIDTH = 1920,
VO_DISP_1080_HEIGHT = 1080,
VO_DISP_720P_WIDTH = 1280,
VO_DISP_720P_HEIGHT = 720,
VO_DISP_D1_WIDTH = 720,
VO_DISP_D1P_HEIGH = 576,
VO_DISP_D1N_HEIGH = 480,
VO_DISP_VGA_1024 = 1024,
VO_DISP_VGA_768 = 768,
VO_DISP_VGA_800 = 800,
VO_DISP_VGA_600 = 600,
VO_DISP_VIRT_WIDTH = 5000,
VO_DISP_VIRT_HEIGHT = 5000,
VO_DISP_8K_WIDTH = 8192,
VO_DISP_8K_HEIGHT = 4320,
VO_DISP_BUTT
} vo_disp_size;
int set_vobg(unsigned int dev, unsigned int rgb);
int start_vo(unsigned int dev, unsigned int type, unsigned int sync);
int stop_vo(unsigned int dev);
int start_gx(unsigned int layer, unsigned long addr, unsigned int strd, gk_rect gx_rect, unsigned int type);
int stop_gx(unsigned int layer);
int start_videolayer(unsigned int layer, unsigned long addr, unsigned int strd, gk_rect layer_rect);
int stop_videolayer(unsigned int layer);
gk_void vo_dcache_range(gk_phys_addr_t start_addr, gk_u64 size);
typedef struct {
gk_bool video_enable;
gk_bool video_config;
gk_vo_csc layer_csc;
gk_vo_video_layer_attr vou_video_attr;
} vo_layer_info;
#endif /* end of __VO_H__ */