HPM SDK
HPMicro Software Development Kit
Display_common driver APIs

Display_common driver APIs. More...

Data Structures

union  display_color_32b
 display data 32 bits argb More...
 
struct  dispaly_alphablend_option
 display data alphablend option More...
 
struct  dispaly_yuv2rgb_coef
 display yuv to rgb format conversion coefficient More...
 
struct  display_yuv2rgb_config
 display yuv to rgb format conversion config More...
 
struct  display_rgb2yuv_config
 display rgb to yuv format conversion config More...
 
struct  display_buf
 

Typedefs

typedef enum display_alphablend_mode display_alphablend_mode_t
 display alphablend mode More...
 
typedef enum display_pixel_format display_pixel_format_t
 display pixel format More...
 
typedef enum display_byteorder display_byteorder_t
 display data byte order More...
 
typedef enum display_yuv_format display_yuv_format_t
 display yuv format More...
 
typedef union display_color_32b display_color_32b_t
 display data 32 bits argb More...
 
typedef enum display_alpha_op display_alpha_op_t
 display data alpha value usage option More...
 
typedef struct dispaly_alphablend_option display_alphablend_option_t
 display data alphablend option More...
 
typedef struct dispaly_yuv2rgb_coef display_yuv2rgb_coef_t
 display yuv to rgb format conversion coefficient More...
 
typedef struct display_yuv2rgb_config display_yuv2rgb_config_t
 display yuv to rgb format conversion config More...
 
typedef struct display_rgb2yuv_config display_rgb2yuv_config_t
 display rgb to yuv format conversion config More...
 
typedef enum display_buf_format display_buf_format_t
 
typedef struct display_buf display_buf_t
 

Enumerations

enum  display_alphablend_mode {
  display_alphablend_mode_clear = 0 , display_alphablend_mode_src = 1 , display_alphablend_mode_dst = 2 , display_alphablend_mode_src_over = 3 ,
  display_alphablend_mode_dst_over = 4 , display_alphablend_mode_src_in = 5 , display_alphablend_mode_dst_in = 6 , display_alphablend_mode_src_out = 7 ,
  display_alphablend_mode_dst_out = 8 , display_alphablend_mode_src_at_top = 9 , display_alphablend_mode_dst_at_top = 10 , display_alphablend_mode_xor = 11 ,
  display_alphablend_mode_plus = 12 , display_alphablend_mode_modulate = 13 , display_alphablend_mode_src_org = 14 , display_alphablend_mode_dst_org = 15
}
 display alphablend mode More...
 
enum  display_pixel_format {
  display_pixel_format_argb8888 , display_pixel_format_rgb565 , display_pixel_format_rgb555 , display_pixel_format_rgb444 ,
  display_pixel_format_gbr422 , display_pixel_format_yuv422 , display_pixel_format_ycbcr422 , display_pixel_format_y8 ,
  display_pixel_format_raw8
}
 display pixel format More...
 
enum  display_byteorder { display_byteorder_a3a2a1a0 = 0 , display_byteorder_a2a3a0a1 = 1 , display_byteorder_a1a0a3a2 = 2 , display_byteorder_a0a1a2a3 = 3 }
 display data byte order More...
 
enum  display_yuv_format { display_yuv_mode_422_u1y1v1y2 = 0 , display_yuv_mode_422_v1y1u1y2 , display_yuv_mode_422_y1u1y2v1 , display_yuv_mode_422_y1v1y2u1 }
 display yuv format More...
 
enum  display_alpha_op { display_alpha_op_invalid = 0 , display_alpha_op_override = 1 , display_alpha_op_scale = 2 }
 display data alpha value usage option More...
 
enum  display_buf_format {
  display_buf_format_argb8888 , display_buf_format_bgra8888 , display_buf_format_rgb565 , display_buf_format_rgb565_swap ,
  display_buf_format_yuyv , display_buf_format_uyvy , display_buf_format_y8 , display_buf_format_max
}
 

Functions

static uint8_t display_get_pixel_size_in_bit (display_pixel_format_t format)
 Display get pixel size in bit. More...
 
static bool display_pixel_format_is_yuv_format (display_pixel_format_t format)
 Check whether the pixel data is yuv format. More...
 
static uint8_t display_get_pixel_size_in_byte (display_pixel_format_t format)
 Display get pixel size in byte. More...
 
static uint32_t display_get_pitch_length_in_byte (display_pixel_format_t format, uint32_t width_in_pixel)
 Display get pitch length in byte. More...
 

Detailed Description

Display_common driver APIs.

Typedef Documentation

◆ display_alpha_op_t

#include <drivers/inc/hpm_display_common.h>

display data alpha value usage option

◆ display_alphablend_mode_t

◆ display_alphablend_option_t

#include <drivers/inc/hpm_display_common.h>

display data alphablend option

◆ display_buf_format_t

◆ display_buf_t

◆ display_byteorder_t

#include <drivers/inc/hpm_display_common.h>

display data byte order

◆ display_color_32b_t

#include <drivers/inc/hpm_display_common.h>

display data 32 bits argb

◆ display_pixel_format_t

◆ display_rgb2yuv_config_t

#include <drivers/inc/hpm_display_common.h>

display rgb to yuv format conversion config

◆ display_yuv2rgb_coef_t

#include <drivers/inc/hpm_display_common.h>

display yuv to rgb format conversion coefficient

◆ display_yuv2rgb_config_t

#include <drivers/inc/hpm_display_common.h>

display yuv to rgb format conversion config

◆ display_yuv_format_t

#include <drivers/inc/hpm_display_common.h>

display yuv format

Enumeration Type Documentation

◆ display_alpha_op

#include <drivers/inc/hpm_display_common.h>

display data alpha value usage option

Enumerator
display_alpha_op_invalid 
display_alpha_op_override 
display_alpha_op_scale 

◆ display_alphablend_mode

#include <drivers/inc/hpm_display_common.h>

display alphablend mode

Enumerator
display_alphablend_mode_clear 
display_alphablend_mode_src 
display_alphablend_mode_dst 
display_alphablend_mode_src_over 
display_alphablend_mode_dst_over 
display_alphablend_mode_src_in 
display_alphablend_mode_dst_in 
display_alphablend_mode_src_out 
display_alphablend_mode_dst_out 
display_alphablend_mode_src_at_top 
display_alphablend_mode_dst_at_top 
display_alphablend_mode_xor 
display_alphablend_mode_plus 
display_alphablend_mode_modulate 
display_alphablend_mode_src_org 
display_alphablend_mode_dst_org 

◆ display_buf_format

#include <drivers/inc/hpm_display_common.h>

Enumerator
display_buf_format_argb8888 

memory layout in byte(low->high): b0[7:0], g0[7:0], r0[7:0], a0[7:0], b1[7:1], g1[7:1], r1[7:0], a1[7:0], ...

display_buf_format_bgra8888 

memory layout in byte(low->high): a0[7:0], r0[7:0], g0[7:0], b0[7:0], a1[7:1], r1[7:1], g1[7:0], b1[7:0], ...

display_buf_format_rgb565 

memory layout in byte(low->high): g0[2:0]:b0[4:0], r0[4:0]:g0[5:3], g1[2:0]:b1[4:0], r1[4:0]:g1[5:3], ...

display_buf_format_rgb565_swap 

memory layout in byte(low->high): r0[4:0]:g0[5:3], g0[2:0]:b0[4:0], r2[4:0]:g2[5:3], g1[2:0]:b1[4:0], ...

display_buf_format_yuyv 

memory layout in byte(low->high): y0, u0, y1, v0, y2, u2, y3, v2, ...

display_buf_format_uyvy 

memory layout in byte(low->high): u0, y0, v0, y1, u2, y2, v2, y3, ...

display_buf_format_y8 

memory layout in byte(low->high): y0, y1, y2, y3, y4, y5, ...

display_buf_format_max 

◆ display_byteorder

#include <drivers/inc/hpm_display_common.h>

display data byte order

Enumerator
display_byteorder_a3a2a1a0 
display_byteorder_a2a3a0a1 
display_byteorder_a1a0a3a2 
display_byteorder_a0a1a2a3 

◆ display_pixel_format

#include <drivers/inc/hpm_display_common.h>

display pixel format

Enumerator
display_pixel_format_argb8888 
display_pixel_format_rgb565 
display_pixel_format_rgb555 
display_pixel_format_rgb444 
display_pixel_format_gbr422 
display_pixel_format_yuv422 
display_pixel_format_ycbcr422 
display_pixel_format_y8 
display_pixel_format_raw8 

◆ display_yuv_format

#include <drivers/inc/hpm_display_common.h>

display yuv format

Enumerator
display_yuv_mode_422_u1y1v1y2 
display_yuv_mode_422_v1y1u1y2 
display_yuv_mode_422_y1u1y2v1 
display_yuv_mode_422_y1v1y2u1 

Function Documentation

◆ display_get_pitch_length_in_byte()

static uint32_t display_get_pitch_length_in_byte ( display_pixel_format_t  format,
uint32_t  width_in_pixel 
)
inlinestatic

#include <drivers/inc/hpm_display_common.h>

Display get pitch length in byte.

Parameters
[in]formatdisplay_pixel_format_t
[in]width_in_pixelpixel width
Return values
pitchlength in byte

◆ display_get_pixel_size_in_bit()

static uint8_t display_get_pixel_size_in_bit ( display_pixel_format_t  format)
inlinestatic

#include <drivers/inc/hpm_display_common.h>

Display get pixel size in bit.

Parameters
[in]formatdisplay_pixel_format_t
Return values
pixelsize in bit

◆ display_get_pixel_size_in_byte()

static uint8_t display_get_pixel_size_in_byte ( display_pixel_format_t  format)
inlinestatic

#include <drivers/inc/hpm_display_common.h>

Display get pixel size in byte.

Parameters
[in]formatdisplay_pixel_format_t
Return values
pixelsize in byte

◆ display_pixel_format_is_yuv_format()

static bool display_pixel_format_is_yuv_format ( display_pixel_format_t  format)
inlinestatic

#include <drivers/inc/hpm_display_common.h>

Check whether the pixel data is yuv format.

Parameters
[in]formatdisplay_pixel_format_t
Return values
booltrue or false