#ifndef _HV_PAGE_HT7315_KV_RECT_P2_01_H_
#define _HV_PAGE_HT7315_KV_RECT_P2_01_H_

#ifndef HV_KV_RECT_P2_01_BASE_ADDRESS
    #define HV_KV_RECT_P2_01_BASE_ADDRESS                                         0x11063A00
#endif


#define OSD_KV_RECT_P2_01_00                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x00)

#define OSD_KV_RECT_P2_01_00_struct                                      rs_osd_kv_rect_p2_01_00

typedef struct _rs_osd_kv_rect_p2_01_00  rs_osd_kv_rect_p2_01_00;
struct _rs_osd_kv_rect_p2_01_00 {
    unsigned int reg_01_rect0_enable_rect20                 : 1;
    unsigned int reg_01_rect0_border_enable_rect20          : 1;
    unsigned int reg_01_rect0_shadow_enable_rect20          : 1;
    unsigned int reg_01_rect0_gradient_enable_rect20        : 1;
    unsigned int reg_01_rect1_enable_rect20                 : 1;
    unsigned int reg_01_rect1_border_enable_rect20          : 1;
    unsigned int reg_01_rect1_shadow_enable_rect20          : 1;
    unsigned int reg_01_rect1_gradient_enable_rect20        : 1;
    unsigned int reg_01_border_type_rect20                  : 4;
    unsigned int reg_01_border_size_x_rect20                : 4;
    unsigned int reg_01_border_size_y_rect20                : 4;
    unsigned int reg_01_shadow_type_rect20                  : 2;
    unsigned int reg_01_rect0_fill_rect20                   : 1;
    unsigned int reg_01_rect1_fill_rect20                   : 1;
    unsigned int reg_01_shadow_size_x_rect20                : 4;
    unsigned int reg_01_shadow_size_y_rect20                : 4;
};
#define osd_kv_rect_p2_01_00(val) ((rs_osd_kv_rect_p2_01_00*)&(val))



#define OSD_KV_RECT_P2_01_04                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x04)

#define OSD_KV_RECT_P2_01_04_struct                                      rs_osd_kv_rect_p2_01_04

typedef struct _rs_osd_kv_rect_p2_01_04  rs_osd_kv_rect_p2_01_04;
struct _rs_osd_kv_rect_p2_01_04 {
    unsigned int reg_01_num_h_rect20                        : 4;
    unsigned int reg_01_num_v_rect20                        : 4;
    unsigned int reg_01_hl_rect_num_h0_rect20               : 4;
    unsigned int reg_01_hl_rect_num_v0_rect20               : 4;
    unsigned int reg_01_h_space_rect20                      : 8;
    unsigned int reg_01_v_space_rect20                      : 8;
};
#define osd_kv_rect_p2_01_04(val) ((rs_osd_kv_rect_p2_01_04*)&(val))



#define OSD_KV_RECT_P2_01_08                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x08)

#define OSD_KV_RECT_P2_01_08_struct                                      rs_osd_kv_rect_p2_01_08

typedef struct _rs_osd_kv_rect_p2_01_08  rs_osd_kv_rect_p2_01_08;
struct _rs_osd_kv_rect_p2_01_08 {
    unsigned int reserved                                   :12;
    unsigned int reg_01_hl_rect_num_h1_rect20               : 4;
    unsigned int reserved_1                                 :12;
    unsigned int reg_01_hl_rect_num_v1_rect20               : 4;
};
#define osd_kv_rect_p2_01_08(val) ((rs_osd_kv_rect_p2_01_08*)&(val))



#define OSD_KV_RECT_P2_01_0C                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x0C)

#define OSD_KV_RECT_P2_01_0C_struct                                      rs_osd_kv_rect_p2_01_0c

typedef struct _rs_osd_kv_rect_p2_01_0c  rs_osd_kv_rect_p2_01_0c;
struct _rs_osd_kv_rect_p2_01_0c {
    unsigned int reg_01_size_x_rect20                       :14;
    unsigned int reserved                                   : 1;
    unsigned int reg_01_size_y_rect20                       :13;
    unsigned int reg_01_hl_mode_select_rect20               : 2;
    unsigned int reg_01_hl_mode_h_rect20                    : 1;
    unsigned int reg_01_hl_mode_v_rect20                    : 1;
};
#define osd_kv_rect_p2_01_0c(val) ((rs_osd_kv_rect_p2_01_0c*)&(val))



#define OSD_KV_RECT_P2_01_10                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x10)

#define OSD_KV_RECT_P2_01_10_struct                                      rs_osd_kv_rect_p2_01_10

typedef struct _rs_osd_kv_rect_p2_01_10  rs_osd_kv_rect_p2_01_10;
struct _rs_osd_kv_rect_p2_01_10 {
    unsigned int reg_01_rect0_border_color0_rect20          :16;
    unsigned int reg_01_rect0_border_color1_rect20          :16;
};
#define osd_kv_rect_p2_01_10(val) ((rs_osd_kv_rect_p2_01_10*)&(val))



#define OSD_KV_RECT_P2_01_14                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x14)

#define OSD_KV_RECT_P2_01_14_struct                                      rs_osd_kv_rect_p2_01_14

typedef struct _rs_osd_kv_rect_p2_01_14  rs_osd_kv_rect_p2_01_14;
struct _rs_osd_kv_rect_p2_01_14 {
    unsigned int reg_01_rect0_border_color2_rect20          :16;
    unsigned int reg_01_rect0_border_color3_rect20          :16;
};
#define osd_kv_rect_p2_01_14(val) ((rs_osd_kv_rect_p2_01_14*)&(val))



#define OSD_KV_RECT_P2_01_18                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x18)

#define OSD_KV_RECT_P2_01_18_struct                                      rs_osd_kv_rect_p2_01_18

typedef struct _rs_osd_kv_rect_p2_01_18  rs_osd_kv_rect_p2_01_18;
struct _rs_osd_kv_rect_p2_01_18 {
    unsigned int reg_01_rect0_shadow_color_rect20           :16;
    unsigned int reserved                                   : 8;
    unsigned int reg_01_rect0_gradient_type_rect20          : 8;
};
#define osd_kv_rect_p2_01_18(val) ((rs_osd_kv_rect_p2_01_18*)&(val))



#define OSD_KV_RECT_P2_01_1C                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x1C)

#define OSD_KV_RECT_P2_01_1C_struct                                      rs_osd_kv_rect_p2_01_1c

typedef struct _rs_osd_kv_rect_p2_01_1c  rs_osd_kv_rect_p2_01_1c;
struct _rs_osd_kv_rect_p2_01_1c {
    unsigned int reg_01_rect0_gradient_step_factor_r_rect20 :10;
    unsigned int reg_01_rect0_gradient_step_factor_g_rect20 :10;
    unsigned int reg_01_rect0_gradient_step_factor_b_rect20 :10;
    unsigned int reserved                                   : 2;
};
#define osd_kv_rect_p2_01_1c(val) ((rs_osd_kv_rect_p2_01_1c*)&(val))



#define OSD_KV_RECT_P2_01_20                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x20)

#define OSD_KV_RECT_P2_01_20_struct                                      rs_osd_kv_rect_p2_01_20

typedef struct _rs_osd_kv_rect_p2_01_20  rs_osd_kv_rect_p2_01_20;
struct _rs_osd_kv_rect_p2_01_20 {
    unsigned int reg_01_rect0_bg_start_color_rect20         :16;
    unsigned int reg_01_rect0_bg_end_color_rect20           :16;
};
#define osd_kv_rect_p2_01_20(val) ((rs_osd_kv_rect_p2_01_20*)&(val))



#define OSD_KV_RECT_P2_01_24                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x24)

#define OSD_KV_RECT_P2_01_24_struct                                      rs_osd_kv_rect_p2_01_24

typedef struct _rs_osd_kv_rect_p2_01_24  rs_osd_kv_rect_p2_01_24;
struct _rs_osd_kv_rect_p2_01_24 {
    unsigned int reg_01_rect1_border_color0_rect20          :16;
    unsigned int reg_01_rect1_border_color1_rect20          :16;
};
#define osd_kv_rect_p2_01_24(val) ((rs_osd_kv_rect_p2_01_24*)&(val))



#define OSD_KV_RECT_P2_01_28                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x28)

#define OSD_KV_RECT_P2_01_28_struct                                      rs_osd_kv_rect_p2_01_28

typedef struct _rs_osd_kv_rect_p2_01_28  rs_osd_kv_rect_p2_01_28;
struct _rs_osd_kv_rect_p2_01_28 {
    unsigned int reg_01_rect1_border_color2_rect20          :16;
    unsigned int reg_01_rect1_border_color3_rect20          :16;
};
#define osd_kv_rect_p2_01_28(val) ((rs_osd_kv_rect_p2_01_28*)&(val))



#define OSD_KV_RECT_P2_01_2C                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x2C)

#define OSD_KV_RECT_P2_01_2C_struct                                      rs_osd_kv_rect_p2_01_2c

typedef struct _rs_osd_kv_rect_p2_01_2c  rs_osd_kv_rect_p2_01_2c;
struct _rs_osd_kv_rect_p2_01_2c {
    unsigned int reg_01_rect1_shadow_color_rect20           :16;
    unsigned int reserved                                   : 8;
    unsigned int reg_01_rect1_gradient_type_rect20          : 8;
};
#define osd_kv_rect_p2_01_2c(val) ((rs_osd_kv_rect_p2_01_2c*)&(val))



#define OSD_KV_RECT_P2_01_30                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x30)

#define OSD_KV_RECT_P2_01_30_struct                                      rs_osd_kv_rect_p2_01_30

typedef struct _rs_osd_kv_rect_p2_01_30  rs_osd_kv_rect_p2_01_30;
struct _rs_osd_kv_rect_p2_01_30 {
    unsigned int reg_01_rect1_gradient_step_factor_r_rect20 :10;
    unsigned int reg_01_rect1_gradient_step_factor_g_rect20 :10;
    unsigned int reg_01_rect1_gradient_step_factor_b_rect20 :10;
    unsigned int reserved                                   : 2;
};
#define osd_kv_rect_p2_01_30(val) ((rs_osd_kv_rect_p2_01_30*)&(val))



#define OSD_KV_RECT_P2_01_34                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x34)

#define OSD_KV_RECT_P2_01_34_struct                                      rs_osd_kv_rect_p2_01_34

typedef struct _rs_osd_kv_rect_p2_01_34  rs_osd_kv_rect_p2_01_34;
struct _rs_osd_kv_rect_p2_01_34 {
    unsigned int reg_01_rect1_bg_start_color_rect20         :16;
    unsigned int reg_01_rect1_bg_end_color_rect20           :16;
};
#define osd_kv_rect_p2_01_34(val) ((rs_osd_kv_rect_p2_01_34*)&(val))



#define OSD_KV_RECT_P2_01_38                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x38)

#define OSD_KV_RECT_P2_01_38_struct                                      rs_osd_kv_rect_p2_01_38

typedef struct _rs_osd_kv_rect_p2_01_38  rs_osd_kv_rect_p2_01_38;
struct _rs_osd_kv_rect_p2_01_38 {
    unsigned int reg_01_start_x_rect20                      :14;
    unsigned int reserved                                   : 2;
    unsigned int reg_01_start_y_rect20                      :13;
    unsigned int reserved_1                                 : 3;
};
#define osd_kv_rect_p2_01_38(val) ((rs_osd_kv_rect_p2_01_38*)&(val))



#define OSD_KV_RECT_P2_01_40                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x40)

#define OSD_KV_RECT_P2_01_40_struct                                      rs_osd_kv_rect_p2_01_40

typedef struct _rs_osd_kv_rect_p2_01_40  rs_osd_kv_rect_p2_01_40;
struct _rs_osd_kv_rect_p2_01_40 {
    unsigned int reg_01_rect0_enable_rect22                 : 1;
    unsigned int reg_01_rect0_border_enable_rect22          : 1;
    unsigned int reg_01_rect0_shadow_enable_rect22          : 1;
    unsigned int reg_01_rect0_gradient_enable_rect22        : 1;
    unsigned int reg_01_rect1_enable_rect22                 : 1;
    unsigned int reg_01_rect1_border_enable_rect22          : 1;
    unsigned int reg_01_rect1_shadow_enable_rect22          : 1;
    unsigned int reg_01_rect1_gradient_enable_rect22        : 1;
    unsigned int reg_01_border_type_rect22                  : 4;
    unsigned int reg_01_border_size_x_rect22                : 4;
    unsigned int reg_01_border_size_y_rect22                : 4;
    unsigned int reg_01_shadow_type_for_rect_rect22         : 2;
    unsigned int reg_01_rect0_fill_rect22                   : 1;
    unsigned int reg_01_rect1_fill_rect22                   : 1;
    unsigned int reg_01_shadow_size_x_rect22                : 4;
    unsigned int reg_01_shadow_size_y_rect22                : 4;
};
#define osd_kv_rect_p2_01_40(val) ((rs_osd_kv_rect_p2_01_40*)&(val))



#define OSD_KV_RECT_P2_01_44                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x44)

#define OSD_KV_RECT_P2_01_44_struct                                      rs_osd_kv_rect_p2_01_44

typedef struct _rs_osd_kv_rect_p2_01_44  rs_osd_kv_rect_p2_01_44;
struct _rs_osd_kv_rect_p2_01_44 {
    unsigned int reg_01_num_h_rect22                        : 4;
    unsigned int reg_01_num_v_rect22                        : 4;
    unsigned int reg_01_hl_rect_num_h0_rect22               : 4;
    unsigned int reg_01_hl_rect_num_v0_rect22               : 4;
    unsigned int reg_01_h_space_rect22                      : 8;
    unsigned int reg_01_v_space_rect22                      : 8;
};
#define osd_kv_rect_p2_01_44(val) ((rs_osd_kv_rect_p2_01_44*)&(val))



#define OSD_KV_RECT_P2_01_48                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x48)

#define OSD_KV_RECT_P2_01_48_struct                                      rs_osd_kv_rect_p2_01_48

typedef struct _rs_osd_kv_rect_p2_01_48  rs_osd_kv_rect_p2_01_48;
struct _rs_osd_kv_rect_p2_01_48 {
    unsigned int reserved                                   :12;
    unsigned int reg_01_hl_rect_num_h1_rect22               : 4;
    unsigned int reserved_1                                 :12;
    unsigned int reg_01_hl_rect_num_v1_rect22               : 4;
};
#define osd_kv_rect_p2_01_48(val) ((rs_osd_kv_rect_p2_01_48*)&(val))



#define OSD_KV_RECT_P2_01_4C                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x4C)

#define OSD_KV_RECT_P2_01_4C_struct                                      rs_osd_kv_rect_p2_01_4c

typedef struct _rs_osd_kv_rect_p2_01_4c  rs_osd_kv_rect_p2_01_4c;
struct _rs_osd_kv_rect_p2_01_4c {
    unsigned int reg_01_size_x_rect22                       :14;
    unsigned int reserved                                   : 1;
    unsigned int reg_01_size_y_rect22                       :13;
    unsigned int reg_01_hl_mode_select_rect22               : 2;
    unsigned int reg_01_hl_mode_h_rect22                    : 1;
    unsigned int reg_01_hl_mode_v_rect22                    : 1;
};
#define osd_kv_rect_p2_01_4c(val) ((rs_osd_kv_rect_p2_01_4c*)&(val))



#define OSD_KV_RECT_P2_01_50                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x50)

#define OSD_KV_RECT_P2_01_50_struct                                      rs_osd_kv_rect_p2_01_50

typedef struct _rs_osd_kv_rect_p2_01_50  rs_osd_kv_rect_p2_01_50;
struct _rs_osd_kv_rect_p2_01_50 {
    unsigned int reg_01_rect0_border_color0_rect22          :16;
    unsigned int reg_01_rect0_border_color1_rect22          :16;
};
#define osd_kv_rect_p2_01_50(val) ((rs_osd_kv_rect_p2_01_50*)&(val))



#define OSD_KV_RECT_P2_01_54                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x54)

#define OSD_KV_RECT_P2_01_54_struct                                      rs_osd_kv_rect_p2_01_54

typedef struct _rs_osd_kv_rect_p2_01_54  rs_osd_kv_rect_p2_01_54;
struct _rs_osd_kv_rect_p2_01_54 {
    unsigned int reg_01_rect0_border_color2_rect22          :16;
    unsigned int reg_01_rect0_border_color3_rect22          :16;
};
#define osd_kv_rect_p2_01_54(val) ((rs_osd_kv_rect_p2_01_54*)&(val))



#define OSD_KV_RECT_P2_01_58                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x58)

#define OSD_KV_RECT_P2_01_58_struct                                      rs_osd_kv_rect_p2_01_58

typedef struct _rs_osd_kv_rect_p2_01_58  rs_osd_kv_rect_p2_01_58;
struct _rs_osd_kv_rect_p2_01_58 {
    unsigned int reg_01_rect0_shadow_color_rect22           :16;
    unsigned int reserved                                   : 8;
    unsigned int reg_01_rect0_gradient_type_rect22          : 8;
};
#define osd_kv_rect_p2_01_58(val) ((rs_osd_kv_rect_p2_01_58*)&(val))



#define OSD_KV_RECT_P2_01_5C                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x5C)

#define OSD_KV_RECT_P2_01_5C_struct                                      rs_osd_kv_rect_p2_01_5c

typedef struct _rs_osd_kv_rect_p2_01_5c  rs_osd_kv_rect_p2_01_5c;
struct _rs_osd_kv_rect_p2_01_5c {
    unsigned int reg_01_rect0_gradient_step_factor_r_rect22 :10;
    unsigned int reg_01_rect0_gradient_step_factor_g_rect22 :10;
    unsigned int reg_01_rect0_gradient_step_factor_b_rect22 :10;
    unsigned int reserved                                   : 2;
};
#define osd_kv_rect_p2_01_5c(val) ((rs_osd_kv_rect_p2_01_5c*)&(val))



#define OSD_KV_RECT_P2_01_60                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x60)

#define OSD_KV_RECT_P2_01_60_struct                                      rs_osd_kv_rect_p2_01_60

typedef struct _rs_osd_kv_rect_p2_01_60  rs_osd_kv_rect_p2_01_60;
struct _rs_osd_kv_rect_p2_01_60 {
    unsigned int reg_01_rect0_bg_start_color_rect22         :16;
    unsigned int reg_01_rect0_bg_end_color_rect22           :16;
};
#define osd_kv_rect_p2_01_60(val) ((rs_osd_kv_rect_p2_01_60*)&(val))



#define OSD_KV_RECT_P2_01_64                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x64)

#define OSD_KV_RECT_P2_01_64_struct                                      rs_osd_kv_rect_p2_01_64

typedef struct _rs_osd_kv_rect_p2_01_64  rs_osd_kv_rect_p2_01_64;
struct _rs_osd_kv_rect_p2_01_64 {
    unsigned int reg_01_rect1_border_color0_rect22          :16;
    unsigned int reg_01_rect1_border_color1_rect22          :16;
};
#define osd_kv_rect_p2_01_64(val) ((rs_osd_kv_rect_p2_01_64*)&(val))



#define OSD_KV_RECT_P2_01_68                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x68)

#define OSD_KV_RECT_P2_01_68_struct                                      rs_osd_kv_rect_p2_01_68

typedef struct _rs_osd_kv_rect_p2_01_68  rs_osd_kv_rect_p2_01_68;
struct _rs_osd_kv_rect_p2_01_68 {
    unsigned int reg_01_rect1_border_color2_rect22          :16;
    unsigned int reg_01_rect1_border_color3_rect22          :16;
};
#define osd_kv_rect_p2_01_68(val) ((rs_osd_kv_rect_p2_01_68*)&(val))



#define OSD_KV_RECT_P2_01_6C                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x6C)

#define OSD_KV_RECT_P2_01_6C_struct                                      rs_osd_kv_rect_p2_01_6c

typedef struct _rs_osd_kv_rect_p2_01_6c  rs_osd_kv_rect_p2_01_6c;
struct _rs_osd_kv_rect_p2_01_6c {
    unsigned int reg_01_rect1_shadow_color_rect22           :16;
    unsigned int reserved                                   : 8;
    unsigned int reg_01_rect1_gradient_type_rect22          : 8;
};
#define osd_kv_rect_p2_01_6c(val) ((rs_osd_kv_rect_p2_01_6c*)&(val))



#define OSD_KV_RECT_P2_01_70                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x70)

#define OSD_KV_RECT_P2_01_70_struct                                      rs_osd_kv_rect_p2_01_70

typedef struct _rs_osd_kv_rect_p2_01_70  rs_osd_kv_rect_p2_01_70;
struct _rs_osd_kv_rect_p2_01_70 {
    unsigned int reg_01_rect1_gradient_step_factor_r_rect22 :10;
    unsigned int reg_01_rect1_gradient_step_factor_g_rect22 :10;
    unsigned int reg_01_rect1_gradient_step_factor_b_rect22 :10;
    unsigned int reserved                                   : 2;
};
#define osd_kv_rect_p2_01_70(val) ((rs_osd_kv_rect_p2_01_70*)&(val))



#define OSD_KV_RECT_P2_01_74                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x74)

#define OSD_KV_RECT_P2_01_74_struct                                      rs_osd_kv_rect_p2_01_74

typedef struct _rs_osd_kv_rect_p2_01_74  rs_osd_kv_rect_p2_01_74;
struct _rs_osd_kv_rect_p2_01_74 {
    unsigned int reg_01_rect1_bg_start_color_rect22         :16;
    unsigned int reg_01_rect1_bg_end_color_rect22           :16;
};
#define osd_kv_rect_p2_01_74(val) ((rs_osd_kv_rect_p2_01_74*)&(val))



#define OSD_KV_RECT_P2_01_78                                             (HV_KV_RECT_P2_01_BASE_ADDRESS + 0x78)

#define OSD_KV_RECT_P2_01_78_struct                                      rs_osd_kv_rect_p2_01_78

typedef struct _rs_osd_kv_rect_p2_01_78  rs_osd_kv_rect_p2_01_78;
struct _rs_osd_kv_rect_p2_01_78 {
    unsigned int reg_01_start_x_rect22                      :14;
    unsigned int reserved                                   : 2;
    unsigned int reg_01_start_y_rect22                      :13;
    unsigned int reserved_1                                 : 3;
};
#define osd_kv_rect_p2_01_78(val) ((rs_osd_kv_rect_p2_01_78*)&(val))



#endif