#ifndef _HV_PAGE_HT7315_KV_RECT_P2_00_H_
#define _HV_PAGE_HT7315_KV_RECT_P2_00_H_

#ifndef HV_KV_RECT_P2_00_BASE_ADDRESS
    #define HV_KV_RECT_P2_00_BASE_ADDRESS                                         0x11063200
#endif


#define OSD_KV_RECT_P2_00_00                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x00)

#define OSD_KV_RECT_P2_00_00_struct                                      rs_osd_kv_rect_p2_00_00

typedef struct _rs_osd_kv_rect_p2_00_00  rs_osd_kv_rect_p2_00_00;
struct _rs_osd_kv_rect_p2_00_00 {
    unsigned int reg_00_rect0_enable_rect20                 : 1;
    unsigned int reg_00_rect0_border_enable_rect20          : 1;
    unsigned int reg_00_rect0_shadow_enable_rect20          : 1;
    unsigned int reg_00_rect0_gradient_enable_rect20        : 1;
    unsigned int reg_00_rect1_enable_rect20                 : 1;
    unsigned int reg_00_rect1_border_enable_rect20          : 1;
    unsigned int reg_00_rect1_shadow_enable_rect20          : 1;
    unsigned int reg_00_rect1_gradient_enable_rect20        : 1;
    unsigned int reg_00_border_type_rect20                  : 4;
    unsigned int reg_00_border_size_x_rect20                : 4;
    unsigned int reg_00_border_size_y_rect20                : 4;
    unsigned int reg_00_shadow_type_rect20                  : 2;
    unsigned int reg_00_rect0_fill_rect20                   : 1;
    unsigned int reg_00_rect1_fill_rect20                   : 1;
    unsigned int reg_00_shadow_size_x_rect20                : 4;
    unsigned int reg_00_shadow_size_y_rect20                : 4;
};
#define osd_kv_rect_p2_00_00(val) ((rs_osd_kv_rect_p2_00_00*)&(val))



#define OSD_KV_RECT_P2_00_04                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x04)

#define OSD_KV_RECT_P2_00_04_struct                                      rs_osd_kv_rect_p2_00_04

typedef struct _rs_osd_kv_rect_p2_00_04  rs_osd_kv_rect_p2_00_04;
struct _rs_osd_kv_rect_p2_00_04 {
    unsigned int reg_00_num_h_rect20                        : 4;
    unsigned int reg_00_num_v_rect20                        : 4;
    unsigned int reg_00_hl_rect_num_h0_rect20               : 4;
    unsigned int reg_00_hl_rect_num_v0_rect20               : 4;
    unsigned int reg_00_h_space_rect20                      : 8;
    unsigned int reg_00_v_space_rect20                      : 8;
};
#define osd_kv_rect_p2_00_04(val) ((rs_osd_kv_rect_p2_00_04*)&(val))



#define OSD_KV_RECT_P2_00_08                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x08)

#define OSD_KV_RECT_P2_00_08_struct                                      rs_osd_kv_rect_p2_00_08

typedef struct _rs_osd_kv_rect_p2_00_08  rs_osd_kv_rect_p2_00_08;
struct _rs_osd_kv_rect_p2_00_08 {
    unsigned int reserved                                   :12;
    unsigned int reg_00_hl_rect_num_h1_rect20               : 4;
    unsigned int reserved_1                                 :12;
    unsigned int reg_00_hl_rect_num_v1_rect20               : 4;
};
#define osd_kv_rect_p2_00_08(val) ((rs_osd_kv_rect_p2_00_08*)&(val))



#define OSD_KV_RECT_P2_00_0C                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x0C)

#define OSD_KV_RECT_P2_00_0C_struct                                      rs_osd_kv_rect_p2_00_0c

typedef struct _rs_osd_kv_rect_p2_00_0c  rs_osd_kv_rect_p2_00_0c;
struct _rs_osd_kv_rect_p2_00_0c {
    unsigned int reg_00_size_x_rect20                       :14;
    unsigned int reserved                                   : 1;
    unsigned int reg_00_size_y_rect20                       :13;
    unsigned int reg_00_hl_mode_select_rect20               : 2;
    unsigned int reg_00_hl_mode_h_rect20                    : 1;
    unsigned int reg_00_hl_mode_v_rect20                    : 1;
};
#define osd_kv_rect_p2_00_0c(val) ((rs_osd_kv_rect_p2_00_0c*)&(val))



#define OSD_KV_RECT_P2_00_10                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x10)

#define OSD_KV_RECT_P2_00_10_struct                                      rs_osd_kv_rect_p2_00_10

typedef struct _rs_osd_kv_rect_p2_00_10  rs_osd_kv_rect_p2_00_10;
struct _rs_osd_kv_rect_p2_00_10 {
    unsigned int reg_00_rect0_border_color0_rect20          :16;
    unsigned int reg_00_rect0_border_color1_rect20          :16;
};
#define osd_kv_rect_p2_00_10(val) ((rs_osd_kv_rect_p2_00_10*)&(val))



#define OSD_KV_RECT_P2_00_14                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x14)

#define OSD_KV_RECT_P2_00_14_struct                                      rs_osd_kv_rect_p2_00_14

typedef struct _rs_osd_kv_rect_p2_00_14  rs_osd_kv_rect_p2_00_14;
struct _rs_osd_kv_rect_p2_00_14 {
    unsigned int reg_00_rect0_border_color2_rect20          :16;
    unsigned int reg_00_rect0_border_color3_rect20          :16;
};
#define osd_kv_rect_p2_00_14(val) ((rs_osd_kv_rect_p2_00_14*)&(val))



#define OSD_KV_RECT_P2_00_18                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x18)

#define OSD_KV_RECT_P2_00_18_struct                                      rs_osd_kv_rect_p2_00_18

typedef struct _rs_osd_kv_rect_p2_00_18  rs_osd_kv_rect_p2_00_18;
struct _rs_osd_kv_rect_p2_00_18 {
    unsigned int reg_00_rect0_shadow_color_rect20           :16;
    unsigned int reserved                                   : 8;
    unsigned int reg_00_rect0_gradient_type_rect20          : 8;
};
#define osd_kv_rect_p2_00_18(val) ((rs_osd_kv_rect_p2_00_18*)&(val))



#define OSD_KV_RECT_P2_00_1C                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x1C)

#define OSD_KV_RECT_P2_00_1C_struct                                      rs_osd_kv_rect_p2_00_1c

typedef struct _rs_osd_kv_rect_p2_00_1c  rs_osd_kv_rect_p2_00_1c;
struct _rs_osd_kv_rect_p2_00_1c {
    unsigned int reg_00_rect0_gradient_step_factor_r_rect20 :10;
    unsigned int reg_00_rect0_gradient_step_factor_g_rect20 :10;
    unsigned int reg_00_rect0_gradient_step_factor_b_rect20 :10;
    unsigned int reserved                                   : 2;
};
#define osd_kv_rect_p2_00_1c(val) ((rs_osd_kv_rect_p2_00_1c*)&(val))



#define OSD_KV_RECT_P2_00_20                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x20)

#define OSD_KV_RECT_P2_00_20_struct                                      rs_osd_kv_rect_p2_00_20

typedef struct _rs_osd_kv_rect_p2_00_20  rs_osd_kv_rect_p2_00_20;
struct _rs_osd_kv_rect_p2_00_20 {
    unsigned int reg_00_rect0_bg_start_color_rect20         :16;
    unsigned int reg_00_rect0_bg_end_color_rect20           :16;
};
#define osd_kv_rect_p2_00_20(val) ((rs_osd_kv_rect_p2_00_20*)&(val))



#define OSD_KV_RECT_P2_00_24                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x24)

#define OSD_KV_RECT_P2_00_24_struct                                      rs_osd_kv_rect_p2_00_24

typedef struct _rs_osd_kv_rect_p2_00_24  rs_osd_kv_rect_p2_00_24;
struct _rs_osd_kv_rect_p2_00_24 {
    unsigned int reg_00_rect1_border_color0_rect20          :16;
    unsigned int reg_00_rect1_border_color1_rect20          :16;
};
#define osd_kv_rect_p2_00_24(val) ((rs_osd_kv_rect_p2_00_24*)&(val))



#define OSD_KV_RECT_P2_00_28                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x28)

#define OSD_KV_RECT_P2_00_28_struct                                      rs_osd_kv_rect_p2_00_28

typedef struct _rs_osd_kv_rect_p2_00_28  rs_osd_kv_rect_p2_00_28;
struct _rs_osd_kv_rect_p2_00_28 {
    unsigned int reg_00_rect1_border_color2_rect20          :16;
    unsigned int reg_00_rect1_border_color3_rect20          :16;
};
#define osd_kv_rect_p2_00_28(val) ((rs_osd_kv_rect_p2_00_28*)&(val))



#define OSD_KV_RECT_P2_00_2C                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x2C)

#define OSD_KV_RECT_P2_00_2C_struct                                      rs_osd_kv_rect_p2_00_2c

typedef struct _rs_osd_kv_rect_p2_00_2c  rs_osd_kv_rect_p2_00_2c;
struct _rs_osd_kv_rect_p2_00_2c {
    unsigned int reg_00_rect1_shadow_color_rect20           :16;
    unsigned int reserved                                   : 8;
    unsigned int reg_00_rect1_gradient_type_rect20          : 8;
};
#define osd_kv_rect_p2_00_2c(val) ((rs_osd_kv_rect_p2_00_2c*)&(val))



#define OSD_KV_RECT_P2_00_30                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x30)

#define OSD_KV_RECT_P2_00_30_struct                                      rs_osd_kv_rect_p2_00_30

typedef struct _rs_osd_kv_rect_p2_00_30  rs_osd_kv_rect_p2_00_30;
struct _rs_osd_kv_rect_p2_00_30 {
    unsigned int reg_00_rect1_gradient_step_factor_r_rect20 :10;
    unsigned int reg_00_rect1_gradient_step_factor_g_rect20 :10;
    unsigned int reg_00_rect1_gradient_step_factor_b_rect20 :10;
    unsigned int reserved                                   : 2;
};
#define osd_kv_rect_p2_00_30(val) ((rs_osd_kv_rect_p2_00_30*)&(val))



#define OSD_KV_RECT_P2_00_34                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x34)

#define OSD_KV_RECT_P2_00_34_struct                                      rs_osd_kv_rect_p2_00_34

typedef struct _rs_osd_kv_rect_p2_00_34  rs_osd_kv_rect_p2_00_34;
struct _rs_osd_kv_rect_p2_00_34 {
    unsigned int reg_00_rect1_bg_start_color_rect20         :16;
    unsigned int reg_00_rect1_bg_end_color_rect20           :16;
};
#define osd_kv_rect_p2_00_34(val) ((rs_osd_kv_rect_p2_00_34*)&(val))



#define OSD_KV_RECT_P2_00_38                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x38)

#define OSD_KV_RECT_P2_00_38_struct                                      rs_osd_kv_rect_p2_00_38

typedef struct _rs_osd_kv_rect_p2_00_38  rs_osd_kv_rect_p2_00_38;
struct _rs_osd_kv_rect_p2_00_38 {
    unsigned int reg_00_start_x_rect20                      :14;
    unsigned int reserved                                   : 2;
    unsigned int reg_00_start_y_rect20                      :13;
    unsigned int reserved_1                                 : 3;
};
#define osd_kv_rect_p2_00_38(val) ((rs_osd_kv_rect_p2_00_38*)&(val))



#define OSD_KV_RECT_P2_00_40                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x40)

#define OSD_KV_RECT_P2_00_40_struct                                      rs_osd_kv_rect_p2_00_40

typedef struct _rs_osd_kv_rect_p2_00_40  rs_osd_kv_rect_p2_00_40;
struct _rs_osd_kv_rect_p2_00_40 {
    unsigned int reg_00_rect0_enable_rect22                 : 1;
    unsigned int reg_00_rect0_border_enable_rect22          : 1;
    unsigned int reg_00_rect0_shadow_enable_rect22          : 1;
    unsigned int reg_00_rect0_gradient_enable_rect22        : 1;
    unsigned int reg_00_rect1_enable_rect22                 : 1;
    unsigned int reg_00_rect1_border_enable_rect22          : 1;
    unsigned int reg_00_rect1_shadow_enable_rect22          : 1;
    unsigned int reg_00_rect1_gradient_enable_rect22        : 1;
    unsigned int reg_00_border_type_rect22                  : 4;
    unsigned int reg_00_border_size_x_rect22                : 4;
    unsigned int reg_00_border_size_y_rect22                : 4;
    unsigned int reg_00_shadow_type_for_rect_rect22         : 2;
    unsigned int reg_00_rect0_fill_rect22                   : 1;
    unsigned int reg_00_rect1_fill_rect22                   : 1;
    unsigned int reg_00_shadow_size_x_rect22                : 4;
    unsigned int reg_00_shadow_size_y_rect22                : 4;
};
#define osd_kv_rect_p2_00_40(val) ((rs_osd_kv_rect_p2_00_40*)&(val))



#define OSD_KV_RECT_P2_00_44                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x44)

#define OSD_KV_RECT_P2_00_44_struct                                      rs_osd_kv_rect_p2_00_44

typedef struct _rs_osd_kv_rect_p2_00_44  rs_osd_kv_rect_p2_00_44;
struct _rs_osd_kv_rect_p2_00_44 {
    unsigned int reg_00_num_h_rect22                        : 4;
    unsigned int reg_00_num_v_rect22                        : 4;
    unsigned int reg_00_hl_rect_num_h0_rect22               : 4;
    unsigned int reg_00_hl_rect_num_v0_rect22               : 4;
    unsigned int reg_00_h_space_rect22                      : 8;
    unsigned int reg_00_v_space_rect22                      : 8;
};
#define osd_kv_rect_p2_00_44(val) ((rs_osd_kv_rect_p2_00_44*)&(val))



#define OSD_KV_RECT_P2_00_48                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x48)

#define OSD_KV_RECT_P2_00_48_struct                                      rs_osd_kv_rect_p2_00_48

typedef struct _rs_osd_kv_rect_p2_00_48  rs_osd_kv_rect_p2_00_48;
struct _rs_osd_kv_rect_p2_00_48 {
    unsigned int reserved                                   :12;
    unsigned int reg_00_hl_rect_num_h1_rect22               : 4;
    unsigned int reserved_1                                 :12;
    unsigned int reg_00_hl_rect_num_v1_rect22               : 4;
};
#define osd_kv_rect_p2_00_48(val) ((rs_osd_kv_rect_p2_00_48*)&(val))



#define OSD_KV_RECT_P2_00_4C                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x4C)

#define OSD_KV_RECT_P2_00_4C_struct                                      rs_osd_kv_rect_p2_00_4c

typedef struct _rs_osd_kv_rect_p2_00_4c  rs_osd_kv_rect_p2_00_4c;
struct _rs_osd_kv_rect_p2_00_4c {
    unsigned int reg_00_size_x_rect22                       :14;
    unsigned int reserved                                   : 1;
    unsigned int reg_00_size_y_rect22                       :13;
    unsigned int reg_00_hl_mode_select_rect22               : 2;
    unsigned int reg_00_hl_mode_h_rect22                    : 1;
    unsigned int reg_00_hl_mode_v_rect22                    : 1;
};
#define osd_kv_rect_p2_00_4c(val) ((rs_osd_kv_rect_p2_00_4c*)&(val))



#define OSD_KV_RECT_P2_00_50                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x50)

#define OSD_KV_RECT_P2_00_50_struct                                      rs_osd_kv_rect_p2_00_50

typedef struct _rs_osd_kv_rect_p2_00_50  rs_osd_kv_rect_p2_00_50;
struct _rs_osd_kv_rect_p2_00_50 {
    unsigned int reg_00_rect0_border_color0_rect22          :16;
    unsigned int reg_00_rect0_border_color1_rect22          :16;
};
#define osd_kv_rect_p2_00_50(val) ((rs_osd_kv_rect_p2_00_50*)&(val))



#define OSD_KV_RECT_P2_00_54                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x54)

#define OSD_KV_RECT_P2_00_54_struct                                      rs_osd_kv_rect_p2_00_54

typedef struct _rs_osd_kv_rect_p2_00_54  rs_osd_kv_rect_p2_00_54;
struct _rs_osd_kv_rect_p2_00_54 {
    unsigned int reg_00_rect0_border_color2_rect22          :16;
    unsigned int reg_00_rect0_border_color3_rect22          :16;
};
#define osd_kv_rect_p2_00_54(val) ((rs_osd_kv_rect_p2_00_54*)&(val))



#define OSD_KV_RECT_P2_00_58                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x58)

#define OSD_KV_RECT_P2_00_58_struct                                      rs_osd_kv_rect_p2_00_58

typedef struct _rs_osd_kv_rect_p2_00_58  rs_osd_kv_rect_p2_00_58;
struct _rs_osd_kv_rect_p2_00_58 {
    unsigned int reg_00_rect0_shadow_color_rect22           :16;
    unsigned int reserved                                   : 8;
    unsigned int reg_00_rect0_gradient_type_rect22          : 8;
};
#define osd_kv_rect_p2_00_58(val) ((rs_osd_kv_rect_p2_00_58*)&(val))



#define OSD_KV_RECT_P2_00_5C                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x5C)

#define OSD_KV_RECT_P2_00_5C_struct                                      rs_osd_kv_rect_p2_00_5c

typedef struct _rs_osd_kv_rect_p2_00_5c  rs_osd_kv_rect_p2_00_5c;
struct _rs_osd_kv_rect_p2_00_5c {
    unsigned int reg_00_rect0_gradient_step_factor_r_rect22 :10;
    unsigned int reg_00_rect0_gradient_step_factor_g_rect22 :10;
    unsigned int reg_00_rect0_gradient_step_factor_b_rect22 :10;
    unsigned int reserved                                   : 2;
};
#define osd_kv_rect_p2_00_5c(val) ((rs_osd_kv_rect_p2_00_5c*)&(val))



#define OSD_KV_RECT_P2_00_60                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x60)

#define OSD_KV_RECT_P2_00_60_struct                                      rs_osd_kv_rect_p2_00_60

typedef struct _rs_osd_kv_rect_p2_00_60  rs_osd_kv_rect_p2_00_60;
struct _rs_osd_kv_rect_p2_00_60 {
    unsigned int reg_00_rect0_bg_start_color_rect22         :16;
    unsigned int reg_00_rect0_bg_end_color_rect22           :16;
};
#define osd_kv_rect_p2_00_60(val) ((rs_osd_kv_rect_p2_00_60*)&(val))



#define OSD_KV_RECT_P2_00_64                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x64)

#define OSD_KV_RECT_P2_00_64_struct                                      rs_osd_kv_rect_p2_00_64

typedef struct _rs_osd_kv_rect_p2_00_64  rs_osd_kv_rect_p2_00_64;
struct _rs_osd_kv_rect_p2_00_64 {
    unsigned int reg_00_rect1_border_color0_rect22          :16;
    unsigned int reg_00_rect1_border_color1_rect22          :16;
};
#define osd_kv_rect_p2_00_64(val) ((rs_osd_kv_rect_p2_00_64*)&(val))



#define OSD_KV_RECT_P2_00_68                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x68)

#define OSD_KV_RECT_P2_00_68_struct                                      rs_osd_kv_rect_p2_00_68

typedef struct _rs_osd_kv_rect_p2_00_68  rs_osd_kv_rect_p2_00_68;
struct _rs_osd_kv_rect_p2_00_68 {
    unsigned int reg_00_rect1_border_color2_rect22          :16;
    unsigned int reg_00_rect1_border_color3_rect22          :16;
};
#define osd_kv_rect_p2_00_68(val) ((rs_osd_kv_rect_p2_00_68*)&(val))



#define OSD_KV_RECT_P2_00_6C                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x6C)

#define OSD_KV_RECT_P2_00_6C_struct                                      rs_osd_kv_rect_p2_00_6c

typedef struct _rs_osd_kv_rect_p2_00_6c  rs_osd_kv_rect_p2_00_6c;
struct _rs_osd_kv_rect_p2_00_6c {
    unsigned int reg_00_rect1_shadow_color_rect22           :16;
    unsigned int reserved                                   : 8;
    unsigned int reg_00_rect1_gradient_type_rect22          : 8;
};
#define osd_kv_rect_p2_00_6c(val) ((rs_osd_kv_rect_p2_00_6c*)&(val))



#define OSD_KV_RECT_P2_00_70                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x70)

#define OSD_KV_RECT_P2_00_70_struct                                      rs_osd_kv_rect_p2_00_70

typedef struct _rs_osd_kv_rect_p2_00_70  rs_osd_kv_rect_p2_00_70;
struct _rs_osd_kv_rect_p2_00_70 {
    unsigned int reg_00_rect1_gradient_step_factor_r_rect22 :10;
    unsigned int reg_00_rect1_gradient_step_factor_g_rect22 :10;
    unsigned int reg_00_rect1_gradient_step_factor_b_rect22 :10;
    unsigned int reserved                                   : 2;
};
#define osd_kv_rect_p2_00_70(val) ((rs_osd_kv_rect_p2_00_70*)&(val))



#define OSD_KV_RECT_P2_00_74                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x74)

#define OSD_KV_RECT_P2_00_74_struct                                      rs_osd_kv_rect_p2_00_74

typedef struct _rs_osd_kv_rect_p2_00_74  rs_osd_kv_rect_p2_00_74;
struct _rs_osd_kv_rect_p2_00_74 {
    unsigned int reg_00_rect1_bg_start_color_rect22         :16;
    unsigned int reg_00_rect1_bg_end_color_rect22           :16;
};
#define osd_kv_rect_p2_00_74(val) ((rs_osd_kv_rect_p2_00_74*)&(val))



#define OSD_KV_RECT_P2_00_78                                             (HV_KV_RECT_P2_00_BASE_ADDRESS + 0x78)

#define OSD_KV_RECT_P2_00_78_struct                                      rs_osd_kv_rect_p2_00_78

typedef struct _rs_osd_kv_rect_p2_00_78  rs_osd_kv_rect_p2_00_78;
struct _rs_osd_kv_rect_p2_00_78 {
    unsigned int reg_00_start_x_rect22                      :14;
    unsigned int reserved                                   : 2;
    unsigned int reg_00_start_y_rect22                      :13;
    unsigned int reserved_1                                 : 3;
};
#define osd_kv_rect_p2_00_78(val) ((rs_osd_kv_rect_p2_00_78*)&(val))



#endif