跳到主要内容

fb_var_screeninfo

hi_tde_pattern_fill_opt

说明

模式填充选项操作,在模式填充功能结构中使用。

定义

typedef struct {
hi_tde_alpha_blending alpha_blending_cmd;
hi_tde_rop_mode rop_color;
hi_tde_rop_mode rop_alpha;
hi_tde_colorkey_mode colorkey_mode;
hi_tde_colorkey colorkey_value;
hi_tde_clip_mode clip_mode;
hi_tde_rect clip_rect;
hi_bool clut_reload;
hi_u8 global_alpha;
hi_tde_out_alpha_from out_alpha_from;
hi_u32 color_resize;
hi_tde_blend_opt blend_opt;
hi_tde_csc_opt csc_opt;
} hi_tde_pattern_fill_opt;

成员

成员名称描述
alpha_blending_cmd逻辑操作类型。
rop_color颜色空间的rop类型。Atlas 200/500 A2推理产品不支持。
rop_alphaalpha分量的rop类型。Atlas 200/500 A2推理产品不支持。
colorkey_modeColorkey模式。Atlas 200/500 A2推理产品不支持。
colorkey_valueColorkey值。Atlas 200/500 A2推理产品不支持。
clip_mode裁剪模式。Atlas 200/500 A2推理产品不支持。
clip_rect裁剪区域。Atlas 200/500 A2推理产品不支持。
clut_reload是否重载clut。Atlas 200/500 A2推理产品不支持。
global_alpha全局alpha值。
out_alpha_from输出alpha的源。
color_resizeColorize的值。Atlas 200/500 A2推理产品不支持。
blend_opt混合选项。
csc_optcsc选项。Atlas 200/500 A2推理产品不支持。

父主题: TDE图形绘制

fb_var_screeninfo

说明

定义HIFB的可变屏幕信息,此为Linux FrameBuffer原生结构体。

定义

struct fb_var_screeninfo {
__u32 xres; /* visible resolution */
__u32 yres;
__u32 xres_virtual; /* virtual resolution */
__u32 yres_virtual;
__u32 xoffset; /* offset from virtual to visible */
__u32 yoffset; /* resolution */
__u32 bits_per_pixel;
__u32 grayscale; /* 0 = color, 1 = grayscale, */
/* >1 = FOURCC */
struct fb_bitfield red; /* bitfield in fb mem if true color, */
struct fb_bitfield green; /* else only length is significant */
struct fb_bitfield blue;
struct fb_bitfield transp; /* transparency */
__u32 nonstd; /* != 0 Non standard pixel format */
__u32 activate; /* see FB_ACTIVATE_* */
__u32 height; /* height of picture in mm */
__u32 width; /* width of picture in mm */
__u32 accel_flags; /* (OBSOLETE) see fb_info.flags */

/* Timing: All values in pixclocks, except pixclock (of course) */
__u32 pixclock; /* pixel clock in ps (pico seconds) */
__u32 left_margin; /* time from sync to picture */
__u32 right_margin; /* time from picture to sync */
__u32 upper_margin; /* time from sync to picture */
__u32 lower_margin;
__u32 hsync_len; /* length of horizontal sync */
__u32 vsync_len; /* length of vertical sync */
__u32 sync; /* see FB_SYNC_* */
__u32 vmode; /* see FB_VMODE_* */
__u32 rotate; /* angle we rotate counter clockwise */
__u32 colorspace; /* colorspace for FOURCC-based modes */
__u32 reserved[4]; /* Reserved for future compatibility */
};

成员

G0、G1图层,下表中的Gx_min、Gy_min为32;G2、G3、G4图层,下表中的Gx_min、Gy_min为8。Gx_min表示当前图层支持的最小宽度,Gy_min表示当前图层支持的最小高度。

成员名称描述
xres可见屏幕宽度(像素数),需要为偶数。 取值范围:[Gx_min, xres_virtual]。
yres可见屏幕高度(像素数),需要为偶数。 取值范围:[Gy_min, yres_virtual]。
xres_virtual虚拟屏幕宽度(显存中图像宽度)。 取值范围:大于或等于Gx_min。
yres_virtual虚拟屏幕高度(显存中图像高度)。 取值范围:大于或等于Gy_min。
xoffset在x方向上的偏移像素数。 取值范围:[0, xres_virtual - xres]。
yoffset在y方向上的偏移像素数。 取值范围:[0, yres_virtual - yres]
bits_per_pixel每个像素所占的比特数。 取值范围:32/16/4/2 注:4和2分别对应CLUT4和CLUT2模式,需要使能CMAP功能。
red颜色分量中红色的位域信息。
green颜色分量中绿色的位域信息。
blue颜色分量中蓝色的位域信息。
transp颜色分量中alpha分量的位域信息。
grayscale颜色模式,当前版本不支持。
nonstd是否为标准像素格式,当前版本不支持。
- 0:是
- 1:否
activate设置生效的时刻,当前版本不支持。
height屏幕高,单位为mm,当前版本不支持。
width屏幕宽,单位为mm,当前版本不支持。
accel_flags加速标志,当前版本不支持。
pixclock显示一个点需要的时间,单位为ns,当前版本不支持。
left_margin左消隐信号,当前版本不支持。
right_margin右消隐信号,当前版本不支持。
upper_margin上消隐信号,当前版本不支持。
lower_margin下消隐信号,当前版本不支持。
hsync_len水平同步时长,当前版本不支持。
vsync_len垂直同步时长,当前版本不支持。
sync同步信号方式,当前版本不支持。
vmode扫描模式,当前版本不支持。
rotate顺时针旋转的角度,当前版本不支持。
colorspaceFOURCC模式的色彩空间, 当前版本不支持。
reserved[4]预留参数,当前版本不支持。

父主题: HIFB叠加图形层管理

fb_fix_screeninfo

说明

定义HIFB的固定屏幕信息,此为Linux FrameBuffer原生结构体。

定义

struct fb_fix_screeninfo {
char id[16]; /* identification string eg "TT Builtin" */
unsigned long smem_start; /* Start of frame buffer mem */
/* (physical address) */
__u32 smem_len; /* Length of frame buffer mem */
__u32 type; /* see FB_TYPE_* */
__u32 type_aux; /* Interleave for interleaved Planes */
__u32 visual; /* see FB_VISUAL_* */
__u16 xpanstep; /* zero if no hardware panning */
__u16 ypanstep; /* zero if no hardware panning */
__u16 ywrapstep; /* zero if no hardware ywrap */
__u32 line_length; /* length of a line in bytes */
unsigned long mmio_start; /* Start of Memory Mapped I/O */
/* (physical address) */
__u32 mmio_len; /* Length of Memory Mapped I/O */
__u32 accel; /* Indicate to driver which */
/* specific chip/card we have */
__u16 capabilities; /* see FB_CAP_* */
__u16 reserved[2]; /* Reserved for future compatibility */
};

成员

成员名称描述
id[16]设备驱动名称。
smem_start显存起始内核态虚拟地址。
smem_len显存大小,单位:字节。
type显存类型,当前版本不支持。
type_aux附加类型,当前版本不支持。
visual色彩模式,当前版本不支持。
xpanstep支持水平方向上的PAN显示:
- 0:不支持。
- 非0:支持,此时该值用于表示在水平方向上每步进的像素值。
当前版本不支持。
ypanstep支持垂直方向上的PAN显示:
- 0:不支持。
- 非0:支持,此时该值用于表示在垂直方向上每步进的像素值。
当前版本不支持。
ywrapstep类似于ypanstep,不同之处在于:当起显示当底部时,能回到显存的开始处进行显示。 当前版本不支持。
line_length每行字节数,当前版本不支持。
mmio_start显存起始用户态虚拟地址。
mmio_len显存大小,单位:字节。
accel显示所支持的硬件加速设备,当前版本不支持。
capabilities预留参数,当前版本不支持。
reserved[2]预留参数,当前版本不支持。

父主题: HIFB叠加图形层管理

fb_cmap

说明

定义HIFB的颜色表信息,此为Linux FrameBuffer原生结构体。

定义

struct fb_cmap {
__u32 start; /* First entry */
__u32 len; /* Number of entries */
__u16 *red; /* Red values */
__u16 *green;
__u16 *blue;
__u16 *transp; /* transparency, can be NULL */
};

成员

成员名称描述
start颜色表入口索引。
len颜色表长度(单分量颜色表数量)。 最大长度为256。
red红色分量表。
green绿色分量表。
blue蓝色分量表。
transpAlpha分量表。

父主题: HIFB叠加图形层管理

在线提单