| /* SPDX-License-Identifier: GPL-2.0 */ |
| /* Copyright (C) 2019 Synaptics Incorporated */ |
| |
| #ifndef mipiPipeCore_h |
| #define mipiPipeCore_h (){} |
| |
| #pragma pack(1) |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| #ifndef _DOCC_H_BITOPS_ |
| #define _DOCC_H_BITOPS_ (){} |
| |
| #define _bSETMASK_(b) ((b)<32 ? (1<<((b)&31)) : 0) |
| #define _NSETMASK_(msb,lsb) (_bSETMASK_((msb)+1)-_bSETMASK_(lsb)) |
| #define _bCLRMASK_(b) (~_bSETMASK_(b)) |
| #define _NCLRMASK_(msb,lsb) (~_NSETMASK_(msb,lsb)) |
| #define _BFGET_(r,msb,lsb) (_NSETMASK_((msb)-(lsb),0)&((r)>>(lsb))) |
| #define _BFSET_(r,msb,lsb,v) do{ (r)&=_NCLRMASK_(msb,lsb); (r)|=_NSETMASK_(msb,lsb)&((v)<<(lsb)); }while(0) |
| |
| #endif |
| |
| |
| |
| ////// |
| /// |
| /// $INTERFACE TG_PL (4,4) |
| /// # # ---------------------------------------------------------- |
| /// @ 0x00000 X (P) |
| /// %unsigned 13 start 0x0 |
| /// %unsigned 13 end 0x0 |
| /// %% 6 # Stuffing bits... |
| /// @ 0x00004 Y (P) |
| /// %unsigned 12 start 0x0 |
| /// %unsigned 12 end 0x0 |
| /// ### |
| /// * Horizontal and Vertical Start and End values for a plane |
| /// ### |
| /// %% 8 # Stuffing bits... |
| /// # # ---------------------------------------------------------- |
| /// $ENDOFINTERFACE # size: 8B, bits: 50b, padding: 0B |
| //////////////////////////////////////////////////////////// |
| #ifndef h_TG_PL |
| #define h_TG_PL (){} |
| |
| #define RA_TG_PL_X 0x0000 |
| |
| #define BA_TG_PL_X_start 0x0000 |
| #define B16TG_PL_X_start 0x0000 |
| #define LSb32TG_PL_X_start 0 |
| #define LSb16TG_PL_X_start 0 |
| #define bTG_PL_X_start 13 |
| #define MSK32TG_PL_X_start 0x00001FFF |
| |
| #define BA_TG_PL_X_end 0x0001 |
| #define B16TG_PL_X_end 0x0000 |
| #define LSb32TG_PL_X_end 13 |
| #define LSb16TG_PL_X_end 13 |
| #define bTG_PL_X_end 13 |
| #define MSK32TG_PL_X_end 0x03FFE000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_PL_Y 0x0004 |
| |
| #define BA_TG_PL_Y_start 0x0004 |
| #define B16TG_PL_Y_start 0x0004 |
| #define LSb32TG_PL_Y_start 0 |
| #define LSb16TG_PL_Y_start 0 |
| #define bTG_PL_Y_start 12 |
| #define MSK32TG_PL_Y_start 0x00000FFF |
| |
| #define BA_TG_PL_Y_end 0x0005 |
| #define B16TG_PL_Y_end 0x0004 |
| #define LSb32TG_PL_Y_end 12 |
| #define LSb16TG_PL_Y_end 12 |
| #define bTG_PL_Y_end 12 |
| #define MSK32TG_PL_Y_end 0x00FFF000 |
| /////////////////////////////////////////////////////////// |
| |
| typedef struct SIE_TG_PL { |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_PL_X_start(r32) _BFGET_(r32,12, 0) |
| #define SET32TG_PL_X_start(r32,v) _BFSET_(r32,12, 0,v) |
| #define GET16TG_PL_X_start(r16) _BFGET_(r16,12, 0) |
| #define SET16TG_PL_X_start(r16,v) _BFSET_(r16,12, 0,v) |
| |
| #define GET32TG_PL_X_end(r32) _BFGET_(r32,25,13) |
| #define SET32TG_PL_X_end(r32,v) _BFSET_(r32,25,13,v) |
| |
| #define w32TG_PL_X {\ |
| UNSG32 uX_start : 13;\ |
| UNSG32 uX_end : 13;\ |
| UNSG32 RSVDx0_b26 : 6;\ |
| } |
| union { UNSG32 u32TG_PL_X; |
| struct w32TG_PL_X; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_PL_Y_start(r32) _BFGET_(r32,11, 0) |
| #define SET32TG_PL_Y_start(r32,v) _BFSET_(r32,11, 0,v) |
| #define GET16TG_PL_Y_start(r16) _BFGET_(r16,11, 0) |
| #define SET16TG_PL_Y_start(r16,v) _BFSET_(r16,11, 0,v) |
| |
| #define GET32TG_PL_Y_end(r32) _BFGET_(r32,23,12) |
| #define SET32TG_PL_Y_end(r32,v) _BFSET_(r32,23,12,v) |
| |
| #define w32TG_PL_Y {\ |
| UNSG32 uY_start : 12;\ |
| UNSG32 uY_end : 12;\ |
| UNSG32 RSVDx4_b24 : 8;\ |
| } |
| union { UNSG32 u32TG_PL_Y; |
| struct w32TG_PL_Y; |
| }; |
| /////////////////////////////////////////////////////////// |
| } SIE_TG_PL; |
| |
| typedef union T32TG_PL_X |
| { UNSG32 u32; |
| struct w32TG_PL_X; |
| } T32TG_PL_X; |
| typedef union T32TG_PL_Y |
| { UNSG32 u32; |
| struct w32TG_PL_Y; |
| } T32TG_PL_Y; |
| /////////////////////////////////////////////////////////// |
| |
| typedef union TTG_PL_X |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_PL_X; |
| }; |
| } TTG_PL_X; |
| typedef union TTG_PL_Y |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_PL_Y; |
| }; |
| } TTG_PL_Y; |
| |
| /////////////////////////////////////////////////////////// |
| SIGN32 TG_PL_drvrd(SIE_TG_PL *p, UNSG32 base, SIGN32 mem, SIGN32 tst); |
| SIGN32 TG_PL_drvwr(SIE_TG_PL *p, UNSG32 base, SIGN32 mem, SIGN32 tst, UNSG32 *pcmd); |
| void TG_PL_reset(SIE_TG_PL *p); |
| SIGN32 TG_PL_cmp (SIE_TG_PL *p, SIE_TG_PL *pie, char *pfx, void *hLOG, SIGN32 mem, SIGN32 tst); |
| #define TG_PL_check(p,pie,pfx,hLOG) TG_PL_cmp(p,pie,pfx,(void*)(hLOG),0,0) |
| #define TG_PL_print(p, pfx,hLOG) TG_PL_cmp(p,0, pfx,(void*)(hLOG),0,0) |
| |
| #endif |
| ////// |
| /// ENDOFINTERFACE: TG_PL |
| //////////////////////////////////////////////////////////// |
| |
| ////// |
| /// |
| /// $INTERFACE TG_PRG (4,4) |
| /// # # ---------------------------------------------------------- |
| /// @ 0x00000 CTRL (P) |
| /// %unsigned 2 mode 0x2 |
| /// ### |
| /// * Generates the hcnt and vcnt with the sref. The different modes programmable are : 0 = free running mode, 1 = sync mode, 2= Semi sync mode |
| /// ### |
| /// %unsigned 8 lwin 0xF |
| /// ### |
| /// * Used in generation of lock sync and lock active for resetting hcnt and vcnt in TG |
| /// ### |
| /// %unsigned 12 frst 0x0 |
| /// ### |
| /// * Position during vertical blanking time at which frame reset is generated |
| /// ### |
| /// %unsigned 10 freeze 0x0 |
| /// ### |
| /// * Freeze controls for TG; this register should be used by SW when it wants to modify the plane position/size registers so that HW does not pick-up the intermediate values written. |
| /// ### |
| /// @ 0x00004 CTRL1 (P) |
| /// %unsigned 2 sync_ctrl 0x0 |
| /// ### |
| /// * To provide low latency for pass-through where the latency requirement is less than one frame |
| /// * [0] : Enable Bit. For low latency pass-through, enable this bit to 1’b1. Default it is zero. |
| /// * [1] : The SW will get active video start event from Cypress and then it will program SYNC bit SYNC_CTRL[1] to 1’b1 in VPP for low latency graphics (RGB) pass through. |
| /// ### |
| /// %unsigned 9 res_change_en 0x0 |
| /// ### |
| /// * Enable bits for dynamic resolution change of registers used for generating timing signals |
| /// * [0] – enable bit for Htotal/Vtotal programmable register |
| /// * [1] - enable bit for VX programmable register |
| /// * [2] - enable bit for Hsync (start & end) programmable register |
| /// * [3] - enable bit for Vsync (startY & endY) programmable register |
| /// * [4] - enable bit for Plane0 (startX & endX) programmable register |
| /// * [5] - enable bit for Plane0 (startY & endY) programmable register |
| /// * [6] - enable bit for Field (startX & endX) programmable register |
| /// * [7] - enable bit for Field (startY & endY) programmable register |
| /// * [8] - enable bit for Vsync (startX & endX) programmable register |
| /// ### |
| /// %% 21 # Stuffing bits... |
| /// @ 0x00008 Total (P) |
| /// %unsigned 12 vertical 0x0 |
| /// ### |
| /// * Vertical Total values (in lines). |
| /// ### |
| /// %unsigned 13 horizontal 0x0 |
| /// ### |
| /// * Horizontal Total values (in pixels) |
| /// ### |
| /// %% 7 # Stuffing bits... |
| /// @ 0x0000C Initial (P) |
| /// %unsigned 13 xi 0x0 |
| /// ### |
| /// * Initial Horizontal position value |
| /// ### |
| /// %unsigned 12 yi 0x0 |
| /// ### |
| /// * Initial Vertical position value |
| /// ### |
| /// %% 7 # Stuffing bits... |
| /// @ 0x00010 HSYNC (P) |
| /// %unsigned 13 h_start 0x0 |
| /// ### |
| /// * Horizontal Start value indicated for Hsync position |
| /// ### |
| /// %unsigned 13 h_end 0x0 |
| /// ### |
| /// * Horizontal End value indicated for Hsync position |
| /// ### |
| /// %% 6 # Stuffing bits... |
| /// @ 0x00014 VSYNC (P) |
| /// %unsigned 12 v_start 0x0 |
| /// ### |
| /// * Vertical Start value indicated for Vsync position |
| /// ### |
| /// %unsigned 12 v_end 0x0 |
| /// ### |
| /// * Vertical End value indicated for Vsync position |
| /// ### |
| /// %% 8 # Stuffing bits... |
| /// @ 0x00018 VS (P) |
| /// %unsigned 13 h_start 0x0 |
| /// ### |
| /// * Horizontal Start value indicated for Vsync position |
| /// ### |
| /// %unsigned 13 h_end 0x0 |
| /// ### |
| /// * Horizontal End value indicated for Vsync position |
| /// ### |
| /// %% 6 # Stuffing bits... |
| /// @ 0x0001C FT (P) |
| /// %unsigned 8 frame 0x0 |
| /// ### |
| /// * Frame total value |
| /// ### |
| /// %% 24 # Stuffing bits... |
| /// @ 0x00020 VX (P) |
| /// %unsigned 13 vx 0x0 |
| /// ### |
| /// * Horizontal positions at which vertical active data |
| /// ### |
| /// %% 19 # Stuffing bits... |
| /// # # ---------------------------------------------------------- |
| /// $ENDOFINTERFACE # size: 36B, bits: 190b, padding: 0B |
| //////////////////////////////////////////////////////////// |
| #ifndef h_TG_PRG |
| #define h_TG_PRG (){} |
| |
| #define RA_TG_PRG_CTRL 0x0000 |
| |
| #define BA_TG_PRG_CTRL_mode 0x0000 |
| #define B16TG_PRG_CTRL_mode 0x0000 |
| #define LSb32TG_PRG_CTRL_mode 0 |
| #define LSb16TG_PRG_CTRL_mode 0 |
| #define bTG_PRG_CTRL_mode 2 |
| #define MSK32TG_PRG_CTRL_mode 0x00000003 |
| |
| #define BA_TG_PRG_CTRL_lwin 0x0000 |
| #define B16TG_PRG_CTRL_lwin 0x0000 |
| #define LSb32TG_PRG_CTRL_lwin 2 |
| #define LSb16TG_PRG_CTRL_lwin 2 |
| #define bTG_PRG_CTRL_lwin 8 |
| #define MSK32TG_PRG_CTRL_lwin 0x000003FC |
| |
| #define BA_TG_PRG_CTRL_frst 0x0001 |
| #define B16TG_PRG_CTRL_frst 0x0000 |
| #define LSb32TG_PRG_CTRL_frst 10 |
| #define LSb16TG_PRG_CTRL_frst 10 |
| #define bTG_PRG_CTRL_frst 12 |
| #define MSK32TG_PRG_CTRL_frst 0x003FFC00 |
| |
| #define BA_TG_PRG_CTRL_freeze 0x0002 |
| #define B16TG_PRG_CTRL_freeze 0x0002 |
| #define LSb32TG_PRG_CTRL_freeze 22 |
| #define LSb16TG_PRG_CTRL_freeze 6 |
| #define bTG_PRG_CTRL_freeze 10 |
| #define MSK32TG_PRG_CTRL_freeze 0xFFC00000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_PRG_CTRL1 0x0004 |
| |
| #define BA_TG_PRG_CTRL1_sync_ctrl 0x0004 |
| #define B16TG_PRG_CTRL1_sync_ctrl 0x0004 |
| #define LSb32TG_PRG_CTRL1_sync_ctrl 0 |
| #define LSb16TG_PRG_CTRL1_sync_ctrl 0 |
| #define bTG_PRG_CTRL1_sync_ctrl 2 |
| #define MSK32TG_PRG_CTRL1_sync_ctrl 0x00000003 |
| |
| #define BA_TG_PRG_CTRL1_res_change_en 0x0004 |
| #define B16TG_PRG_CTRL1_res_change_en 0x0004 |
| #define LSb32TG_PRG_CTRL1_res_change_en 2 |
| #define LSb16TG_PRG_CTRL1_res_change_en 2 |
| #define bTG_PRG_CTRL1_res_change_en 9 |
| #define MSK32TG_PRG_CTRL1_res_change_en 0x000007FC |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_PRG_Total 0x0008 |
| |
| #define BA_TG_PRG_Total_vertical 0x0008 |
| #define B16TG_PRG_Total_vertical 0x0008 |
| #define LSb32TG_PRG_Total_vertical 0 |
| #define LSb16TG_PRG_Total_vertical 0 |
| #define bTG_PRG_Total_vertical 12 |
| #define MSK32TG_PRG_Total_vertical 0x00000FFF |
| |
| #define BA_TG_PRG_Total_horizontal 0x0009 |
| #define B16TG_PRG_Total_horizontal 0x0008 |
| #define LSb32TG_PRG_Total_horizontal 12 |
| #define LSb16TG_PRG_Total_horizontal 12 |
| #define bTG_PRG_Total_horizontal 13 |
| #define MSK32TG_PRG_Total_horizontal 0x01FFF000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_PRG_Initial 0x000C |
| |
| #define BA_TG_PRG_Initial_xi 0x000C |
| #define B16TG_PRG_Initial_xi 0x000C |
| #define LSb32TG_PRG_Initial_xi 0 |
| #define LSb16TG_PRG_Initial_xi 0 |
| #define bTG_PRG_Initial_xi 13 |
| #define MSK32TG_PRG_Initial_xi 0x00001FFF |
| |
| #define BA_TG_PRG_Initial_yi 0x000D |
| #define B16TG_PRG_Initial_yi 0x000C |
| #define LSb32TG_PRG_Initial_yi 13 |
| #define LSb16TG_PRG_Initial_yi 13 |
| #define bTG_PRG_Initial_yi 12 |
| #define MSK32TG_PRG_Initial_yi 0x01FFE000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_PRG_HSYNC 0x0010 |
| |
| #define BA_TG_PRG_HSYNC_h_start 0x0010 |
| #define B16TG_PRG_HSYNC_h_start 0x0010 |
| #define LSb32TG_PRG_HSYNC_h_start 0 |
| #define LSb16TG_PRG_HSYNC_h_start 0 |
| #define bTG_PRG_HSYNC_h_start 13 |
| #define MSK32TG_PRG_HSYNC_h_start 0x00001FFF |
| |
| #define BA_TG_PRG_HSYNC_h_end 0x0011 |
| #define B16TG_PRG_HSYNC_h_end 0x0010 |
| #define LSb32TG_PRG_HSYNC_h_end 13 |
| #define LSb16TG_PRG_HSYNC_h_end 13 |
| #define bTG_PRG_HSYNC_h_end 13 |
| #define MSK32TG_PRG_HSYNC_h_end 0x03FFE000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_PRG_VSYNC 0x0014 |
| |
| #define BA_TG_PRG_VSYNC_v_start 0x0014 |
| #define B16TG_PRG_VSYNC_v_start 0x0014 |
| #define LSb32TG_PRG_VSYNC_v_start 0 |
| #define LSb16TG_PRG_VSYNC_v_start 0 |
| #define bTG_PRG_VSYNC_v_start 12 |
| #define MSK32TG_PRG_VSYNC_v_start 0x00000FFF |
| |
| #define BA_TG_PRG_VSYNC_v_end 0x0015 |
| #define B16TG_PRG_VSYNC_v_end 0x0014 |
| #define LSb32TG_PRG_VSYNC_v_end 12 |
| #define LSb16TG_PRG_VSYNC_v_end 12 |
| #define bTG_PRG_VSYNC_v_end 12 |
| #define MSK32TG_PRG_VSYNC_v_end 0x00FFF000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_PRG_VS 0x0018 |
| |
| #define BA_TG_PRG_VS_h_start 0x0018 |
| #define B16TG_PRG_VS_h_start 0x0018 |
| #define LSb32TG_PRG_VS_h_start 0 |
| #define LSb16TG_PRG_VS_h_start 0 |
| #define bTG_PRG_VS_h_start 13 |
| #define MSK32TG_PRG_VS_h_start 0x00001FFF |
| |
| #define BA_TG_PRG_VS_h_end 0x0019 |
| #define B16TG_PRG_VS_h_end 0x0018 |
| #define LSb32TG_PRG_VS_h_end 13 |
| #define LSb16TG_PRG_VS_h_end 13 |
| #define bTG_PRG_VS_h_end 13 |
| #define MSK32TG_PRG_VS_h_end 0x03FFE000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_PRG_FT 0x001C |
| |
| #define BA_TG_PRG_FT_frame 0x001C |
| #define B16TG_PRG_FT_frame 0x001C |
| #define LSb32TG_PRG_FT_frame 0 |
| #define LSb16TG_PRG_FT_frame 0 |
| #define bTG_PRG_FT_frame 8 |
| #define MSK32TG_PRG_FT_frame 0x000000FF |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_PRG_VX 0x0020 |
| |
| #define BA_TG_PRG_VX_vx 0x0020 |
| #define B16TG_PRG_VX_vx 0x0020 |
| #define LSb32TG_PRG_VX_vx 0 |
| #define LSb16TG_PRG_VX_vx 0 |
| #define bTG_PRG_VX_vx 13 |
| #define MSK32TG_PRG_VX_vx 0x00001FFF |
| /////////////////////////////////////////////////////////// |
| |
| typedef struct SIE_TG_PRG { |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_PRG_CTRL_mode(r32) _BFGET_(r32, 1, 0) |
| #define SET32TG_PRG_CTRL_mode(r32,v) _BFSET_(r32, 1, 0,v) |
| #define GET16TG_PRG_CTRL_mode(r16) _BFGET_(r16, 1, 0) |
| #define SET16TG_PRG_CTRL_mode(r16,v) _BFSET_(r16, 1, 0,v) |
| |
| #define GET32TG_PRG_CTRL_lwin(r32) _BFGET_(r32, 9, 2) |
| #define SET32TG_PRG_CTRL_lwin(r32,v) _BFSET_(r32, 9, 2,v) |
| #define GET16TG_PRG_CTRL_lwin(r16) _BFGET_(r16, 9, 2) |
| #define SET16TG_PRG_CTRL_lwin(r16,v) _BFSET_(r16, 9, 2,v) |
| |
| #define GET32TG_PRG_CTRL_frst(r32) _BFGET_(r32,21,10) |
| #define SET32TG_PRG_CTRL_frst(r32,v) _BFSET_(r32,21,10,v) |
| |
| #define GET32TG_PRG_CTRL_freeze(r32) _BFGET_(r32,31,22) |
| #define SET32TG_PRG_CTRL_freeze(r32,v) _BFSET_(r32,31,22,v) |
| #define GET16TG_PRG_CTRL_freeze(r16) _BFGET_(r16,15, 6) |
| #define SET16TG_PRG_CTRL_freeze(r16,v) _BFSET_(r16,15, 6,v) |
| |
| #define w32TG_PRG_CTRL {\ |
| UNSG32 uCTRL_mode : 2;\ |
| UNSG32 uCTRL_lwin : 8;\ |
| UNSG32 uCTRL_frst : 12;\ |
| UNSG32 uCTRL_freeze : 10;\ |
| } |
| union { UNSG32 u32TG_PRG_CTRL; |
| struct w32TG_PRG_CTRL; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_PRG_CTRL1_sync_ctrl(r32) _BFGET_(r32, 1, 0) |
| #define SET32TG_PRG_CTRL1_sync_ctrl(r32,v) _BFSET_(r32, 1, 0,v) |
| #define GET16TG_PRG_CTRL1_sync_ctrl(r16) _BFGET_(r16, 1, 0) |
| #define SET16TG_PRG_CTRL1_sync_ctrl(r16,v) _BFSET_(r16, 1, 0,v) |
| |
| #define GET32TG_PRG_CTRL1_res_change_en(r32) _BFGET_(r32,10, 2) |
| #define SET32TG_PRG_CTRL1_res_change_en(r32,v) _BFSET_(r32,10, 2,v) |
| #define GET16TG_PRG_CTRL1_res_change_en(r16) _BFGET_(r16,10, 2) |
| #define SET16TG_PRG_CTRL1_res_change_en(r16,v) _BFSET_(r16,10, 2,v) |
| |
| #define w32TG_PRG_CTRL1 {\ |
| UNSG32 uCTRL1_sync_ctrl : 2;\ |
| UNSG32 uCTRL1_res_change_en : 9;\ |
| UNSG32 RSVDx4_b11 : 21;\ |
| } |
| union { UNSG32 u32TG_PRG_CTRL1; |
| struct w32TG_PRG_CTRL1; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_PRG_Total_vertical(r32) _BFGET_(r32,11, 0) |
| #define SET32TG_PRG_Total_vertical(r32,v) _BFSET_(r32,11, 0,v) |
| #define GET16TG_PRG_Total_vertical(r16) _BFGET_(r16,11, 0) |
| #define SET16TG_PRG_Total_vertical(r16,v) _BFSET_(r16,11, 0,v) |
| |
| #define GET32TG_PRG_Total_horizontal(r32) _BFGET_(r32,24,12) |
| #define SET32TG_PRG_Total_horizontal(r32,v) _BFSET_(r32,24,12,v) |
| |
| #define w32TG_PRG_Total {\ |
| UNSG32 uTotal_vertical : 12;\ |
| UNSG32 uTotal_horizontal : 13;\ |
| UNSG32 RSVDx8_b25 : 7;\ |
| } |
| union { UNSG32 u32TG_PRG_Total; |
| struct w32TG_PRG_Total; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_PRG_Initial_xi(r32) _BFGET_(r32,12, 0) |
| #define SET32TG_PRG_Initial_xi(r32,v) _BFSET_(r32,12, 0,v) |
| #define GET16TG_PRG_Initial_xi(r16) _BFGET_(r16,12, 0) |
| #define SET16TG_PRG_Initial_xi(r16,v) _BFSET_(r16,12, 0,v) |
| |
| #define GET32TG_PRG_Initial_yi(r32) _BFGET_(r32,24,13) |
| #define SET32TG_PRG_Initial_yi(r32,v) _BFSET_(r32,24,13,v) |
| |
| #define w32TG_PRG_Initial {\ |
| UNSG32 uInitial_xi : 13;\ |
| UNSG32 uInitial_yi : 12;\ |
| UNSG32 RSVDxC_b25 : 7;\ |
| } |
| union { UNSG32 u32TG_PRG_Initial; |
| struct w32TG_PRG_Initial; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_PRG_HSYNC_h_start(r32) _BFGET_(r32,12, 0) |
| #define SET32TG_PRG_HSYNC_h_start(r32,v) _BFSET_(r32,12, 0,v) |
| #define GET16TG_PRG_HSYNC_h_start(r16) _BFGET_(r16,12, 0) |
| #define SET16TG_PRG_HSYNC_h_start(r16,v) _BFSET_(r16,12, 0,v) |
| |
| #define GET32TG_PRG_HSYNC_h_end(r32) _BFGET_(r32,25,13) |
| #define SET32TG_PRG_HSYNC_h_end(r32,v) _BFSET_(r32,25,13,v) |
| |
| #define w32TG_PRG_HSYNC {\ |
| UNSG32 uHSYNC_h_start : 13;\ |
| UNSG32 uHSYNC_h_end : 13;\ |
| UNSG32 RSVDx10_b26 : 6;\ |
| } |
| union { UNSG32 u32TG_PRG_HSYNC; |
| struct w32TG_PRG_HSYNC; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_PRG_VSYNC_v_start(r32) _BFGET_(r32,11, 0) |
| #define SET32TG_PRG_VSYNC_v_start(r32,v) _BFSET_(r32,11, 0,v) |
| #define GET16TG_PRG_VSYNC_v_start(r16) _BFGET_(r16,11, 0) |
| #define SET16TG_PRG_VSYNC_v_start(r16,v) _BFSET_(r16,11, 0,v) |
| |
| #define GET32TG_PRG_VSYNC_v_end(r32) _BFGET_(r32,23,12) |
| #define SET32TG_PRG_VSYNC_v_end(r32,v) _BFSET_(r32,23,12,v) |
| |
| #define w32TG_PRG_VSYNC {\ |
| UNSG32 uVSYNC_v_start : 12;\ |
| UNSG32 uVSYNC_v_end : 12;\ |
| UNSG32 RSVDx14_b24 : 8;\ |
| } |
| union { UNSG32 u32TG_PRG_VSYNC; |
| struct w32TG_PRG_VSYNC; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_PRG_VS_h_start(r32) _BFGET_(r32,12, 0) |
| #define SET32TG_PRG_VS_h_start(r32,v) _BFSET_(r32,12, 0,v) |
| #define GET16TG_PRG_VS_h_start(r16) _BFGET_(r16,12, 0) |
| #define SET16TG_PRG_VS_h_start(r16,v) _BFSET_(r16,12, 0,v) |
| |
| #define GET32TG_PRG_VS_h_end(r32) _BFGET_(r32,25,13) |
| #define SET32TG_PRG_VS_h_end(r32,v) _BFSET_(r32,25,13,v) |
| |
| #define w32TG_PRG_VS {\ |
| UNSG32 uVS_h_start : 13;\ |
| UNSG32 uVS_h_end : 13;\ |
| UNSG32 RSVDx18_b26 : 6;\ |
| } |
| union { UNSG32 u32TG_PRG_VS; |
| struct w32TG_PRG_VS; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_PRG_FT_frame(r32) _BFGET_(r32, 7, 0) |
| #define SET32TG_PRG_FT_frame(r32,v) _BFSET_(r32, 7, 0,v) |
| #define GET16TG_PRG_FT_frame(r16) _BFGET_(r16, 7, 0) |
| #define SET16TG_PRG_FT_frame(r16,v) _BFSET_(r16, 7, 0,v) |
| |
| #define w32TG_PRG_FT {\ |
| UNSG32 uFT_frame : 8;\ |
| UNSG32 RSVDx1C_b8 : 24;\ |
| } |
| union { UNSG32 u32TG_PRG_FT; |
| struct w32TG_PRG_FT; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_PRG_VX_vx(r32) _BFGET_(r32,12, 0) |
| #define SET32TG_PRG_VX_vx(r32,v) _BFSET_(r32,12, 0,v) |
| #define GET16TG_PRG_VX_vx(r16) _BFGET_(r16,12, 0) |
| #define SET16TG_PRG_VX_vx(r16,v) _BFSET_(r16,12, 0,v) |
| |
| #define w32TG_PRG_VX {\ |
| UNSG32 uVX_vx : 13;\ |
| UNSG32 RSVDx20_b13 : 19;\ |
| } |
| union { UNSG32 u32TG_PRG_VX; |
| struct w32TG_PRG_VX; |
| }; |
| /////////////////////////////////////////////////////////// |
| } SIE_TG_PRG; |
| |
| typedef union T32TG_PRG_CTRL |
| { UNSG32 u32; |
| struct w32TG_PRG_CTRL; |
| } T32TG_PRG_CTRL; |
| typedef union T32TG_PRG_CTRL1 |
| { UNSG32 u32; |
| struct w32TG_PRG_CTRL1; |
| } T32TG_PRG_CTRL1; |
| typedef union T32TG_PRG_Total |
| { UNSG32 u32; |
| struct w32TG_PRG_Total; |
| } T32TG_PRG_Total; |
| typedef union T32TG_PRG_Initial |
| { UNSG32 u32; |
| struct w32TG_PRG_Initial; |
| } T32TG_PRG_Initial; |
| typedef union T32TG_PRG_HSYNC |
| { UNSG32 u32; |
| struct w32TG_PRG_HSYNC; |
| } T32TG_PRG_HSYNC; |
| typedef union T32TG_PRG_VSYNC |
| { UNSG32 u32; |
| struct w32TG_PRG_VSYNC; |
| } T32TG_PRG_VSYNC; |
| typedef union T32TG_PRG_VS |
| { UNSG32 u32; |
| struct w32TG_PRG_VS; |
| } T32TG_PRG_VS; |
| typedef union T32TG_PRG_FT |
| { UNSG32 u32; |
| struct w32TG_PRG_FT; |
| } T32TG_PRG_FT; |
| typedef union T32TG_PRG_VX |
| { UNSG32 u32; |
| struct w32TG_PRG_VX; |
| } T32TG_PRG_VX; |
| /////////////////////////////////////////////////////////// |
| |
| typedef union TTG_PRG_CTRL |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_PRG_CTRL; |
| }; |
| } TTG_PRG_CTRL; |
| typedef union TTG_PRG_CTRL1 |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_PRG_CTRL1; |
| }; |
| } TTG_PRG_CTRL1; |
| typedef union TTG_PRG_Total |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_PRG_Total; |
| }; |
| } TTG_PRG_Total; |
| typedef union TTG_PRG_Initial |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_PRG_Initial; |
| }; |
| } TTG_PRG_Initial; |
| typedef union TTG_PRG_HSYNC |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_PRG_HSYNC; |
| }; |
| } TTG_PRG_HSYNC; |
| typedef union TTG_PRG_VSYNC |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_PRG_VSYNC; |
| }; |
| } TTG_PRG_VSYNC; |
| typedef union TTG_PRG_VS |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_PRG_VS; |
| }; |
| } TTG_PRG_VS; |
| typedef union TTG_PRG_FT |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_PRG_FT; |
| }; |
| } TTG_PRG_FT; |
| typedef union TTG_PRG_VX |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_PRG_VX; |
| }; |
| } TTG_PRG_VX; |
| |
| /////////////////////////////////////////////////////////// |
| SIGN32 TG_PRG_drvrd(SIE_TG_PRG *p, UNSG32 base, SIGN32 mem, SIGN32 tst); |
| SIGN32 TG_PRG_drvwr(SIE_TG_PRG *p, UNSG32 base, SIGN32 mem, SIGN32 tst, UNSG32 *pcmd); |
| void TG_PRG_reset(SIE_TG_PRG *p); |
| SIGN32 TG_PRG_cmp (SIE_TG_PRG *p, SIE_TG_PRG *pie, char *pfx, void *hLOG, SIGN32 mem, SIGN32 tst); |
| #define TG_PRG_check(p,pie,pfx,hLOG) TG_PRG_cmp(p,pie,pfx,(void*)(hLOG),0,0) |
| #define TG_PRG_print(p, pfx,hLOG) TG_PRG_cmp(p,0, pfx,(void*)(hLOG),0,0) |
| |
| #endif |
| ////// |
| /// ENDOFINTERFACE: TG_PRG |
| //////////////////////////////////////////////////////////// |
| |
| ////// |
| /// |
| /// $INTERFACE TG biu (4,4) |
| /// ### |
| /// * Register specification of interface Timing Generator |
| /// * There are two counters in the timing generator module. hCntr (from 1 to SIZE_X) and vCntr (from 1 to SIZE_Y). |
| /// * When start, the initial value will be loaded to the xCnt and yCnt |
| /// ### |
| /// # # ---------------------------------------------------------- |
| /// @ 0x00000 INIT (P) |
| /// %unsigned 16 Y 0x1 |
| /// ### |
| /// * Initial Y value which will be used to load Y counter when tg is enabled. |
| /// ### |
| /// %unsigned 16 X 0x1 |
| /// ### |
| /// * Initial X value which will be used to load X counter when tg is enabled. |
| /// * A whole frame scan size. |
| /// ### |
| /// @ 0x00004 SIZE (P) |
| /// %unsigned 16 Y 0x465 |
| /// ### |
| /// * Total scan lines per frame. |
| /// ### |
| /// %unsigned 16 X 0x898 |
| /// ### |
| /// * Total scan clock cycles per line. |
| /// * Hsync |
| /// ### |
| /// @ 0x00008 HS (P) |
| /// %unsigned 16 FE 0x1 |
| /// ### |
| /// * Hsync front edge. The first pixel position of hsync pulse. |
| /// ### |
| /// %unsigned 16 BE 0x2C |
| /// ### |
| /// * Hsync back edge. The last pixel position of hsync pulse. |
| /// * HS = hCntr>=FE & hCntr<=BE |
| /// * HBlanking |
| /// ### |
| /// @ 0x0000C HB (P) |
| /// %unsigned 16 FE 0x841 |
| /// ### |
| /// * Hblank front edge. The first pixel position of the hBlank pulse. SIZEX-HFP = 2200-88+1 |
| /// ### |
| /// %unsigned 16 BE 0xC0 |
| /// ### |
| /// * Hblank back edge. The last pixel position of the hBlank pulse. HPW + HBP = 44+148 |
| /// * HB = hCntr>=FE || hCntr<=BE. |
| /// ### |
| /// @ 0x00010 HB_CR (P) |
| /// %unsigned 16 FE 0x841 |
| /// ### |
| /// * Hblank front edge. The first pixel position of the hBlank pulse. SIZEX-HFP = 2200-88+1 |
| /// ### |
| /// %unsigned 16 BE 0xC0 |
| /// ### |
| /// * Hblank back edge. The last pixel position of the hBlank pulse. HPW + HBP = 44+148 |
| /// * HB_CR = hCntr>=FE || hCntr<=BE. |
| /// ### |
| /// @ 0x00014 HB_CR2 (P) |
| /// %unsigned 16 FE 0x841 |
| /// ### |
| /// * Hblank front edge. The first pixel position of the hBlank pulse. SIZEX-HFP = 2200-88+1 |
| /// * Note : to be programmed with different value (only when cropping is required). Else to be programmed same as HB FE (above register) |
| /// ### |
| /// %unsigned 16 BE 0xC0 |
| /// ### |
| /// * Hblank back edge. The last pixel position of the hBlank pulse. HPW + HBP = 44+148 |
| /// * Note : to be programmed with different value (only when cropping is required). Else to be programmed same as HB BE (above register) |
| /// * HB = hCntr>=FE || hCntr<=BE. |
| /// * VS0 defines the first first pixel position of the first VSYNC (progressive or interlace mode) pulse. |
| /// * For example |
| /// * 1080i60, the VTP is the last pixel of the last line. So set both VLCNT0 and VPCNT0 to 0. |
| /// ### |
| /// @ 0x00018 VS0 (P) |
| /// %unsigned 16 FE 0x1 |
| /// ### |
| /// * Vsync pulse front edge. |
| /// * Vsync will be asserted at the beginning of this line. |
| /// ### |
| /// %unsigned 16 BE 0x5 |
| /// ### |
| /// * Vsync pulse back edge. |
| /// * Vsycn pulse will be de-asserted after the end of this line. |
| /// * Vsync = (vCntr>=FE & vCntr<=BE) |
| /// * Vsync pulse 1 |
| /// * defines the first pixel position of the second vSync pulse. For example |
| /// * 1080i60, the VTP is pixel 1100 of line 563. So set both VLCNT2=563. and VPCNT2 to 1100. |
| /// ### |
| /// @ 0x0001C VS1 (P) |
| /// %unsigned 16 FE 0x233 |
| /// ### |
| /// * Vsync pulse 1 front edge line position. |
| /// * Vsync pulse 1 will be asserted at the middle of this line. |
| /// ### |
| /// %unsigned 16 BE 0x238 |
| /// ### |
| /// * Vsync pulse 1 back edge line position. |
| /// * Vsync pulse 1 will be de-asserted at the middle of this line. |
| /// * Vsync1 = (vCntr>=FE & hCntr>SIZEX/2) & (vCntr<=BE & hCntr<=SIZEX/2) |
| /// * Vertical blanking. |
| /// * VB0 parameter definietion |
| /// ### |
| /// @ 0x00020 VB0 (P) |
| /// %unsigned 16 FE 0x462 |
| /// ### |
| /// * Vblank front edge line position |
| /// * The first line of the vertical blanking. |
| /// ### |
| /// %unsigned 16 BE 0x29 |
| /// ### |
| /// * Vblank back edge line position |
| /// * the last line number of the vertical blanking |
| /// * The default value is used for 1080p case. |
| /// * Vblank0 = vCntr>=FE || vCntr<=BE |
| /// ### |
| /// @ 0x00024 VB0_CR (P) |
| /// %unsigned 16 FE 0x462 |
| /// ### |
| /// * Vblank front edge line position |
| /// * The first line of the vertical blanking. |
| /// ### |
| /// %unsigned 16 BE 0x29 |
| /// ### |
| /// * Vblank back edge line position |
| /// * the last line number of the vertical blanking |
| /// * The default value is used for 1080p case. |
| /// * Vblank0_CR = vCntr>=FE || vCntr<=BE |
| /// ### |
| /// @ 0x00028 VB0_CR2 (P) |
| /// %unsigned 16 FE 0x462 |
| /// ### |
| /// * Vblank front edge line position |
| /// * The first line of the vertical blanking. |
| /// * Note : to be programmed with different value only when cropping is required. Else to be programmed same as VB0 FE (above register) |
| /// ### |
| /// %unsigned 16 BE 0x29 |
| /// ### |
| /// * Vblank back edge line position |
| /// * the last line number of the vertical blanking |
| /// * The default value is used for 1080p case. |
| /// * Note : to be programmed with different value only when cropping is required. Else to be programmed same as VB0 BE (above register) |
| /// * Vblank0 = vCntr>=FE || vCntr<=BE |
| /// ### |
| /// @ 0x0002C VB1 (P) |
| /// %unsigned 16 FE 0x231 |
| /// ### |
| /// * Vblank front edge line postion |
| /// * The first line number of VB1. |
| /// ### |
| /// %unsigned 16 BE 0x247 |
| /// ### |
| /// * Vblank back edge line postion |
| /// * the last line numer of VB1. |
| /// * VB1 = (vCntr>=FE & vCntr<=BE) |
| /// * SCAN mode |
| /// ### |
| /// @ 0x00030 SCAN (P) |
| /// %unsigned 1 MODE 0x0 |
| /// : PROG 0x0 |
| /// : INTER 0x1 |
| /// ### |
| /// * Frame done interrupt position |
| /// ### |
| /// %% 31 # Stuffing bits... |
| /// @ 0x00034 INTPOS (P) |
| /// %unsigned 16 FRAME 0x465 |
| /// ### |
| /// * Frame interrupt status will be set at the end of this line. |
| /// * Program 0 to this register will disable frame interrupt. |
| /// ### |
| /// %unsigned 16 FIELD 0x233 |
| /// ### |
| /// * Field interrupt status will be set at the end of this line. |
| /// * Program 0 to this register will disable field interrupt. |
| /// * MODE |
| /// ### |
| /// @ 0x00038 MODE (P) |
| /// %unsigned 1 EN 0x0 |
| /// : MASTER 0x0 |
| /// : SLAVE 0x1 |
| /// ### |
| /// * In master mode, TG drive the control signal. |
| /// * In slave mode, TG take the external hsync and vsync, it generate the internal sync and blank signal based on the programmed register and external hsync and vsync. |
| /// * HREF input for slave mode. |
| /// ### |
| /// %% 31 # Stuffing bits... |
| /// @ 0x0003C HVREF (P) |
| /// %unsigned 1 SEL 0x0 |
| /// : SYNC 0x0 |
| /// : BLANK 0x1 |
| /// ### |
| /// * In slave mode, tg will sync to the external tg generated HREF/VREF which could be HSYBC/VSYNC or HBLANK/VBLANK. Currently only HSYNC/VSYNC is supported. |
| /// * HSYNC and VSYNC have to be come in pair. |
| /// ### |
| /// %unsigned 1 POL 0x0 |
| /// : NEG_PULSE 0x0 |
| /// : POS_PULSE 0x1 |
| /// ### |
| /// * 0 : indicate the input HREF/VREF are negative pulses |
| /// * 1: indicate the input HREF/VREFare positive pulses. |
| /// * HREF and VREF have to be the same polarity. |
| /// * End of TG register group |
| /// ### |
| /// %% 30 # Stuffing bits... |
| /// # # ---------------------------------------------------------- |
| /// $ENDOFINTERFACE # size: 64B, bits: 420b, padding: 0B |
| //////////////////////////////////////////////////////////// |
| #ifndef h_TG |
| #define h_TG (){} |
| |
| #define RA_TG_INIT 0x0000 |
| |
| #define BA_TG_INIT_Y 0x0000 |
| #define B16TG_INIT_Y 0x0000 |
| #define LSb32TG_INIT_Y 0 |
| #define LSb16TG_INIT_Y 0 |
| #define bTG_INIT_Y 16 |
| #define MSK32TG_INIT_Y 0x0000FFFF |
| |
| #define BA_TG_INIT_X 0x0002 |
| #define B16TG_INIT_X 0x0002 |
| #define LSb32TG_INIT_X 16 |
| #define LSb16TG_INIT_X 0 |
| #define bTG_INIT_X 16 |
| #define MSK32TG_INIT_X 0xFFFF0000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_SIZE 0x0004 |
| |
| #define BA_TG_SIZE_Y 0x0004 |
| #define B16TG_SIZE_Y 0x0004 |
| #define LSb32TG_SIZE_Y 0 |
| #define LSb16TG_SIZE_Y 0 |
| #define bTG_SIZE_Y 16 |
| #define MSK32TG_SIZE_Y 0x0000FFFF |
| |
| #define BA_TG_SIZE_X 0x0006 |
| #define B16TG_SIZE_X 0x0006 |
| #define LSb32TG_SIZE_X 16 |
| #define LSb16TG_SIZE_X 0 |
| #define bTG_SIZE_X 16 |
| #define MSK32TG_SIZE_X 0xFFFF0000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_HS 0x0008 |
| |
| #define BA_TG_HS_FE 0x0008 |
| #define B16TG_HS_FE 0x0008 |
| #define LSb32TG_HS_FE 0 |
| #define LSb16TG_HS_FE 0 |
| #define bTG_HS_FE 16 |
| #define MSK32TG_HS_FE 0x0000FFFF |
| |
| #define BA_TG_HS_BE 0x000A |
| #define B16TG_HS_BE 0x000A |
| #define LSb32TG_HS_BE 16 |
| #define LSb16TG_HS_BE 0 |
| #define bTG_HS_BE 16 |
| #define MSK32TG_HS_BE 0xFFFF0000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_HB 0x000C |
| |
| #define BA_TG_HB_FE 0x000C |
| #define B16TG_HB_FE 0x000C |
| #define LSb32TG_HB_FE 0 |
| #define LSb16TG_HB_FE 0 |
| #define bTG_HB_FE 16 |
| #define MSK32TG_HB_FE 0x0000FFFF |
| |
| #define BA_TG_HB_BE 0x000E |
| #define B16TG_HB_BE 0x000E |
| #define LSb32TG_HB_BE 16 |
| #define LSb16TG_HB_BE 0 |
| #define bTG_HB_BE 16 |
| #define MSK32TG_HB_BE 0xFFFF0000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_HB_CR 0x0010 |
| |
| #define BA_TG_HB_CR_FE 0x0010 |
| #define B16TG_HB_CR_FE 0x0010 |
| #define LSb32TG_HB_CR_FE 0 |
| #define LSb16TG_HB_CR_FE 0 |
| #define bTG_HB_CR_FE 16 |
| #define MSK32TG_HB_CR_FE 0x0000FFFF |
| |
| #define BA_TG_HB_CR_BE 0x0012 |
| #define B16TG_HB_CR_BE 0x0012 |
| #define LSb32TG_HB_CR_BE 16 |
| #define LSb16TG_HB_CR_BE 0 |
| #define bTG_HB_CR_BE 16 |
| #define MSK32TG_HB_CR_BE 0xFFFF0000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_HB_CR2 0x0014 |
| |
| #define BA_TG_HB_CR2_FE 0x0014 |
| #define B16TG_HB_CR2_FE 0x0014 |
| #define LSb32TG_HB_CR2_FE 0 |
| #define LSb16TG_HB_CR2_FE 0 |
| #define bTG_HB_CR2_FE 16 |
| #define MSK32TG_HB_CR2_FE 0x0000FFFF |
| |
| #define BA_TG_HB_CR2_BE 0x0016 |
| #define B16TG_HB_CR2_BE 0x0016 |
| #define LSb32TG_HB_CR2_BE 16 |
| #define LSb16TG_HB_CR2_BE 0 |
| #define bTG_HB_CR2_BE 16 |
| #define MSK32TG_HB_CR2_BE 0xFFFF0000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_VS0 0x0018 |
| |
| #define BA_TG_VS0_FE 0x0018 |
| #define B16TG_VS0_FE 0x0018 |
| #define LSb32TG_VS0_FE 0 |
| #define LSb16TG_VS0_FE 0 |
| #define bTG_VS0_FE 16 |
| #define MSK32TG_VS0_FE 0x0000FFFF |
| |
| #define BA_TG_VS0_BE 0x001A |
| #define B16TG_VS0_BE 0x001A |
| #define LSb32TG_VS0_BE 16 |
| #define LSb16TG_VS0_BE 0 |
| #define bTG_VS0_BE 16 |
| #define MSK32TG_VS0_BE 0xFFFF0000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_VS1 0x001C |
| |
| #define BA_TG_VS1_FE 0x001C |
| #define B16TG_VS1_FE 0x001C |
| #define LSb32TG_VS1_FE 0 |
| #define LSb16TG_VS1_FE 0 |
| #define bTG_VS1_FE 16 |
| #define MSK32TG_VS1_FE 0x0000FFFF |
| |
| #define BA_TG_VS1_BE 0x001E |
| #define B16TG_VS1_BE 0x001E |
| #define LSb32TG_VS1_BE 16 |
| #define LSb16TG_VS1_BE 0 |
| #define bTG_VS1_BE 16 |
| #define MSK32TG_VS1_BE 0xFFFF0000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_VB0 0x0020 |
| |
| #define BA_TG_VB0_FE 0x0020 |
| #define B16TG_VB0_FE 0x0020 |
| #define LSb32TG_VB0_FE 0 |
| #define LSb16TG_VB0_FE 0 |
| #define bTG_VB0_FE 16 |
| #define MSK32TG_VB0_FE 0x0000FFFF |
| |
| #define BA_TG_VB0_BE 0x0022 |
| #define B16TG_VB0_BE 0x0022 |
| #define LSb32TG_VB0_BE 16 |
| #define LSb16TG_VB0_BE 0 |
| #define bTG_VB0_BE 16 |
| #define MSK32TG_VB0_BE 0xFFFF0000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_VB0_CR 0x0024 |
| |
| #define BA_TG_VB0_CR_FE 0x0024 |
| #define B16TG_VB0_CR_FE 0x0024 |
| #define LSb32TG_VB0_CR_FE 0 |
| #define LSb16TG_VB0_CR_FE 0 |
| #define bTG_VB0_CR_FE 16 |
| #define MSK32TG_VB0_CR_FE 0x0000FFFF |
| |
| #define BA_TG_VB0_CR_BE 0x0026 |
| #define B16TG_VB0_CR_BE 0x0026 |
| #define LSb32TG_VB0_CR_BE 16 |
| #define LSb16TG_VB0_CR_BE 0 |
| #define bTG_VB0_CR_BE 16 |
| #define MSK32TG_VB0_CR_BE 0xFFFF0000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_VB0_CR2 0x0028 |
| |
| #define BA_TG_VB0_CR2_FE 0x0028 |
| #define B16TG_VB0_CR2_FE 0x0028 |
| #define LSb32TG_VB0_CR2_FE 0 |
| #define LSb16TG_VB0_CR2_FE 0 |
| #define bTG_VB0_CR2_FE 16 |
| #define MSK32TG_VB0_CR2_FE 0x0000FFFF |
| |
| #define BA_TG_VB0_CR2_BE 0x002A |
| #define B16TG_VB0_CR2_BE 0x002A |
| #define LSb32TG_VB0_CR2_BE 16 |
| #define LSb16TG_VB0_CR2_BE 0 |
| #define bTG_VB0_CR2_BE 16 |
| #define MSK32TG_VB0_CR2_BE 0xFFFF0000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_VB1 0x002C |
| |
| #define BA_TG_VB1_FE 0x002C |
| #define B16TG_VB1_FE 0x002C |
| #define LSb32TG_VB1_FE 0 |
| #define LSb16TG_VB1_FE 0 |
| #define bTG_VB1_FE 16 |
| #define MSK32TG_VB1_FE 0x0000FFFF |
| |
| #define BA_TG_VB1_BE 0x002E |
| #define B16TG_VB1_BE 0x002E |
| #define LSb32TG_VB1_BE 16 |
| #define LSb16TG_VB1_BE 0 |
| #define bTG_VB1_BE 16 |
| #define MSK32TG_VB1_BE 0xFFFF0000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_SCAN 0x0030 |
| |
| #define BA_TG_SCAN_MODE 0x0030 |
| #define B16TG_SCAN_MODE 0x0030 |
| #define LSb32TG_SCAN_MODE 0 |
| #define LSb16TG_SCAN_MODE 0 |
| #define bTG_SCAN_MODE 1 |
| #define MSK32TG_SCAN_MODE 0x00000001 |
| #define TG_SCAN_MODE_PROG 0x0 |
| #define TG_SCAN_MODE_INTER 0x1 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_INTPOS 0x0034 |
| |
| #define BA_TG_INTPOS_FRAME 0x0034 |
| #define B16TG_INTPOS_FRAME 0x0034 |
| #define LSb32TG_INTPOS_FRAME 0 |
| #define LSb16TG_INTPOS_FRAME 0 |
| #define bTG_INTPOS_FRAME 16 |
| #define MSK32TG_INTPOS_FRAME 0x0000FFFF |
| |
| #define BA_TG_INTPOS_FIELD 0x0036 |
| #define B16TG_INTPOS_FIELD 0x0036 |
| #define LSb32TG_INTPOS_FIELD 16 |
| #define LSb16TG_INTPOS_FIELD 0 |
| #define bTG_INTPOS_FIELD 16 |
| #define MSK32TG_INTPOS_FIELD 0xFFFF0000 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_MODE 0x0038 |
| |
| #define BA_TG_MODE_EN 0x0038 |
| #define B16TG_MODE_EN 0x0038 |
| #define LSb32TG_MODE_EN 0 |
| #define LSb16TG_MODE_EN 0 |
| #define bTG_MODE_EN 1 |
| #define MSK32TG_MODE_EN 0x00000001 |
| #define TG_MODE_EN_MASTER 0x0 |
| #define TG_MODE_EN_SLAVE 0x1 |
| /////////////////////////////////////////////////////////// |
| #define RA_TG_HVREF 0x003C |
| |
| #define BA_TG_HVREF_SEL 0x003C |
| #define B16TG_HVREF_SEL 0x003C |
| #define LSb32TG_HVREF_SEL 0 |
| #define LSb16TG_HVREF_SEL 0 |
| #define bTG_HVREF_SEL 1 |
| #define MSK32TG_HVREF_SEL 0x00000001 |
| #define TG_HVREF_SEL_SYNC 0x0 |
| #define TG_HVREF_SEL_BLANK 0x1 |
| |
| #define BA_TG_HVREF_POL 0x003C |
| #define B16TG_HVREF_POL 0x003C |
| #define LSb32TG_HVREF_POL 1 |
| #define LSb16TG_HVREF_POL 1 |
| #define bTG_HVREF_POL 1 |
| #define MSK32TG_HVREF_POL 0x00000002 |
| #define TG_HVREF_POL_NEG_PULSE 0x0 |
| #define TG_HVREF_POL_POS_PULSE 0x1 |
| /////////////////////////////////////////////////////////// |
| |
| typedef struct SIE_TG { |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_INIT_Y(r32) _BFGET_(r32,15, 0) |
| #define SET32TG_INIT_Y(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16TG_INIT_Y(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_INIT_Y(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define GET32TG_INIT_X(r32) _BFGET_(r32,31,16) |
| #define SET32TG_INIT_X(r32,v) _BFSET_(r32,31,16,v) |
| #define GET16TG_INIT_X(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_INIT_X(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define w32TG_INIT {\ |
| UNSG32 uINIT_Y : 16;\ |
| UNSG32 uINIT_X : 16;\ |
| } |
| union { UNSG32 u32TG_INIT; |
| struct w32TG_INIT; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_SIZE_Y(r32) _BFGET_(r32,15, 0) |
| #define SET32TG_SIZE_Y(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16TG_SIZE_Y(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_SIZE_Y(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define GET32TG_SIZE_X(r32) _BFGET_(r32,31,16) |
| #define SET32TG_SIZE_X(r32,v) _BFSET_(r32,31,16,v) |
| #define GET16TG_SIZE_X(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_SIZE_X(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define w32TG_SIZE {\ |
| UNSG32 uSIZE_Y : 16;\ |
| UNSG32 uSIZE_X : 16;\ |
| } |
| union { UNSG32 u32TG_SIZE; |
| struct w32TG_SIZE; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_HS_FE(r32) _BFGET_(r32,15, 0) |
| #define SET32TG_HS_FE(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16TG_HS_FE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_HS_FE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define GET32TG_HS_BE(r32) _BFGET_(r32,31,16) |
| #define SET32TG_HS_BE(r32,v) _BFSET_(r32,31,16,v) |
| #define GET16TG_HS_BE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_HS_BE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define w32TG_HS {\ |
| UNSG32 uHS_FE : 16;\ |
| UNSG32 uHS_BE : 16;\ |
| } |
| union { UNSG32 u32TG_HS; |
| struct w32TG_HS; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_HB_FE(r32) _BFGET_(r32,15, 0) |
| #define SET32TG_HB_FE(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16TG_HB_FE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_HB_FE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define GET32TG_HB_BE(r32) _BFGET_(r32,31,16) |
| #define SET32TG_HB_BE(r32,v) _BFSET_(r32,31,16,v) |
| #define GET16TG_HB_BE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_HB_BE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define w32TG_HB {\ |
| UNSG32 uHB_FE : 16;\ |
| UNSG32 uHB_BE : 16;\ |
| } |
| union { UNSG32 u32TG_HB; |
| struct w32TG_HB; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_HB_CR_FE(r32) _BFGET_(r32,15, 0) |
| #define SET32TG_HB_CR_FE(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16TG_HB_CR_FE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_HB_CR_FE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define GET32TG_HB_CR_BE(r32) _BFGET_(r32,31,16) |
| #define SET32TG_HB_CR_BE(r32,v) _BFSET_(r32,31,16,v) |
| #define GET16TG_HB_CR_BE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_HB_CR_BE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define w32TG_HB_CR {\ |
| UNSG32 uHB_CR_FE : 16;\ |
| UNSG32 uHB_CR_BE : 16;\ |
| } |
| union { UNSG32 u32TG_HB_CR; |
| struct w32TG_HB_CR; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_HB_CR2_FE(r32) _BFGET_(r32,15, 0) |
| #define SET32TG_HB_CR2_FE(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16TG_HB_CR2_FE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_HB_CR2_FE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define GET32TG_HB_CR2_BE(r32) _BFGET_(r32,31,16) |
| #define SET32TG_HB_CR2_BE(r32,v) _BFSET_(r32,31,16,v) |
| #define GET16TG_HB_CR2_BE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_HB_CR2_BE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define w32TG_HB_CR2 {\ |
| UNSG32 uHB_CR2_FE : 16;\ |
| UNSG32 uHB_CR2_BE : 16;\ |
| } |
| union { UNSG32 u32TG_HB_CR2; |
| struct w32TG_HB_CR2; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_VS0_FE(r32) _BFGET_(r32,15, 0) |
| #define SET32TG_VS0_FE(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16TG_VS0_FE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_VS0_FE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define GET32TG_VS0_BE(r32) _BFGET_(r32,31,16) |
| #define SET32TG_VS0_BE(r32,v) _BFSET_(r32,31,16,v) |
| #define GET16TG_VS0_BE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_VS0_BE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define w32TG_VS0 {\ |
| UNSG32 uVS0_FE : 16;\ |
| UNSG32 uVS0_BE : 16;\ |
| } |
| union { UNSG32 u32TG_VS0; |
| struct w32TG_VS0; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_VS1_FE(r32) _BFGET_(r32,15, 0) |
| #define SET32TG_VS1_FE(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16TG_VS1_FE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_VS1_FE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define GET32TG_VS1_BE(r32) _BFGET_(r32,31,16) |
| #define SET32TG_VS1_BE(r32,v) _BFSET_(r32,31,16,v) |
| #define GET16TG_VS1_BE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_VS1_BE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define w32TG_VS1 {\ |
| UNSG32 uVS1_FE : 16;\ |
| UNSG32 uVS1_BE : 16;\ |
| } |
| union { UNSG32 u32TG_VS1; |
| struct w32TG_VS1; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_VB0_FE(r32) _BFGET_(r32,15, 0) |
| #define SET32TG_VB0_FE(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16TG_VB0_FE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_VB0_FE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define GET32TG_VB0_BE(r32) _BFGET_(r32,31,16) |
| #define SET32TG_VB0_BE(r32,v) _BFSET_(r32,31,16,v) |
| #define GET16TG_VB0_BE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_VB0_BE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define w32TG_VB0 {\ |
| UNSG32 uVB0_FE : 16;\ |
| UNSG32 uVB0_BE : 16;\ |
| } |
| union { UNSG32 u32TG_VB0; |
| struct w32TG_VB0; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_VB0_CR_FE(r32) _BFGET_(r32,15, 0) |
| #define SET32TG_VB0_CR_FE(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16TG_VB0_CR_FE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_VB0_CR_FE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define GET32TG_VB0_CR_BE(r32) _BFGET_(r32,31,16) |
| #define SET32TG_VB0_CR_BE(r32,v) _BFSET_(r32,31,16,v) |
| #define GET16TG_VB0_CR_BE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_VB0_CR_BE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define w32TG_VB0_CR {\ |
| UNSG32 uVB0_CR_FE : 16;\ |
| UNSG32 uVB0_CR_BE : 16;\ |
| } |
| union { UNSG32 u32TG_VB0_CR; |
| struct w32TG_VB0_CR; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_VB0_CR2_FE(r32) _BFGET_(r32,15, 0) |
| #define SET32TG_VB0_CR2_FE(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16TG_VB0_CR2_FE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_VB0_CR2_FE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define GET32TG_VB0_CR2_BE(r32) _BFGET_(r32,31,16) |
| #define SET32TG_VB0_CR2_BE(r32,v) _BFSET_(r32,31,16,v) |
| #define GET16TG_VB0_CR2_BE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_VB0_CR2_BE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define w32TG_VB0_CR2 {\ |
| UNSG32 uVB0_CR2_FE : 16;\ |
| UNSG32 uVB0_CR2_BE : 16;\ |
| } |
| union { UNSG32 u32TG_VB0_CR2; |
| struct w32TG_VB0_CR2; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_VB1_FE(r32) _BFGET_(r32,15, 0) |
| #define SET32TG_VB1_FE(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16TG_VB1_FE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_VB1_FE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define GET32TG_VB1_BE(r32) _BFGET_(r32,31,16) |
| #define SET32TG_VB1_BE(r32,v) _BFSET_(r32,31,16,v) |
| #define GET16TG_VB1_BE(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_VB1_BE(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define w32TG_VB1 {\ |
| UNSG32 uVB1_FE : 16;\ |
| UNSG32 uVB1_BE : 16;\ |
| } |
| union { UNSG32 u32TG_VB1; |
| struct w32TG_VB1; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_SCAN_MODE(r32) _BFGET_(r32, 0, 0) |
| #define SET32TG_SCAN_MODE(r32,v) _BFSET_(r32, 0, 0,v) |
| #define GET16TG_SCAN_MODE(r16) _BFGET_(r16, 0, 0) |
| #define SET16TG_SCAN_MODE(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define w32TG_SCAN {\ |
| UNSG32 uSCAN_MODE : 1;\ |
| UNSG32 RSVDx30_b1 : 31;\ |
| } |
| union { UNSG32 u32TG_SCAN; |
| struct w32TG_SCAN; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_INTPOS_FRAME(r32) _BFGET_(r32,15, 0) |
| #define SET32TG_INTPOS_FRAME(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16TG_INTPOS_FRAME(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_INTPOS_FRAME(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define GET32TG_INTPOS_FIELD(r32) _BFGET_(r32,31,16) |
| #define SET32TG_INTPOS_FIELD(r32,v) _BFSET_(r32,31,16,v) |
| #define GET16TG_INTPOS_FIELD(r16) _BFGET_(r16,15, 0) |
| #define SET16TG_INTPOS_FIELD(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define w32TG_INTPOS {\ |
| UNSG32 uINTPOS_FRAME : 16;\ |
| UNSG32 uINTPOS_FIELD : 16;\ |
| } |
| union { UNSG32 u32TG_INTPOS; |
| struct w32TG_INTPOS; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_MODE_EN(r32) _BFGET_(r32, 0, 0) |
| #define SET32TG_MODE_EN(r32,v) _BFSET_(r32, 0, 0,v) |
| #define GET16TG_MODE_EN(r16) _BFGET_(r16, 0, 0) |
| #define SET16TG_MODE_EN(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define w32TG_MODE {\ |
| UNSG32 uMODE_EN : 1;\ |
| UNSG32 RSVDx38_b1 : 31;\ |
| } |
| union { UNSG32 u32TG_MODE; |
| struct w32TG_MODE; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32TG_HVREF_SEL(r32) _BFGET_(r32, 0, 0) |
| #define SET32TG_HVREF_SEL(r32,v) _BFSET_(r32, 0, 0,v) |
| #define GET16TG_HVREF_SEL(r16) _BFGET_(r16, 0, 0) |
| #define SET16TG_HVREF_SEL(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define GET32TG_HVREF_POL(r32) _BFGET_(r32, 1, 1) |
| #define SET32TG_HVREF_POL(r32,v) _BFSET_(r32, 1, 1,v) |
| #define GET16TG_HVREF_POL(r16) _BFGET_(r16, 1, 1) |
| #define SET16TG_HVREF_POL(r16,v) _BFSET_(r16, 1, 1,v) |
| |
| #define w32TG_HVREF {\ |
| UNSG32 uHVREF_SEL : 1;\ |
| UNSG32 uHVREF_POL : 1;\ |
| UNSG32 RSVDx3C_b2 : 30;\ |
| } |
| union { UNSG32 u32TG_HVREF; |
| struct w32TG_HVREF; |
| }; |
| /////////////////////////////////////////////////////////// |
| } SIE_TG; |
| |
| typedef union T32TG_INIT |
| { UNSG32 u32; |
| struct w32TG_INIT; |
| } T32TG_INIT; |
| typedef union T32TG_SIZE |
| { UNSG32 u32; |
| struct w32TG_SIZE; |
| } T32TG_SIZE; |
| typedef union T32TG_HS |
| { UNSG32 u32; |
| struct w32TG_HS; |
| } T32TG_HS; |
| typedef union T32TG_HB |
| { UNSG32 u32; |
| struct w32TG_HB; |
| } T32TG_HB; |
| typedef union T32TG_HB_CR |
| { UNSG32 u32; |
| struct w32TG_HB_CR; |
| } T32TG_HB_CR; |
| typedef union T32TG_HB_CR2 |
| { UNSG32 u32; |
| struct w32TG_HB_CR2; |
| } T32TG_HB_CR2; |
| typedef union T32TG_VS0 |
| { UNSG32 u32; |
| struct w32TG_VS0; |
| } T32TG_VS0; |
| typedef union T32TG_VS1 |
| { UNSG32 u32; |
| struct w32TG_VS1; |
| } T32TG_VS1; |
| typedef union T32TG_VB0 |
| { UNSG32 u32; |
| struct w32TG_VB0; |
| } T32TG_VB0; |
| typedef union T32TG_VB0_CR |
| { UNSG32 u32; |
| struct w32TG_VB0_CR; |
| } T32TG_VB0_CR; |
| typedef union T32TG_VB0_CR2 |
| { UNSG32 u32; |
| struct w32TG_VB0_CR2; |
| } T32TG_VB0_CR2; |
| typedef union T32TG_VB1 |
| { UNSG32 u32; |
| struct w32TG_VB1; |
| } T32TG_VB1; |
| typedef union T32TG_SCAN |
| { UNSG32 u32; |
| struct w32TG_SCAN; |
| } T32TG_SCAN; |
| typedef union T32TG_INTPOS |
| { UNSG32 u32; |
| struct w32TG_INTPOS; |
| } T32TG_INTPOS; |
| typedef union T32TG_MODE |
| { UNSG32 u32; |
| struct w32TG_MODE; |
| } T32TG_MODE; |
| typedef union T32TG_HVREF |
| { UNSG32 u32; |
| struct w32TG_HVREF; |
| } T32TG_HVREF; |
| /////////////////////////////////////////////////////////// |
| |
| typedef union TTG_INIT |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_INIT; |
| }; |
| } TTG_INIT; |
| typedef union TTG_SIZE |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_SIZE; |
| }; |
| } TTG_SIZE; |
| typedef union TTG_HS |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_HS; |
| }; |
| } TTG_HS; |
| typedef union TTG_HB |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_HB; |
| }; |
| } TTG_HB; |
| typedef union TTG_HB_CR |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_HB_CR; |
| }; |
| } TTG_HB_CR; |
| typedef union TTG_HB_CR2 |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_HB_CR2; |
| }; |
| } TTG_HB_CR2; |
| typedef union TTG_VS0 |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_VS0; |
| }; |
| } TTG_VS0; |
| typedef union TTG_VS1 |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_VS1; |
| }; |
| } TTG_VS1; |
| typedef union TTG_VB0 |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_VB0; |
| }; |
| } TTG_VB0; |
| typedef union TTG_VB0_CR |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_VB0_CR; |
| }; |
| } TTG_VB0_CR; |
| typedef union TTG_VB0_CR2 |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_VB0_CR2; |
| }; |
| } TTG_VB0_CR2; |
| typedef union TTG_VB1 |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_VB1; |
| }; |
| } TTG_VB1; |
| typedef union TTG_SCAN |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_SCAN; |
| }; |
| } TTG_SCAN; |
| typedef union TTG_INTPOS |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_INTPOS; |
| }; |
| } TTG_INTPOS; |
| typedef union TTG_MODE |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_MODE; |
| }; |
| } TTG_MODE; |
| typedef union TTG_HVREF |
| { UNSG32 u32[1]; |
| struct { |
| struct w32TG_HVREF; |
| }; |
| } TTG_HVREF; |
| |
| /////////////////////////////////////////////////////////// |
| SIGN32 TG_drvrd(SIE_TG *p, UNSG32 base, SIGN32 mem, SIGN32 tst); |
| SIGN32 TG_drvwr(SIE_TG *p, UNSG32 base, SIGN32 mem, SIGN32 tst, UNSG32 *pcmd); |
| void TG_reset(SIE_TG *p); |
| SIGN32 TG_cmp (SIE_TG *p, SIE_TG *pie, char *pfx, void *hLOG, SIGN32 mem, SIGN32 tst); |
| #define TG_check(p,pie,pfx,hLOG) TG_cmp(p,pie,pfx,(void*)(hLOG),0,0) |
| #define TG_print(p, pfx,hLOG) TG_cmp(p,0, pfx,(void*)(hLOG),0,0) |
| |
| #endif |
| ////// |
| /// ENDOFINTERFACE: TG |
| //////////////////////////////////////////////////////////// |
| |
| ////// |
| /// |
| /// $INTERFACE BITMAP40 (4,4) |
| /// # # ---------------------------------------------------------- |
| /// @ 0x00000 SEL (P) |
| /// %unsigned 6 BIT_POS0 0x0 |
| /// %unsigned 6 BIT_POS1 0x1 |
| /// %unsigned 6 BIT_POS2 0x2 |
| /// %unsigned 6 BIT_POS3 0x3 |
| /// %unsigned 6 BIT_POS4 0x4 |
| /// %% 2 # Stuffing bits... |
| /// # 0x00004 SEL1 |
| /// %unsigned 6 BIT_POS5 0x5 |
| /// %unsigned 6 BIT_POS6 0x6 |
| /// %unsigned 6 BIT_POS7 0x7 |
| /// %unsigned 6 BIT_POS8 0x8 |
| /// %unsigned 6 BIT_POS9 0x9 |
| /// %% 2 # Stuffing bits... |
| /// # 0x00008 SEL2 |
| /// %unsigned 6 BIT_POS10 0xA |
| /// %unsigned 6 BIT_POS11 0xB |
| /// %unsigned 6 BIT_POS12 0xC |
| /// %unsigned 6 BIT_POS13 0xD |
| /// %unsigned 6 BIT_POS14 0xE |
| /// %% 2 # Stuffing bits... |
| /// # 0x0000C SEL3 |
| /// %unsigned 6 BIT_POS15 0xF |
| /// %unsigned 6 BIT_POS16 0x10 |
| /// %unsigned 6 BIT_POS17 0x11 |
| /// %unsigned 6 BIT_POS18 0x12 |
| /// %unsigned 6 BIT_POS19 0x13 |
| /// %% 2 # Stuffing bits... |
| /// # 0x00010 SEL4 |
| /// %unsigned 6 BIT_POS20 0x14 |
| /// %unsigned 6 BIT_POS21 0x15 |
| /// %unsigned 6 BIT_POS22 0x16 |
| /// %unsigned 6 BIT_POS23 0x17 |
| /// %unsigned 6 BIT_POS24 0x18 |
| /// %% 2 # Stuffing bits... |
| /// # 0x00014 SEL5 |
| /// %unsigned 6 BIT_POS25 0x19 |
| /// %unsigned 6 BIT_POS26 0x1A |
| /// %unsigned 6 BIT_POS27 0x1B |
| /// %unsigned 6 BIT_POS28 0x1C |
| /// %unsigned 6 BIT_POS29 0x1D |
| /// %% 2 # Stuffing bits... |
| /// # 0x00018 SEL6 |
| /// %unsigned 6 BIT_POS30 0x1E |
| /// %unsigned 6 BIT_POS31 0x1F |
| /// %unsigned 6 BIT_POS32 0x20 |
| /// %unsigned 6 BIT_POS33 0x21 |
| /// %unsigned 6 BIT_POS34 0x22 |
| /// %% 2 # Stuffing bits... |
| /// # 0x0001C SEL7 |
| /// %unsigned 6 BIT_POS35 0x23 |
| /// %unsigned 6 BIT_POS36 0x24 |
| /// %unsigned 6 BIT_POS37 0x25 |
| /// %unsigned 6 BIT_POS38 0x26 |
| /// %unsigned 6 BIT_POS39 0x27 |
| /// ### |
| /// * Specifies mapping of new bit locations within 40 bit data from Read Client which need to be used to form pixels for Inverse Scan mode. |
| /// * Normal dHub data order: |
| /// * {Y3,Cr2,Y2,Cb2,Y1,Cr0,Y0,Cb0} First pixel in LSB |
| /// * Inverse Scan dHub data order: |
| /// * {Y3,Cr2,Y2,Cb2,Y1,Cr0,Y0,Cb0} First pixel in MSB |
| /// * Following different data orders can be generated to be presented to first UPS in the pipe. |
| /// ### |
| /// %% 2 # Stuffing bits... |
| /// # # ---------------------------------------------------------- |
| /// $ENDOFINTERFACE # size: 32B, bits: 240b, padding: 0B |
| //////////////////////////////////////////////////////////// |
| #ifndef h_BITMAP40 |
| #define h_BITMAP40 (){} |
| |
| #define RA_BITMAP40_SEL 0x0000 |
| |
| #define BA_BITMAP40_SEL_BIT_POS0 0x0000 |
| #define B16BITMAP40_SEL_BIT_POS0 0x0000 |
| #define LSb32BITMAP40_SEL_BIT_POS0 0 |
| #define LSb16BITMAP40_SEL_BIT_POS0 0 |
| #define bBITMAP40_SEL_BIT_POS0 6 |
| #define MSK32BITMAP40_SEL_BIT_POS0 0x0000003F |
| |
| #define BA_BITMAP40_SEL_BIT_POS1 0x0000 |
| #define B16BITMAP40_SEL_BIT_POS1 0x0000 |
| #define LSb32BITMAP40_SEL_BIT_POS1 6 |
| #define LSb16BITMAP40_SEL_BIT_POS1 6 |
| #define bBITMAP40_SEL_BIT_POS1 6 |
| #define MSK32BITMAP40_SEL_BIT_POS1 0x00000FC0 |
| |
| #define BA_BITMAP40_SEL_BIT_POS2 0x0001 |
| #define B16BITMAP40_SEL_BIT_POS2 0x0000 |
| #define LSb32BITMAP40_SEL_BIT_POS2 12 |
| #define LSb16BITMAP40_SEL_BIT_POS2 12 |
| #define bBITMAP40_SEL_BIT_POS2 6 |
| #define MSK32BITMAP40_SEL_BIT_POS2 0x0003F000 |
| |
| #define BA_BITMAP40_SEL_BIT_POS3 0x0002 |
| #define B16BITMAP40_SEL_BIT_POS3 0x0002 |
| #define LSb32BITMAP40_SEL_BIT_POS3 18 |
| #define LSb16BITMAP40_SEL_BIT_POS3 2 |
| #define bBITMAP40_SEL_BIT_POS3 6 |
| #define MSK32BITMAP40_SEL_BIT_POS3 0x00FC0000 |
| |
| #define BA_BITMAP40_SEL_BIT_POS4 0x0003 |
| #define B16BITMAP40_SEL_BIT_POS4 0x0002 |
| #define LSb32BITMAP40_SEL_BIT_POS4 24 |
| #define LSb16BITMAP40_SEL_BIT_POS4 8 |
| #define bBITMAP40_SEL_BIT_POS4 6 |
| #define MSK32BITMAP40_SEL_BIT_POS4 0x3F000000 |
| |
| #define RA_BITMAP40_SEL1 0x0004 |
| |
| #define BA_BITMAP40_SEL_BIT_POS5 0x0004 |
| #define B16BITMAP40_SEL_BIT_POS5 0x0004 |
| #define LSb32BITMAP40_SEL_BIT_POS5 0 |
| #define LSb16BITMAP40_SEL_BIT_POS5 0 |
| #define bBITMAP40_SEL_BIT_POS5 6 |
| #define MSK32BITMAP40_SEL_BIT_POS5 0x0000003F |
| |
| #define BA_BITMAP40_SEL_BIT_POS6 0x0004 |
| #define B16BITMAP40_SEL_BIT_POS6 0x0004 |
| #define LSb32BITMAP40_SEL_BIT_POS6 6 |
| #define LSb16BITMAP40_SEL_BIT_POS6 6 |
| #define bBITMAP40_SEL_BIT_POS6 6 |
| #define MSK32BITMAP40_SEL_BIT_POS6 0x00000FC0 |
| |
| #define BA_BITMAP40_SEL_BIT_POS7 0x0005 |
| #define B16BITMAP40_SEL_BIT_POS7 0x0004 |
| #define LSb32BITMAP40_SEL_BIT_POS7 12 |
| #define LSb16BITMAP40_SEL_BIT_POS7 12 |
| #define bBITMAP40_SEL_BIT_POS7 6 |
| #define MSK32BITMAP40_SEL_BIT_POS7 0x0003F000 |
| |
| #define BA_BITMAP40_SEL_BIT_POS8 0x0006 |
| #define B16BITMAP40_SEL_BIT_POS8 0x0006 |
| #define LSb32BITMAP40_SEL_BIT_POS8 18 |
| #define LSb16BITMAP40_SEL_BIT_POS8 2 |
| #define bBITMAP40_SEL_BIT_POS8 6 |
| #define MSK32BITMAP40_SEL_BIT_POS8 0x00FC0000 |
| |
| #define BA_BITMAP40_SEL_BIT_POS9 0x0007 |
| #define B16BITMAP40_SEL_BIT_POS9 0x0006 |
| #define LSb32BITMAP40_SEL_BIT_POS9 24 |
| #define LSb16BITMAP40_SEL_BIT_POS9 8 |
| #define bBITMAP40_SEL_BIT_POS9 6 |
| #define MSK32BITMAP40_SEL_BIT_POS9 0x3F000000 |
| |
| #define RA_BITMAP40_SEL2 0x0008 |
| |
| #define BA_BITMAP40_SEL_BIT_POS10 0x0008 |
| #define B16BITMAP40_SEL_BIT_POS10 0x0008 |
| #define LSb32BITMAP40_SEL_BIT_POS10 0 |
| #define LSb16BITMAP40_SEL_BIT_POS10 0 |
| #define bBITMAP40_SEL_BIT_POS10 6 |
| #define MSK32BITMAP40_SEL_BIT_POS10 0x0000003F |
| |
| #define BA_BITMAP40_SEL_BIT_POS11 0x0008 |
| #define B16BITMAP40_SEL_BIT_POS11 0x0008 |
| #define LSb32BITMAP40_SEL_BIT_POS11 6 |
| #define LSb16BITMAP40_SEL_BIT_POS11 6 |
| #define bBITMAP40_SEL_BIT_POS11 6 |
| #define MSK32BITMAP40_SEL_BIT_POS11 0x00000FC0 |
| |
| #define BA_BITMAP40_SEL_BIT_POS12 0x0009 |
| #define B16BITMAP40_SEL_BIT_POS12 0x0008 |
| #define LSb32BITMAP40_SEL_BIT_POS12 12 |
| #define LSb16BITMAP40_SEL_BIT_POS12 12 |
| #define bBITMAP40_SEL_BIT_POS12 6 |
| #define MSK32BITMAP40_SEL_BIT_POS12 0x0003F000 |
| |
| #define BA_BITMAP40_SEL_BIT_POS13 0x000A |
| #define B16BITMAP40_SEL_BIT_POS13 0x000A |
| #define LSb32BITMAP40_SEL_BIT_POS13 18 |
| #define LSb16BITMAP40_SEL_BIT_POS13 2 |
| #define bBITMAP40_SEL_BIT_POS13 6 |
| #define MSK32BITMAP40_SEL_BIT_POS13 0x00FC0000 |
| |
| #define BA_BITMAP40_SEL_BIT_POS14 0x000B |
| #define B16BITMAP40_SEL_BIT_POS14 0x000A |
| #define LSb32BITMAP40_SEL_BIT_POS14 24 |
| #define LSb16BITMAP40_SEL_BIT_POS14 8 |
| #define bBITMAP40_SEL_BIT_POS14 6 |
| #define MSK32BITMAP40_SEL_BIT_POS14 0x3F000000 |
| |
| #define RA_BITMAP40_SEL3 0x000C |
| |
| #define BA_BITMAP40_SEL_BIT_POS15 0x000C |
| #define B16BITMAP40_SEL_BIT_POS15 0x000C |
| #define LSb32BITMAP40_SEL_BIT_POS15 0 |
| #define LSb16BITMAP40_SEL_BIT_POS15 0 |
| #define bBITMAP40_SEL_BIT_POS15 6 |
| #define MSK32BITMAP40_SEL_BIT_POS15 0x0000003F |
| |
| #define BA_BITMAP40_SEL_BIT_POS16 0x000C |
| #define B16BITMAP40_SEL_BIT_POS16 0x000C |
| #define LSb32BITMAP40_SEL_BIT_POS16 6 |
| #define LSb16BITMAP40_SEL_BIT_POS16 6 |
| #define bBITMAP40_SEL_BIT_POS16 6 |
| #define MSK32BITMAP40_SEL_BIT_POS16 0x00000FC0 |
| |
| #define BA_BITMAP40_SEL_BIT_POS17 0x000D |
| #define B16BITMAP40_SEL_BIT_POS17 0x000C |
| #define LSb32BITMAP40_SEL_BIT_POS17 12 |
| #define LSb16BITMAP40_SEL_BIT_POS17 12 |
| #define bBITMAP40_SEL_BIT_POS17 6 |
| #define MSK32BITMAP40_SEL_BIT_POS17 0x0003F000 |
| |
| #define BA_BITMAP40_SEL_BIT_POS18 0x000E |
| #define B16BITMAP40_SEL_BIT_POS18 0x000E |
| #define LSb32BITMAP40_SEL_BIT_POS18 18 |
| #define LSb16BITMAP40_SEL_BIT_POS18 2 |
| #define bBITMAP40_SEL_BIT_POS18 6 |
| #define MSK32BITMAP40_SEL_BIT_POS18 0x00FC0000 |
| |
| #define BA_BITMAP40_SEL_BIT_POS19 0x000F |
| #define B16BITMAP40_SEL_BIT_POS19 0x000E |
| #define LSb32BITMAP40_SEL_BIT_POS19 24 |
| #define LSb16BITMAP40_SEL_BIT_POS19 8 |
| #define bBITMAP40_SEL_BIT_POS19 6 |
| #define MSK32BITMAP40_SEL_BIT_POS19 0x3F000000 |
| |
| #define RA_BITMAP40_SEL4 0x0010 |
| |
| #define BA_BITMAP40_SEL_BIT_POS20 0x0010 |
| #define B16BITMAP40_SEL_BIT_POS20 0x0010 |
| #define LSb32BITMAP40_SEL_BIT_POS20 0 |
| #define LSb16BITMAP40_SEL_BIT_POS20 0 |
| #define bBITMAP40_SEL_BIT_POS20 6 |
| #define MSK32BITMAP40_SEL_BIT_POS20 0x0000003F |
| |
| #define BA_BITMAP40_SEL_BIT_POS21 0x0010 |
| #define B16BITMAP40_SEL_BIT_POS21 0x0010 |
| #define LSb32BITMAP40_SEL_BIT_POS21 6 |
| #define LSb16BITMAP40_SEL_BIT_POS21 6 |
| #define bBITMAP40_SEL_BIT_POS21 6 |
| #define MSK32BITMAP40_SEL_BIT_POS21 0x00000FC0 |
| |
| #define BA_BITMAP40_SEL_BIT_POS22 0x0011 |
| #define B16BITMAP40_SEL_BIT_POS22 0x0010 |
| #define LSb32BITMAP40_SEL_BIT_POS22 12 |
| #define LSb16BITMAP40_SEL_BIT_POS22 12 |
| #define bBITMAP40_SEL_BIT_POS22 6 |
| #define MSK32BITMAP40_SEL_BIT_POS22 0x0003F000 |
| |
| #define BA_BITMAP40_SEL_BIT_POS23 0x0012 |
| #define B16BITMAP40_SEL_BIT_POS23 0x0012 |
| #define LSb32BITMAP40_SEL_BIT_POS23 18 |
| #define LSb16BITMAP40_SEL_BIT_POS23 2 |
| #define bBITMAP40_SEL_BIT_POS23 6 |
| #define MSK32BITMAP40_SEL_BIT_POS23 0x00FC0000 |
| |
| #define BA_BITMAP40_SEL_BIT_POS24 0x0013 |
| #define B16BITMAP40_SEL_BIT_POS24 0x0012 |
| #define LSb32BITMAP40_SEL_BIT_POS24 24 |
| #define LSb16BITMAP40_SEL_BIT_POS24 8 |
| #define bBITMAP40_SEL_BIT_POS24 6 |
| #define MSK32BITMAP40_SEL_BIT_POS24 0x3F000000 |
| |
| #define RA_BITMAP40_SEL5 0x0014 |
| |
| #define BA_BITMAP40_SEL_BIT_POS25 0x0014 |
| #define B16BITMAP40_SEL_BIT_POS25 0x0014 |
| #define LSb32BITMAP40_SEL_BIT_POS25 0 |
| #define LSb16BITMAP40_SEL_BIT_POS25 0 |
| #define bBITMAP40_SEL_BIT_POS25 6 |
| #define MSK32BITMAP40_SEL_BIT_POS25 0x0000003F |
| |
| #define BA_BITMAP40_SEL_BIT_POS26 0x0014 |
| #define B16BITMAP40_SEL_BIT_POS26 0x0014 |
| #define LSb32BITMAP40_SEL_BIT_POS26 6 |
| #define LSb16BITMAP40_SEL_BIT_POS26 6 |
| #define bBITMAP40_SEL_BIT_POS26 6 |
| #define MSK32BITMAP40_SEL_BIT_POS26 0x00000FC0 |
| |
| #define BA_BITMAP40_SEL_BIT_POS27 0x0015 |
| #define B16BITMAP40_SEL_BIT_POS27 0x0014 |
| #define LSb32BITMAP40_SEL_BIT_POS27 12 |
| #define LSb16BITMAP40_SEL_BIT_POS27 12 |
| #define bBITMAP40_SEL_BIT_POS27 6 |
| #define MSK32BITMAP40_SEL_BIT_POS27 0x0003F000 |
| |
| #define BA_BITMAP40_SEL_BIT_POS28 0x0016 |
| #define B16BITMAP40_SEL_BIT_POS28 0x0016 |
| #define LSb32BITMAP40_SEL_BIT_POS28 18 |
| #define LSb16BITMAP40_SEL_BIT_POS28 2 |
| #define bBITMAP40_SEL_BIT_POS28 6 |
| #define MSK32BITMAP40_SEL_BIT_POS28 0x00FC0000 |
| |
| #define BA_BITMAP40_SEL_BIT_POS29 0x0017 |
| #define B16BITMAP40_SEL_BIT_POS29 0x0016 |
| #define LSb32BITMAP40_SEL_BIT_POS29 24 |
| #define LSb16BITMAP40_SEL_BIT_POS29 8 |
| #define bBITMAP40_SEL_BIT_POS29 6 |
| #define MSK32BITMAP40_SEL_BIT_POS29 0x3F000000 |
| |
| #define RA_BITMAP40_SEL6 0x0018 |
| |
| #define BA_BITMAP40_SEL_BIT_POS30 0x0018 |
| #define B16BITMAP40_SEL_BIT_POS30 0x0018 |
| #define LSb32BITMAP40_SEL_BIT_POS30 0 |
| #define LSb16BITMAP40_SEL_BIT_POS30 0 |
| #define bBITMAP40_SEL_BIT_POS30 6 |
| #define MSK32BITMAP40_SEL_BIT_POS30 0x0000003F |
| |
| #define BA_BITMAP40_SEL_BIT_POS31 0x0018 |
| #define B16BITMAP40_SEL_BIT_POS31 0x0018 |
| #define LSb32BITMAP40_SEL_BIT_POS31 6 |
| #define LSb16BITMAP40_SEL_BIT_POS31 6 |
| #define bBITMAP40_SEL_BIT_POS31 6 |
| #define MSK32BITMAP40_SEL_BIT_POS31 0x00000FC0 |
| |
| #define BA_BITMAP40_SEL_BIT_POS32 0x0019 |
| #define B16BITMAP40_SEL_BIT_POS32 0x0018 |
| #define LSb32BITMAP40_SEL_BIT_POS32 12 |
| #define LSb16BITMAP40_SEL_BIT_POS32 12 |
| #define bBITMAP40_SEL_BIT_POS32 6 |
| #define MSK32BITMAP40_SEL_BIT_POS32 0x0003F000 |
| |
| #define BA_BITMAP40_SEL_BIT_POS33 0x001A |
| #define B16BITMAP40_SEL_BIT_POS33 0x001A |
| #define LSb32BITMAP40_SEL_BIT_POS33 18 |
| #define LSb16BITMAP40_SEL_BIT_POS33 2 |
| #define bBITMAP40_SEL_BIT_POS33 6 |
| #define MSK32BITMAP40_SEL_BIT_POS33 0x00FC0000 |
| |
| #define BA_BITMAP40_SEL_BIT_POS34 0x001B |
| #define B16BITMAP40_SEL_BIT_POS34 0x001A |
| #define LSb32BITMAP40_SEL_BIT_POS34 24 |
| #define LSb16BITMAP40_SEL_BIT_POS34 8 |
| #define bBITMAP40_SEL_BIT_POS34 6 |
| #define MSK32BITMAP40_SEL_BIT_POS34 0x3F000000 |
| |
| #define RA_BITMAP40_SEL7 0x001C |
| |
| #define BA_BITMAP40_SEL_BIT_POS35 0x001C |
| #define B16BITMAP40_SEL_BIT_POS35 0x001C |
| #define LSb32BITMAP40_SEL_BIT_POS35 0 |
| #define LSb16BITMAP40_SEL_BIT_POS35 0 |
| #define bBITMAP40_SEL_BIT_POS35 6 |
| #define MSK32BITMAP40_SEL_BIT_POS35 0x0000003F |
| |
| #define BA_BITMAP40_SEL_BIT_POS36 0x001C |
| #define B16BITMAP40_SEL_BIT_POS36 0x001C |
| #define LSb32BITMAP40_SEL_BIT_POS36 6 |
| #define LSb16BITMAP40_SEL_BIT_POS36 6 |
| #define bBITMAP40_SEL_BIT_POS36 6 |
| #define MSK32BITMAP40_SEL_BIT_POS36 0x00000FC0 |
| |
| #define BA_BITMAP40_SEL_BIT_POS37 0x001D |
| #define B16BITMAP40_SEL_BIT_POS37 0x001C |
| #define LSb32BITMAP40_SEL_BIT_POS37 12 |
| #define LSb16BITMAP40_SEL_BIT_POS37 12 |
| #define bBITMAP40_SEL_BIT_POS37 6 |
| #define MSK32BITMAP40_SEL_BIT_POS37 0x0003F000 |
| |
| #define BA_BITMAP40_SEL_BIT_POS38 0x001E |
| #define B16BITMAP40_SEL_BIT_POS38 0x001E |
| #define LSb32BITMAP40_SEL_BIT_POS38 18 |
| #define LSb16BITMAP40_SEL_BIT_POS38 2 |
| #define bBITMAP40_SEL_BIT_POS38 6 |
| #define MSK32BITMAP40_SEL_BIT_POS38 0x00FC0000 |
| |
| #define BA_BITMAP40_SEL_BIT_POS39 0x001F |
| #define B16BITMAP40_SEL_BIT_POS39 0x001E |
| #define LSb32BITMAP40_SEL_BIT_POS39 24 |
| #define LSb16BITMAP40_SEL_BIT_POS39 8 |
| #define bBITMAP40_SEL_BIT_POS39 6 |
| #define MSK32BITMAP40_SEL_BIT_POS39 0x3F000000 |
| /////////////////////////////////////////////////////////// |
| |
| typedef struct SIE_BITMAP40 { |
| /////////////////////////////////////////////////////////// |
| #define GET32BITMAP40_SEL_BIT_POS0(r32) _BFGET_(r32, 5, 0) |
| #define SET32BITMAP40_SEL_BIT_POS0(r32,v) _BFSET_(r32, 5, 0,v) |
| #define GET16BITMAP40_SEL_BIT_POS0(r16) _BFGET_(r16, 5, 0) |
| #define SET16BITMAP40_SEL_BIT_POS0(r16,v) _BFSET_(r16, 5, 0,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS1(r32) _BFGET_(r32,11, 6) |
| #define SET32BITMAP40_SEL_BIT_POS1(r32,v) _BFSET_(r32,11, 6,v) |
| #define GET16BITMAP40_SEL_BIT_POS1(r16) _BFGET_(r16,11, 6) |
| #define SET16BITMAP40_SEL_BIT_POS1(r16,v) _BFSET_(r16,11, 6,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS2(r32) _BFGET_(r32,17,12) |
| #define SET32BITMAP40_SEL_BIT_POS2(r32,v) _BFSET_(r32,17,12,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS3(r32) _BFGET_(r32,23,18) |
| #define SET32BITMAP40_SEL_BIT_POS3(r32,v) _BFSET_(r32,23,18,v) |
| #define GET16BITMAP40_SEL_BIT_POS3(r16) _BFGET_(r16, 7, 2) |
| #define SET16BITMAP40_SEL_BIT_POS3(r16,v) _BFSET_(r16, 7, 2,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS4(r32) _BFGET_(r32,29,24) |
| #define SET32BITMAP40_SEL_BIT_POS4(r32,v) _BFSET_(r32,29,24,v) |
| #define GET16BITMAP40_SEL_BIT_POS4(r16) _BFGET_(r16,13, 8) |
| #define SET16BITMAP40_SEL_BIT_POS4(r16,v) _BFSET_(r16,13, 8,v) |
| |
| #define w32BITMAP40_SEL {\ |
| UNSG32 uSEL_BIT_POS0 : 6;\ |
| UNSG32 uSEL_BIT_POS1 : 6;\ |
| UNSG32 uSEL_BIT_POS2 : 6;\ |
| UNSG32 uSEL_BIT_POS3 : 6;\ |
| UNSG32 uSEL_BIT_POS4 : 6;\ |
| UNSG32 RSVDx0_b30 : 2;\ |
| } |
| union { UNSG32 u32BITMAP40_SEL; |
| struct w32BITMAP40_SEL; |
| }; |
| #define GET32BITMAP40_SEL_BIT_POS5(r32) _BFGET_(r32, 5, 0) |
| #define SET32BITMAP40_SEL_BIT_POS5(r32,v) _BFSET_(r32, 5, 0,v) |
| #define GET16BITMAP40_SEL_BIT_POS5(r16) _BFGET_(r16, 5, 0) |
| #define SET16BITMAP40_SEL_BIT_POS5(r16,v) _BFSET_(r16, 5, 0,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS6(r32) _BFGET_(r32,11, 6) |
| #define SET32BITMAP40_SEL_BIT_POS6(r32,v) _BFSET_(r32,11, 6,v) |
| #define GET16BITMAP40_SEL_BIT_POS6(r16) _BFGET_(r16,11, 6) |
| #define SET16BITMAP40_SEL_BIT_POS6(r16,v) _BFSET_(r16,11, 6,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS7(r32) _BFGET_(r32,17,12) |
| #define SET32BITMAP40_SEL_BIT_POS7(r32,v) _BFSET_(r32,17,12,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS8(r32) _BFGET_(r32,23,18) |
| #define SET32BITMAP40_SEL_BIT_POS8(r32,v) _BFSET_(r32,23,18,v) |
| #define GET16BITMAP40_SEL_BIT_POS8(r16) _BFGET_(r16, 7, 2) |
| #define SET16BITMAP40_SEL_BIT_POS8(r16,v) _BFSET_(r16, 7, 2,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS9(r32) _BFGET_(r32,29,24) |
| #define SET32BITMAP40_SEL_BIT_POS9(r32,v) _BFSET_(r32,29,24,v) |
| #define GET16BITMAP40_SEL_BIT_POS9(r16) _BFGET_(r16,13, 8) |
| #define SET16BITMAP40_SEL_BIT_POS9(r16,v) _BFSET_(r16,13, 8,v) |
| |
| #define w32BITMAP40_SEL1 {\ |
| UNSG32 uSEL_BIT_POS5 : 6;\ |
| UNSG32 uSEL_BIT_POS6 : 6;\ |
| UNSG32 uSEL_BIT_POS7 : 6;\ |
| UNSG32 uSEL_BIT_POS8 : 6;\ |
| UNSG32 uSEL_BIT_POS9 : 6;\ |
| UNSG32 RSVDx4_b30 : 2;\ |
| } |
| union { UNSG32 u32BITMAP40_SEL1; |
| struct w32BITMAP40_SEL1; |
| }; |
| #define GET32BITMAP40_SEL_BIT_POS10(r32) _BFGET_(r32, 5, 0) |
| #define SET32BITMAP40_SEL_BIT_POS10(r32,v) _BFSET_(r32, 5, 0,v) |
| #define GET16BITMAP40_SEL_BIT_POS10(r16) _BFGET_(r16, 5, 0) |
| #define SET16BITMAP40_SEL_BIT_POS10(r16,v) _BFSET_(r16, 5, 0,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS11(r32) _BFGET_(r32,11, 6) |
| #define SET32BITMAP40_SEL_BIT_POS11(r32,v) _BFSET_(r32,11, 6,v) |
| #define GET16BITMAP40_SEL_BIT_POS11(r16) _BFGET_(r16,11, 6) |
| #define SET16BITMAP40_SEL_BIT_POS11(r16,v) _BFSET_(r16,11, 6,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS12(r32) _BFGET_(r32,17,12) |
| #define SET32BITMAP40_SEL_BIT_POS12(r32,v) _BFSET_(r32,17,12,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS13(r32) _BFGET_(r32,23,18) |
| #define SET32BITMAP40_SEL_BIT_POS13(r32,v) _BFSET_(r32,23,18,v) |
| #define GET16BITMAP40_SEL_BIT_POS13(r16) _BFGET_(r16, 7, 2) |
| #define SET16BITMAP40_SEL_BIT_POS13(r16,v) _BFSET_(r16, 7, 2,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS14(r32) _BFGET_(r32,29,24) |
| #define SET32BITMAP40_SEL_BIT_POS14(r32,v) _BFSET_(r32,29,24,v) |
| #define GET16BITMAP40_SEL_BIT_POS14(r16) _BFGET_(r16,13, 8) |
| #define SET16BITMAP40_SEL_BIT_POS14(r16,v) _BFSET_(r16,13, 8,v) |
| |
| #define w32BITMAP40_SEL2 {\ |
| UNSG32 uSEL_BIT_POS10 : 6;\ |
| UNSG32 uSEL_BIT_POS11 : 6;\ |
| UNSG32 uSEL_BIT_POS12 : 6;\ |
| UNSG32 uSEL_BIT_POS13 : 6;\ |
| UNSG32 uSEL_BIT_POS14 : 6;\ |
| UNSG32 RSVDx8_b30 : 2;\ |
| } |
| union { UNSG32 u32BITMAP40_SEL2; |
| struct w32BITMAP40_SEL2; |
| }; |
| #define GET32BITMAP40_SEL_BIT_POS15(r32) _BFGET_(r32, 5, 0) |
| #define SET32BITMAP40_SEL_BIT_POS15(r32,v) _BFSET_(r32, 5, 0,v) |
| #define GET16BITMAP40_SEL_BIT_POS15(r16) _BFGET_(r16, 5, 0) |
| #define SET16BITMAP40_SEL_BIT_POS15(r16,v) _BFSET_(r16, 5, 0,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS16(r32) _BFGET_(r32,11, 6) |
| #define SET32BITMAP40_SEL_BIT_POS16(r32,v) _BFSET_(r32,11, 6,v) |
| #define GET16BITMAP40_SEL_BIT_POS16(r16) _BFGET_(r16,11, 6) |
| #define SET16BITMAP40_SEL_BIT_POS16(r16,v) _BFSET_(r16,11, 6,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS17(r32) _BFGET_(r32,17,12) |
| #define SET32BITMAP40_SEL_BIT_POS17(r32,v) _BFSET_(r32,17,12,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS18(r32) _BFGET_(r32,23,18) |
| #define SET32BITMAP40_SEL_BIT_POS18(r32,v) _BFSET_(r32,23,18,v) |
| #define GET16BITMAP40_SEL_BIT_POS18(r16) _BFGET_(r16, 7, 2) |
| #define SET16BITMAP40_SEL_BIT_POS18(r16,v) _BFSET_(r16, 7, 2,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS19(r32) _BFGET_(r32,29,24) |
| #define SET32BITMAP40_SEL_BIT_POS19(r32,v) _BFSET_(r32,29,24,v) |
| #define GET16BITMAP40_SEL_BIT_POS19(r16) _BFGET_(r16,13, 8) |
| #define SET16BITMAP40_SEL_BIT_POS19(r16,v) _BFSET_(r16,13, 8,v) |
| |
| #define w32BITMAP40_SEL3 {\ |
| UNSG32 uSEL_BIT_POS15 : 6;\ |
| UNSG32 uSEL_BIT_POS16 : 6;\ |
| UNSG32 uSEL_BIT_POS17 : 6;\ |
| UNSG32 uSEL_BIT_POS18 : 6;\ |
| UNSG32 uSEL_BIT_POS19 : 6;\ |
| UNSG32 RSVDxC_b30 : 2;\ |
| } |
| union { UNSG32 u32BITMAP40_SEL3; |
| struct w32BITMAP40_SEL3; |
| }; |
| #define GET32BITMAP40_SEL_BIT_POS20(r32) _BFGET_(r32, 5, 0) |
| #define SET32BITMAP40_SEL_BIT_POS20(r32,v) _BFSET_(r32, 5, 0,v) |
| #define GET16BITMAP40_SEL_BIT_POS20(r16) _BFGET_(r16, 5, 0) |
| #define SET16BITMAP40_SEL_BIT_POS20(r16,v) _BFSET_(r16, 5, 0,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS21(r32) _BFGET_(r32,11, 6) |
| #define SET32BITMAP40_SEL_BIT_POS21(r32,v) _BFSET_(r32,11, 6,v) |
| #define GET16BITMAP40_SEL_BIT_POS21(r16) _BFGET_(r16,11, 6) |
| #define SET16BITMAP40_SEL_BIT_POS21(r16,v) _BFSET_(r16,11, 6,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS22(r32) _BFGET_(r32,17,12) |
| #define SET32BITMAP40_SEL_BIT_POS22(r32,v) _BFSET_(r32,17,12,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS23(r32) _BFGET_(r32,23,18) |
| #define SET32BITMAP40_SEL_BIT_POS23(r32,v) _BFSET_(r32,23,18,v) |
| #define GET16BITMAP40_SEL_BIT_POS23(r16) _BFGET_(r16, 7, 2) |
| #define SET16BITMAP40_SEL_BIT_POS23(r16,v) _BFSET_(r16, 7, 2,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS24(r32) _BFGET_(r32,29,24) |
| #define SET32BITMAP40_SEL_BIT_POS24(r32,v) _BFSET_(r32,29,24,v) |
| #define GET16BITMAP40_SEL_BIT_POS24(r16) _BFGET_(r16,13, 8) |
| #define SET16BITMAP40_SEL_BIT_POS24(r16,v) _BFSET_(r16,13, 8,v) |
| |
| #define w32BITMAP40_SEL4 {\ |
| UNSG32 uSEL_BIT_POS20 : 6;\ |
| UNSG32 uSEL_BIT_POS21 : 6;\ |
| UNSG32 uSEL_BIT_POS22 : 6;\ |
| UNSG32 uSEL_BIT_POS23 : 6;\ |
| UNSG32 uSEL_BIT_POS24 : 6;\ |
| UNSG32 RSVDx10_b30 : 2;\ |
| } |
| union { UNSG32 u32BITMAP40_SEL4; |
| struct w32BITMAP40_SEL4; |
| }; |
| #define GET32BITMAP40_SEL_BIT_POS25(r32) _BFGET_(r32, 5, 0) |
| #define SET32BITMAP40_SEL_BIT_POS25(r32,v) _BFSET_(r32, 5, 0,v) |
| #define GET16BITMAP40_SEL_BIT_POS25(r16) _BFGET_(r16, 5, 0) |
| #define SET16BITMAP40_SEL_BIT_POS25(r16,v) _BFSET_(r16, 5, 0,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS26(r32) _BFGET_(r32,11, 6) |
| #define SET32BITMAP40_SEL_BIT_POS26(r32,v) _BFSET_(r32,11, 6,v) |
| #define GET16BITMAP40_SEL_BIT_POS26(r16) _BFGET_(r16,11, 6) |
| #define SET16BITMAP40_SEL_BIT_POS26(r16,v) _BFSET_(r16,11, 6,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS27(r32) _BFGET_(r32,17,12) |
| #define SET32BITMAP40_SEL_BIT_POS27(r32,v) _BFSET_(r32,17,12,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS28(r32) _BFGET_(r32,23,18) |
| #define SET32BITMAP40_SEL_BIT_POS28(r32,v) _BFSET_(r32,23,18,v) |
| #define GET16BITMAP40_SEL_BIT_POS28(r16) _BFGET_(r16, 7, 2) |
| #define SET16BITMAP40_SEL_BIT_POS28(r16,v) _BFSET_(r16, 7, 2,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS29(r32) _BFGET_(r32,29,24) |
| #define SET32BITMAP40_SEL_BIT_POS29(r32,v) _BFSET_(r32,29,24,v) |
| #define GET16BITMAP40_SEL_BIT_POS29(r16) _BFGET_(r16,13, 8) |
| #define SET16BITMAP40_SEL_BIT_POS29(r16,v) _BFSET_(r16,13, 8,v) |
| |
| #define w32BITMAP40_SEL5 {\ |
| UNSG32 uSEL_BIT_POS25 : 6;\ |
| UNSG32 uSEL_BIT_POS26 : 6;\ |
| UNSG32 uSEL_BIT_POS27 : 6;\ |
| UNSG32 uSEL_BIT_POS28 : 6;\ |
| UNSG32 uSEL_BIT_POS29 : 6;\ |
| UNSG32 RSVDx14_b30 : 2;\ |
| } |
| union { UNSG32 u32BITMAP40_SEL5; |
| struct w32BITMAP40_SEL5; |
| }; |
| #define GET32BITMAP40_SEL_BIT_POS30(r32) _BFGET_(r32, 5, 0) |
| #define SET32BITMAP40_SEL_BIT_POS30(r32,v) _BFSET_(r32, 5, 0,v) |
| #define GET16BITMAP40_SEL_BIT_POS30(r16) _BFGET_(r16, 5, 0) |
| #define SET16BITMAP40_SEL_BIT_POS30(r16,v) _BFSET_(r16, 5, 0,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS31(r32) _BFGET_(r32,11, 6) |
| #define SET32BITMAP40_SEL_BIT_POS31(r32,v) _BFSET_(r32,11, 6,v) |
| #define GET16BITMAP40_SEL_BIT_POS31(r16) _BFGET_(r16,11, 6) |
| #define SET16BITMAP40_SEL_BIT_POS31(r16,v) _BFSET_(r16,11, 6,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS32(r32) _BFGET_(r32,17,12) |
| #define SET32BITMAP40_SEL_BIT_POS32(r32,v) _BFSET_(r32,17,12,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS33(r32) _BFGET_(r32,23,18) |
| #define SET32BITMAP40_SEL_BIT_POS33(r32,v) _BFSET_(r32,23,18,v) |
| #define GET16BITMAP40_SEL_BIT_POS33(r16) _BFGET_(r16, 7, 2) |
| #define SET16BITMAP40_SEL_BIT_POS33(r16,v) _BFSET_(r16, 7, 2,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS34(r32) _BFGET_(r32,29,24) |
| #define SET32BITMAP40_SEL_BIT_POS34(r32,v) _BFSET_(r32,29,24,v) |
| #define GET16BITMAP40_SEL_BIT_POS34(r16) _BFGET_(r16,13, 8) |
| #define SET16BITMAP40_SEL_BIT_POS34(r16,v) _BFSET_(r16,13, 8,v) |
| |
| #define w32BITMAP40_SEL6 {\ |
| UNSG32 uSEL_BIT_POS30 : 6;\ |
| UNSG32 uSEL_BIT_POS31 : 6;\ |
| UNSG32 uSEL_BIT_POS32 : 6;\ |
| UNSG32 uSEL_BIT_POS33 : 6;\ |
| UNSG32 uSEL_BIT_POS34 : 6;\ |
| UNSG32 RSVDx18_b30 : 2;\ |
| } |
| union { UNSG32 u32BITMAP40_SEL6; |
| struct w32BITMAP40_SEL6; |
| }; |
| #define GET32BITMAP40_SEL_BIT_POS35(r32) _BFGET_(r32, 5, 0) |
| #define SET32BITMAP40_SEL_BIT_POS35(r32,v) _BFSET_(r32, 5, 0,v) |
| #define GET16BITMAP40_SEL_BIT_POS35(r16) _BFGET_(r16, 5, 0) |
| #define SET16BITMAP40_SEL_BIT_POS35(r16,v) _BFSET_(r16, 5, 0,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS36(r32) _BFGET_(r32,11, 6) |
| #define SET32BITMAP40_SEL_BIT_POS36(r32,v) _BFSET_(r32,11, 6,v) |
| #define GET16BITMAP40_SEL_BIT_POS36(r16) _BFGET_(r16,11, 6) |
| #define SET16BITMAP40_SEL_BIT_POS36(r16,v) _BFSET_(r16,11, 6,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS37(r32) _BFGET_(r32,17,12) |
| #define SET32BITMAP40_SEL_BIT_POS37(r32,v) _BFSET_(r32,17,12,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS38(r32) _BFGET_(r32,23,18) |
| #define SET32BITMAP40_SEL_BIT_POS38(r32,v) _BFSET_(r32,23,18,v) |
| #define GET16BITMAP40_SEL_BIT_POS38(r16) _BFGET_(r16, 7, 2) |
| #define SET16BITMAP40_SEL_BIT_POS38(r16,v) _BFSET_(r16, 7, 2,v) |
| |
| #define GET32BITMAP40_SEL_BIT_POS39(r32) _BFGET_(r32,29,24) |
| #define SET32BITMAP40_SEL_BIT_POS39(r32,v) _BFSET_(r32,29,24,v) |
| #define GET16BITMAP40_SEL_BIT_POS39(r16) _BFGET_(r16,13, 8) |
| #define SET16BITMAP40_SEL_BIT_POS39(r16,v) _BFSET_(r16,13, 8,v) |
| |
| #define w32BITMAP40_SEL7 {\ |
| UNSG32 uSEL_BIT_POS35 : 6;\ |
| UNSG32 uSEL_BIT_POS36 : 6;\ |
| UNSG32 uSEL_BIT_POS37 : 6;\ |
| UNSG32 uSEL_BIT_POS38 : 6;\ |
| UNSG32 uSEL_BIT_POS39 : 6;\ |
| UNSG32 RSVDx1C_b30 : 2;\ |
| } |
| union { UNSG32 u32BITMAP40_SEL7; |
| struct w32BITMAP40_SEL7; |
| }; |
| /////////////////////////////////////////////////////////// |
| } SIE_BITMAP40; |
| |
| typedef union T32BITMAP40_SEL |
| { UNSG32 u32; |
| struct w32BITMAP40_SEL; |
| } T32BITMAP40_SEL; |
| typedef union T32BITMAP40_SEL1 |
| { UNSG32 u32; |
| struct w32BITMAP40_SEL1; |
| } T32BITMAP40_SEL1; |
| typedef union T32BITMAP40_SEL2 |
| { UNSG32 u32; |
| struct w32BITMAP40_SEL2; |
| } T32BITMAP40_SEL2; |
| typedef union T32BITMAP40_SEL3 |
| { UNSG32 u32; |
| struct w32BITMAP40_SEL3; |
| } T32BITMAP40_SEL3; |
| typedef union T32BITMAP40_SEL4 |
| { UNSG32 u32; |
| struct w32BITMAP40_SEL4; |
| } T32BITMAP40_SEL4; |
| typedef union T32BITMAP40_SEL5 |
| { UNSG32 u32; |
| struct w32BITMAP40_SEL5; |
| } T32BITMAP40_SEL5; |
| typedef union T32BITMAP40_SEL6 |
| { UNSG32 u32; |
| struct w32BITMAP40_SEL6; |
| } T32BITMAP40_SEL6; |
| typedef union T32BITMAP40_SEL7 |
| { UNSG32 u32; |
| struct w32BITMAP40_SEL7; |
| } T32BITMAP40_SEL7; |
| /////////////////////////////////////////////////////////// |
| |
| typedef union TBITMAP40_SEL |
| { UNSG32 u32[8]; |
| struct { |
| struct w32BITMAP40_SEL; |
| struct w32BITMAP40_SEL1; |
| struct w32BITMAP40_SEL2; |
| struct w32BITMAP40_SEL3; |
| struct w32BITMAP40_SEL4; |
| struct w32BITMAP40_SEL5; |
| struct w32BITMAP40_SEL6; |
| struct w32BITMAP40_SEL7; |
| }; |
| } TBITMAP40_SEL; |
| |
| /////////////////////////////////////////////////////////// |
| SIGN32 BITMAP40_drvrd(SIE_BITMAP40 *p, UNSG32 base, SIGN32 mem, SIGN32 tst); |
| SIGN32 BITMAP40_drvwr(SIE_BITMAP40 *p, UNSG32 base, SIGN32 mem, SIGN32 tst, UNSG32 *pcmd); |
| void BITMAP40_reset(SIE_BITMAP40 *p); |
| SIGN32 BITMAP40_cmp (SIE_BITMAP40 *p, SIE_BITMAP40 *pie, char *pfx, void *hLOG, SIGN32 mem, SIGN32 tst); |
| #define BITMAP40_check(p,pie,pfx,hLOG) BITMAP40_cmp(p,pie,pfx,(void*)(hLOG),0,0) |
| #define BITMAP40_print(p, pfx,hLOG) BITMAP40_cmp(p,0, pfx,(void*)(hLOG),0,0) |
| |
| #endif |
| ////// |
| /// ENDOFINTERFACE: BITMAP40 |
| //////////////////////////////////////////////////////////// |
| |
| ////// |
| /// |
| /// $INTERFACE BITMAP20 (4,4) |
| /// # # ---------------------------------------------------------- |
| /// @ 0x00000 SEL (P) |
| /// %unsigned 5 BIT_POS0 0x0 |
| /// %unsigned 5 BIT_POS1 0x1 |
| /// %unsigned 5 BIT_POS2 0x2 |
| /// %unsigned 5 BIT_POS3 0x3 |
| /// %unsigned 5 BIT_POS4 0x4 |
| /// %unsigned 5 BIT_POS5 0x5 |
| /// %% 2 # Stuffing bits... |
| /// # 0x00004 SEL1 |
| /// %unsigned 5 BIT_POS6 0x6 |
| /// %unsigned 5 BIT_POS7 0x7 |
| /// %unsigned 5 BIT_POS8 0x8 |
| /// %unsigned 5 BIT_POS9 0x9 |
| /// %unsigned 5 BIT_POS10 0xA |
| /// %unsigned 5 BIT_POS11 0xB |
| /// %% 2 # Stuffing bits... |
| /// # 0x00008 SEL2 |
| /// %unsigned 5 BIT_POS12 0xC |
| /// %unsigned 5 BIT_POS13 0xD |
| /// %unsigned 5 BIT_POS14 0xE |
| /// %unsigned 5 BIT_POS15 0xF |
| /// %unsigned 5 BIT_POS16 0x10 |
| /// %unsigned 5 BIT_POS17 0x11 |
| /// %% 2 # Stuffing bits... |
| /// # 0x0000C SEL3 |
| /// %unsigned 5 BIT_POS18 0x12 |
| /// %unsigned 5 BIT_POS19 0x13 |
| /// ### |
| /// * Specifies mapping of new bit locations within 20 bit data from Read Client which need to be used to form pixels for Inverse Scan mode. |
| /// * Normal dHub data order: |
| /// * {Y3,Cr2,Y2,Cb2,Y1,Cr0,Y0,Cb0} First pixel in LSB |
| /// * Inverse Scan dHub data order: |
| /// * {Y3,Cr2,Y2,Cb2,Y1,Cr0,Y0,Cb0} First pixel in MSB |
| /// * Following different data orders can be generated to be presented to first UPS in the pipe. |
| /// ### |
| /// %% 22 # Stuffing bits... |
| /// # # ---------------------------------------------------------- |
| /// $ENDOFINTERFACE # size: 16B, bits: 100b, padding: 0B |
| //////////////////////////////////////////////////////////// |
| #ifndef h_BITMAP20 |
| #define h_BITMAP20 (){} |
| |
| #define RA_BITMAP20_SEL 0x0000 |
| |
| #define BA_BITMAP20_SEL_BIT_POS0 0x0000 |
| #define B16BITMAP20_SEL_BIT_POS0 0x0000 |
| #define LSb32BITMAP20_SEL_BIT_POS0 0 |
| #define LSb16BITMAP20_SEL_BIT_POS0 0 |
| #define bBITMAP20_SEL_BIT_POS0 5 |
| #define MSK32BITMAP20_SEL_BIT_POS0 0x0000001F |
| |
| #define BA_BITMAP20_SEL_BIT_POS1 0x0000 |
| #define B16BITMAP20_SEL_BIT_POS1 0x0000 |
| #define LSb32BITMAP20_SEL_BIT_POS1 5 |
| #define LSb16BITMAP20_SEL_BIT_POS1 5 |
| #define bBITMAP20_SEL_BIT_POS1 5 |
| #define MSK32BITMAP20_SEL_BIT_POS1 0x000003E0 |
| |
| #define BA_BITMAP20_SEL_BIT_POS2 0x0001 |
| #define B16BITMAP20_SEL_BIT_POS2 0x0000 |
| #define LSb32BITMAP20_SEL_BIT_POS2 10 |
| #define LSb16BITMAP20_SEL_BIT_POS2 10 |
| #define bBITMAP20_SEL_BIT_POS2 5 |
| #define MSK32BITMAP20_SEL_BIT_POS2 0x00007C00 |
| |
| #define BA_BITMAP20_SEL_BIT_POS3 0x0001 |
| #define B16BITMAP20_SEL_BIT_POS3 0x0000 |
| #define LSb32BITMAP20_SEL_BIT_POS3 15 |
| #define LSb16BITMAP20_SEL_BIT_POS3 15 |
| #define bBITMAP20_SEL_BIT_POS3 5 |
| #define MSK32BITMAP20_SEL_BIT_POS3 0x000F8000 |
| |
| #define BA_BITMAP20_SEL_BIT_POS4 0x0002 |
| #define B16BITMAP20_SEL_BIT_POS4 0x0002 |
| #define LSb32BITMAP20_SEL_BIT_POS4 20 |
| #define LSb16BITMAP20_SEL_BIT_POS4 4 |
| #define bBITMAP20_SEL_BIT_POS4 5 |
| #define MSK32BITMAP20_SEL_BIT_POS4 0x01F00000 |
| |
| #define BA_BITMAP20_SEL_BIT_POS5 0x0003 |
| #define B16BITMAP20_SEL_BIT_POS5 0x0002 |
| #define LSb32BITMAP20_SEL_BIT_POS5 25 |
| #define LSb16BITMAP20_SEL_BIT_POS5 9 |
| #define bBITMAP20_SEL_BIT_POS5 5 |
| #define MSK32BITMAP20_SEL_BIT_POS5 0x3E000000 |
| |
| #define RA_BITMAP20_SEL1 0x0004 |
| |
| #define BA_BITMAP20_SEL_BIT_POS6 0x0004 |
| #define B16BITMAP20_SEL_BIT_POS6 0x0004 |
| #define LSb32BITMAP20_SEL_BIT_POS6 0 |
| #define LSb16BITMAP20_SEL_BIT_POS6 0 |
| #define bBITMAP20_SEL_BIT_POS6 5 |
| #define MSK32BITMAP20_SEL_BIT_POS6 0x0000001F |
| |
| #define BA_BITMAP20_SEL_BIT_POS7 0x0004 |
| #define B16BITMAP20_SEL_BIT_POS7 0x0004 |
| #define LSb32BITMAP20_SEL_BIT_POS7 5 |
| #define LSb16BITMAP20_SEL_BIT_POS7 5 |
| #define bBITMAP20_SEL_BIT_POS7 5 |
| #define MSK32BITMAP20_SEL_BIT_POS7 0x000003E0 |
| |
| #define BA_BITMAP20_SEL_BIT_POS8 0x0005 |
| #define B16BITMAP20_SEL_BIT_POS8 0x0004 |
| #define LSb32BITMAP20_SEL_BIT_POS8 10 |
| #define LSb16BITMAP20_SEL_BIT_POS8 10 |
| #define bBITMAP20_SEL_BIT_POS8 5 |
| #define MSK32BITMAP20_SEL_BIT_POS8 0x00007C00 |
| |
| #define BA_BITMAP20_SEL_BIT_POS9 0x0005 |
| #define B16BITMAP20_SEL_BIT_POS9 0x0004 |
| #define LSb32BITMAP20_SEL_BIT_POS9 15 |
| #define LSb16BITMAP20_SEL_BIT_POS9 15 |
| #define bBITMAP20_SEL_BIT_POS9 5 |
| #define MSK32BITMAP20_SEL_BIT_POS9 0x000F8000 |
| |
| #define BA_BITMAP20_SEL_BIT_POS10 0x0006 |
| #define B16BITMAP20_SEL_BIT_POS10 0x0006 |
| #define LSb32BITMAP20_SEL_BIT_POS10 20 |
| #define LSb16BITMAP20_SEL_BIT_POS10 4 |
| #define bBITMAP20_SEL_BIT_POS10 5 |
| #define MSK32BITMAP20_SEL_BIT_POS10 0x01F00000 |
| |
| #define BA_BITMAP20_SEL_BIT_POS11 0x0007 |
| #define B16BITMAP20_SEL_BIT_POS11 0x0006 |
| #define LSb32BITMAP20_SEL_BIT_POS11 25 |
| #define LSb16BITMAP20_SEL_BIT_POS11 9 |
| #define bBITMAP20_SEL_BIT_POS11 5 |
| #define MSK32BITMAP20_SEL_BIT_POS11 0x3E000000 |
| |
| #define RA_BITMAP20_SEL2 0x0008 |
| |
| #define BA_BITMAP20_SEL_BIT_POS12 0x0008 |
| #define B16BITMAP20_SEL_BIT_POS12 0x0008 |
| #define LSb32BITMAP20_SEL_BIT_POS12 0 |
| #define LSb16BITMAP20_SEL_BIT_POS12 0 |
| #define bBITMAP20_SEL_BIT_POS12 5 |
| #define MSK32BITMAP20_SEL_BIT_POS12 0x0000001F |
| |
| #define BA_BITMAP20_SEL_BIT_POS13 0x0008 |
| #define B16BITMAP20_SEL_BIT_POS13 0x0008 |
| #define LSb32BITMAP20_SEL_BIT_POS13 5 |
| #define LSb16BITMAP20_SEL_BIT_POS13 5 |
| #define bBITMAP20_SEL_BIT_POS13 5 |
| #define MSK32BITMAP20_SEL_BIT_POS13 0x000003E0 |
| |
| #define BA_BITMAP20_SEL_BIT_POS14 0x0009 |
| #define B16BITMAP20_SEL_BIT_POS14 0x0008 |
| #define LSb32BITMAP20_SEL_BIT_POS14 10 |
| #define LSb16BITMAP20_SEL_BIT_POS14 10 |
| #define bBITMAP20_SEL_BIT_POS14 5 |
| #define MSK32BITMAP20_SEL_BIT_POS14 0x00007C00 |
| |
| #define BA_BITMAP20_SEL_BIT_POS15 0x0009 |
| #define B16BITMAP20_SEL_BIT_POS15 0x0008 |
| #define LSb32BITMAP20_SEL_BIT_POS15 15 |
| #define LSb16BITMAP20_SEL_BIT_POS15 15 |
| #define bBITMAP20_SEL_BIT_POS15 5 |
| #define MSK32BITMAP20_SEL_BIT_POS15 0x000F8000 |
| |
| #define BA_BITMAP20_SEL_BIT_POS16 0x000A |
| #define B16BITMAP20_SEL_BIT_POS16 0x000A |
| #define LSb32BITMAP20_SEL_BIT_POS16 20 |
| #define LSb16BITMAP20_SEL_BIT_POS16 4 |
| #define bBITMAP20_SEL_BIT_POS16 5 |
| #define MSK32BITMAP20_SEL_BIT_POS16 0x01F00000 |
| |
| #define BA_BITMAP20_SEL_BIT_POS17 0x000B |
| #define B16BITMAP20_SEL_BIT_POS17 0x000A |
| #define LSb32BITMAP20_SEL_BIT_POS17 25 |
| #define LSb16BITMAP20_SEL_BIT_POS17 9 |
| #define bBITMAP20_SEL_BIT_POS17 5 |
| #define MSK32BITMAP20_SEL_BIT_POS17 0x3E000000 |
| |
| #define RA_BITMAP20_SEL3 0x000C |
| |
| #define BA_BITMAP20_SEL_BIT_POS18 0x000C |
| #define B16BITMAP20_SEL_BIT_POS18 0x000C |
| #define LSb32BITMAP20_SEL_BIT_POS18 0 |
| #define LSb16BITMAP20_SEL_BIT_POS18 0 |
| #define bBITMAP20_SEL_BIT_POS18 5 |
| #define MSK32BITMAP20_SEL_BIT_POS18 0x0000001F |
| |
| #define BA_BITMAP20_SEL_BIT_POS19 0x000C |
| #define B16BITMAP20_SEL_BIT_POS19 0x000C |
| #define LSb32BITMAP20_SEL_BIT_POS19 5 |
| #define LSb16BITMAP20_SEL_BIT_POS19 5 |
| #define bBITMAP20_SEL_BIT_POS19 5 |
| #define MSK32BITMAP20_SEL_BIT_POS19 0x000003E0 |
| /////////////////////////////////////////////////////////// |
| |
| typedef struct SIE_BITMAP20 { |
| /////////////////////////////////////////////////////////// |
| #define GET32BITMAP20_SEL_BIT_POS0(r32) _BFGET_(r32, 4, 0) |
| #define SET32BITMAP20_SEL_BIT_POS0(r32,v) _BFSET_(r32, 4, 0,v) |
| #define GET16BITMAP20_SEL_BIT_POS0(r16) _BFGET_(r16, 4, 0) |
| #define SET16BITMAP20_SEL_BIT_POS0(r16,v) _BFSET_(r16, 4, 0,v) |
| |
| #define GET32BITMAP20_SEL_BIT_POS1(r32) _BFGET_(r32, 9, 5) |
| #define SET32BITMAP20_SEL_BIT_POS1(r32,v) _BFSET_(r32, 9, 5,v) |
| #define GET16BITMAP20_SEL_BIT_POS1(r16) _BFGET_(r16, 9, 5) |
| #define SET16BITMAP20_SEL_BIT_POS1(r16,v) _BFSET_(r16, 9, 5,v) |
| |
| #define GET32BITMAP20_SEL_BIT_POS2(r32) _BFGET_(r32,14,10) |
| #define SET32BITMAP20_SEL_BIT_POS2(r32,v) _BFSET_(r32,14,10,v) |
| #define GET16BITMAP20_SEL_BIT_POS2(r16) _BFGET_(r16,14,10) |
| #define SET16BITMAP20_SEL_BIT_POS2(r16,v) _BFSET_(r16,14,10,v) |
| |
| #define GET32BITMAP20_SEL_BIT_POS3(r32) _BFGET_(r32,19,15) |
| #define SET32BITMAP20_SEL_BIT_POS3(r32,v) _BFSET_(r32,19,15,v) |
| |
| #define GET32BITMAP20_SEL_BIT_POS4(r32) _BFGET_(r32,24,20) |
| #define SET32BITMAP20_SEL_BIT_POS4(r32,v) _BFSET_(r32,24,20,v) |
| #define GET16BITMAP20_SEL_BIT_POS4(r16) _BFGET_(r16, 8, 4) |
| #define SET16BITMAP20_SEL_BIT_POS4(r16,v) _BFSET_(r16, 8, 4,v) |
| |
| #define GET32BITMAP20_SEL_BIT_POS5(r32) _BFGET_(r32,29,25) |
| #define SET32BITMAP20_SEL_BIT_POS5(r32,v) _BFSET_(r32,29,25,v) |
| #define GET16BITMAP20_SEL_BIT_POS5(r16) _BFGET_(r16,13, 9) |
| #define SET16BITMAP20_SEL_BIT_POS5(r16,v) _BFSET_(r16,13, 9,v) |
| |
| #define w32BITMAP20_SEL {\ |
| UNSG32 uSEL_BIT_POS0 : 5;\ |
| UNSG32 uSEL_BIT_POS1 : 5;\ |
| UNSG32 uSEL_BIT_POS2 : 5;\ |
| UNSG32 uSEL_BIT_POS3 : 5;\ |
| UNSG32 uSEL_BIT_POS4 : 5;\ |
| UNSG32 uSEL_BIT_POS5 : 5;\ |
| UNSG32 RSVDx0_b30 : 2;\ |
| } |
| union { UNSG32 u32BITMAP20_SEL; |
| struct w32BITMAP20_SEL; |
| }; |
| #define GET32BITMAP20_SEL_BIT_POS6(r32) _BFGET_(r32, 4, 0) |
| #define SET32BITMAP20_SEL_BIT_POS6(r32,v) _BFSET_(r32, 4, 0,v) |
| #define GET16BITMAP20_SEL_BIT_POS6(r16) _BFGET_(r16, 4, 0) |
| #define SET16BITMAP20_SEL_BIT_POS6(r16,v) _BFSET_(r16, 4, 0,v) |
| |
| #define GET32BITMAP20_SEL_BIT_POS7(r32) _BFGET_(r32, 9, 5) |
| #define SET32BITMAP20_SEL_BIT_POS7(r32,v) _BFSET_(r32, 9, 5,v) |
| #define GET16BITMAP20_SEL_BIT_POS7(r16) _BFGET_(r16, 9, 5) |
| #define SET16BITMAP20_SEL_BIT_POS7(r16,v) _BFSET_(r16, 9, 5,v) |
| |
| #define GET32BITMAP20_SEL_BIT_POS8(r32) _BFGET_(r32,14,10) |
| #define SET32BITMAP20_SEL_BIT_POS8(r32,v) _BFSET_(r32,14,10,v) |
| #define GET16BITMAP20_SEL_BIT_POS8(r16) _BFGET_(r16,14,10) |
| #define SET16BITMAP20_SEL_BIT_POS8(r16,v) _BFSET_(r16,14,10,v) |
| |
| #define GET32BITMAP20_SEL_BIT_POS9(r32) _BFGET_(r32,19,15) |
| #define SET32BITMAP20_SEL_BIT_POS9(r32,v) _BFSET_(r32,19,15,v) |
| |
| #define GET32BITMAP20_SEL_BIT_POS10(r32) _BFGET_(r32,24,20) |
| #define SET32BITMAP20_SEL_BIT_POS10(r32,v) _BFSET_(r32,24,20,v) |
| #define GET16BITMAP20_SEL_BIT_POS10(r16) _BFGET_(r16, 8, 4) |
| #define SET16BITMAP20_SEL_BIT_POS10(r16,v) _BFSET_(r16, 8, 4,v) |
| |
| #define GET32BITMAP20_SEL_BIT_POS11(r32) _BFGET_(r32,29,25) |
| #define SET32BITMAP20_SEL_BIT_POS11(r32,v) _BFSET_(r32,29,25,v) |
| #define GET16BITMAP20_SEL_BIT_POS11(r16) _BFGET_(r16,13, 9) |
| #define SET16BITMAP20_SEL_BIT_POS11(r16,v) _BFSET_(r16,13, 9,v) |
| |
| #define w32BITMAP20_SEL1 {\ |
| UNSG32 uSEL_BIT_POS6 : 5;\ |
| UNSG32 uSEL_BIT_POS7 : 5;\ |
| UNSG32 uSEL_BIT_POS8 : 5;\ |
| UNSG32 uSEL_BIT_POS9 : 5;\ |
| UNSG32 uSEL_BIT_POS10 : 5;\ |
| UNSG32 uSEL_BIT_POS11 : 5;\ |
| UNSG32 RSVDx4_b30 : 2;\ |
| } |
| union { UNSG32 u32BITMAP20_SEL1; |
| struct w32BITMAP20_SEL1; |
| }; |
| #define GET32BITMAP20_SEL_BIT_POS12(r32) _BFGET_(r32, 4, 0) |
| #define SET32BITMAP20_SEL_BIT_POS12(r32,v) _BFSET_(r32, 4, 0,v) |
| #define GET16BITMAP20_SEL_BIT_POS12(r16) _BFGET_(r16, 4, 0) |
| #define SET16BITMAP20_SEL_BIT_POS12(r16,v) _BFSET_(r16, 4, 0,v) |
| |
| #define GET32BITMAP20_SEL_BIT_POS13(r32) _BFGET_(r32, 9, 5) |
| #define SET32BITMAP20_SEL_BIT_POS13(r32,v) _BFSET_(r32, 9, 5,v) |
| #define GET16BITMAP20_SEL_BIT_POS13(r16) _BFGET_(r16, 9, 5) |
| #define SET16BITMAP20_SEL_BIT_POS13(r16,v) _BFSET_(r16, 9, 5,v) |
| |
| #define GET32BITMAP20_SEL_BIT_POS14(r32) _BFGET_(r32,14,10) |
| #define SET32BITMAP20_SEL_BIT_POS14(r32,v) _BFSET_(r32,14,10,v) |
| #define GET16BITMAP20_SEL_BIT_POS14(r16) _BFGET_(r16,14,10) |
| #define SET16BITMAP20_SEL_BIT_POS14(r16,v) _BFSET_(r16,14,10,v) |
| |
| #define GET32BITMAP20_SEL_BIT_POS15(r32) _BFGET_(r32,19,15) |
| #define SET32BITMAP20_SEL_BIT_POS15(r32,v) _BFSET_(r32,19,15,v) |
| |
| #define GET32BITMAP20_SEL_BIT_POS16(r32) _BFGET_(r32,24,20) |
| #define SET32BITMAP20_SEL_BIT_POS16(r32,v) _BFSET_(r32,24,20,v) |
| #define GET16BITMAP20_SEL_BIT_POS16(r16) _BFGET_(r16, 8, 4) |
| #define SET16BITMAP20_SEL_BIT_POS16(r16,v) _BFSET_(r16, 8, 4,v) |
| |
| #define GET32BITMAP20_SEL_BIT_POS17(r32) _BFGET_(r32,29,25) |
| #define SET32BITMAP20_SEL_BIT_POS17(r32,v) _BFSET_(r32,29,25,v) |
| #define GET16BITMAP20_SEL_BIT_POS17(r16) _BFGET_(r16,13, 9) |
| #define SET16BITMAP20_SEL_BIT_POS17(r16,v) _BFSET_(r16,13, 9,v) |
| |
| #define w32BITMAP20_SEL2 {\ |
| UNSG32 uSEL_BIT_POS12 : 5;\ |
| UNSG32 uSEL_BIT_POS13 : 5;\ |
| UNSG32 uSEL_BIT_POS14 : 5;\ |
| UNSG32 uSEL_BIT_POS15 : 5;\ |
| UNSG32 uSEL_BIT_POS16 : 5;\ |
| UNSG32 uSEL_BIT_POS17 : 5;\ |
| UNSG32 RSVDx8_b30 : 2;\ |
| } |
| union { UNSG32 u32BITMAP20_SEL2; |
| struct w32BITMAP20_SEL2; |
| }; |
| #define GET32BITMAP20_SEL_BIT_POS18(r32) _BFGET_(r32, 4, 0) |
| #define SET32BITMAP20_SEL_BIT_POS18(r32,v) _BFSET_(r32, 4, 0,v) |
| #define GET16BITMAP20_SEL_BIT_POS18(r16) _BFGET_(r16, 4, 0) |
| #define SET16BITMAP20_SEL_BIT_POS18(r16,v) _BFSET_(r16, 4, 0,v) |
| |
| #define GET32BITMAP20_SEL_BIT_POS19(r32) _BFGET_(r32, 9, 5) |
| #define SET32BITMAP20_SEL_BIT_POS19(r32,v) _BFSET_(r32, 9, 5,v) |
| #define GET16BITMAP20_SEL_BIT_POS19(r16) _BFGET_(r16, 9, 5) |
| #define SET16BITMAP20_SEL_BIT_POS19(r16,v) _BFSET_(r16, 9, 5,v) |
| |
| #define w32BITMAP20_SEL3 {\ |
| UNSG32 uSEL_BIT_POS18 : 5;\ |
| UNSG32 uSEL_BIT_POS19 : 5;\ |
| UNSG32 RSVDxC_b10 : 22;\ |
| } |
| union { UNSG32 u32BITMAP20_SEL3; |
| struct w32BITMAP20_SEL3; |
| }; |
| /////////////////////////////////////////////////////////// |
| } SIE_BITMAP20; |
| |
| typedef union T32BITMAP20_SEL |
| { UNSG32 u32; |
| struct w32BITMAP20_SEL; |
| } T32BITMAP20_SEL; |
| typedef union T32BITMAP20_SEL1 |
| { UNSG32 u32; |
| struct w32BITMAP20_SEL1; |
| } T32BITMAP20_SEL1; |
| typedef union T32BITMAP20_SEL2 |
| { UNSG32 u32; |
| struct w32BITMAP20_SEL2; |
| } T32BITMAP20_SEL2; |
| typedef union T32BITMAP20_SEL3 |
| { UNSG32 u32; |
| struct w32BITMAP20_SEL3; |
| } T32BITMAP20_SEL3; |
| /////////////////////////////////////////////////////////// |
| |
| typedef union TBITMAP20_SEL |
| { UNSG32 u32[4]; |
| struct { |
| struct w32BITMAP20_SEL; |
| struct w32BITMAP20_SEL1; |
| struct w32BITMAP20_SEL2; |
| struct w32BITMAP20_SEL3; |
| }; |
| } TBITMAP20_SEL; |
| |
| /////////////////////////////////////////////////////////// |
| SIGN32 BITMAP20_drvrd(SIE_BITMAP20 *p, UNSG32 base, SIGN32 mem, SIGN32 tst); |
| SIGN32 BITMAP20_drvwr(SIE_BITMAP20 *p, UNSG32 base, SIGN32 mem, SIGN32 tst, UNSG32 *pcmd); |
| void BITMAP20_reset(SIE_BITMAP20 *p); |
| SIGN32 BITMAP20_cmp (SIE_BITMAP20 *p, SIE_BITMAP20 *pie, char *pfx, void *hLOG, SIGN32 mem, SIGN32 tst); |
| #define BITMAP20_check(p,pie,pfx,hLOG) BITMAP20_cmp(p,pie,pfx,(void*)(hLOG),0,0) |
| #define BITMAP20_print(p, pfx,hLOG) BITMAP20_cmp(p,0, pfx,(void*)(hLOG),0,0) |
| |
| #endif |
| ////// |
| /// ENDOFINTERFACE: BITMAP20 |
| //////////////////////////////////////////////////////////// |
| |
| ////// |
| /// |
| /// $INTERFACE BITMAP32 (4,4) |
| /// # # ---------------------------------------------------------- |
| /// @ 0x00000 SEL (P) |
| /// %unsigned 5 BIT_POS0 0x0 |
| /// %unsigned 5 BIT_POS1 0x1 |
| /// %unsigned 5 BIT_POS2 0x2 |
| /// %unsigned 5 BIT_POS3 0x3 |
| /// %unsigned 5 BIT_POS4 0x4 |
| /// %unsigned 5 BIT_POS5 0x5 |
| /// %% 2 # Stuffing bits... |
| /// # 0x00004 SEL1 |
| /// %unsigned 5 BIT_POS6 0x6 |
| /// %unsigned 5 BIT_POS7 0x7 |
| /// %unsigned 5 BIT_POS8 0x8 |
| /// %unsigned 5 BIT_POS9 0x9 |
| /// %unsigned 5 BIT_POS10 0xA |
| /// %unsigned 5 BIT_POS11 0xB |
| /// %% 2 # Stuffing bits... |
| /// # 0x00008 SEL2 |
| /// %unsigned 5 BIT_POS12 0xC |
| /// %unsigned 5 BIT_POS13 0xD |
| /// %unsigned 5 BIT_POS14 0xE |
| /// %unsigned 5 BIT_POS15 0xF |
| /// %unsigned 5 BIT_POS16 0x10 |
| /// %unsigned 5 BIT_POS17 0x11 |
| /// %% 2 # Stuffing bits... |
| /// # 0x0000C SEL3 |
| /// %unsigned 5 BIT_POS18 0x12 |
| /// %unsigned 5 BIT_POS19 0x13 |
| /// %unsigned 5 BIT_POS20 0x14 |
| /// %unsigned 5 BIT_POS21 0x15 |
| /// %unsigned 5 BIT_POS22 0x16 |
| /// %unsigned 5 BIT_POS23 0x17 |
| /// %% 2 # Stuffing bits... |
| /// # 0x00010 SEL4 |
| /// %unsigned 5 BIT_POS24 0x18 |
| /// %unsigned 5 BIT_POS25 0x19 |
| /// %unsigned 5 BIT_POS26 0x1A |
| /// %unsigned 5 BIT_POS27 0x1B |
| /// %unsigned 5 BIT_POS28 0x1C |
| /// %unsigned 5 BIT_POS29 0x1D |
| /// %% 2 # Stuffing bits... |
| /// # 0x00014 SEL5 |
| /// %unsigned 5 BIT_POS30 0x1E |
| /// %unsigned 5 BIT_POS31 0x1F |
| /// ### |
| /// * Specifies mapping of 32 bit data from Read Client which need to be used to form pixels for Inverse Scan mode. |
| /// ### |
| /// %% 22 # Stuffing bits... |
| /// # # ---------------------------------------------------------- |
| /// $ENDOFINTERFACE # size: 24B, bits: 160b, padding: 0B |
| //////////////////////////////////////////////////////////// |
| #ifndef h_BITMAP32 |
| #define h_BITMAP32 (){} |
| |
| #define RA_BITMAP32_SEL 0x0000 |
| |
| #define BA_BITMAP32_SEL_BIT_POS0 0x0000 |
| #define B16BITMAP32_SEL_BIT_POS0 0x0000 |
| #define LSb32BITMAP32_SEL_BIT_POS0 0 |
| #define LSb16BITMAP32_SEL_BIT_POS0 0 |
| #define bBITMAP32_SEL_BIT_POS0 5 |
| #define MSK32BITMAP32_SEL_BIT_POS0 0x0000001F |
| |
| #define BA_BITMAP32_SEL_BIT_POS1 0x0000 |
| #define B16BITMAP32_SEL_BIT_POS1 0x0000 |
| #define LSb32BITMAP32_SEL_BIT_POS1 5 |
| #define LSb16BITMAP32_SEL_BIT_POS1 5 |
| #define bBITMAP32_SEL_BIT_POS1 5 |
| #define MSK32BITMAP32_SEL_BIT_POS1 0x000003E0 |
| |
| #define BA_BITMAP32_SEL_BIT_POS2 0x0001 |
| #define B16BITMAP32_SEL_BIT_POS2 0x0000 |
| #define LSb32BITMAP32_SEL_BIT_POS2 10 |
| #define LSb16BITMAP32_SEL_BIT_POS2 10 |
| #define bBITMAP32_SEL_BIT_POS2 5 |
| #define MSK32BITMAP32_SEL_BIT_POS2 0x00007C00 |
| |
| #define BA_BITMAP32_SEL_BIT_POS3 0x0001 |
| #define B16BITMAP32_SEL_BIT_POS3 0x0000 |
| #define LSb32BITMAP32_SEL_BIT_POS3 15 |
| #define LSb16BITMAP32_SEL_BIT_POS3 15 |
| #define bBITMAP32_SEL_BIT_POS3 5 |
| #define MSK32BITMAP32_SEL_BIT_POS3 0x000F8000 |
| |
| #define BA_BITMAP32_SEL_BIT_POS4 0x0002 |
| #define B16BITMAP32_SEL_BIT_POS4 0x0002 |
| #define LSb32BITMAP32_SEL_BIT_POS4 20 |
| #define LSb16BITMAP32_SEL_BIT_POS4 4 |
| #define bBITMAP32_SEL_BIT_POS4 5 |
| #define MSK32BITMAP32_SEL_BIT_POS4 0x01F00000 |
| |
| #define BA_BITMAP32_SEL_BIT_POS5 0x0003 |
| #define B16BITMAP32_SEL_BIT_POS5 0x0002 |
| #define LSb32BITMAP32_SEL_BIT_POS5 25 |
| #define LSb16BITMAP32_SEL_BIT_POS5 9 |
| #define bBITMAP32_SEL_BIT_POS5 5 |
| #define MSK32BITMAP32_SEL_BIT_POS5 0x3E000000 |
| |
| #define RA_BITMAP32_SEL1 0x0004 |
| |
| #define BA_BITMAP32_SEL_BIT_POS6 0x0004 |
| #define B16BITMAP32_SEL_BIT_POS6 0x0004 |
| #define LSb32BITMAP32_SEL_BIT_POS6 0 |
| #define LSb16BITMAP32_SEL_BIT_POS6 0 |
| #define bBITMAP32_SEL_BIT_POS6 5 |
| #define MSK32BITMAP32_SEL_BIT_POS6 0x0000001F |
| |
| #define BA_BITMAP32_SEL_BIT_POS7 0x0004 |
| #define B16BITMAP32_SEL_BIT_POS7 0x0004 |
| #define LSb32BITMAP32_SEL_BIT_POS7 5 |
| #define LSb16BITMAP32_SEL_BIT_POS7 5 |
| #define bBITMAP32_SEL_BIT_POS7 5 |
| #define MSK32BITMAP32_SEL_BIT_POS7 0x000003E0 |
| |
| #define BA_BITMAP32_SEL_BIT_POS8 0x0005 |
| #define B16BITMAP32_SEL_BIT_POS8 0x0004 |
| #define LSb32BITMAP32_SEL_BIT_POS8 10 |
| #define LSb16BITMAP32_SEL_BIT_POS8 10 |
| #define bBITMAP32_SEL_BIT_POS8 5 |
| #define MSK32BITMAP32_SEL_BIT_POS8 0x00007C00 |
| |
| #define BA_BITMAP32_SEL_BIT_POS9 0x0005 |
| #define B16BITMAP32_SEL_BIT_POS9 0x0004 |
| #define LSb32BITMAP32_SEL_BIT_POS9 15 |
| #define LSb16BITMAP32_SEL_BIT_POS9 15 |
| #define bBITMAP32_SEL_BIT_POS9 5 |
| #define MSK32BITMAP32_SEL_BIT_POS9 0x000F8000 |
| |
| #define BA_BITMAP32_SEL_BIT_POS10 0x0006 |
| #define B16BITMAP32_SEL_BIT_POS10 0x0006 |
| #define LSb32BITMAP32_SEL_BIT_POS10 20 |
| #define LSb16BITMAP32_SEL_BIT_POS10 4 |
| #define bBITMAP32_SEL_BIT_POS10 5 |
| #define MSK32BITMAP32_SEL_BIT_POS10 0x01F00000 |
| |
| #define BA_BITMAP32_SEL_BIT_POS11 0x0007 |
| #define B16BITMAP32_SEL_BIT_POS11 0x0006 |
| #define LSb32BITMAP32_SEL_BIT_POS11 25 |
| #define LSb16BITMAP32_SEL_BIT_POS11 9 |
| #define bBITMAP32_SEL_BIT_POS11 5 |
| #define MSK32BITMAP32_SEL_BIT_POS11 0x3E000000 |
| |
| #define RA_BITMAP32_SEL2 0x0008 |
| |
| #define BA_BITMAP32_SEL_BIT_POS12 0x0008 |
| #define B16BITMAP32_SEL_BIT_POS12 0x0008 |
| #define LSb32BITMAP32_SEL_BIT_POS12 0 |
| #define LSb16BITMAP32_SEL_BIT_POS12 0 |
| #define bBITMAP32_SEL_BIT_POS12 5 |
| #define MSK32BITMAP32_SEL_BIT_POS12 0x0000001F |
| |
| #define BA_BITMAP32_SEL_BIT_POS13 0x0008 |
| #define B16BITMAP32_SEL_BIT_POS13 0x0008 |
| #define LSb32BITMAP32_SEL_BIT_POS13 5 |
| #define LSb16BITMAP32_SEL_BIT_POS13 5 |
| #define bBITMAP32_SEL_BIT_POS13 5 |
| #define MSK32BITMAP32_SEL_BIT_POS13 0x000003E0 |
| |
| #define BA_BITMAP32_SEL_BIT_POS14 0x0009 |
| #define B16BITMAP32_SEL_BIT_POS14 0x0008 |
| #define LSb32BITMAP32_SEL_BIT_POS14 10 |
| #define LSb16BITMAP32_SEL_BIT_POS14 10 |
| #define bBITMAP32_SEL_BIT_POS14 5 |
| #define MSK32BITMAP32_SEL_BIT_POS14 0x00007C00 |
| |
| #define BA_BITMAP32_SEL_BIT_POS15 0x0009 |
| #define B16BITMAP32_SEL_BIT_POS15 0x0008 |
| #define LSb32BITMAP32_SEL_BIT_POS15 15 |
| #define LSb16BITMAP32_SEL_BIT_POS15 15 |
| #define bBITMAP32_SEL_BIT_POS15 5 |
| #define MSK32BITMAP32_SEL_BIT_POS15 0x000F8000 |
| |
| #define BA_BITMAP32_SEL_BIT_POS16 0x000A |
| #define B16BITMAP32_SEL_BIT_POS16 0x000A |
| #define LSb32BITMAP32_SEL_BIT_POS16 20 |
| #define LSb16BITMAP32_SEL_BIT_POS16 4 |
| #define bBITMAP32_SEL_BIT_POS16 5 |
| #define MSK32BITMAP32_SEL_BIT_POS16 0x01F00000 |
| |
| #define BA_BITMAP32_SEL_BIT_POS17 0x000B |
| #define B16BITMAP32_SEL_BIT_POS17 0x000A |
| #define LSb32BITMAP32_SEL_BIT_POS17 25 |
| #define LSb16BITMAP32_SEL_BIT_POS17 9 |
| #define bBITMAP32_SEL_BIT_POS17 5 |
| #define MSK32BITMAP32_SEL_BIT_POS17 0x3E000000 |
| |
| #define RA_BITMAP32_SEL3 0x000C |
| |
| #define BA_BITMAP32_SEL_BIT_POS18 0x000C |
| #define B16BITMAP32_SEL_BIT_POS18 0x000C |
| #define LSb32BITMAP32_SEL_BIT_POS18 0 |
| #define LSb16BITMAP32_SEL_BIT_POS18 0 |
| #define bBITMAP32_SEL_BIT_POS18 5 |
| #define MSK32BITMAP32_SEL_BIT_POS18 0x0000001F |
| |
| #define BA_BITMAP32_SEL_BIT_POS19 0x000C |
| #define B16BITMAP32_SEL_BIT_POS19 0x000C |
| #define LSb32BITMAP32_SEL_BIT_POS19 5 |
| #define LSb16BITMAP32_SEL_BIT_POS19 5 |
| #define bBITMAP32_SEL_BIT_POS19 5 |
| #define MSK32BITMAP32_SEL_BIT_POS19 0x000003E0 |
| |
| #define BA_BITMAP32_SEL_BIT_POS20 0x000D |
| #define B16BITMAP32_SEL_BIT_POS20 0x000C |
| #define LSb32BITMAP32_SEL_BIT_POS20 10 |
| #define LSb16BITMAP32_SEL_BIT_POS20 10 |
| #define bBITMAP32_SEL_BIT_POS20 5 |
| #define MSK32BITMAP32_SEL_BIT_POS20 0x00007C00 |
| |
| #define BA_BITMAP32_SEL_BIT_POS21 0x000D |
| #define B16BITMAP32_SEL_BIT_POS21 0x000C |
| #define LSb32BITMAP32_SEL_BIT_POS21 15 |
| #define LSb16BITMAP32_SEL_BIT_POS21 15 |
| #define bBITMAP32_SEL_BIT_POS21 5 |
| #define MSK32BITMAP32_SEL_BIT_POS21 0x000F8000 |
| |
| #define BA_BITMAP32_SEL_BIT_POS22 0x000E |
| #define B16BITMAP32_SEL_BIT_POS22 0x000E |
| #define LSb32BITMAP32_SEL_BIT_POS22 20 |
| #define LSb16BITMAP32_SEL_BIT_POS22 4 |
| #define bBITMAP32_SEL_BIT_POS22 5 |
| #define MSK32BITMAP32_SEL_BIT_POS22 0x01F00000 |
| |
| #define BA_BITMAP32_SEL_BIT_POS23 0x000F |
| #define B16BITMAP32_SEL_BIT_POS23 0x000E |
| #define LSb32BITMAP32_SEL_BIT_POS23 25 |
| #define LSb16BITMAP32_SEL_BIT_POS23 9 |
| #define bBITMAP32_SEL_BIT_POS23 5 |
| #define MSK32BITMAP32_SEL_BIT_POS23 0x3E000000 |
| |
| #define RA_BITMAP32_SEL4 0x0010 |
| |
| #define BA_BITMAP32_SEL_BIT_POS24 0x0010 |
| #define B16BITMAP32_SEL_BIT_POS24 0x0010 |
| #define LSb32BITMAP32_SEL_BIT_POS24 0 |
| #define LSb16BITMAP32_SEL_BIT_POS24 0 |
| #define bBITMAP32_SEL_BIT_POS24 5 |
| #define MSK32BITMAP32_SEL_BIT_POS24 0x0000001F |
| |
| #define BA_BITMAP32_SEL_BIT_POS25 0x0010 |
| #define B16BITMAP32_SEL_BIT_POS25 0x0010 |
| #define LSb32BITMAP32_SEL_BIT_POS25 5 |
| #define LSb16BITMAP32_SEL_BIT_POS25 5 |
| #define bBITMAP32_SEL_BIT_POS25 5 |
| #define MSK32BITMAP32_SEL_BIT_POS25 0x000003E0 |
| |
| #define BA_BITMAP32_SEL_BIT_POS26 0x0011 |
| #define B16BITMAP32_SEL_BIT_POS26 0x0010 |
| #define LSb32BITMAP32_SEL_BIT_POS26 10 |
| #define LSb16BITMAP32_SEL_BIT_POS26 10 |
| #define bBITMAP32_SEL_BIT_POS26 5 |
| #define MSK32BITMAP32_SEL_BIT_POS26 0x00007C00 |
| |
| #define BA_BITMAP32_SEL_BIT_POS27 0x0011 |
| #define B16BITMAP32_SEL_BIT_POS27 0x0010 |
| #define LSb32BITMAP32_SEL_BIT_POS27 15 |
| #define LSb16BITMAP32_SEL_BIT_POS27 15 |
| #define bBITMAP32_SEL_BIT_POS27 5 |
| #define MSK32BITMAP32_SEL_BIT_POS27 0x000F8000 |
| |
| #define BA_BITMAP32_SEL_BIT_POS28 0x0012 |
| #define B16BITMAP32_SEL_BIT_POS28 0x0012 |
| #define LSb32BITMAP32_SEL_BIT_POS28 20 |
| #define LSb16BITMAP32_SEL_BIT_POS28 4 |
| #define bBITMAP32_SEL_BIT_POS28 5 |
| #define MSK32BITMAP32_SEL_BIT_POS28 0x01F00000 |
| |
| #define BA_BITMAP32_SEL_BIT_POS29 0x0013 |
| #define B16BITMAP32_SEL_BIT_POS29 0x0012 |
| #define LSb32BITMAP32_SEL_BIT_POS29 25 |
| #define LSb16BITMAP32_SEL_BIT_POS29 9 |
| #define bBITMAP32_SEL_BIT_POS29 5 |
| #define MSK32BITMAP32_SEL_BIT_POS29 0x3E000000 |
| |
| #define RA_BITMAP32_SEL5 0x0014 |
| |
| #define BA_BITMAP32_SEL_BIT_POS30 0x0014 |
| #define B16BITMAP32_SEL_BIT_POS30 0x0014 |
| #define LSb32BITMAP32_SEL_BIT_POS30 0 |
| #define LSb16BITMAP32_SEL_BIT_POS30 0 |
| #define bBITMAP32_SEL_BIT_POS30 5 |
| #define MSK32BITMAP32_SEL_BIT_POS30 0x0000001F |
| |
| #define BA_BITMAP32_SEL_BIT_POS31 0x0014 |
| #define B16BITMAP32_SEL_BIT_POS31 0x0014 |
| #define LSb32BITMAP32_SEL_BIT_POS31 5 |
| #define LSb16BITMAP32_SEL_BIT_POS31 5 |
| #define bBITMAP32_SEL_BIT_POS31 5 |
| #define MSK32BITMAP32_SEL_BIT_POS31 0x000003E0 |
| /////////////////////////////////////////////////////////// |
| |
| typedef struct SIE_BITMAP32 { |
| /////////////////////////////////////////////////////////// |
| #define GET32BITMAP32_SEL_BIT_POS0(r32) _BFGET_(r32, 4, 0) |
| #define SET32BITMAP32_SEL_BIT_POS0(r32,v) _BFSET_(r32, 4, 0,v) |
| #define GET16BITMAP32_SEL_BIT_POS0(r16) _BFGET_(r16, 4, 0) |
| #define SET16BITMAP32_SEL_BIT_POS0(r16,v) _BFSET_(r16, 4, 0,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS1(r32) _BFGET_(r32, 9, 5) |
| #define SET32BITMAP32_SEL_BIT_POS1(r32,v) _BFSET_(r32, 9, 5,v) |
| #define GET16BITMAP32_SEL_BIT_POS1(r16) _BFGET_(r16, 9, 5) |
| #define SET16BITMAP32_SEL_BIT_POS1(r16,v) _BFSET_(r16, 9, 5,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS2(r32) _BFGET_(r32,14,10) |
| #define SET32BITMAP32_SEL_BIT_POS2(r32,v) _BFSET_(r32,14,10,v) |
| #define GET16BITMAP32_SEL_BIT_POS2(r16) _BFGET_(r16,14,10) |
| #define SET16BITMAP32_SEL_BIT_POS2(r16,v) _BFSET_(r16,14,10,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS3(r32) _BFGET_(r32,19,15) |
| #define SET32BITMAP32_SEL_BIT_POS3(r32,v) _BFSET_(r32,19,15,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS4(r32) _BFGET_(r32,24,20) |
| #define SET32BITMAP32_SEL_BIT_POS4(r32,v) _BFSET_(r32,24,20,v) |
| #define GET16BITMAP32_SEL_BIT_POS4(r16) _BFGET_(r16, 8, 4) |
| #define SET16BITMAP32_SEL_BIT_POS4(r16,v) _BFSET_(r16, 8, 4,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS5(r32) _BFGET_(r32,29,25) |
| #define SET32BITMAP32_SEL_BIT_POS5(r32,v) _BFSET_(r32,29,25,v) |
| #define GET16BITMAP32_SEL_BIT_POS5(r16) _BFGET_(r16,13, 9) |
| #define SET16BITMAP32_SEL_BIT_POS5(r16,v) _BFSET_(r16,13, 9,v) |
| |
| #define w32BITMAP32_SEL {\ |
| UNSG32 uSEL_BIT_POS0 : 5;\ |
| UNSG32 uSEL_BIT_POS1 : 5;\ |
| UNSG32 uSEL_BIT_POS2 : 5;\ |
| UNSG32 uSEL_BIT_POS3 : 5;\ |
| UNSG32 uSEL_BIT_POS4 : 5;\ |
| UNSG32 uSEL_BIT_POS5 : 5;\ |
| UNSG32 RSVDx0_b30 : 2;\ |
| } |
| union { UNSG32 u32BITMAP32_SEL; |
| struct w32BITMAP32_SEL; |
| }; |
| #define GET32BITMAP32_SEL_BIT_POS6(r32) _BFGET_(r32, 4, 0) |
| #define SET32BITMAP32_SEL_BIT_POS6(r32,v) _BFSET_(r32, 4, 0,v) |
| #define GET16BITMAP32_SEL_BIT_POS6(r16) _BFGET_(r16, 4, 0) |
| #define SET16BITMAP32_SEL_BIT_POS6(r16,v) _BFSET_(r16, 4, 0,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS7(r32) _BFGET_(r32, 9, 5) |
| #define SET32BITMAP32_SEL_BIT_POS7(r32,v) _BFSET_(r32, 9, 5,v) |
| #define GET16BITMAP32_SEL_BIT_POS7(r16) _BFGET_(r16, 9, 5) |
| #define SET16BITMAP32_SEL_BIT_POS7(r16,v) _BFSET_(r16, 9, 5,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS8(r32) _BFGET_(r32,14,10) |
| #define SET32BITMAP32_SEL_BIT_POS8(r32,v) _BFSET_(r32,14,10,v) |
| #define GET16BITMAP32_SEL_BIT_POS8(r16) _BFGET_(r16,14,10) |
| #define SET16BITMAP32_SEL_BIT_POS8(r16,v) _BFSET_(r16,14,10,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS9(r32) _BFGET_(r32,19,15) |
| #define SET32BITMAP32_SEL_BIT_POS9(r32,v) _BFSET_(r32,19,15,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS10(r32) _BFGET_(r32,24,20) |
| #define SET32BITMAP32_SEL_BIT_POS10(r32,v) _BFSET_(r32,24,20,v) |
| #define GET16BITMAP32_SEL_BIT_POS10(r16) _BFGET_(r16, 8, 4) |
| #define SET16BITMAP32_SEL_BIT_POS10(r16,v) _BFSET_(r16, 8, 4,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS11(r32) _BFGET_(r32,29,25) |
| #define SET32BITMAP32_SEL_BIT_POS11(r32,v) _BFSET_(r32,29,25,v) |
| #define GET16BITMAP32_SEL_BIT_POS11(r16) _BFGET_(r16,13, 9) |
| #define SET16BITMAP32_SEL_BIT_POS11(r16,v) _BFSET_(r16,13, 9,v) |
| |
| #define w32BITMAP32_SEL1 {\ |
| UNSG32 uSEL_BIT_POS6 : 5;\ |
| UNSG32 uSEL_BIT_POS7 : 5;\ |
| UNSG32 uSEL_BIT_POS8 : 5;\ |
| UNSG32 uSEL_BIT_POS9 : 5;\ |
| UNSG32 uSEL_BIT_POS10 : 5;\ |
| UNSG32 uSEL_BIT_POS11 : 5;\ |
| UNSG32 RSVDx4_b30 : 2;\ |
| } |
| union { UNSG32 u32BITMAP32_SEL1; |
| struct w32BITMAP32_SEL1; |
| }; |
| #define GET32BITMAP32_SEL_BIT_POS12(r32) _BFGET_(r32, 4, 0) |
| #define SET32BITMAP32_SEL_BIT_POS12(r32,v) _BFSET_(r32, 4, 0,v) |
| #define GET16BITMAP32_SEL_BIT_POS12(r16) _BFGET_(r16, 4, 0) |
| #define SET16BITMAP32_SEL_BIT_POS12(r16,v) _BFSET_(r16, 4, 0,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS13(r32) _BFGET_(r32, 9, 5) |
| #define SET32BITMAP32_SEL_BIT_POS13(r32,v) _BFSET_(r32, 9, 5,v) |
| #define GET16BITMAP32_SEL_BIT_POS13(r16) _BFGET_(r16, 9, 5) |
| #define SET16BITMAP32_SEL_BIT_POS13(r16,v) _BFSET_(r16, 9, 5,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS14(r32) _BFGET_(r32,14,10) |
| #define SET32BITMAP32_SEL_BIT_POS14(r32,v) _BFSET_(r32,14,10,v) |
| #define GET16BITMAP32_SEL_BIT_POS14(r16) _BFGET_(r16,14,10) |
| #define SET16BITMAP32_SEL_BIT_POS14(r16,v) _BFSET_(r16,14,10,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS15(r32) _BFGET_(r32,19,15) |
| #define SET32BITMAP32_SEL_BIT_POS15(r32,v) _BFSET_(r32,19,15,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS16(r32) _BFGET_(r32,24,20) |
| #define SET32BITMAP32_SEL_BIT_POS16(r32,v) _BFSET_(r32,24,20,v) |
| #define GET16BITMAP32_SEL_BIT_POS16(r16) _BFGET_(r16, 8, 4) |
| #define SET16BITMAP32_SEL_BIT_POS16(r16,v) _BFSET_(r16, 8, 4,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS17(r32) _BFGET_(r32,29,25) |
| #define SET32BITMAP32_SEL_BIT_POS17(r32,v) _BFSET_(r32,29,25,v) |
| #define GET16BITMAP32_SEL_BIT_POS17(r16) _BFGET_(r16,13, 9) |
| #define SET16BITMAP32_SEL_BIT_POS17(r16,v) _BFSET_(r16,13, 9,v) |
| |
| #define w32BITMAP32_SEL2 {\ |
| UNSG32 uSEL_BIT_POS12 : 5;\ |
| UNSG32 uSEL_BIT_POS13 : 5;\ |
| UNSG32 uSEL_BIT_POS14 : 5;\ |
| UNSG32 uSEL_BIT_POS15 : 5;\ |
| UNSG32 uSEL_BIT_POS16 : 5;\ |
| UNSG32 uSEL_BIT_POS17 : 5;\ |
| UNSG32 RSVDx8_b30 : 2;\ |
| } |
| union { UNSG32 u32BITMAP32_SEL2; |
| struct w32BITMAP32_SEL2; |
| }; |
| #define GET32BITMAP32_SEL_BIT_POS18(r32) _BFGET_(r32, 4, 0) |
| #define SET32BITMAP32_SEL_BIT_POS18(r32,v) _BFSET_(r32, 4, 0,v) |
| #define GET16BITMAP32_SEL_BIT_POS18(r16) _BFGET_(r16, 4, 0) |
| #define SET16BITMAP32_SEL_BIT_POS18(r16,v) _BFSET_(r16, 4, 0,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS19(r32) _BFGET_(r32, 9, 5) |
| #define SET32BITMAP32_SEL_BIT_POS19(r32,v) _BFSET_(r32, 9, 5,v) |
| #define GET16BITMAP32_SEL_BIT_POS19(r16) _BFGET_(r16, 9, 5) |
| #define SET16BITMAP32_SEL_BIT_POS19(r16,v) _BFSET_(r16, 9, 5,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS20(r32) _BFGET_(r32,14,10) |
| #define SET32BITMAP32_SEL_BIT_POS20(r32,v) _BFSET_(r32,14,10,v) |
| #define GET16BITMAP32_SEL_BIT_POS20(r16) _BFGET_(r16,14,10) |
| #define SET16BITMAP32_SEL_BIT_POS20(r16,v) _BFSET_(r16,14,10,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS21(r32) _BFGET_(r32,19,15) |
| #define SET32BITMAP32_SEL_BIT_POS21(r32,v) _BFSET_(r32,19,15,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS22(r32) _BFGET_(r32,24,20) |
| #define SET32BITMAP32_SEL_BIT_POS22(r32,v) _BFSET_(r32,24,20,v) |
| #define GET16BITMAP32_SEL_BIT_POS22(r16) _BFGET_(r16, 8, 4) |
| #define SET16BITMAP32_SEL_BIT_POS22(r16,v) _BFSET_(r16, 8, 4,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS23(r32) _BFGET_(r32,29,25) |
| #define SET32BITMAP32_SEL_BIT_POS23(r32,v) _BFSET_(r32,29,25,v) |
| #define GET16BITMAP32_SEL_BIT_POS23(r16) _BFGET_(r16,13, 9) |
| #define SET16BITMAP32_SEL_BIT_POS23(r16,v) _BFSET_(r16,13, 9,v) |
| |
| #define w32BITMAP32_SEL3 {\ |
| UNSG32 uSEL_BIT_POS18 : 5;\ |
| UNSG32 uSEL_BIT_POS19 : 5;\ |
| UNSG32 uSEL_BIT_POS20 : 5;\ |
| UNSG32 uSEL_BIT_POS21 : 5;\ |
| UNSG32 uSEL_BIT_POS22 : 5;\ |
| UNSG32 uSEL_BIT_POS23 : 5;\ |
| UNSG32 RSVDxC_b30 : 2;\ |
| } |
| union { UNSG32 u32BITMAP32_SEL3; |
| struct w32BITMAP32_SEL3; |
| }; |
| #define GET32BITMAP32_SEL_BIT_POS24(r32) _BFGET_(r32, 4, 0) |
| #define SET32BITMAP32_SEL_BIT_POS24(r32,v) _BFSET_(r32, 4, 0,v) |
| #define GET16BITMAP32_SEL_BIT_POS24(r16) _BFGET_(r16, 4, 0) |
| #define SET16BITMAP32_SEL_BIT_POS24(r16,v) _BFSET_(r16, 4, 0,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS25(r32) _BFGET_(r32, 9, 5) |
| #define SET32BITMAP32_SEL_BIT_POS25(r32,v) _BFSET_(r32, 9, 5,v) |
| #define GET16BITMAP32_SEL_BIT_POS25(r16) _BFGET_(r16, 9, 5) |
| #define SET16BITMAP32_SEL_BIT_POS25(r16,v) _BFSET_(r16, 9, 5,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS26(r32) _BFGET_(r32,14,10) |
| #define SET32BITMAP32_SEL_BIT_POS26(r32,v) _BFSET_(r32,14,10,v) |
| #define GET16BITMAP32_SEL_BIT_POS26(r16) _BFGET_(r16,14,10) |
| #define SET16BITMAP32_SEL_BIT_POS26(r16,v) _BFSET_(r16,14,10,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS27(r32) _BFGET_(r32,19,15) |
| #define SET32BITMAP32_SEL_BIT_POS27(r32,v) _BFSET_(r32,19,15,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS28(r32) _BFGET_(r32,24,20) |
| #define SET32BITMAP32_SEL_BIT_POS28(r32,v) _BFSET_(r32,24,20,v) |
| #define GET16BITMAP32_SEL_BIT_POS28(r16) _BFGET_(r16, 8, 4) |
| #define SET16BITMAP32_SEL_BIT_POS28(r16,v) _BFSET_(r16, 8, 4,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS29(r32) _BFGET_(r32,29,25) |
| #define SET32BITMAP32_SEL_BIT_POS29(r32,v) _BFSET_(r32,29,25,v) |
| #define GET16BITMAP32_SEL_BIT_POS29(r16) _BFGET_(r16,13, 9) |
| #define SET16BITMAP32_SEL_BIT_POS29(r16,v) _BFSET_(r16,13, 9,v) |
| |
| #define w32BITMAP32_SEL4 {\ |
| UNSG32 uSEL_BIT_POS24 : 5;\ |
| UNSG32 uSEL_BIT_POS25 : 5;\ |
| UNSG32 uSEL_BIT_POS26 : 5;\ |
| UNSG32 uSEL_BIT_POS27 : 5;\ |
| UNSG32 uSEL_BIT_POS28 : 5;\ |
| UNSG32 uSEL_BIT_POS29 : 5;\ |
| UNSG32 RSVDx10_b30 : 2;\ |
| } |
| union { UNSG32 u32BITMAP32_SEL4; |
| struct w32BITMAP32_SEL4; |
| }; |
| #define GET32BITMAP32_SEL_BIT_POS30(r32) _BFGET_(r32, 4, 0) |
| #define SET32BITMAP32_SEL_BIT_POS30(r32,v) _BFSET_(r32, 4, 0,v) |
| #define GET16BITMAP32_SEL_BIT_POS30(r16) _BFGET_(r16, 4, 0) |
| #define SET16BITMAP32_SEL_BIT_POS30(r16,v) _BFSET_(r16, 4, 0,v) |
| |
| #define GET32BITMAP32_SEL_BIT_POS31(r32) _BFGET_(r32, 9, 5) |
| #define SET32BITMAP32_SEL_BIT_POS31(r32,v) _BFSET_(r32, 9, 5,v) |
| #define GET16BITMAP32_SEL_BIT_POS31(r16) _BFGET_(r16, 9, 5) |
| #define SET16BITMAP32_SEL_BIT_POS31(r16,v) _BFSET_(r16, 9, 5,v) |
| |
| #define w32BITMAP32_SEL5 {\ |
| UNSG32 uSEL_BIT_POS30 : 5;\ |
| UNSG32 uSEL_BIT_POS31 : 5;\ |
| UNSG32 RSVDx14_b10 : 22;\ |
| } |
| union { UNSG32 u32BITMAP32_SEL5; |
| struct w32BITMAP32_SEL5; |
| }; |
| /////////////////////////////////////////////////////////// |
| } SIE_BITMAP32; |
| |
| typedef union T32BITMAP32_SEL |
| { UNSG32 u32; |
| struct w32BITMAP32_SEL; |
| } T32BITMAP32_SEL; |
| typedef union T32BITMAP32_SEL1 |
| { UNSG32 u32; |
| struct w32BITMAP32_SEL1; |
| } T32BITMAP32_SEL1; |
| typedef union T32BITMAP32_SEL2 |
| { UNSG32 u32; |
| struct w32BITMAP32_SEL2; |
| } T32BITMAP32_SEL2; |
| typedef union T32BITMAP32_SEL3 |
| { UNSG32 u32; |
| struct w32BITMAP32_SEL3; |
| } T32BITMAP32_SEL3; |
| typedef union T32BITMAP32_SEL4 |
| { UNSG32 u32; |
| struct w32BITMAP32_SEL4; |
| } T32BITMAP32_SEL4; |
| typedef union T32BITMAP32_SEL5 |
| { UNSG32 u32; |
| struct w32BITMAP32_SEL5; |
| } T32BITMAP32_SEL5; |
| /////////////////////////////////////////////////////////// |
| |
| typedef union TBITMAP32_SEL |
| { UNSG32 u32[6]; |
| struct { |
| struct w32BITMAP32_SEL; |
| struct w32BITMAP32_SEL1; |
| struct w32BITMAP32_SEL2; |
| struct w32BITMAP32_SEL3; |
| struct w32BITMAP32_SEL4; |
| struct w32BITMAP32_SEL5; |
| }; |
| } TBITMAP32_SEL; |
| |
| /////////////////////////////////////////////////////////// |
| SIGN32 BITMAP32_drvrd(SIE_BITMAP32 *p, UNSG32 base, SIGN32 mem, SIGN32 tst); |
| SIGN32 BITMAP32_drvwr(SIE_BITMAP32 *p, UNSG32 base, SIGN32 mem, SIGN32 tst, UNSG32 *pcmd); |
| void BITMAP32_reset(SIE_BITMAP32 *p); |
| SIGN32 BITMAP32_cmp (SIE_BITMAP32 *p, SIE_BITMAP32 *pie, char *pfx, void *hLOG, SIGN32 mem, SIGN32 tst); |
| #define BITMAP32_check(p,pie,pfx,hLOG) BITMAP32_cmp(p,pie,pfx,(void*)(hLOG),0,0) |
| #define BITMAP32_print(p, pfx,hLOG) BITMAP32_cmp(p,0, pfx,(void*)(hLOG),0,0) |
| |
| #endif |
| ////// |
| /// ENDOFINTERFACE: BITMAP32 |
| //////////////////////////////////////////////////////////// |
| |
| ////// |
| /// |
| /// $INTERFACE BITMAP16 (4,4) |
| /// # # ---------------------------------------------------------- |
| /// @ 0x00000 SEL (P) |
| /// %unsigned 4 BIT_POS0 0x0 |
| /// %unsigned 4 BIT_POS1 0x1 |
| /// %unsigned 4 BIT_POS2 0x2 |
| /// %unsigned 4 BIT_POS3 0x3 |
| /// %unsigned 4 BIT_POS4 0x4 |
| /// %unsigned 4 BIT_POS5 0x5 |
| /// %unsigned 4 BIT_POS6 0x6 |
| /// %unsigned 4 BIT_POS7 0x7 |
| /// # 0x00004 SEL1 |
| /// %unsigned 4 BIT_POS8 0x8 |
| /// %unsigned 4 BIT_POS9 0x9 |
| /// %unsigned 4 BIT_POS10 0xA |
| /// %unsigned 4 BIT_POS11 0xB |
| /// %unsigned 4 BIT_POS12 0xC |
| /// %unsigned 4 BIT_POS13 0xD |
| /// %unsigned 4 BIT_POS14 0xE |
| /// %unsigned 4 BIT_POS15 0xF |
| /// ### |
| /// * Specifies mapping of new bit locations within 16 bit data from Read Client which need to be used to form pixels for Inverse Scan mode. |
| /// * Normal dHub data order: |
| /// * {Y3,Cr2,Y2,Cb2,Y1,Cr0,Y0,Cb0} First pixel in LSB |
| /// * Inverse Scan dHub data order: |
| /// * {Y3,Cr2,Y2,Cb2,Y1,Cr0,Y0,Cb0} First pixel in MSB |
| /// * Following different data orders can be generated to be presented to first UPS in the pipe. |
| /// ### |
| /// # # ---------------------------------------------------------- |
| /// $ENDOFINTERFACE # size: 8B, bits: 64b, padding: 0B |
| //////////////////////////////////////////////////////////// |
| #ifndef h_BITMAP16 |
| #define h_BITMAP16 (){} |
| |
| #define RA_BITMAP16_SEL 0x0000 |
| |
| #define BA_BITMAP16_SEL_BIT_POS0 0x0000 |
| #define B16BITMAP16_SEL_BIT_POS0 0x0000 |
| #define LSb32BITMAP16_SEL_BIT_POS0 0 |
| #define LSb16BITMAP16_SEL_BIT_POS0 0 |
| #define bBITMAP16_SEL_BIT_POS0 4 |
| #define MSK32BITMAP16_SEL_BIT_POS0 0x0000000F |
| |
| #define BA_BITMAP16_SEL_BIT_POS1 0x0000 |
| #define B16BITMAP16_SEL_BIT_POS1 0x0000 |
| #define LSb32BITMAP16_SEL_BIT_POS1 4 |
| #define LSb16BITMAP16_SEL_BIT_POS1 4 |
| #define bBITMAP16_SEL_BIT_POS1 4 |
| #define MSK32BITMAP16_SEL_BIT_POS1 0x000000F0 |
| |
| #define BA_BITMAP16_SEL_BIT_POS2 0x0001 |
| #define B16BITMAP16_SEL_BIT_POS2 0x0000 |
| #define LSb32BITMAP16_SEL_BIT_POS2 8 |
| #define LSb16BITMAP16_SEL_BIT_POS2 8 |
| #define bBITMAP16_SEL_BIT_POS2 4 |
| #define MSK32BITMAP16_SEL_BIT_POS2 0x00000F00 |
| |
| #define BA_BITMAP16_SEL_BIT_POS3 0x0001 |
| #define B16BITMAP16_SEL_BIT_POS3 0x0000 |
| #define LSb32BITMAP16_SEL_BIT_POS3 12 |
| #define LSb16BITMAP16_SEL_BIT_POS3 12 |
| #define bBITMAP16_SEL_BIT_POS3 4 |
| #define MSK32BITMAP16_SEL_BIT_POS3 0x0000F000 |
| |
| #define BA_BITMAP16_SEL_BIT_POS4 0x0002 |
| #define B16BITMAP16_SEL_BIT_POS4 0x0002 |
| #define LSb32BITMAP16_SEL_BIT_POS4 16 |
| #define LSb16BITMAP16_SEL_BIT_POS4 0 |
| #define bBITMAP16_SEL_BIT_POS4 4 |
| #define MSK32BITMAP16_SEL_BIT_POS4 0x000F0000 |
| |
| #define BA_BITMAP16_SEL_BIT_POS5 0x0002 |
| #define B16BITMAP16_SEL_BIT_POS5 0x0002 |
| #define LSb32BITMAP16_SEL_BIT_POS5 20 |
| #define LSb16BITMAP16_SEL_BIT_POS5 4 |
| #define bBITMAP16_SEL_BIT_POS5 4 |
| #define MSK32BITMAP16_SEL_BIT_POS5 0x00F00000 |
| |
| #define BA_BITMAP16_SEL_BIT_POS6 0x0003 |
| #define B16BITMAP16_SEL_BIT_POS6 0x0002 |
| #define LSb32BITMAP16_SEL_BIT_POS6 24 |
| #define LSb16BITMAP16_SEL_BIT_POS6 8 |
| #define bBITMAP16_SEL_BIT_POS6 4 |
| #define MSK32BITMAP16_SEL_BIT_POS6 0x0F000000 |
| |
| #define BA_BITMAP16_SEL_BIT_POS7 0x0003 |
| #define B16BITMAP16_SEL_BIT_POS7 0x0002 |
| #define LSb32BITMAP16_SEL_BIT_POS7 28 |
| #define LSb16BITMAP16_SEL_BIT_POS7 12 |
| #define bBITMAP16_SEL_BIT_POS7 4 |
| #define MSK32BITMAP16_SEL_BIT_POS7 0xF0000000 |
| |
| #define RA_BITMAP16_SEL1 0x0004 |
| |
| #define BA_BITMAP16_SEL_BIT_POS8 0x0004 |
| #define B16BITMAP16_SEL_BIT_POS8 0x0004 |
| #define LSb32BITMAP16_SEL_BIT_POS8 0 |
| #define LSb16BITMAP16_SEL_BIT_POS8 0 |
| #define bBITMAP16_SEL_BIT_POS8 4 |
| #define MSK32BITMAP16_SEL_BIT_POS8 0x0000000F |
| |
| #define BA_BITMAP16_SEL_BIT_POS9 0x0004 |
| #define B16BITMAP16_SEL_BIT_POS9 0x0004 |
| #define LSb32BITMAP16_SEL_BIT_POS9 4 |
| #define LSb16BITMAP16_SEL_BIT_POS9 4 |
| #define bBITMAP16_SEL_BIT_POS9 4 |
| #define MSK32BITMAP16_SEL_BIT_POS9 0x000000F0 |
| |
| #define BA_BITMAP16_SEL_BIT_POS10 0x0005 |
| #define B16BITMAP16_SEL_BIT_POS10 0x0004 |
| #define LSb32BITMAP16_SEL_BIT_POS10 8 |
| #define LSb16BITMAP16_SEL_BIT_POS10 8 |
| #define bBITMAP16_SEL_BIT_POS10 4 |
| #define MSK32BITMAP16_SEL_BIT_POS10 0x00000F00 |
| |
| #define BA_BITMAP16_SEL_BIT_POS11 0x0005 |
| #define B16BITMAP16_SEL_BIT_POS11 0x0004 |
| #define LSb32BITMAP16_SEL_BIT_POS11 12 |
| #define LSb16BITMAP16_SEL_BIT_POS11 12 |
| #define bBITMAP16_SEL_BIT_POS11 4 |
| #define MSK32BITMAP16_SEL_BIT_POS11 0x0000F000 |
| |
| #define BA_BITMAP16_SEL_BIT_POS12 0x0006 |
| #define B16BITMAP16_SEL_BIT_POS12 0x0006 |
| #define LSb32BITMAP16_SEL_BIT_POS12 16 |
| #define LSb16BITMAP16_SEL_BIT_POS12 0 |
| #define bBITMAP16_SEL_BIT_POS12 4 |
| #define MSK32BITMAP16_SEL_BIT_POS12 0x000F0000 |
| |
| #define BA_BITMAP16_SEL_BIT_POS13 0x0006 |
| #define B16BITMAP16_SEL_BIT_POS13 0x0006 |
| #define LSb32BITMAP16_SEL_BIT_POS13 20 |
| #define LSb16BITMAP16_SEL_BIT_POS13 4 |
| #define bBITMAP16_SEL_BIT_POS13 4 |
| #define MSK32BITMAP16_SEL_BIT_POS13 0x00F00000 |
| |
| #define BA_BITMAP16_SEL_BIT_POS14 0x0007 |
| #define B16BITMAP16_SEL_BIT_POS14 0x0006 |
| #define LSb32BITMAP16_SEL_BIT_POS14 24 |
| #define LSb16BITMAP16_SEL_BIT_POS14 8 |
| #define bBITMAP16_SEL_BIT_POS14 4 |
| #define MSK32BITMAP16_SEL_BIT_POS14 0x0F000000 |
| |
| #define BA_BITMAP16_SEL_BIT_POS15 0x0007 |
| #define B16BITMAP16_SEL_BIT_POS15 0x0006 |
| #define LSb32BITMAP16_SEL_BIT_POS15 28 |
| #define LSb16BITMAP16_SEL_BIT_POS15 12 |
| #define bBITMAP16_SEL_BIT_POS15 4 |
| #define MSK32BITMAP16_SEL_BIT_POS15 0xF0000000 |
| /////////////////////////////////////////////////////////// |
| |
| typedef struct SIE_BITMAP16 { |
| /////////////////////////////////////////////////////////// |
| #define GET32BITMAP16_SEL_BIT_POS0(r32) _BFGET_(r32, 3, 0) |
| #define SET32BITMAP16_SEL_BIT_POS0(r32,v) _BFSET_(r32, 3, 0,v) |
| #define GET16BITMAP16_SEL_BIT_POS0(r16) _BFGET_(r16, 3, 0) |
| #define SET16BITMAP16_SEL_BIT_POS0(r16,v) _BFSET_(r16, 3, 0,v) |
| |
| #define GET32BITMAP16_SEL_BIT_POS1(r32) _BFGET_(r32, 7, 4) |
| #define SET32BITMAP16_SEL_BIT_POS1(r32,v) _BFSET_(r32, 7, 4,v) |
| #define GET16BITMAP16_SEL_BIT_POS1(r16) _BFGET_(r16, 7, 4) |
| #define SET16BITMAP16_SEL_BIT_POS1(r16,v) _BFSET_(r16, 7, 4,v) |
| |
| #define GET32BITMAP16_SEL_BIT_POS2(r32) _BFGET_(r32,11, 8) |
| #define SET32BITMAP16_SEL_BIT_POS2(r32,v) _BFSET_(r32,11, 8,v) |
| #define GET16BITMAP16_SEL_BIT_POS2(r16) _BFGET_(r16,11, 8) |
| #define SET16BITMAP16_SEL_BIT_POS2(r16,v) _BFSET_(r16,11, 8,v) |
| |
| #define GET32BITMAP16_SEL_BIT_POS3(r32) _BFGET_(r32,15,12) |
| #define SET32BITMAP16_SEL_BIT_POS3(r32,v) _BFSET_(r32,15,12,v) |
| #define GET16BITMAP16_SEL_BIT_POS3(r16) _BFGET_(r16,15,12) |
| #define SET16BITMAP16_SEL_BIT_POS3(r16,v) _BFSET_(r16,15,12,v) |
| |
| #define GET32BITMAP16_SEL_BIT_POS4(r32) _BFGET_(r32,19,16) |
| #define SET32BITMAP16_SEL_BIT_POS4(r32,v) _BFSET_(r32,19,16,v) |
| #define GET16BITMAP16_SEL_BIT_POS4(r16) _BFGET_(r16, 3, 0) |
| #define SET16BITMAP16_SEL_BIT_POS4(r16,v) _BFSET_(r16, 3, 0,v) |
| |
| #define GET32BITMAP16_SEL_BIT_POS5(r32) _BFGET_(r32,23,20) |
| #define SET32BITMAP16_SEL_BIT_POS5(r32,v) _BFSET_(r32,23,20,v) |
| #define GET16BITMAP16_SEL_BIT_POS5(r16) _BFGET_(r16, 7, 4) |
| #define SET16BITMAP16_SEL_BIT_POS5(r16,v) _BFSET_(r16, 7, 4,v) |
| |
| #define GET32BITMAP16_SEL_BIT_POS6(r32) _BFGET_(r32,27,24) |
| #define SET32BITMAP16_SEL_BIT_POS6(r32,v) _BFSET_(r32,27,24,v) |
| #define GET16BITMAP16_SEL_BIT_POS6(r16) _BFGET_(r16,11, 8) |
| #define SET16BITMAP16_SEL_BIT_POS6(r16,v) _BFSET_(r16,11, 8,v) |
| |
| #define GET32BITMAP16_SEL_BIT_POS7(r32) _BFGET_(r32,31,28) |
| #define SET32BITMAP16_SEL_BIT_POS7(r32,v) _BFSET_(r32,31,28,v) |
| #define GET16BITMAP16_SEL_BIT_POS7(r16) _BFGET_(r16,15,12) |
| #define SET16BITMAP16_SEL_BIT_POS7(r16,v) _BFSET_(r16,15,12,v) |
| |
| #define w32BITMAP16_SEL {\ |
| UNSG32 uSEL_BIT_POS0 : 4;\ |
| UNSG32 uSEL_BIT_POS1 : 4;\ |
| UNSG32 uSEL_BIT_POS2 : 4;\ |
| UNSG32 uSEL_BIT_POS3 : 4;\ |
| UNSG32 uSEL_BIT_POS4 : 4;\ |
| UNSG32 uSEL_BIT_POS5 : 4;\ |
| UNSG32 uSEL_BIT_POS6 : 4;\ |
| UNSG32 uSEL_BIT_POS7 : 4;\ |
| } |
| union { UNSG32 u32BITMAP16_SEL; |
| struct w32BITMAP16_SEL; |
| }; |
| #define GET32BITMAP16_SEL_BIT_POS8(r32) _BFGET_(r32, 3, 0) |
| #define SET32BITMAP16_SEL_BIT_POS8(r32,v) _BFSET_(r32, 3, 0,v) |
| #define GET16BITMAP16_SEL_BIT_POS8(r16) _BFGET_(r16, 3, 0) |
| #define SET16BITMAP16_SEL_BIT_POS8(r16,v) _BFSET_(r16, 3, 0,v) |
| |
| #define GET32BITMAP16_SEL_BIT_POS9(r32) _BFGET_(r32, 7, 4) |
| #define SET32BITMAP16_SEL_BIT_POS9(r32,v) _BFSET_(r32, 7, 4,v) |
| #define GET16BITMAP16_SEL_BIT_POS9(r16) _BFGET_(r16, 7, 4) |
| #define SET16BITMAP16_SEL_BIT_POS9(r16,v) _BFSET_(r16, 7, 4,v) |
| |
| #define GET32BITMAP16_SEL_BIT_POS10(r32) _BFGET_(r32,11, 8) |
| #define SET32BITMAP16_SEL_BIT_POS10(r32,v) _BFSET_(r32,11, 8,v) |
| #define GET16BITMAP16_SEL_BIT_POS10(r16) _BFGET_(r16,11, 8) |
| #define SET16BITMAP16_SEL_BIT_POS10(r16,v) _BFSET_(r16,11, 8,v) |
| |
| #define GET32BITMAP16_SEL_BIT_POS11(r32) _BFGET_(r32,15,12) |
| #define SET32BITMAP16_SEL_BIT_POS11(r32,v) _BFSET_(r32,15,12,v) |
| #define GET16BITMAP16_SEL_BIT_POS11(r16) _BFGET_(r16,15,12) |
| #define SET16BITMAP16_SEL_BIT_POS11(r16,v) _BFSET_(r16,15,12,v) |
| |
| #define GET32BITMAP16_SEL_BIT_POS12(r32) _BFGET_(r32,19,16) |
| #define SET32BITMAP16_SEL_BIT_POS12(r32,v) _BFSET_(r32,19,16,v) |
| #define GET16BITMAP16_SEL_BIT_POS12(r16) _BFGET_(r16, 3, 0) |
| #define SET16BITMAP16_SEL_BIT_POS12(r16,v) _BFSET_(r16, 3, 0,v) |
| |
| #define GET32BITMAP16_SEL_BIT_POS13(r32) _BFGET_(r32,23,20) |
| #define SET32BITMAP16_SEL_BIT_POS13(r32,v) _BFSET_(r32,23,20,v) |
| #define GET16BITMAP16_SEL_BIT_POS13(r16) _BFGET_(r16, 7, 4) |
| #define SET16BITMAP16_SEL_BIT_POS13(r16,v) _BFSET_(r16, 7, 4,v) |
| |
| #define GET32BITMAP16_SEL_BIT_POS14(r32) _BFGET_(r32,27,24) |
| #define SET32BITMAP16_SEL_BIT_POS14(r32,v) _BFSET_(r32,27,24,v) |
| #define GET16BITMAP16_SEL_BIT_POS14(r16) _BFGET_(r16,11, 8) |
| #define SET16BITMAP16_SEL_BIT_POS14(r16,v) _BFSET_(r16,11, 8,v) |
| |
| #define GET32BITMAP16_SEL_BIT_POS15(r32) _BFGET_(r32,31,28) |
| #define SET32BITMAP16_SEL_BIT_POS15(r32,v) _BFSET_(r32,31,28,v) |
| #define GET16BITMAP16_SEL_BIT_POS15(r16) _BFGET_(r16,15,12) |
| #define SET16BITMAP16_SEL_BIT_POS15(r16,v) _BFSET_(r16,15,12,v) |
| |
| #define w32BITMAP16_SEL1 {\ |
| UNSG32 uSEL_BIT_POS8 : 4;\ |
| UNSG32 uSEL_BIT_POS9 : 4;\ |
| UNSG32 uSEL_BIT_POS10 : 4;\ |
| UNSG32 uSEL_BIT_POS11 : 4;\ |
| UNSG32 uSEL_BIT_POS12 : 4;\ |
| UNSG32 uSEL_BIT_POS13 : 4;\ |
| UNSG32 uSEL_BIT_POS14 : 4;\ |
| UNSG32 uSEL_BIT_POS15 : 4;\ |
| } |
| union { UNSG32 u32BITMAP16_SEL1; |
| struct w32BITMAP16_SEL1; |
| }; |
| /////////////////////////////////////////////////////////// |
| } SIE_BITMAP16; |
| |
| typedef union T32BITMAP16_SEL |
| { UNSG32 u32; |
| struct w32BITMAP16_SEL; |
| } T32BITMAP16_SEL; |
| typedef union T32BITMAP16_SEL1 |
| { UNSG32 u32; |
| struct w32BITMAP16_SEL1; |
| } T32BITMAP16_SEL1; |
| /////////////////////////////////////////////////////////// |
| |
| typedef union TBITMAP16_SEL |
| { UNSG32 u32[2]; |
| struct { |
| struct w32BITMAP16_SEL; |
| struct w32BITMAP16_SEL1; |
| }; |
| } TBITMAP16_SEL; |
| |
| /////////////////////////////////////////////////////////// |
| SIGN32 BITMAP16_drvrd(SIE_BITMAP16 *p, UNSG32 base, SIGN32 mem, SIGN32 tst); |
| SIGN32 BITMAP16_drvwr(SIE_BITMAP16 *p, UNSG32 base, SIGN32 mem, SIGN32 tst, UNSG32 *pcmd); |
| void BITMAP16_reset(SIE_BITMAP16 *p); |
| SIGN32 BITMAP16_cmp (SIE_BITMAP16 *p, SIE_BITMAP16 *pie, char *pfx, void *hLOG, SIGN32 mem, SIGN32 tst); |
| #define BITMAP16_check(p,pie,pfx,hLOG) BITMAP16_cmp(p,pie,pfx,(void*)(hLOG),0,0) |
| #define BITMAP16_print(p, pfx,hLOG) BITMAP16_cmp(p,0, pfx,(void*)(hLOG),0,0) |
| |
| #endif |
| ////// |
| /// ENDOFINTERFACE: BITMAP16 |
| //////////////////////////////////////////////////////////// |
| |
| ////// |
| /// |
| /// $INTERFACE BITMAP12 (4,4) |
| /// # # ---------------------------------------------------------- |
| /// @ 0x00000 SEL (P) |
| /// %unsigned 4 BIT_POS0 0x0 |
| /// %unsigned 4 BIT_POS1 0x1 |
| /// %unsigned 4 BIT_POS2 0x2 |
| /// %unsigned 4 BIT_POS3 0x3 |
| /// %unsigned 4 BIT_POS4 0x4 |
| /// %unsigned 4 BIT_POS5 0x5 |
| /// %unsigned 4 BIT_POS6 0x6 |
| /// %unsigned 4 BIT_POS7 0x7 |
| /// # 0x00004 SEL1 |
| /// %unsigned 4 BIT_POS8 0x8 |
| /// %unsigned 4 BIT_POS9 0x9 |
| /// %unsigned 4 BIT_POS10 0xA |
| /// %unsigned 4 BIT_POS11 0xB |
| /// ### |
| /// * Specifies mapping of new bit locations within 12 bit data from Read Client which need to be used to form pixels for Inverse Scan mode. |
| /// ### |
| /// %% 16 # Stuffing bits... |
| /// # # ---------------------------------------------------------- |
| /// $ENDOFINTERFACE # size: 8B, bits: 48b, padding: 0B |
| //////////////////////////////////////////////////////////// |
| #ifndef h_BITMAP12 |
| #define h_BITMAP12 (){} |
| |
| #define RA_BITMAP12_SEL 0x0000 |
| |
| #define BA_BITMAP12_SEL_BIT_POS0 0x0000 |
| #define B16BITMAP12_SEL_BIT_POS0 0x0000 |
| #define LSb32BITMAP12_SEL_BIT_POS0 0 |
| #define LSb16BITMAP12_SEL_BIT_POS0 0 |
| #define bBITMAP12_SEL_BIT_POS0 4 |
| #define MSK32BITMAP12_SEL_BIT_POS0 0x0000000F |
| |
| #define BA_BITMAP12_SEL_BIT_POS1 0x0000 |
| #define B16BITMAP12_SEL_BIT_POS1 0x0000 |
| #define LSb32BITMAP12_SEL_BIT_POS1 4 |
| #define LSb16BITMAP12_SEL_BIT_POS1 4 |
| #define bBITMAP12_SEL_BIT_POS1 4 |
| #define MSK32BITMAP12_SEL_BIT_POS1 0x000000F0 |
| |
| #define BA_BITMAP12_SEL_BIT_POS2 0x0001 |
| #define B16BITMAP12_SEL_BIT_POS2 0x0000 |
| #define LSb32BITMAP12_SEL_BIT_POS2 8 |
| #define LSb16BITMAP12_SEL_BIT_POS2 8 |
| #define bBITMAP12_SEL_BIT_POS2 4 |
| #define MSK32BITMAP12_SEL_BIT_POS2 0x00000F00 |
| |
| #define BA_BITMAP12_SEL_BIT_POS3 0x0001 |
| #define B16BITMAP12_SEL_BIT_POS3 0x0000 |
| #define LSb32BITMAP12_SEL_BIT_POS3 12 |
| #define LSb16BITMAP12_SEL_BIT_POS3 12 |
| #define bBITMAP12_SEL_BIT_POS3 4 |
| #define MSK32BITMAP12_SEL_BIT_POS3 0x0000F000 |
| |
| #define BA_BITMAP12_SEL_BIT_POS4 0x0002 |
| #define B16BITMAP12_SEL_BIT_POS4 0x0002 |
| #define LSb32BITMAP12_SEL_BIT_POS4 16 |
| #define LSb16BITMAP12_SEL_BIT_POS4 0 |
| #define bBITMAP12_SEL_BIT_POS4 4 |
| #define MSK32BITMAP12_SEL_BIT_POS4 0x000F0000 |
| |
| #define BA_BITMAP12_SEL_BIT_POS5 0x0002 |
| #define B16BITMAP12_SEL_BIT_POS5 0x0002 |
| #define LSb32BITMAP12_SEL_BIT_POS5 20 |
| #define LSb16BITMAP12_SEL_BIT_POS5 4 |
| #define bBITMAP12_SEL_BIT_POS5 4 |
| #define MSK32BITMAP12_SEL_BIT_POS5 0x00F00000 |
| |
| #define BA_BITMAP12_SEL_BIT_POS6 0x0003 |
| #define B16BITMAP12_SEL_BIT_POS6 0x0002 |
| #define LSb32BITMAP12_SEL_BIT_POS6 24 |
| #define LSb16BITMAP12_SEL_BIT_POS6 8 |
| #define bBITMAP12_SEL_BIT_POS6 4 |
| #define MSK32BITMAP12_SEL_BIT_POS6 0x0F000000 |
| |
| #define BA_BITMAP12_SEL_BIT_POS7 0x0003 |
| #define B16BITMAP12_SEL_BIT_POS7 0x0002 |
| #define LSb32BITMAP12_SEL_BIT_POS7 28 |
| #define LSb16BITMAP12_SEL_BIT_POS7 12 |
| #define bBITMAP12_SEL_BIT_POS7 4 |
| #define MSK32BITMAP12_SEL_BIT_POS7 0xF0000000 |
| |
| #define RA_BITMAP12_SEL1 0x0004 |
| |
| #define BA_BITMAP12_SEL_BIT_POS8 0x0004 |
| #define B16BITMAP12_SEL_BIT_POS8 0x0004 |
| #define LSb32BITMAP12_SEL_BIT_POS8 0 |
| #define LSb16BITMAP12_SEL_BIT_POS8 0 |
| #define bBITMAP12_SEL_BIT_POS8 4 |
| #define MSK32BITMAP12_SEL_BIT_POS8 0x0000000F |
| |
| #define BA_BITMAP12_SEL_BIT_POS9 0x0004 |
| #define B16BITMAP12_SEL_BIT_POS9 0x0004 |
| #define LSb32BITMAP12_SEL_BIT_POS9 4 |
| #define LSb16BITMAP12_SEL_BIT_POS9 4 |
| #define bBITMAP12_SEL_BIT_POS9 4 |
| #define MSK32BITMAP12_SEL_BIT_POS9 0x000000F0 |
| |
| #define BA_BITMAP12_SEL_BIT_POS10 0x0005 |
| #define B16BITMAP12_SEL_BIT_POS10 0x0004 |
| #define LSb32BITMAP12_SEL_BIT_POS10 8 |
| #define LSb16BITMAP12_SEL_BIT_POS10 8 |
| #define bBITMAP12_SEL_BIT_POS10 4 |
| #define MSK32BITMAP12_SEL_BIT_POS10 0x00000F00 |
| |
| #define BA_BITMAP12_SEL_BIT_POS11 0x0005 |
| #define B16BITMAP12_SEL_BIT_POS11 0x0004 |
| #define LSb32BITMAP12_SEL_BIT_POS11 12 |
| #define LSb16BITMAP12_SEL_BIT_POS11 12 |
| #define bBITMAP12_SEL_BIT_POS11 4 |
| #define MSK32BITMAP12_SEL_BIT_POS11 0x0000F000 |
| /////////////////////////////////////////////////////////// |
| |
| typedef struct SIE_BITMAP12 { |
| /////////////////////////////////////////////////////////// |
| #define GET32BITMAP12_SEL_BIT_POS0(r32) _BFGET_(r32, 3, 0) |
| #define SET32BITMAP12_SEL_BIT_POS0(r32,v) _BFSET_(r32, 3, 0,v) |
| #define GET16BITMAP12_SEL_BIT_POS0(r16) _BFGET_(r16, 3, 0) |
| #define SET16BITMAP12_SEL_BIT_POS0(r16,v) _BFSET_(r16, 3, 0,v) |
| |
| #define GET32BITMAP12_SEL_BIT_POS1(r32) _BFGET_(r32, 7, 4) |
| #define SET32BITMAP12_SEL_BIT_POS1(r32,v) _BFSET_(r32, 7, 4,v) |
| #define GET16BITMAP12_SEL_BIT_POS1(r16) _BFGET_(r16, 7, 4) |
| #define SET16BITMAP12_SEL_BIT_POS1(r16,v) _BFSET_(r16, 7, 4,v) |
| |
| #define GET32BITMAP12_SEL_BIT_POS2(r32) _BFGET_(r32,11, 8) |
| #define SET32BITMAP12_SEL_BIT_POS2(r32,v) _BFSET_(r32,11, 8,v) |
| #define GET16BITMAP12_SEL_BIT_POS2(r16) _BFGET_(r16,11, 8) |
| #define SET16BITMAP12_SEL_BIT_POS2(r16,v) _BFSET_(r16,11, 8,v) |
| |
| #define GET32BITMAP12_SEL_BIT_POS3(r32) _BFGET_(r32,15,12) |
| #define SET32BITMAP12_SEL_BIT_POS3(r32,v) _BFSET_(r32,15,12,v) |
| #define GET16BITMAP12_SEL_BIT_POS3(r16) _BFGET_(r16,15,12) |
| #define SET16BITMAP12_SEL_BIT_POS3(r16,v) _BFSET_(r16,15,12,v) |
| |
| #define GET32BITMAP12_SEL_BIT_POS4(r32) _BFGET_(r32,19,16) |
| #define SET32BITMAP12_SEL_BIT_POS4(r32,v) _BFSET_(r32,19,16,v) |
| #define GET16BITMAP12_SEL_BIT_POS4(r16) _BFGET_(r16, 3, 0) |
| #define SET16BITMAP12_SEL_BIT_POS4(r16,v) _BFSET_(r16, 3, 0,v) |
| |
| #define GET32BITMAP12_SEL_BIT_POS5(r32) _BFGET_(r32,23,20) |
| #define SET32BITMAP12_SEL_BIT_POS5(r32,v) _BFSET_(r32,23,20,v) |
| #define GET16BITMAP12_SEL_BIT_POS5(r16) _BFGET_(r16, 7, 4) |
| #define SET16BITMAP12_SEL_BIT_POS5(r16,v) _BFSET_(r16, 7, 4,v) |
| |
| #define GET32BITMAP12_SEL_BIT_POS6(r32) _BFGET_(r32,27,24) |
| #define SET32BITMAP12_SEL_BIT_POS6(r32,v) _BFSET_(r32,27,24,v) |
| #define GET16BITMAP12_SEL_BIT_POS6(r16) _BFGET_(r16,11, 8) |
| #define SET16BITMAP12_SEL_BIT_POS6(r16,v) _BFSET_(r16,11, 8,v) |
| |
| #define GET32BITMAP12_SEL_BIT_POS7(r32) _BFGET_(r32,31,28) |
| #define SET32BITMAP12_SEL_BIT_POS7(r32,v) _BFSET_(r32,31,28,v) |
| #define GET16BITMAP12_SEL_BIT_POS7(r16) _BFGET_(r16,15,12) |
| #define SET16BITMAP12_SEL_BIT_POS7(r16,v) _BFSET_(r16,15,12,v) |
| |
| #define w32BITMAP12_SEL {\ |
| UNSG32 uSEL_BIT_POS0 : 4;\ |
| UNSG32 uSEL_BIT_POS1 : 4;\ |
| UNSG32 uSEL_BIT_POS2 : 4;\ |
| UNSG32 uSEL_BIT_POS3 : 4;\ |
| UNSG32 uSEL_BIT_POS4 : 4;\ |
| UNSG32 uSEL_BIT_POS5 : 4;\ |
| UNSG32 uSEL_BIT_POS6 : 4;\ |
| UNSG32 uSEL_BIT_POS7 : 4;\ |
| } |
| union { UNSG32 u32BITMAP12_SEL; |
| struct w32BITMAP12_SEL; |
| }; |
| #define GET32BITMAP12_SEL_BIT_POS8(r32) _BFGET_(r32, 3, 0) |
| #define SET32BITMAP12_SEL_BIT_POS8(r32,v) _BFSET_(r32, 3, 0,v) |
| #define GET16BITMAP12_SEL_BIT_POS8(r16) _BFGET_(r16, 3, 0) |
| #define SET16BITMAP12_SEL_BIT_POS8(r16,v) _BFSET_(r16, 3, 0,v) |
| |
| #define GET32BITMAP12_SEL_BIT_POS9(r32) _BFGET_(r32, 7, 4) |
| #define SET32BITMAP12_SEL_BIT_POS9(r32,v) _BFSET_(r32, 7, 4,v) |
| #define GET16BITMAP12_SEL_BIT_POS9(r16) _BFGET_(r16, 7, 4) |
| #define SET16BITMAP12_SEL_BIT_POS9(r16,v) _BFSET_(r16, 7, 4,v) |
| |
| #define GET32BITMAP12_SEL_BIT_POS10(r32) _BFGET_(r32,11, 8) |
| #define SET32BITMAP12_SEL_BIT_POS10(r32,v) _BFSET_(r32,11, 8,v) |
| #define GET16BITMAP12_SEL_BIT_POS10(r16) _BFGET_(r16,11, 8) |
| #define SET16BITMAP12_SEL_BIT_POS10(r16,v) _BFSET_(r16,11, 8,v) |
| |
| #define GET32BITMAP12_SEL_BIT_POS11(r32) _BFGET_(r32,15,12) |
| #define SET32BITMAP12_SEL_BIT_POS11(r32,v) _BFSET_(r32,15,12,v) |
| #define GET16BITMAP12_SEL_BIT_POS11(r16) _BFGET_(r16,15,12) |
| #define SET16BITMAP12_SEL_BIT_POS11(r16,v) _BFSET_(r16,15,12,v) |
| |
| #define w32BITMAP12_SEL1 {\ |
| UNSG32 uSEL_BIT_POS8 : 4;\ |
| UNSG32 uSEL_BIT_POS9 : 4;\ |
| UNSG32 uSEL_BIT_POS10 : 4;\ |
| UNSG32 uSEL_BIT_POS11 : 4;\ |
| UNSG32 RSVDx4_b16 : 16;\ |
| } |
| union { UNSG32 u32BITMAP12_SEL1; |
| struct w32BITMAP12_SEL1; |
| }; |
| /////////////////////////////////////////////////////////// |
| } SIE_BITMAP12; |
| |
| typedef union T32BITMAP12_SEL |
| { UNSG32 u32; |
| struct w32BITMAP12_SEL; |
| } T32BITMAP12_SEL; |
| typedef union T32BITMAP12_SEL1 |
| { UNSG32 u32; |
| struct w32BITMAP12_SEL1; |
| } T32BITMAP12_SEL1; |
| /////////////////////////////////////////////////////////// |
| |
| typedef union TBITMAP12_SEL |
| { UNSG32 u32[2]; |
| struct { |
| struct w32BITMAP12_SEL; |
| struct w32BITMAP12_SEL1; |
| }; |
| } TBITMAP12_SEL; |
| |
| /////////////////////////////////////////////////////////// |
| SIGN32 BITMAP12_drvrd(SIE_BITMAP12 *p, UNSG32 base, SIGN32 mem, SIGN32 tst); |
| SIGN32 BITMAP12_drvwr(SIE_BITMAP12 *p, UNSG32 base, SIGN32 mem, SIGN32 tst, UNSG32 *pcmd); |
| void BITMAP12_reset(SIE_BITMAP12 *p); |
| SIGN32 BITMAP12_cmp (SIE_BITMAP12 *p, SIE_BITMAP12 *pie, char *pfx, void *hLOG, SIGN32 mem, SIGN32 tst); |
| #define BITMAP12_check(p,pie,pfx,hLOG) BITMAP12_cmp(p,pie,pfx,(void*)(hLOG),0,0) |
| #define BITMAP12_print(p, pfx,hLOG) BITMAP12_cmp(p,0, pfx,(void*)(hLOG),0,0) |
| |
| #endif |
| ////// |
| /// ENDOFINTERFACE: BITMAP12 |
| //////////////////////////////////////////////////////////// |
| |
| ////// |
| /// |
| /// $INTERFACE ReadClient biu (4,4) |
| /// # # ---------------------------------------------------------- |
| /// @ 0x00000 Rd (P-) |
| /// %unsigned 1 start 0x0 |
| /// ### |
| /// * Start bit for the respective clients. |
| /// * 0 : No effect on hardware. |
| /// * 1 : start the client. |
| /// * The write 1 to this register is used to kick the hardware. |
| /// ### |
| /// %unsigned 1 clear 0x0 |
| /// ### |
| /// * 0 : Don't clear, normal state. |
| /// * 1 : Clear the asynchronous FIFO between the respective client and dHub. |
| /// ### |
| /// %% 30 # Stuffing bits... |
| /// @ 0x00004 Word (P) |
| /// %unsigned 32 tot 0x64 |
| /// ### |
| /// * Specifies the total number of 128-bit words that have to be fetched from DDR for read Client. Should be programmed as: |
| /// * ceil( ohres*ovres*16 / 128 ) |
| /// * Note : In case of resolution which is not integer multiple of 128, word total should be programmed as follows : |
| /// * For eg if ohres = 116, then (ohres*24/128) = 21.75. Then word total should be (22*ovres) |
| /// ### |
| /// @ 0x00008 NonStdRes (P) |
| /// %unsigned 1 enable 0x0 |
| /// ### |
| /// * Enable for Read Client when resolution is not integer multiple of 16 |
| /// ### |
| /// %unsigned 13 pixlineTot 0x64 |
| /// ### |
| /// * Total number of pixels in a line (for Read Client) |
| /// ### |
| /// %unsigned 4 flushCnt 0x5 |
| /// ### |
| /// * Counter to determine the ready status of Read Client after end of line (only used when NonStdRes_enable = 1) |
| /// ### |
| /// %% 14 # Stuffing bits... |
| /// @ 0x0000C pack (P) |
| /// %unsigned 4 Sel 0x0 |
| /// ### |
| /// * PackSel for Read Client (For NNOB = 6) |
| /// * [0000] : 16 bit packing |
| /// * [0001] : 18 bit packing |
| /// * [0010] : 20 bit packing |
| /// * [0011] : 24 bit packing |
| /// * [0100] : 30 bit packing |
| /// * [0101] : 32 bit packing |
| /// * [0110] : 36 bit packing |
| /// * [0111] : 36 bit packing |
| /// * [1000] : 36 bit packing |
| /// ### |
| /// %% 28 # Stuffing bits... |
| /// # # ---------------------------------------------------------- |
| /// $ENDOFINTERFACE # size: 16B, bits: 56b, padding: 0B |
| //////////////////////////////////////////////////////////// |
| #ifndef h_ReadClient |
| #define h_ReadClient (){} |
| |
| #define RA_ReadClient_Rd 0x0000 |
| |
| #define BA_ReadClient_Rd_start 0x0000 |
| #define B16ReadClient_Rd_start 0x0000 |
| #define LSb32ReadClient_Rd_start 0 |
| #define LSb16ReadClient_Rd_start 0 |
| #define bReadClient_Rd_start 1 |
| #define MSK32ReadClient_Rd_start 0x00000001 |
| |
| #define BA_ReadClient_Rd_clear 0x0000 |
| #define B16ReadClient_Rd_clear 0x0000 |
| #define LSb32ReadClient_Rd_clear 1 |
| #define LSb16ReadClient_Rd_clear 1 |
| #define bReadClient_Rd_clear 1 |
| #define MSK32ReadClient_Rd_clear 0x00000002 |
| /////////////////////////////////////////////////////////// |
| #define RA_ReadClient_Word 0x0004 |
| |
| #define BA_ReadClient_Word_tot 0x0004 |
| #define B16ReadClient_Word_tot 0x0004 |
| #define LSb32ReadClient_Word_tot 0 |
| #define LSb16ReadClient_Word_tot 0 |
| #define bReadClient_Word_tot 32 |
| #define MSK32ReadClient_Word_tot 0xFFFFFFFF |
| /////////////////////////////////////////////////////////// |
| #define RA_ReadClient_NonStdRes 0x0008 |
| |
| #define BA_ReadClient_NonStdRes_enable 0x0008 |
| #define B16ReadClient_NonStdRes_enable 0x0008 |
| #define LSb32ReadClient_NonStdRes_enable 0 |
| #define LSb16ReadClient_NonStdRes_enable 0 |
| #define bReadClient_NonStdRes_enable 1 |
| #define MSK32ReadClient_NonStdRes_enable 0x00000001 |
| |
| #define BA_ReadClient_NonStdRes_pixlineTot 0x0008 |
| #define B16ReadClient_NonStdRes_pixlineTot 0x0008 |
| #define LSb32ReadClient_NonStdRes_pixlineTot 1 |
| #define LSb16ReadClient_NonStdRes_pixlineTot 1 |
| #define bReadClient_NonStdRes_pixlineTot 13 |
| #define MSK32ReadClient_NonStdRes_pixlineTot 0x00003FFE |
| |
| #define BA_ReadClient_NonStdRes_flushCnt 0x0009 |
| #define B16ReadClient_NonStdRes_flushCnt 0x0008 |
| #define LSb32ReadClient_NonStdRes_flushCnt 14 |
| #define LSb16ReadClient_NonStdRes_flushCnt 14 |
| #define bReadClient_NonStdRes_flushCnt 4 |
| #define MSK32ReadClient_NonStdRes_flushCnt 0x0003C000 |
| /////////////////////////////////////////////////////////// |
| #define RA_ReadClient_pack 0x000C |
| |
| #define BA_ReadClient_pack_Sel 0x000C |
| #define B16ReadClient_pack_Sel 0x000C |
| #define LSb32ReadClient_pack_Sel 0 |
| #define LSb16ReadClient_pack_Sel 0 |
| #define bReadClient_pack_Sel 4 |
| #define MSK32ReadClient_pack_Sel 0x0000000F |
| /////////////////////////////////////////////////////////// |
| |
| typedef struct SIE_ReadClient { |
| /////////////////////////////////////////////////////////// |
| #define GET32ReadClient_Rd_start(r32) _BFGET_(r32, 0, 0) |
| #define SET32ReadClient_Rd_start(r32,v) _BFSET_(r32, 0, 0,v) |
| #define GET16ReadClient_Rd_start(r16) _BFGET_(r16, 0, 0) |
| #define SET16ReadClient_Rd_start(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define GET32ReadClient_Rd_clear(r32) _BFGET_(r32, 1, 1) |
| #define SET32ReadClient_Rd_clear(r32,v) _BFSET_(r32, 1, 1,v) |
| #define GET16ReadClient_Rd_clear(r16) _BFGET_(r16, 1, 1) |
| #define SET16ReadClient_Rd_clear(r16,v) _BFSET_(r16, 1, 1,v) |
| |
| #define w32ReadClient_Rd {\ |
| UNSG32 uRd_start : 1;\ |
| UNSG32 uRd_clear : 1;\ |
| UNSG32 RSVDx0_b2 : 30;\ |
| } |
| union { UNSG32 u32ReadClient_Rd; |
| struct w32ReadClient_Rd; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32ReadClient_Word_tot(r32) _BFGET_(r32,31, 0) |
| #define SET32ReadClient_Word_tot(r32,v) _BFSET_(r32,31, 0,v) |
| |
| #define w32ReadClient_Word {\ |
| UNSG32 uWord_tot : 32;\ |
| } |
| union { UNSG32 u32ReadClient_Word; |
| struct w32ReadClient_Word; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32ReadClient_NonStdRes_enable(r32) _BFGET_(r32, 0, 0) |
| #define SET32ReadClient_NonStdRes_enable(r32,v) _BFSET_(r32, 0, 0,v) |
| #define GET16ReadClient_NonStdRes_enable(r16) _BFGET_(r16, 0, 0) |
| #define SET16ReadClient_NonStdRes_enable(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define GET32ReadClient_NonStdRes_pixlineTot(r32) _BFGET_(r32,13, 1) |
| #define SET32ReadClient_NonStdRes_pixlineTot(r32,v) _BFSET_(r32,13, 1,v) |
| #define GET16ReadClient_NonStdRes_pixlineTot(r16) _BFGET_(r16,13, 1) |
| #define SET16ReadClient_NonStdRes_pixlineTot(r16,v) _BFSET_(r16,13, 1,v) |
| |
| #define GET32ReadClient_NonStdRes_flushCnt(r32) _BFGET_(r32,17,14) |
| #define SET32ReadClient_NonStdRes_flushCnt(r32,v) _BFSET_(r32,17,14,v) |
| |
| #define w32ReadClient_NonStdRes {\ |
| UNSG32 uNonStdRes_enable : 1;\ |
| UNSG32 uNonStdRes_pixlineTot : 13;\ |
| UNSG32 uNonStdRes_flushCnt : 4;\ |
| UNSG32 RSVDx8_b18 : 14;\ |
| } |
| union { UNSG32 u32ReadClient_NonStdRes; |
| struct w32ReadClient_NonStdRes; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32ReadClient_pack_Sel(r32) _BFGET_(r32, 3, 0) |
| #define SET32ReadClient_pack_Sel(r32,v) _BFSET_(r32, 3, 0,v) |
| #define GET16ReadClient_pack_Sel(r16) _BFGET_(r16, 3, 0) |
| #define SET16ReadClient_pack_Sel(r16,v) _BFSET_(r16, 3, 0,v) |
| |
| #define w32ReadClient_pack {\ |
| UNSG32 upack_Sel : 4;\ |
| UNSG32 RSVDxC_b4 : 28;\ |
| } |
| union { UNSG32 u32ReadClient_pack; |
| struct w32ReadClient_pack; |
| }; |
| /////////////////////////////////////////////////////////// |
| } SIE_ReadClient; |
| |
| typedef union T32ReadClient_Rd |
| { UNSG32 u32; |
| struct w32ReadClient_Rd; |
| } T32ReadClient_Rd; |
| typedef union T32ReadClient_Word |
| { UNSG32 u32; |
| struct w32ReadClient_Word; |
| } T32ReadClient_Word; |
| typedef union T32ReadClient_NonStdRes |
| { UNSG32 u32; |
| struct w32ReadClient_NonStdRes; |
| } T32ReadClient_NonStdRes; |
| typedef union T32ReadClient_pack |
| { UNSG32 u32; |
| struct w32ReadClient_pack; |
| } T32ReadClient_pack; |
| /////////////////////////////////////////////////////////// |
| |
| typedef union TReadClient_Rd |
| { UNSG32 u32[1]; |
| struct { |
| struct w32ReadClient_Rd; |
| }; |
| } TReadClient_Rd; |
| typedef union TReadClient_Word |
| { UNSG32 u32[1]; |
| struct { |
| struct w32ReadClient_Word; |
| }; |
| } TReadClient_Word; |
| typedef union TReadClient_NonStdRes |
| { UNSG32 u32[1]; |
| struct { |
| struct w32ReadClient_NonStdRes; |
| }; |
| } TReadClient_NonStdRes; |
| typedef union TReadClient_pack |
| { UNSG32 u32[1]; |
| struct { |
| struct w32ReadClient_pack; |
| }; |
| } TReadClient_pack; |
| |
| /////////////////////////////////////////////////////////// |
| SIGN32 ReadClient_drvrd(SIE_ReadClient *p, UNSG32 base, SIGN32 mem, SIGN32 tst); |
| SIGN32 ReadClient_drvwr(SIE_ReadClient *p, UNSG32 base, SIGN32 mem, SIGN32 tst, UNSG32 *pcmd); |
| void ReadClient_reset(SIE_ReadClient *p); |
| SIGN32 ReadClient_cmp (SIE_ReadClient *p, SIE_ReadClient *pie, char *pfx, void *hLOG, SIGN32 mem, SIGN32 tst); |
| #define ReadClient_check(p,pie,pfx,hLOG) ReadClient_cmp(p,pie,pfx,(void*)(hLOG),0,0) |
| #define ReadClient_print(p, pfx,hLOG) ReadClient_cmp(p,0, pfx,(void*)(hLOG),0,0) |
| |
| #endif |
| ////// |
| /// ENDOFINTERFACE: ReadClient |
| //////////////////////////////////////////////////////////// |
| |
| ////// |
| /// |
| /// $INTERFACE WriteClient biu (4,4) |
| /// # # ---------------------------------------------------------- |
| /// @ 0x00000 Wr (P-) |
| /// %unsigned 1 start 0x0 |
| /// ### |
| /// * Start bit for the respective clients. |
| /// * 0 : No effect on hardware. |
| /// * 1 : start the client. |
| /// * The write 1 to this register is used to kick the hardware. |
| /// ### |
| /// %unsigned 1 clear 0x0 |
| /// ### |
| /// * 0 : Don't clear, normal state. |
| /// * 1 : Clear the asynchronous FIFO between the respective client and dHub. |
| /// ### |
| /// %% 30 # Stuffing bits... |
| /// @ 0x00004 pix (P) |
| /// %unsigned 32 tot 0x64 |
| /// ### |
| /// * Specifies the total number of pixels expected from input to write client. This is used to generate flush in Write client to write the partially formed 128-bit data (if any) to DDR. |
| /// * Should be programmed with (ovres*ohres). |
| /// ### |
| /// @ 0x00008 NonStdRes (P) |
| /// %unsigned 1 enable 0x0 |
| /// ### |
| /// * Enable for Read Client when resolution is not integer multiple of 16 |
| /// ### |
| /// %unsigned 13 pixlineTot 0x64 |
| /// ### |
| /// * Total number of pixels in a line (for Write Client) |
| /// ### |
| /// %% 18 # Stuffing bits... |
| /// @ 0x0000C pack (P) |
| /// %unsigned 4 Sel 0x0 |
| /// ### |
| /// * PackSel for Write Client |
| /// * [0000] : 8 bit packing |
| /// * [0001] : 10 bit packing |
| /// * [0010] : 12 bit packing |
| /// * [0011] : 15 bit packing |
| /// * [0100] : 16 bit packing |
| /// * [0101] : 20 bit packing |
| /// * [0110] : 24 bit packing |
| /// * [0111] : 30 bit packing |
| /// * [1000] : 32 bit packing |
| /// ### |
| /// %% 28 # Stuffing bits... |
| /// # # ---------------------------------------------------------- |
| /// $ENDOFINTERFACE # size: 16B, bits: 52b, padding: 0B |
| //////////////////////////////////////////////////////////// |
| #ifndef h_WriteClient |
| #define h_WriteClient (){} |
| |
| #define RA_WriteClient_Wr 0x0000 |
| |
| #define BA_WriteClient_Wr_start 0x0000 |
| #define B16WriteClient_Wr_start 0x0000 |
| #define LSb32WriteClient_Wr_start 0 |
| #define LSb16WriteClient_Wr_start 0 |
| #define bWriteClient_Wr_start 1 |
| #define MSK32WriteClient_Wr_start 0x00000001 |
| |
| #define BA_WriteClient_Wr_clear 0x0000 |
| #define B16WriteClient_Wr_clear 0x0000 |
| #define LSb32WriteClient_Wr_clear 1 |
| #define LSb16WriteClient_Wr_clear 1 |
| #define bWriteClient_Wr_clear 1 |
| #define MSK32WriteClient_Wr_clear 0x00000002 |
| /////////////////////////////////////////////////////////// |
| #define RA_WriteClient_pix 0x0004 |
| |
| #define BA_WriteClient_pix_tot 0x0004 |
| #define B16WriteClient_pix_tot 0x0004 |
| #define LSb32WriteClient_pix_tot 0 |
| #define LSb16WriteClient_pix_tot 0 |
| #define bWriteClient_pix_tot 32 |
| #define MSK32WriteClient_pix_tot 0xFFFFFFFF |
| /////////////////////////////////////////////////////////// |
| #define RA_WriteClient_NonStdRes 0x0008 |
| |
| #define BA_WriteClient_NonStdRes_enable 0x0008 |
| #define B16WriteClient_NonStdRes_enable 0x0008 |
| #define LSb32WriteClient_NonStdRes_enable 0 |
| #define LSb16WriteClient_NonStdRes_enable 0 |
| #define bWriteClient_NonStdRes_enable 1 |
| #define MSK32WriteClient_NonStdRes_enable 0x00000001 |
| |
| #define BA_WriteClient_NonStdRes_pixlineTot 0x0008 |
| #define B16WriteClient_NonStdRes_pixlineTot 0x0008 |
| #define LSb32WriteClient_NonStdRes_pixlineTot 1 |
| #define LSb16WriteClient_NonStdRes_pixlineTot 1 |
| #define bWriteClient_NonStdRes_pixlineTot 13 |
| #define MSK32WriteClient_NonStdRes_pixlineTot 0x00003FFE |
| /////////////////////////////////////////////////////////// |
| #define RA_WriteClient_pack 0x000C |
| |
| #define BA_WriteClient_pack_Sel 0x000C |
| #define B16WriteClient_pack_Sel 0x000C |
| #define LSb32WriteClient_pack_Sel 0 |
| #define LSb16WriteClient_pack_Sel 0 |
| #define bWriteClient_pack_Sel 4 |
| #define MSK32WriteClient_pack_Sel 0x0000000F |
| /////////////////////////////////////////////////////////// |
| |
| typedef struct SIE_WriteClient { |
| /////////////////////////////////////////////////////////// |
| #define GET32WriteClient_Wr_start(r32) _BFGET_(r32, 0, 0) |
| #define SET32WriteClient_Wr_start(r32,v) _BFSET_(r32, 0, 0,v) |
| #define GET16WriteClient_Wr_start(r16) _BFGET_(r16, 0, 0) |
| #define SET16WriteClient_Wr_start(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define GET32WriteClient_Wr_clear(r32) _BFGET_(r32, 1, 1) |
| #define SET32WriteClient_Wr_clear(r32,v) _BFSET_(r32, 1, 1,v) |
| #define GET16WriteClient_Wr_clear(r16) _BFGET_(r16, 1, 1) |
| #define SET16WriteClient_Wr_clear(r16,v) _BFSET_(r16, 1, 1,v) |
| |
| #define w32WriteClient_Wr {\ |
| UNSG32 uWr_start : 1;\ |
| UNSG32 uWr_clear : 1;\ |
| UNSG32 RSVDx0_b2 : 30;\ |
| } |
| union { UNSG32 u32WriteClient_Wr; |
| struct w32WriteClient_Wr; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32WriteClient_pix_tot(r32) _BFGET_(r32,31, 0) |
| #define SET32WriteClient_pix_tot(r32,v) _BFSET_(r32,31, 0,v) |
| |
| #define w32WriteClient_pix {\ |
| UNSG32 upix_tot : 32;\ |
| } |
| union { UNSG32 u32WriteClient_pix; |
| struct w32WriteClient_pix; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32WriteClient_NonStdRes_enable(r32) _BFGET_(r32, 0, 0) |
| #define SET32WriteClient_NonStdRes_enable(r32,v) _BFSET_(r32, 0, 0,v) |
| #define GET16WriteClient_NonStdRes_enable(r16) _BFGET_(r16, 0, 0) |
| #define SET16WriteClient_NonStdRes_enable(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define GET32WriteClient_NonStdRes_pixlineTot(r32) _BFGET_(r32,13, 1) |
| #define SET32WriteClient_NonStdRes_pixlineTot(r32,v) _BFSET_(r32,13, 1,v) |
| #define GET16WriteClient_NonStdRes_pixlineTot(r16) _BFGET_(r16,13, 1) |
| #define SET16WriteClient_NonStdRes_pixlineTot(r16,v) _BFSET_(r16,13, 1,v) |
| |
| #define w32WriteClient_NonStdRes {\ |
| UNSG32 uNonStdRes_enable : 1;\ |
| UNSG32 uNonStdRes_pixlineTot : 13;\ |
| UNSG32 RSVDx8_b14 : 18;\ |
| } |
| union { UNSG32 u32WriteClient_NonStdRes; |
| struct w32WriteClient_NonStdRes; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32WriteClient_pack_Sel(r32) _BFGET_(r32, 3, 0) |
| #define SET32WriteClient_pack_Sel(r32,v) _BFSET_(r32, 3, 0,v) |
| #define GET16WriteClient_pack_Sel(r16) _BFGET_(r16, 3, 0) |
| #define SET16WriteClient_pack_Sel(r16,v) _BFSET_(r16, 3, 0,v) |
| |
| #define w32WriteClient_pack {\ |
| UNSG32 upack_Sel : 4;\ |
| UNSG32 RSVDxC_b4 : 28;\ |
| } |
| union { UNSG32 u32WriteClient_pack; |
| struct w32WriteClient_pack; |
| }; |
| /////////////////////////////////////////////////////////// |
| } SIE_WriteClient; |
| |
| typedef union T32WriteClient_Wr |
| { UNSG32 u32; |
| struct w32WriteClient_Wr; |
| } T32WriteClient_Wr; |
| typedef union T32WriteClient_pix |
| { UNSG32 u32; |
| struct w32WriteClient_pix; |
| } T32WriteClient_pix; |
| typedef union T32WriteClient_NonStdRes |
| { UNSG32 u32; |
| struct w32WriteClient_NonStdRes; |
| } T32WriteClient_NonStdRes; |
| typedef union T32WriteClient_pack |
| { UNSG32 u32; |
| struct w32WriteClient_pack; |
| } T32WriteClient_pack; |
| /////////////////////////////////////////////////////////// |
| |
| typedef union TWriteClient_Wr |
| { UNSG32 u32[1]; |
| struct { |
| struct w32WriteClient_Wr; |
| }; |
| } TWriteClient_Wr; |
| typedef union TWriteClient_pix |
| { UNSG32 u32[1]; |
| struct { |
| struct w32WriteClient_pix; |
| }; |
| } TWriteClient_pix; |
| typedef union TWriteClient_NonStdRes |
| { UNSG32 u32[1]; |
| struct { |
| struct w32WriteClient_NonStdRes; |
| }; |
| } TWriteClient_NonStdRes; |
| typedef union TWriteClient_pack |
| { UNSG32 u32[1]; |
| struct { |
| struct w32WriteClient_pack; |
| }; |
| } TWriteClient_pack; |
| |
| /////////////////////////////////////////////////////////// |
| SIGN32 WriteClient_drvrd(SIE_WriteClient *p, UNSG32 base, SIGN32 mem, SIGN32 tst); |
| SIGN32 WriteClient_drvwr(SIE_WriteClient *p, UNSG32 base, SIGN32 mem, SIGN32 tst, UNSG32 *pcmd); |
| void WriteClient_reset(SIE_WriteClient *p); |
| SIGN32 WriteClient_cmp (SIE_WriteClient *p, SIE_WriteClient *pie, char *pfx, void *hLOG, SIGN32 mem, SIGN32 tst); |
| #define WriteClient_check(p,pie,pfx,hLOG) WriteClient_cmp(p,pie,pfx,(void*)(hLOG),0,0) |
| #define WriteClient_print(p, pfx,hLOG) WriteClient_cmp(p,0, pfx,(void*)(hLOG),0,0) |
| |
| #endif |
| ////// |
| /// ENDOFINTERFACE: WriteClient |
| //////////////////////////////////////////////////////////// |
| |
| ////// |
| /// |
| /// $INTERFACE BETG biu (4,4) |
| /// # # ---------------------------------------------------------- |
| /// @ 0x00000 (P) |
| /// # 0x00000 PL0 |
| /// $TG_PL PL0 REG |
| /// ### |
| /// * Plane 0 Related registers (for Base Plane) |
| /// ### |
| /// @ 0x00008 (P) |
| /// # 0x00008 PL1 |
| /// $TG_PL PL1 REG |
| /// ### |
| /// * Plane 1 Related registers (for Main plane) |
| /// ### |
| /// @ 0x00010 (P) |
| /// # 0x00010 PL2 |
| /// $TG_PL PL2 REG |
| /// ### |
| /// * Plane 2 Related registers (for PIP/Graphics1 Plane) |
| /// ### |
| /// @ 0x00018 (P) |
| /// # 0x00018 PL3 |
| /// $TG_PL PL3 REG |
| /// ### |
| /// * Plane 3 Related registers (for Graphics2 Plane) |
| /// ### |
| /// @ 0x00020 (P) |
| /// # 0x00020 PL4 |
| /// $TG_PL PL4 REG |
| /// ### |
| /// * Plane 4 Related registers (for FIX0 Plane) |
| /// ### |
| /// @ 0x00028 (P) |
| /// # 0x00028 PL5 |
| /// $TG_PL PL5 REG |
| /// ### |
| /// * Plane 5 Related registers (for FIX1 Plane) |
| /// ### |
| /// @ 0x00030 (P) |
| /// # 0x00030 PL6 |
| /// $TG_PL PL6 REG |
| /// ### |
| /// * Plane 6 Related registers (for FIX2 Plane) |
| /// ### |
| /// @ 0x00038 (P) |
| /// # 0x00038 PL7 |
| /// $TG_PL PL7 REG |
| /// ### |
| /// * Plane 7 Related registers (for FIX3 Plane) |
| /// ### |
| /// @ 0x00040 (P) |
| /// # 0x00040 PL8 |
| /// $TG_PL PL8 REG |
| /// ### |
| /// * Plane 8 Related registers (for overlay output read) |
| /// ### |
| /// @ 0x00048 (P) |
| /// # 0x00048 PL1_CR |
| /// $TG_PL PL1_CR REG |
| /// ### |
| /// * Plane 1 Crop Related registers (for taking cropped input of Main Plane as Overlay Input) |
| /// ### |
| /// @ 0x00050 (P) |
| /// # 0x00050 PL2_CR |
| /// $TG_PL PL2_CR REG |
| /// ### |
| /// * Plane 2 Crop Related registers (for taking cropped input of PIP/Graphics1 Plane as Overlay Input) |
| /// ### |
| /// @ 0x00058 (P) |
| /// # 0x00058 PL3_CR |
| /// $TG_PL PL3_CR REG |
| /// ### |
| /// * Plane 3 Crop Related registers (for taking cropped input of Graphics-2 Plane as Overlay Input) |
| /// ### |
| /// @ 0x00060 (P) |
| /// # 0x00060 PL4_CR |
| /// $TG_PL PL4_CR REG |
| /// ### |
| /// * Plane 4 Crop Related registers |
| /// ### |
| /// @ 0x00068 (P) |
| /// # 0x00068 PL5_CR |
| /// $TG_PL PL5_CR REG |
| /// ### |
| /// * Plane 5 Crop Related registers |
| /// ### |
| /// @ 0x00070 (P) |
| /// # 0x00070 PL6_CR |
| /// $TG_PL PL6_CR REG |
| /// ### |
| /// * Plane 6 Crop Related registers |
| /// ### |
| /// @ 0x00078 (P) |
| /// # 0x00078 PL7_CR |
| /// $TG_PL PL7_CR REG |
| /// ### |
| /// * Plane 7 Crop Related registers |
| /// ### |
| /// @ 0x00080 (P) |
| /// # 0x00080 PL8_CR |
| /// $TG_PL PL8_CR REG |
| /// ### |
| /// * Plane 8 Crop Related registers |
| /// ### |
| /// @ 0x00088 (P) |
| /// # 0x00088 PL_FLD |
| /// $TG_PL PL_FLD REG |
| /// ### |
| /// * Field Related registers |
| /// ### |
| /// @ 0x00090 (P) |
| /// # 0x00090 TG_PRG |
| /// $TG_PRG TG_PRG REG |
| /// ### |
| /// * Timing Generator programming registers |
| /// ### |
| /// # # ---------------------------------------------------------- |
| /// $ENDOFINTERFACE # size: 180B, bits: 1090b, padding: 0B |
| //////////////////////////////////////////////////////////// |
| #ifndef h_BETG |
| #define h_BETG (){} |
| |
| #define RA_BETG_PL0 0x0000 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_PL1 0x0008 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_PL2 0x0010 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_PL3 0x0018 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_PL4 0x0020 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_PL5 0x0028 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_PL6 0x0030 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_PL7 0x0038 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_PL8 0x0040 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_PL1_CR 0x0048 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_PL2_CR 0x0050 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_PL3_CR 0x0058 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_PL4_CR 0x0060 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_PL5_CR 0x0068 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_PL6_CR 0x0070 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_PL7_CR 0x0078 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_PL8_CR 0x0080 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_PL_FLD 0x0088 |
| /////////////////////////////////////////////////////////// |
| #define RA_BETG_TG_PRG 0x0090 |
| /////////////////////////////////////////////////////////// |
| |
| typedef struct SIE_BETG { |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL0; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL1; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL2; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL3; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL4; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL5; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL6; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL7; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL8; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL1_CR; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL2_CR; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL3_CR; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL4_CR; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL5_CR; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL6_CR; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL7_CR; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL8_CR; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PL ie_PL_FLD; |
| /////////////////////////////////////////////////////////// |
| SIE_TG_PRG ie_TG_PRG; |
| /////////////////////////////////////////////////////////// |
| } SIE_BETG; |
| |
| /////////////////////////////////////////////////////////// |
| SIGN32 BETG_drvrd(SIE_BETG *p, UNSG32 base, SIGN32 mem, SIGN32 tst); |
| SIGN32 BETG_drvwr(SIE_BETG *p, UNSG32 base, SIGN32 mem, SIGN32 tst, UNSG32 *pcmd); |
| void BETG_reset(SIE_BETG *p); |
| SIGN32 BETG_cmp (SIE_BETG *p, SIE_BETG *pie, char *pfx, void *hLOG, SIGN32 mem, SIGN32 tst); |
| #define BETG_check(p,pie,pfx,hLOG) BETG_cmp(p,pie,pfx,(void*)(hLOG),0,0) |
| #define BETG_print(p, pfx,hLOG) BETG_cmp(p,0, pfx,(void*)(hLOG),0,0) |
| |
| #endif |
| ////// |
| /// ENDOFINTERFACE: BETG |
| //////////////////////////////////////////////////////////// |
| |
| ////// |
| /// |
| /// $INTERFACE PIPE (4,4) |
| /// # # ---------------------------------------------------------- |
| /// @ 0x00000 CTRL0 (P-) |
| /// %unsigned 1 tg_start 0x0 |
| /// ### |
| /// * Start bit for tg |
| /// * 0 : No effect on hardware. |
| /// * 1 : start the client. |
| /// * The write 1 to this register is used to kick the hardware. |
| /// ### |
| /// %unsigned 1 tg_clear 0x0 |
| /// ### |
| /// * 0 : Don't clear, normal state. |
| /// * 1 : Clear tg |
| /// ### |
| /// %% 30 # Stuffing bits... |
| /// @ 0x00004 CTRL1 (P) |
| /// %unsigned 1 clken_ctrl0 0x1 |
| /// ### |
| /// * Clock enable control for TG. Write 0 to make flow control independent of ready status from Read Client0 |
| /// ### |
| /// %unsigned 1 clken_ctrl1 0x1 |
| /// ### |
| /// * Clock enable control for TG. Write 0 to make flow control independent of ready status from Read Client1 |
| /// ### |
| /// %unsigned 1 clken_ctrl2 0x1 |
| /// %unsigned 1 clken_ctrl3 0x1 |
| /// %unsigned 1 clken_ctrl4 0x1 |
| /// %unsigned 1 bitMap_en 0x0 |
| /// ### |
| /// * Control bit to enable BITMAP |
| /// ### |
| /// %unsigned 1 crop_de_en 0x0 |
| /// ### |
| /// * Enable for cropped de's to be used for cropped input read from Read Client's which is fed to DETILE-UPS420 |
| /// * Write 1 to enable it. Default disabled. |
| /// ### |
| /// %unsigned 1 crop_de2_en 0x0 |
| /// ### |
| /// * Enable for cropped de's to be used for cropped input support for 420-SemiPlanar Input for DETILE in PIP Plane . |
| /// * Note : crop_de_en bit should be high for this mode and DETILE TG to be programmed accordingly for Luma, Croma and DE (required to fetch data from Read Client) |
| /// * Write 1 to enable it. Default disabled. |
| /// ### |
| /// %unsigned 1 rdsel_422SP 0x0 |
| /// ### |
| /// * Read select from read client (R0) for 422 SP format case |
| /// ### |
| /// %unsigned 1 rdsel_420SP 0x0 |
| /// ### |
| /// * Read select from read client (R0/1) for 420 SP format case |
| /// ### |
| /// %unsigned 1 yuv420sp_2p1c 0x0 |
| /// ### |
| /// * Switching between 2-pixels-1-cycle and 2-pixels-2-cycles modes for YUV420 (12-bit YcbCr 4:2:0) |
| /// * 1: Two pixels are read from PIPE and sent on DPI on every clock cycle |
| /// * 0: Two pixels are read from Client and sent on DPI on every alternate clock cycle |
| /// ### |
| /// %unsigned 1 eof_frst_mask 0x0 |
| /// %unsigned 1 eof_frst_sel 0x0 |
| /// %% 19 # Stuffing bits... |
| /// @ 0x00008 CTRL2 (P) |
| /// %unsigned 1 clken_rdcli0uf_all 0x0 |
| /// ### |
| /// * TG Clock enable control in the event of Read Client #0 underflow. Underflow occurs when client gets exhausted of data. |
| /// * 0: Stops the TG Clock only if Read client #0 underflow event occurs during active period (~rdcli0_rdy && hde && vde) |
| /// * 1: Stops the TG clock if Read client #0 underflow event occurs during active or blanking period. No dependency on (hde && vde). |
| /// ### |
| /// %unsigned 1 clken_rdcli1uf_all 0x0 |
| /// ### |
| /// * TG Clock enable control in the event of Read Client #1 underflow. Underflow occurs when client gets exhausted of data. |
| /// * 0x0: Stops the TG Clock only if Read client #1 underflow event occurs during active period (~rdcli1_rdy && hde && vde) |
| /// * 0x1: Stops the TG clock if Read client #1 underflow event occurs during active or blanking period. No dependency on (hde && vde). |
| /// ### |
| /// %% 30 # Stuffing bits... |
| /// @ 0x0000C MTG (P) |
| /// %unsigned 1 cfg_rst 0x0 |
| /// ### |
| /// * Configurable reset to TG |
| /// ### |
| /// %unsigned 13 hcnt_rstval 0x0 |
| /// ### |
| /// * H-Counter reset value |
| /// ### |
| /// %unsigned 12 vcnt_rstval 0x0 |
| /// ### |
| /// * V-Counter reset value |
| /// ### |
| /// %unsigned 2 prog_line_dly 0x1 |
| /// ### |
| /// * Programmable line delay |
| /// ### |
| /// %% 4 # Stuffing bits... |
| /// @ 0x00010 CTRL (P) |
| /// %unsigned 3 idata_ctrl 0x0 |
| /// ### |
| /// * Input pixel data format |
| /// * [000]: 8b-YUV422, if rdSel_422SP=1 |
| /// * RGB565-16bconfig1, if rdSel_422SP=0 |
| /// * [001]: 10b-YUV422, , if rdSel_422SP=1 |
| /// * RGB565-16bconfig2, if rdSel_422SP=0 |
| /// * [010]: 12bYUV422, if rdSel_422SP=1 |
| /// * 12bYUV420, if rdSel_420SP=1 |
| /// * RGB656-16bconfig3, if rdSel_422SP=0 && rdSel_420SP=0 |
| /// * [011]: RGB666-18bconfig1 |
| /// * [100]: RGB666-18bconfig2 |
| /// * [101]: RGB24 |
| /// * [110]: RGB36 |
| /// * [111]: RGB30 |
| /// ### |
| /// %unsigned 1 sp_dwa_10b_normal_mode 0x0 |
| /// ### |
| /// * 1: used for only sp DWA 10 bit format support in normal mode. |
| /// * 0: default path (other formats) |
| /// ### |
| /// %unsigned 1 sp_dwa_10b_inverse_mode 0x0 |
| /// ### |
| /// * 1: used for only sp DWA 10 bit format support in inverse scan mode. |
| /// * 0: default path (other formats) |
| /// ### |
| /// %unsigned 1 cswap 0x0 |
| /// ### |
| /// * Component swap |
| /// ### |
| /// %unsigned 1 rdmain_initval0 0x0 |
| /// ### |
| /// * Initiallization value for read Mask for MIPI Read Client's (420SP Cases) |
| /// ### |
| /// %unsigned 1 rdmain_initval1 0x1 |
| /// ### |
| /// * Initiallization value for read Mask for MIPI Read Client's (420SP Cases) |
| /// ### |
| /// %unsigned 1 rd_mask_sftrst 0x0 |
| /// ### |
| /// * Soft reset to initialize read mask. Write 1 to initialize read mask with rdmain_initval0 |
| /// ### |
| /// %unsigned 1 yc_rdmask_sftrst 0x0 |
| /// ### |
| /// * Soft reset to initialize read mask for alternate pixel. Write 1 to initialize read mask with 0 |
| /// ### |
| /// %unsigned 1 bitmap40_bypass 0x0 |
| /// ### |
| /// * Bypass bitmap40 control |
| /// ### |
| /// %unsigned 1 dpidataen_pol 0x0 |
| /// ### |
| /// * dpidataen polarity control. Write 1 to make output port dpidataen active-low. |
| /// * THIS BIT SHOULD ONLY BE CONFIGURED BEFORE DSI HOST + DPHY POWER-UP PROGRAMMING SEQUENCE |
| /// ### |
| /// %unsigned 1 dpivsync_pol 0x0 |
| /// ### |
| /// * dpivsync polarity control. Write 1 to make output port dpivsync active-low. |
| /// * THIS BIT SHOULD ONLY BE CONFIGURED BEFORE DSI HOST + DPHY POWER-UP PROGRAMMING SEQUENCE |
| /// ### |
| /// %unsigned 1 dpihsync_pol 0x0 |
| /// ### |
| /// * dpihsync polarity polarity control. Write 1 to make output port dpihsync active-low. |
| /// * THIS BIT SHOULD ONLY BE CONFIGURED BEFORE DSI HOST + DPHY POWER-UP PROGRAMMING SEQUENCE |
| /// ### |
| /// %unsigned 1 dpishutd_pol 0x0 |
| /// ### |
| /// * dpihshutd polarity control. Write 1 to make output port dpishutd active-low. |
| /// * THIS BIT SHOULD ONLY BE CONFIGURED BEFORE DSI HOST + DPHY POWER-UP PROGRAMMING SEQUENCE |
| /// ### |
| /// %unsigned 1 dpicolorm_pol 0x0 |
| /// ### |
| /// * dpicolorm polarity control. Write 1 to make output port dpicolorm active-low. |
| /// * THIS BIT SHOULD ONLY BE CONFIGURED BEFORE DSI HOST + DPHY POWER-UP PROGRAMMING SEQUENCE |
| /// ### |
| /// %% 16 # Stuffing bits... |
| /// @ 0x00014 UFSTATUS (WOC-) |
| /// %unsigned 1 rdcli0_uf 0x0 |
| /// ### |
| /// * This bit is set by hardware when underflow event occurs. Underflow event occurs when Read Client #0 gets exhausted of data. Underflow can occur during active period (hde && vde) or blanking period. |
| /// * Hardware sets this bit if underflow occurs in active period. |
| /// * Hardware sets this bit if underflow occurs in blanking period ONLY IF CTRL2_clken_rdcli0_uf_all bit is 1. |
| /// * This bit is cleared when software writes 1 to it. |
| /// ### |
| /// %unsigned 1 rdcli1_uf 0x0 |
| /// ### |
| /// * This bit is set by hardware when underflow event occurs. Underflow event occurs when Read Client #1 gets exhausted of data. Underflow can occur during active period (hde && vde) or blanking period. |
| /// * Hardware sets this bit if underflow occurs in active period. |
| /// * Hardware sets this bit if underflow occurs in blanking period ONLY IF CTRL2_clken_rdcli1_uf_all bit is 1. |
| /// * This bit is cleared when software writes 1 to it. |
| /// ### |
| /// %unsigned 1 dpite 0x0 |
| /// %% 29 # Stuffing bits... |
| /// @ 0x00018 DSI (P) |
| /// %unsigned 1 colormode 0x0 |
| /// ### |
| /// * Control Signal. It is used to switch between normal color and reduced color mode. |
| /// ### |
| /// %unsigned 1 shutdn 0x0 |
| /// ### |
| /// * Control Signal. It is used to shutdown the display. |
| /// ### |
| /// %unsigned 1 hw_updatecfg_on 0x0 |
| /// ### |
| /// * Control Signal. This signal is used to indicate that the next frame will have new video configuration,through dpiupdatecfg hw pin |
| /// ### |
| /// %unsigned 1 hw_tear_effect_on 0x0 |
| /// ### |
| /// * Control signal to activate Tearing Effect by Hardware |
| /// ### |
| /// %unsigned 1 force_pll_on 0x0 |
| /// ### |
| /// * Control signal to pass force pll signal to AVPLL |
| /// ### |
| /// %unsigned 1 tear_request_pulse 0x0 |
| /// ### |
| /// * activate Tearing Effect |
| /// ### |
| /// %unsigned 1 updatecfg_pulse 0x0 |
| /// ### |
| /// * This signal is used to indicate that the next frame will have new video configuration |
| /// ### |
| /// %unsigned 1 edpi_mode 0x0 |
| /// ### |
| /// * Control to enable edpi mode for DSI |
| /// ### |
| /// %unsigned 1 tear_sftrst 0x0 |
| /// ### |
| /// * Soft reset control to clear tear_wait -timeout |
| /// ### |
| /// %% 23 # Stuffing bits... |
| /// @ 0x0001C DPHY (P) |
| /// %unsigned 1 turn_disable_lane0 0x0 |
| /// ### |
| /// * Disable turn around |
| /// ### |
| /// %unsigned 1 ftxstopmode_lane0 0x0 |
| /// ### |
| /// * Force lane into tx mode and generate stop mode |
| /// ### |
| /// %unsigned 1 forcerxmode_lane0 0x0 |
| /// ### |
| /// * Force lane into Rx mode and generate stop mode |
| /// ### |
| /// %unsigned 1 csr_cfgrstn 0x0 |
| /// ### |
| /// * Reset input for CSR |
| /// ### |
| /// %% 28 # Stuffing bits... |
| /// @ 0x00020 INVSCAN (P) |
| /// %unsigned 1 bitmap128_Rd0_en 0x0 |
| /// %unsigned 1 bitmap128_Rd1_en 0x0 |
| /// ### |
| /// * [1] : enable for H Inverse Scan. |
| /// * [0] : Default Value. |
| /// ### |
| /// %% 30 # Stuffing bits... |
| /// @ 0x00024 STATUS (R-) |
| /// %unsigned 16 vcnt 0x0 |
| /// ### |
| /// * Vcount status for MIPI TG |
| /// ### |
| /// %% 16 # Stuffing bits... |
| /// @ 0x00028 (P) |
| /// # 0x00028 TG |
| /// $BETG TG REG |
| /// ### |
| /// * TG programming |
| /// ### |
| /// @ 0x000DC (P) |
| /// # 0x000DC BITMAP40 |
| /// $BITMAP40 BITMAP40 REG |
| /// ### |
| /// * Bit Map registers for bit mapping of Read Client output data |
| /// ### |
| /// @ 0x000FC (P) |
| /// # 0x000FC RdClient0 |
| /// $ReadClient RdClient0 REG |
| /// ### |
| /// * RdClient0 Programming |
| /// ### |
| /// @ 0x0010C (P) |
| /// # 0x0010C RdClient1 |
| /// $ReadClient RdClient1 REG |
| /// ### |
| /// * RdClient0 Programming |
| /// ### |
| /// # # ---------------------------------------------------------- |
| /// $ENDOFINTERFACE # size: 284B, bits: 1537b, padding: 0B |
| //////////////////////////////////////////////////////////// |
| #ifndef h_PIPE |
| #define h_PIPE (){} |
| |
| #define RA_PIPE_CTRL0 0x0000 |
| |
| #define BA_PIPE_CTRL0_tg_start 0x0000 |
| #define B16PIPE_CTRL0_tg_start 0x0000 |
| #define LSb32PIPE_CTRL0_tg_start 0 |
| #define LSb16PIPE_CTRL0_tg_start 0 |
| #define bPIPE_CTRL0_tg_start 1 |
| #define MSK32PIPE_CTRL0_tg_start 0x00000001 |
| |
| #define BA_PIPE_CTRL0_tg_clear 0x0000 |
| #define B16PIPE_CTRL0_tg_clear 0x0000 |
| #define LSb32PIPE_CTRL0_tg_clear 1 |
| #define LSb16PIPE_CTRL0_tg_clear 1 |
| #define bPIPE_CTRL0_tg_clear 1 |
| #define MSK32PIPE_CTRL0_tg_clear 0x00000002 |
| /////////////////////////////////////////////////////////// |
| #define RA_PIPE_CTRL1 0x0004 |
| |
| #define BA_PIPE_CTRL1_clken_ctrl0 0x0004 |
| #define B16PIPE_CTRL1_clken_ctrl0 0x0004 |
| #define LSb32PIPE_CTRL1_clken_ctrl0 0 |
| #define LSb16PIPE_CTRL1_clken_ctrl0 0 |
| #define bPIPE_CTRL1_clken_ctrl0 1 |
| #define MSK32PIPE_CTRL1_clken_ctrl0 0x00000001 |
| |
| #define BA_PIPE_CTRL1_clken_ctrl1 0x0004 |
| #define B16PIPE_CTRL1_clken_ctrl1 0x0004 |
| #define LSb32PIPE_CTRL1_clken_ctrl1 1 |
| #define LSb16PIPE_CTRL1_clken_ctrl1 1 |
| #define bPIPE_CTRL1_clken_ctrl1 1 |
| #define MSK32PIPE_CTRL1_clken_ctrl1 0x00000002 |
| |
| #define BA_PIPE_CTRL1_clken_ctrl2 0x0004 |
| #define B16PIPE_CTRL1_clken_ctrl2 0x0004 |
| #define LSb32PIPE_CTRL1_clken_ctrl2 2 |
| #define LSb16PIPE_CTRL1_clken_ctrl2 2 |
| #define bPIPE_CTRL1_clken_ctrl2 1 |
| #define MSK32PIPE_CTRL1_clken_ctrl2 0x00000004 |
| |
| #define BA_PIPE_CTRL1_clken_ctrl3 0x0004 |
| #define B16PIPE_CTRL1_clken_ctrl3 0x0004 |
| #define LSb32PIPE_CTRL1_clken_ctrl3 3 |
| #define LSb16PIPE_CTRL1_clken_ctrl3 3 |
| #define bPIPE_CTRL1_clken_ctrl3 1 |
| #define MSK32PIPE_CTRL1_clken_ctrl3 0x00000008 |
| |
| #define BA_PIPE_CTRL1_clken_ctrl4 0x0004 |
| #define B16PIPE_CTRL1_clken_ctrl4 0x0004 |
| #define LSb32PIPE_CTRL1_clken_ctrl4 4 |
| #define LSb16PIPE_CTRL1_clken_ctrl4 4 |
| #define bPIPE_CTRL1_clken_ctrl4 1 |
| #define MSK32PIPE_CTRL1_clken_ctrl4 0x00000010 |
| |
| #define BA_PIPE_CTRL1_bitMap_en 0x0004 |
| #define B16PIPE_CTRL1_bitMap_en 0x0004 |
| #define LSb32PIPE_CTRL1_bitMap_en 5 |
| #define LSb16PIPE_CTRL1_bitMap_en 5 |
| #define bPIPE_CTRL1_bitMap_en 1 |
| #define MSK32PIPE_CTRL1_bitMap_en 0x00000020 |
| |
| #define BA_PIPE_CTRL1_crop_de_en 0x0004 |
| #define B16PIPE_CTRL1_crop_de_en 0x0004 |
| #define LSb32PIPE_CTRL1_crop_de_en 6 |
| #define LSb16PIPE_CTRL1_crop_de_en 6 |
| #define bPIPE_CTRL1_crop_de_en 1 |
| #define MSK32PIPE_CTRL1_crop_de_en 0x00000040 |
| |
| #define BA_PIPE_CTRL1_crop_de2_en 0x0004 |
| #define B16PIPE_CTRL1_crop_de2_en 0x0004 |
| #define LSb32PIPE_CTRL1_crop_de2_en 7 |
| #define LSb16PIPE_CTRL1_crop_de2_en 7 |
| #define bPIPE_CTRL1_crop_de2_en 1 |
| #define MSK32PIPE_CTRL1_crop_de2_en 0x00000080 |
| |
| #define BA_PIPE_CTRL1_rdsel_422SP 0x0005 |
| #define B16PIPE_CTRL1_rdsel_422SP 0x0004 |
| #define LSb32PIPE_CTRL1_rdsel_422SP 8 |
| #define LSb16PIPE_CTRL1_rdsel_422SP 8 |
| #define bPIPE_CTRL1_rdsel_422SP 1 |
| #define MSK32PIPE_CTRL1_rdsel_422SP 0x00000100 |
| |
| #define BA_PIPE_CTRL1_rdsel_420SP 0x0005 |
| #define B16PIPE_CTRL1_rdsel_420SP 0x0004 |
| #define LSb32PIPE_CTRL1_rdsel_420SP 9 |
| #define LSb16PIPE_CTRL1_rdsel_420SP 9 |
| #define bPIPE_CTRL1_rdsel_420SP 1 |
| #define MSK32PIPE_CTRL1_rdsel_420SP 0x00000200 |
| |
| #define BA_PIPE_CTRL1_yuv420sp_2p1c 0x0005 |
| #define B16PIPE_CTRL1_yuv420sp_2p1c 0x0004 |
| #define LSb32PIPE_CTRL1_yuv420sp_2p1c 10 |
| #define LSb16PIPE_CTRL1_yuv420sp_2p1c 10 |
| #define bPIPE_CTRL1_yuv420sp_2p1c 1 |
| #define MSK32PIPE_CTRL1_yuv420sp_2p1c 0x00000400 |
| |
| #define BA_PIPE_CTRL1_eof_frst_mask 0x0005 |
| #define B16PIPE_CTRL1_eof_frst_mask 0x0004 |
| #define LSb32PIPE_CTRL1_eof_frst_mask 11 |
| #define LSb16PIPE_CTRL1_eof_frst_mask 11 |
| #define bPIPE_CTRL1_eof_frst_mask 1 |
| #define MSK32PIPE_CTRL1_eof_frst_mask 0x00000800 |
| |
| #define BA_PIPE_CTRL1_eof_frst_sel 0x0005 |
| #define B16PIPE_CTRL1_eof_frst_sel 0x0004 |
| #define LSb32PIPE_CTRL1_eof_frst_sel 12 |
| #define LSb16PIPE_CTRL1_eof_frst_sel 12 |
| #define bPIPE_CTRL1_eof_frst_sel 1 |
| #define MSK32PIPE_CTRL1_eof_frst_sel 0x00001000 |
| /////////////////////////////////////////////////////////// |
| #define RA_PIPE_CTRL2 0x0008 |
| |
| #define BA_PIPE_CTRL2_clken_rdcli0uf_all 0x0008 |
| #define B16PIPE_CTRL2_clken_rdcli0uf_all 0x0008 |
| #define LSb32PIPE_CTRL2_clken_rdcli0uf_all 0 |
| #define LSb16PIPE_CTRL2_clken_rdcli0uf_all 0 |
| #define bPIPE_CTRL2_clken_rdcli0uf_all 1 |
| #define MSK32PIPE_CTRL2_clken_rdcli0uf_all 0x00000001 |
| |
| #define BA_PIPE_CTRL2_clken_rdcli1uf_all 0x0008 |
| #define B16PIPE_CTRL2_clken_rdcli1uf_all 0x0008 |
| #define LSb32PIPE_CTRL2_clken_rdcli1uf_all 1 |
| #define LSb16PIPE_CTRL2_clken_rdcli1uf_all 1 |
| #define bPIPE_CTRL2_clken_rdcli1uf_all 1 |
| #define MSK32PIPE_CTRL2_clken_rdcli1uf_all 0x00000002 |
| /////////////////////////////////////////////////////////// |
| #define RA_PIPE_MTG 0x000C |
| |
| #define BA_PIPE_MTG_cfg_rst 0x000C |
| #define B16PIPE_MTG_cfg_rst 0x000C |
| #define LSb32PIPE_MTG_cfg_rst 0 |
| #define LSb16PIPE_MTG_cfg_rst 0 |
| #define bPIPE_MTG_cfg_rst 1 |
| #define MSK32PIPE_MTG_cfg_rst 0x00000001 |
| |
| #define BA_PIPE_MTG_hcnt_rstval 0x000C |
| #define B16PIPE_MTG_hcnt_rstval 0x000C |
| #define LSb32PIPE_MTG_hcnt_rstval 1 |
| #define LSb16PIPE_MTG_hcnt_rstval 1 |
| #define bPIPE_MTG_hcnt_rstval 13 |
| #define MSK32PIPE_MTG_hcnt_rstval 0x00003FFE |
| |
| #define BA_PIPE_MTG_vcnt_rstval 0x000D |
| #define B16PIPE_MTG_vcnt_rstval 0x000C |
| #define LSb32PIPE_MTG_vcnt_rstval 14 |
| #define LSb16PIPE_MTG_vcnt_rstval 14 |
| #define bPIPE_MTG_vcnt_rstval 12 |
| #define MSK32PIPE_MTG_vcnt_rstval 0x03FFC000 |
| |
| #define BA_PIPE_MTG_prog_line_dly 0x000F |
| #define B16PIPE_MTG_prog_line_dly 0x000E |
| #define LSb32PIPE_MTG_prog_line_dly 26 |
| #define LSb16PIPE_MTG_prog_line_dly 10 |
| #define bPIPE_MTG_prog_line_dly 2 |
| #define MSK32PIPE_MTG_prog_line_dly 0x0C000000 |
| /////////////////////////////////////////////////////////// |
| #define RA_PIPE_CTRL 0x0010 |
| |
| #define BA_PIPE_CTRL_idata_ctrl 0x0010 |
| #define B16PIPE_CTRL_idata_ctrl 0x0010 |
| #define LSb32PIPE_CTRL_idata_ctrl 0 |
| #define LSb16PIPE_CTRL_idata_ctrl 0 |
| #define bPIPE_CTRL_idata_ctrl 3 |
| #define MSK32PIPE_CTRL_idata_ctrl 0x00000007 |
| |
| #define BA_PIPE_CTRL_sp_dwa_10b_normal_mode 0x0010 |
| #define B16PIPE_CTRL_sp_dwa_10b_normal_mode 0x0010 |
| #define LSb32PIPE_CTRL_sp_dwa_10b_normal_mode 3 |
| #define LSb16PIPE_CTRL_sp_dwa_10b_normal_mode 3 |
| #define bPIPE_CTRL_sp_dwa_10b_normal_mode 1 |
| #define MSK32PIPE_CTRL_sp_dwa_10b_normal_mode 0x00000008 |
| |
| #define BA_PIPE_CTRL_sp_dwa_10b_inverse_mode 0x0010 |
| #define B16PIPE_CTRL_sp_dwa_10b_inverse_mode 0x0010 |
| #define LSb32PIPE_CTRL_sp_dwa_10b_inverse_mode 4 |
| #define LSb16PIPE_CTRL_sp_dwa_10b_inverse_mode 4 |
| #define bPIPE_CTRL_sp_dwa_10b_inverse_mode 1 |
| #define MSK32PIPE_CTRL_sp_dwa_10b_inverse_mode 0x00000010 |
| |
| #define BA_PIPE_CTRL_cswap 0x0010 |
| #define B16PIPE_CTRL_cswap 0x0010 |
| #define LSb32PIPE_CTRL_cswap 5 |
| #define LSb16PIPE_CTRL_cswap 5 |
| #define bPIPE_CTRL_cswap 1 |
| #define MSK32PIPE_CTRL_cswap 0x00000020 |
| |
| #define BA_PIPE_CTRL_rdmain_initval0 0x0010 |
| #define B16PIPE_CTRL_rdmain_initval0 0x0010 |
| #define LSb32PIPE_CTRL_rdmain_initval0 6 |
| #define LSb16PIPE_CTRL_rdmain_initval0 6 |
| #define bPIPE_CTRL_rdmain_initval0 1 |
| #define MSK32PIPE_CTRL_rdmain_initval0 0x00000040 |
| |
| #define BA_PIPE_CTRL_rdmain_initval1 0x0010 |
| #define B16PIPE_CTRL_rdmain_initval1 0x0010 |
| #define LSb32PIPE_CTRL_rdmain_initval1 7 |
| #define LSb16PIPE_CTRL_rdmain_initval1 7 |
| #define bPIPE_CTRL_rdmain_initval1 1 |
| #define MSK32PIPE_CTRL_rdmain_initval1 0x00000080 |
| |
| #define BA_PIPE_CTRL_rd_mask_sftrst 0x0011 |
| #define B16PIPE_CTRL_rd_mask_sftrst 0x0010 |
| #define LSb32PIPE_CTRL_rd_mask_sftrst 8 |
| #define LSb16PIPE_CTRL_rd_mask_sftrst 8 |
| #define bPIPE_CTRL_rd_mask_sftrst 1 |
| #define MSK32PIPE_CTRL_rd_mask_sftrst 0x00000100 |
| |
| #define BA_PIPE_CTRL_yc_rdmask_sftrst 0x0011 |
| #define B16PIPE_CTRL_yc_rdmask_sftrst 0x0010 |
| #define LSb32PIPE_CTRL_yc_rdmask_sftrst 9 |
| #define LSb16PIPE_CTRL_yc_rdmask_sftrst 9 |
| #define bPIPE_CTRL_yc_rdmask_sftrst 1 |
| #define MSK32PIPE_CTRL_yc_rdmask_sftrst 0x00000200 |
| |
| #define BA_PIPE_CTRL_bitmap40_bypass 0x0011 |
| #define B16PIPE_CTRL_bitmap40_bypass 0x0010 |
| #define LSb32PIPE_CTRL_bitmap40_bypass 10 |
| #define LSb16PIPE_CTRL_bitmap40_bypass 10 |
| #define bPIPE_CTRL_bitmap40_bypass 1 |
| #define MSK32PIPE_CTRL_bitmap40_bypass 0x00000400 |
| |
| #define BA_PIPE_CTRL_dpidataen_pol 0x0011 |
| #define B16PIPE_CTRL_dpidataen_pol 0x0010 |
| #define LSb32PIPE_CTRL_dpidataen_pol 11 |
| #define LSb16PIPE_CTRL_dpidataen_pol 11 |
| #define bPIPE_CTRL_dpidataen_pol 1 |
| #define MSK32PIPE_CTRL_dpidataen_pol 0x00000800 |
| |
| #define BA_PIPE_CTRL_dpivsync_pol 0x0011 |
| #define B16PIPE_CTRL_dpivsync_pol 0x0010 |
| #define LSb32PIPE_CTRL_dpivsync_pol 12 |
| #define LSb16PIPE_CTRL_dpivsync_pol 12 |
| #define bPIPE_CTRL_dpivsync_pol 1 |
| #define MSK32PIPE_CTRL_dpivsync_pol 0x00001000 |
| |
| #define BA_PIPE_CTRL_dpihsync_pol 0x0011 |
| #define B16PIPE_CTRL_dpihsync_pol 0x0010 |
| #define LSb32PIPE_CTRL_dpihsync_pol 13 |
| #define LSb16PIPE_CTRL_dpihsync_pol 13 |
| #define bPIPE_CTRL_dpihsync_pol 1 |
| #define MSK32PIPE_CTRL_dpihsync_pol 0x00002000 |
| |
| #define BA_PIPE_CTRL_dpishutd_pol 0x0011 |
| #define B16PIPE_CTRL_dpishutd_pol 0x0010 |
| #define LSb32PIPE_CTRL_dpishutd_pol 14 |
| #define LSb16PIPE_CTRL_dpishutd_pol 14 |
| #define bPIPE_CTRL_dpishutd_pol 1 |
| #define MSK32PIPE_CTRL_dpishutd_pol 0x00004000 |
| |
| #define BA_PIPE_CTRL_dpicolorm_pol 0x0011 |
| #define B16PIPE_CTRL_dpicolorm_pol 0x0010 |
| #define LSb32PIPE_CTRL_dpicolorm_pol 15 |
| #define LSb16PIPE_CTRL_dpicolorm_pol 15 |
| #define bPIPE_CTRL_dpicolorm_pol 1 |
| #define MSK32PIPE_CTRL_dpicolorm_pol 0x00008000 |
| /////////////////////////////////////////////////////////// |
| #define RA_PIPE_UFSTATUS 0x0014 |
| |
| #define BA_PIPE_UFSTATUS_rdcli0_uf 0x0014 |
| #define B16PIPE_UFSTATUS_rdcli0_uf 0x0014 |
| #define LSb32PIPE_UFSTATUS_rdcli0_uf 0 |
| #define LSb16PIPE_UFSTATUS_rdcli0_uf 0 |
| #define bPIPE_UFSTATUS_rdcli0_uf 1 |
| #define MSK32PIPE_UFSTATUS_rdcli0_uf 0x00000001 |
| |
| #define BA_PIPE_UFSTATUS_rdcli1_uf 0x0014 |
| #define B16PIPE_UFSTATUS_rdcli1_uf 0x0014 |
| #define LSb32PIPE_UFSTATUS_rdcli1_uf 1 |
| #define LSb16PIPE_UFSTATUS_rdcli1_uf 1 |
| #define bPIPE_UFSTATUS_rdcli1_uf 1 |
| #define MSK32PIPE_UFSTATUS_rdcli1_uf 0x00000002 |
| |
| #define BA_PIPE_UFSTATUS_dpite 0x0014 |
| #define B16PIPE_UFSTATUS_dpite 0x0014 |
| #define LSb32PIPE_UFSTATUS_dpite 2 |
| #define LSb16PIPE_UFSTATUS_dpite 2 |
| #define bPIPE_UFSTATUS_dpite 1 |
| #define MSK32PIPE_UFSTATUS_dpite 0x00000004 |
| /////////////////////////////////////////////////////////// |
| #define RA_PIPE_DSI 0x0018 |
| |
| #define BA_PIPE_DSI_colormode 0x0018 |
| #define B16PIPE_DSI_colormode 0x0018 |
| #define LSb32PIPE_DSI_colormode 0 |
| #define LSb16PIPE_DSI_colormode 0 |
| #define bPIPE_DSI_colormode 1 |
| #define MSK32PIPE_DSI_colormode 0x00000001 |
| |
| #define BA_PIPE_DSI_shutdn 0x0018 |
| #define B16PIPE_DSI_shutdn 0x0018 |
| #define LSb32PIPE_DSI_shutdn 1 |
| #define LSb16PIPE_DSI_shutdn 1 |
| #define bPIPE_DSI_shutdn 1 |
| #define MSK32PIPE_DSI_shutdn 0x00000002 |
| |
| #define BA_PIPE_DSI_hw_updatecfg_on 0x0018 |
| #define B16PIPE_DSI_hw_updatecfg_on 0x0018 |
| #define LSb32PIPE_DSI_hw_updatecfg_on 2 |
| #define LSb16PIPE_DSI_hw_updatecfg_on 2 |
| #define bPIPE_DSI_hw_updatecfg_on 1 |
| #define MSK32PIPE_DSI_hw_updatecfg_on 0x00000004 |
| |
| #define BA_PIPE_DSI_hw_tear_effect_on 0x0018 |
| #define B16PIPE_DSI_hw_tear_effect_on 0x0018 |
| #define LSb32PIPE_DSI_hw_tear_effect_on 3 |
| #define LSb16PIPE_DSI_hw_tear_effect_on 3 |
| #define bPIPE_DSI_hw_tear_effect_on 1 |
| #define MSK32PIPE_DSI_hw_tear_effect_on 0x00000008 |
| |
| #define BA_PIPE_DSI_force_pll_on 0x0018 |
| #define B16PIPE_DSI_force_pll_on 0x0018 |
| #define LSb32PIPE_DSI_force_pll_on 4 |
| #define LSb16PIPE_DSI_force_pll_on 4 |
| #define bPIPE_DSI_force_pll_on 1 |
| #define MSK32PIPE_DSI_force_pll_on 0x00000010 |
| |
| #define BA_PIPE_DSI_tear_request_pulse 0x0018 |
| #define B16PIPE_DSI_tear_request_pulse 0x0018 |
| #define LSb32PIPE_DSI_tear_request_pulse 5 |
| #define LSb16PIPE_DSI_tear_request_pulse 5 |
| #define bPIPE_DSI_tear_request_pulse 1 |
| #define MSK32PIPE_DSI_tear_request_pulse 0x00000020 |
| |
| #define BA_PIPE_DSI_updatecfg_pulse 0x0018 |
| #define B16PIPE_DSI_updatecfg_pulse 0x0018 |
| #define LSb32PIPE_DSI_updatecfg_pulse 6 |
| #define LSb16PIPE_DSI_updatecfg_pulse 6 |
| #define bPIPE_DSI_updatecfg_pulse 1 |
| #define MSK32PIPE_DSI_updatecfg_pulse 0x00000040 |
| |
| #define BA_PIPE_DSI_edpi_mode 0x0018 |
| #define B16PIPE_DSI_edpi_mode 0x0018 |
| #define LSb32PIPE_DSI_edpi_mode 7 |
| #define LSb16PIPE_DSI_edpi_mode 7 |
| #define bPIPE_DSI_edpi_mode 1 |
| #define MSK32PIPE_DSI_edpi_mode 0x00000080 |
| |
| #define BA_PIPE_DSI_tear_sftrst 0x0019 |
| #define B16PIPE_DSI_tear_sftrst 0x0018 |
| #define LSb32PIPE_DSI_tear_sftrst 8 |
| #define LSb16PIPE_DSI_tear_sftrst 8 |
| #define bPIPE_DSI_tear_sftrst 1 |
| #define MSK32PIPE_DSI_tear_sftrst 0x00000100 |
| /////////////////////////////////////////////////////////// |
| #define RA_PIPE_DPHY 0x001C |
| |
| #define BA_PIPE_DPHY_turn_disable_lane0 0x001C |
| #define B16PIPE_DPHY_turn_disable_lane0 0x001C |
| #define LSb32PIPE_DPHY_turn_disable_lane0 0 |
| #define LSb16PIPE_DPHY_turn_disable_lane0 0 |
| #define bPIPE_DPHY_turn_disable_lane0 1 |
| #define MSK32PIPE_DPHY_turn_disable_lane0 0x00000001 |
| |
| #define BA_PIPE_DPHY_ftxstopmode_lane0 0x001C |
| #define B16PIPE_DPHY_ftxstopmode_lane0 0x001C |
| #define LSb32PIPE_DPHY_ftxstopmode_lane0 1 |
| #define LSb16PIPE_DPHY_ftxstopmode_lane0 1 |
| #define bPIPE_DPHY_ftxstopmode_lane0 1 |
| #define MSK32PIPE_DPHY_ftxstopmode_lane0 0x00000002 |
| |
| #define BA_PIPE_DPHY_forcerxmode_lane0 0x001C |
| #define B16PIPE_DPHY_forcerxmode_lane0 0x001C |
| #define LSb32PIPE_DPHY_forcerxmode_lane0 2 |
| #define LSb16PIPE_DPHY_forcerxmode_lane0 2 |
| #define bPIPE_DPHY_forcerxmode_lane0 1 |
| #define MSK32PIPE_DPHY_forcerxmode_lane0 0x00000004 |
| |
| #define BA_PIPE_DPHY_csr_cfgrstn 0x001C |
| #define B16PIPE_DPHY_csr_cfgrstn 0x001C |
| #define LSb32PIPE_DPHY_csr_cfgrstn 3 |
| #define LSb16PIPE_DPHY_csr_cfgrstn 3 |
| #define bPIPE_DPHY_csr_cfgrstn 1 |
| #define MSK32PIPE_DPHY_csr_cfgrstn 0x00000008 |
| /////////////////////////////////////////////////////////// |
| #define RA_PIPE_INVSCAN 0x0020 |
| |
| #define BA_PIPE_INVSCAN_bitmap128_Rd0_en 0x0020 |
| #define B16PIPE_INVSCAN_bitmap128_Rd0_en 0x0020 |
| #define LSb32PIPE_INVSCAN_bitmap128_Rd0_en 0 |
| #define LSb16PIPE_INVSCAN_bitmap128_Rd0_en 0 |
| #define bPIPE_INVSCAN_bitmap128_Rd0_en 1 |
| #define MSK32PIPE_INVSCAN_bitmap128_Rd0_en 0x00000001 |
| |
| #define BA_PIPE_INVSCAN_bitmap128_Rd1_en 0x0020 |
| #define B16PIPE_INVSCAN_bitmap128_Rd1_en 0x0020 |
| #define LSb32PIPE_INVSCAN_bitmap128_Rd1_en 1 |
| #define LSb16PIPE_INVSCAN_bitmap128_Rd1_en 1 |
| #define bPIPE_INVSCAN_bitmap128_Rd1_en 1 |
| #define MSK32PIPE_INVSCAN_bitmap128_Rd1_en 0x00000002 |
| /////////////////////////////////////////////////////////// |
| #define RA_PIPE_STATUS 0x0024 |
| |
| #define BA_PIPE_STATUS_vcnt 0x0024 |
| #define B16PIPE_STATUS_vcnt 0x0024 |
| #define LSb32PIPE_STATUS_vcnt 0 |
| #define LSb16PIPE_STATUS_vcnt 0 |
| #define bPIPE_STATUS_vcnt 16 |
| #define MSK32PIPE_STATUS_vcnt 0x0000FFFF |
| /////////////////////////////////////////////////////////// |
| #define RA_PIPE_TG 0x0028 |
| /////////////////////////////////////////////////////////// |
| #define RA_PIPE_BITMAP40 0x00DC |
| /////////////////////////////////////////////////////////// |
| #define RA_PIPE_RdClient0 0x00FC |
| /////////////////////////////////////////////////////////// |
| #define RA_PIPE_RdClient1 0x010C |
| /////////////////////////////////////////////////////////// |
| |
| typedef struct SIE_PIPE { |
| /////////////////////////////////////////////////////////// |
| #define GET32PIPE_CTRL0_tg_start(r32) _BFGET_(r32, 0, 0) |
| #define SET32PIPE_CTRL0_tg_start(r32,v) _BFSET_(r32, 0, 0,v) |
| #define GET16PIPE_CTRL0_tg_start(r16) _BFGET_(r16, 0, 0) |
| #define SET16PIPE_CTRL0_tg_start(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define GET32PIPE_CTRL0_tg_clear(r32) _BFGET_(r32, 1, 1) |
| #define SET32PIPE_CTRL0_tg_clear(r32,v) _BFSET_(r32, 1, 1,v) |
| #define GET16PIPE_CTRL0_tg_clear(r16) _BFGET_(r16, 1, 1) |
| #define SET16PIPE_CTRL0_tg_clear(r16,v) _BFSET_(r16, 1, 1,v) |
| |
| #define w32PIPE_CTRL0 {\ |
| UNSG32 uCTRL0_tg_start : 1;\ |
| UNSG32 uCTRL0_tg_clear : 1;\ |
| UNSG32 RSVDx0_b2 : 30;\ |
| } |
| union { UNSG32 u32PIPE_CTRL0; |
| struct w32PIPE_CTRL0; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32PIPE_CTRL1_clken_ctrl0(r32) _BFGET_(r32, 0, 0) |
| #define SET32PIPE_CTRL1_clken_ctrl0(r32,v) _BFSET_(r32, 0, 0,v) |
| #define GET16PIPE_CTRL1_clken_ctrl0(r16) _BFGET_(r16, 0, 0) |
| #define SET16PIPE_CTRL1_clken_ctrl0(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define GET32PIPE_CTRL1_clken_ctrl1(r32) _BFGET_(r32, 1, 1) |
| #define SET32PIPE_CTRL1_clken_ctrl1(r32,v) _BFSET_(r32, 1, 1,v) |
| #define GET16PIPE_CTRL1_clken_ctrl1(r16) _BFGET_(r16, 1, 1) |
| #define SET16PIPE_CTRL1_clken_ctrl1(r16,v) _BFSET_(r16, 1, 1,v) |
| |
| #define GET32PIPE_CTRL1_clken_ctrl2(r32) _BFGET_(r32, 2, 2) |
| #define SET32PIPE_CTRL1_clken_ctrl2(r32,v) _BFSET_(r32, 2, 2,v) |
| #define GET16PIPE_CTRL1_clken_ctrl2(r16) _BFGET_(r16, 2, 2) |
| #define SET16PIPE_CTRL1_clken_ctrl2(r16,v) _BFSET_(r16, 2, 2,v) |
| |
| #define GET32PIPE_CTRL1_clken_ctrl3(r32) _BFGET_(r32, 3, 3) |
| #define SET32PIPE_CTRL1_clken_ctrl3(r32,v) _BFSET_(r32, 3, 3,v) |
| #define GET16PIPE_CTRL1_clken_ctrl3(r16) _BFGET_(r16, 3, 3) |
| #define SET16PIPE_CTRL1_clken_ctrl3(r16,v) _BFSET_(r16, 3, 3,v) |
| |
| #define GET32PIPE_CTRL1_clken_ctrl4(r32) _BFGET_(r32, 4, 4) |
| #define SET32PIPE_CTRL1_clken_ctrl4(r32,v) _BFSET_(r32, 4, 4,v) |
| #define GET16PIPE_CTRL1_clken_ctrl4(r16) _BFGET_(r16, 4, 4) |
| #define SET16PIPE_CTRL1_clken_ctrl4(r16,v) _BFSET_(r16, 4, 4,v) |
| |
| #define GET32PIPE_CTRL1_bitMap_en(r32) _BFGET_(r32, 5, 5) |
| #define SET32PIPE_CTRL1_bitMap_en(r32,v) _BFSET_(r32, 5, 5,v) |
| #define GET16PIPE_CTRL1_bitMap_en(r16) _BFGET_(r16, 5, 5) |
| #define SET16PIPE_CTRL1_bitMap_en(r16,v) _BFSET_(r16, 5, 5,v) |
| |
| #define GET32PIPE_CTRL1_crop_de_en(r32) _BFGET_(r32, 6, 6) |
| #define SET32PIPE_CTRL1_crop_de_en(r32,v) _BFSET_(r32, 6, 6,v) |
| #define GET16PIPE_CTRL1_crop_de_en(r16) _BFGET_(r16, 6, 6) |
| #define SET16PIPE_CTRL1_crop_de_en(r16,v) _BFSET_(r16, 6, 6,v) |
| |
| #define GET32PIPE_CTRL1_crop_de2_en(r32) _BFGET_(r32, 7, 7) |
| #define SET32PIPE_CTRL1_crop_de2_en(r32,v) _BFSET_(r32, 7, 7,v) |
| #define GET16PIPE_CTRL1_crop_de2_en(r16) _BFGET_(r16, 7, 7) |
| #define SET16PIPE_CTRL1_crop_de2_en(r16,v) _BFSET_(r16, 7, 7,v) |
| |
| #define GET32PIPE_CTRL1_rdsel_422SP(r32) _BFGET_(r32, 8, 8) |
| #define SET32PIPE_CTRL1_rdsel_422SP(r32,v) _BFSET_(r32, 8, 8,v) |
| #define GET16PIPE_CTRL1_rdsel_422SP(r16) _BFGET_(r16, 8, 8) |
| #define SET16PIPE_CTRL1_rdsel_422SP(r16,v) _BFSET_(r16, 8, 8,v) |
| |
| #define GET32PIPE_CTRL1_rdsel_420SP(r32) _BFGET_(r32, 9, 9) |
| #define SET32PIPE_CTRL1_rdsel_420SP(r32,v) _BFSET_(r32, 9, 9,v) |
| #define GET16PIPE_CTRL1_rdsel_420SP(r16) _BFGET_(r16, 9, 9) |
| #define SET16PIPE_CTRL1_rdsel_420SP(r16,v) _BFSET_(r16, 9, 9,v) |
| |
| #define GET32PIPE_CTRL1_yuv420sp_2p1c(r32) _BFGET_(r32,10,10) |
| #define SET32PIPE_CTRL1_yuv420sp_2p1c(r32,v) _BFSET_(r32,10,10,v) |
| #define GET16PIPE_CTRL1_yuv420sp_2p1c(r16) _BFGET_(r16,10,10) |
| #define SET16PIPE_CTRL1_yuv420sp_2p1c(r16,v) _BFSET_(r16,10,10,v) |
| |
| #define GET32PIPE_CTRL1_eof_frst_mask(r32) _BFGET_(r32,11,11) |
| #define SET32PIPE_CTRL1_eof_frst_mask(r32,v) _BFSET_(r32,11,11,v) |
| #define GET16PIPE_CTRL1_eof_frst_mask(r16) _BFGET_(r16,11,11) |
| #define SET16PIPE_CTRL1_eof_frst_mask(r16,v) _BFSET_(r16,11,11,v) |
| |
| #define GET32PIPE_CTRL1_eof_frst_sel(r32) _BFGET_(r32,12,12) |
| #define SET32PIPE_CTRL1_eof_frst_sel(r32,v) _BFSET_(r32,12,12,v) |
| #define GET16PIPE_CTRL1_eof_frst_sel(r16) _BFGET_(r16,12,12) |
| #define SET16PIPE_CTRL1_eof_frst_sel(r16,v) _BFSET_(r16,12,12,v) |
| |
| #define w32PIPE_CTRL1 {\ |
| UNSG32 uCTRL1_clken_ctrl0 : 1;\ |
| UNSG32 uCTRL1_clken_ctrl1 : 1;\ |
| UNSG32 uCTRL1_clken_ctrl2 : 1;\ |
| UNSG32 uCTRL1_clken_ctrl3 : 1;\ |
| UNSG32 uCTRL1_clken_ctrl4 : 1;\ |
| UNSG32 uCTRL1_bitMap_en : 1;\ |
| UNSG32 uCTRL1_crop_de_en : 1;\ |
| UNSG32 uCTRL1_crop_de2_en : 1;\ |
| UNSG32 uCTRL1_rdsel_422SP : 1;\ |
| UNSG32 uCTRL1_rdsel_420SP : 1;\ |
| UNSG32 uCTRL1_yuv420sp_2p1c : 1;\ |
| UNSG32 uCTRL1_eof_frst_mask : 1;\ |
| UNSG32 uCTRL1_eof_frst_sel : 1;\ |
| UNSG32 RSVDx4_b13 : 19;\ |
| } |
| union { UNSG32 u32PIPE_CTRL1; |
| struct w32PIPE_CTRL1; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32PIPE_CTRL2_clken_rdcli0uf_all(r32) _BFGET_(r32, 0, 0) |
| #define SET32PIPE_CTRL2_clken_rdcli0uf_all(r32,v) _BFSET_(r32, 0, 0,v) |
| #define GET16PIPE_CTRL2_clken_rdcli0uf_all(r16) _BFGET_(r16, 0, 0) |
| #define SET16PIPE_CTRL2_clken_rdcli0uf_all(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define GET32PIPE_CTRL2_clken_rdcli1uf_all(r32) _BFGET_(r32, 1, 1) |
| #define SET32PIPE_CTRL2_clken_rdcli1uf_all(r32,v) _BFSET_(r32, 1, 1,v) |
| #define GET16PIPE_CTRL2_clken_rdcli1uf_all(r16) _BFGET_(r16, 1, 1) |
| #define SET16PIPE_CTRL2_clken_rdcli1uf_all(r16,v) _BFSET_(r16, 1, 1,v) |
| |
| #define w32PIPE_CTRL2 {\ |
| UNSG32 uCTRL2_clken_rdcli0uf_all : 1;\ |
| UNSG32 uCTRL2_clken_rdcli1uf_all : 1;\ |
| UNSG32 RSVDx8_b2 : 30;\ |
| } |
| union { UNSG32 u32PIPE_CTRL2; |
| struct w32PIPE_CTRL2; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32PIPE_MTG_cfg_rst(r32) _BFGET_(r32, 0, 0) |
| #define SET32PIPE_MTG_cfg_rst(r32,v) _BFSET_(r32, 0, 0,v) |
| #define GET16PIPE_MTG_cfg_rst(r16) _BFGET_(r16, 0, 0) |
| #define SET16PIPE_MTG_cfg_rst(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define GET32PIPE_MTG_hcnt_rstval(r32) _BFGET_(r32,13, 1) |
| #define SET32PIPE_MTG_hcnt_rstval(r32,v) _BFSET_(r32,13, 1,v) |
| #define GET16PIPE_MTG_hcnt_rstval(r16) _BFGET_(r16,13, 1) |
| #define SET16PIPE_MTG_hcnt_rstval(r16,v) _BFSET_(r16,13, 1,v) |
| |
| #define GET32PIPE_MTG_vcnt_rstval(r32) _BFGET_(r32,25,14) |
| #define SET32PIPE_MTG_vcnt_rstval(r32,v) _BFSET_(r32,25,14,v) |
| |
| #define GET32PIPE_MTG_prog_line_dly(r32) _BFGET_(r32,27,26) |
| #define SET32PIPE_MTG_prog_line_dly(r32,v) _BFSET_(r32,27,26,v) |
| #define GET16PIPE_MTG_prog_line_dly(r16) _BFGET_(r16,11,10) |
| #define SET16PIPE_MTG_prog_line_dly(r16,v) _BFSET_(r16,11,10,v) |
| |
| #define w32PIPE_MTG {\ |
| UNSG32 uMTG_cfg_rst : 1;\ |
| UNSG32 uMTG_hcnt_rstval : 13;\ |
| UNSG32 uMTG_vcnt_rstval : 12;\ |
| UNSG32 uMTG_prog_line_dly : 2;\ |
| UNSG32 RSVDxC_b28 : 4;\ |
| } |
| union { UNSG32 u32PIPE_MTG; |
| struct w32PIPE_MTG; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32PIPE_CTRL_idata_ctrl(r32) _BFGET_(r32, 2, 0) |
| #define SET32PIPE_CTRL_idata_ctrl(r32,v) _BFSET_(r32, 2, 0,v) |
| #define GET16PIPE_CTRL_idata_ctrl(r16) _BFGET_(r16, 2, 0) |
| #define SET16PIPE_CTRL_idata_ctrl(r16,v) _BFSET_(r16, 2, 0,v) |
| |
| #define GET32PIPE_CTRL_sp_dwa_10b_normal_mode(r32) _BFGET_(r32, 3, 3) |
| #define SET32PIPE_CTRL_sp_dwa_10b_normal_mode(r32,v) _BFSET_(r32, 3, 3,v) |
| #define GET16PIPE_CTRL_sp_dwa_10b_normal_mode(r16) _BFGET_(r16, 3, 3) |
| #define SET16PIPE_CTRL_sp_dwa_10b_normal_mode(r16,v) _BFSET_(r16, 3, 3,v) |
| |
| #define GET32PIPE_CTRL_sp_dwa_10b_inverse_mode(r32) _BFGET_(r32, 4, 4) |
| #define SET32PIPE_CTRL_sp_dwa_10b_inverse_mode(r32,v) _BFSET_(r32, 4, 4,v) |
| #define GET16PIPE_CTRL_sp_dwa_10b_inverse_mode(r16) _BFGET_(r16, 4, 4) |
| #define SET16PIPE_CTRL_sp_dwa_10b_inverse_mode(r16,v) _BFSET_(r16, 4, 4,v) |
| |
| #define GET32PIPE_CTRL_cswap(r32) _BFGET_(r32, 5, 5) |
| #define SET32PIPE_CTRL_cswap(r32,v) _BFSET_(r32, 5, 5,v) |
| #define GET16PIPE_CTRL_cswap(r16) _BFGET_(r16, 5, 5) |
| #define SET16PIPE_CTRL_cswap(r16,v) _BFSET_(r16, 5, 5,v) |
| |
| #define GET32PIPE_CTRL_rdmain_initval0(r32) _BFGET_(r32, 6, 6) |
| #define SET32PIPE_CTRL_rdmain_initval0(r32,v) _BFSET_(r32, 6, 6,v) |
| #define GET16PIPE_CTRL_rdmain_initval0(r16) _BFGET_(r16, 6, 6) |
| #define SET16PIPE_CTRL_rdmain_initval0(r16,v) _BFSET_(r16, 6, 6,v) |
| |
| #define GET32PIPE_CTRL_rdmain_initval1(r32) _BFGET_(r32, 7, 7) |
| #define SET32PIPE_CTRL_rdmain_initval1(r32,v) _BFSET_(r32, 7, 7,v) |
| #define GET16PIPE_CTRL_rdmain_initval1(r16) _BFGET_(r16, 7, 7) |
| #define SET16PIPE_CTRL_rdmain_initval1(r16,v) _BFSET_(r16, 7, 7,v) |
| |
| #define GET32PIPE_CTRL_rd_mask_sftrst(r32) _BFGET_(r32, 8, 8) |
| #define SET32PIPE_CTRL_rd_mask_sftrst(r32,v) _BFSET_(r32, 8, 8,v) |
| #define GET16PIPE_CTRL_rd_mask_sftrst(r16) _BFGET_(r16, 8, 8) |
| #define SET16PIPE_CTRL_rd_mask_sftrst(r16,v) _BFSET_(r16, 8, 8,v) |
| |
| #define GET32PIPE_CTRL_yc_rdmask_sftrst(r32) _BFGET_(r32, 9, 9) |
| #define SET32PIPE_CTRL_yc_rdmask_sftrst(r32,v) _BFSET_(r32, 9, 9,v) |
| #define GET16PIPE_CTRL_yc_rdmask_sftrst(r16) _BFGET_(r16, 9, 9) |
| #define SET16PIPE_CTRL_yc_rdmask_sftrst(r16,v) _BFSET_(r16, 9, 9,v) |
| |
| #define GET32PIPE_CTRL_bitmap40_bypass(r32) _BFGET_(r32,10,10) |
| #define SET32PIPE_CTRL_bitmap40_bypass(r32,v) _BFSET_(r32,10,10,v) |
| #define GET16PIPE_CTRL_bitmap40_bypass(r16) _BFGET_(r16,10,10) |
| #define SET16PIPE_CTRL_bitmap40_bypass(r16,v) _BFSET_(r16,10,10,v) |
| |
| #define GET32PIPE_CTRL_dpidataen_pol(r32) _BFGET_(r32,11,11) |
| #define SET32PIPE_CTRL_dpidataen_pol(r32,v) _BFSET_(r32,11,11,v) |
| #define GET16PIPE_CTRL_dpidataen_pol(r16) _BFGET_(r16,11,11) |
| #define SET16PIPE_CTRL_dpidataen_pol(r16,v) _BFSET_(r16,11,11,v) |
| |
| #define GET32PIPE_CTRL_dpivsync_pol(r32) _BFGET_(r32,12,12) |
| #define SET32PIPE_CTRL_dpivsync_pol(r32,v) _BFSET_(r32,12,12,v) |
| #define GET16PIPE_CTRL_dpivsync_pol(r16) _BFGET_(r16,12,12) |
| #define SET16PIPE_CTRL_dpivsync_pol(r16,v) _BFSET_(r16,12,12,v) |
| |
| #define GET32PIPE_CTRL_dpihsync_pol(r32) _BFGET_(r32,13,13) |
| #define SET32PIPE_CTRL_dpihsync_pol(r32,v) _BFSET_(r32,13,13,v) |
| #define GET16PIPE_CTRL_dpihsync_pol(r16) _BFGET_(r16,13,13) |
| #define SET16PIPE_CTRL_dpihsync_pol(r16,v) _BFSET_(r16,13,13,v) |
| |
| #define GET32PIPE_CTRL_dpishutd_pol(r32) _BFGET_(r32,14,14) |
| #define SET32PIPE_CTRL_dpishutd_pol(r32,v) _BFSET_(r32,14,14,v) |
| #define GET16PIPE_CTRL_dpishutd_pol(r16) _BFGET_(r16,14,14) |
| #define SET16PIPE_CTRL_dpishutd_pol(r16,v) _BFSET_(r16,14,14,v) |
| |
| #define GET32PIPE_CTRL_dpicolorm_pol(r32) _BFGET_(r32,15,15) |
| #define SET32PIPE_CTRL_dpicolorm_pol(r32,v) _BFSET_(r32,15,15,v) |
| #define GET16PIPE_CTRL_dpicolorm_pol(r16) _BFGET_(r16,15,15) |
| #define SET16PIPE_CTRL_dpicolorm_pol(r16,v) _BFSET_(r16,15,15,v) |
| |
| #define w32PIPE_CTRL {\ |
| UNSG32 uCTRL_idata_ctrl : 3;\ |
| UNSG32 uCTRL_sp_dwa_10b_normal_mode : 1;\ |
| UNSG32 uCTRL_sp_dwa_10b_inverse_mode : 1;\ |
| UNSG32 uCTRL_cswap : 1;\ |
| UNSG32 uCTRL_rdmain_initval0 : 1;\ |
| UNSG32 uCTRL_rdmain_initval1 : 1;\ |
| UNSG32 uCTRL_rd_mask_sftrst : 1;\ |
| UNSG32 uCTRL_yc_rdmask_sftrst : 1;\ |
| UNSG32 uCTRL_bitmap40_bypass : 1;\ |
| UNSG32 uCTRL_dpidataen_pol : 1;\ |
| UNSG32 uCTRL_dpivsync_pol : 1;\ |
| UNSG32 uCTRL_dpihsync_pol : 1;\ |
| UNSG32 uCTRL_dpishutd_pol : 1;\ |
| UNSG32 uCTRL_dpicolorm_pol : 1;\ |
| UNSG32 RSVDx10_b16 : 16;\ |
| } |
| union { UNSG32 u32PIPE_CTRL; |
| struct w32PIPE_CTRL; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32PIPE_UFSTATUS_rdcli0_uf(r32) _BFGET_(r32, 0, 0) |
| #define SET32PIPE_UFSTATUS_rdcli0_uf(r32,v) _BFSET_(r32, 0, 0,v) |
| #define GET16PIPE_UFSTATUS_rdcli0_uf(r16) _BFGET_(r16, 0, 0) |
| #define SET16PIPE_UFSTATUS_rdcli0_uf(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define GET32PIPE_UFSTATUS_rdcli1_uf(r32) _BFGET_(r32, 1, 1) |
| #define SET32PIPE_UFSTATUS_rdcli1_uf(r32,v) _BFSET_(r32, 1, 1,v) |
| #define GET16PIPE_UFSTATUS_rdcli1_uf(r16) _BFGET_(r16, 1, 1) |
| #define SET16PIPE_UFSTATUS_rdcli1_uf(r16,v) _BFSET_(r16, 1, 1,v) |
| |
| #define GET32PIPE_UFSTATUS_dpite(r32) _BFGET_(r32, 2, 2) |
| #define SET32PIPE_UFSTATUS_dpite(r32,v) _BFSET_(r32, 2, 2,v) |
| #define GET16PIPE_UFSTATUS_dpite(r16) _BFGET_(r16, 2, 2) |
| #define SET16PIPE_UFSTATUS_dpite(r16,v) _BFSET_(r16, 2, 2,v) |
| |
| #define w32PIPE_UFSTATUS {\ |
| UNSG32 uUFSTATUS_rdcli0_uf : 1;\ |
| UNSG32 uUFSTATUS_rdcli1_uf : 1;\ |
| UNSG32 uUFSTATUS_dpite : 1;\ |
| UNSG32 RSVDx14_b3 : 29;\ |
| } |
| union { UNSG32 u32PIPE_UFSTATUS; |
| struct w32PIPE_UFSTATUS; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32PIPE_DSI_colormode(r32) _BFGET_(r32, 0, 0) |
| #define SET32PIPE_DSI_colormode(r32,v) _BFSET_(r32, 0, 0,v) |
| #define GET16PIPE_DSI_colormode(r16) _BFGET_(r16, 0, 0) |
| #define SET16PIPE_DSI_colormode(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define GET32PIPE_DSI_shutdn(r32) _BFGET_(r32, 1, 1) |
| #define SET32PIPE_DSI_shutdn(r32,v) _BFSET_(r32, 1, 1,v) |
| #define GET16PIPE_DSI_shutdn(r16) _BFGET_(r16, 1, 1) |
| #define SET16PIPE_DSI_shutdn(r16,v) _BFSET_(r16, 1, 1,v) |
| |
| #define GET32PIPE_DSI_hw_updatecfg_on(r32) _BFGET_(r32, 2, 2) |
| #define SET32PIPE_DSI_hw_updatecfg_on(r32,v) _BFSET_(r32, 2, 2,v) |
| #define GET16PIPE_DSI_hw_updatecfg_on(r16) _BFGET_(r16, 2, 2) |
| #define SET16PIPE_DSI_hw_updatecfg_on(r16,v) _BFSET_(r16, 2, 2,v) |
| |
| #define GET32PIPE_DSI_hw_tear_effect_on(r32) _BFGET_(r32, 3, 3) |
| #define SET32PIPE_DSI_hw_tear_effect_on(r32,v) _BFSET_(r32, 3, 3,v) |
| #define GET16PIPE_DSI_hw_tear_effect_on(r16) _BFGET_(r16, 3, 3) |
| #define SET16PIPE_DSI_hw_tear_effect_on(r16,v) _BFSET_(r16, 3, 3,v) |
| |
| #define GET32PIPE_DSI_force_pll_on(r32) _BFGET_(r32, 4, 4) |
| #define SET32PIPE_DSI_force_pll_on(r32,v) _BFSET_(r32, 4, 4,v) |
| #define GET16PIPE_DSI_force_pll_on(r16) _BFGET_(r16, 4, 4) |
| #define SET16PIPE_DSI_force_pll_on(r16,v) _BFSET_(r16, 4, 4,v) |
| |
| #define GET32PIPE_DSI_tear_request_pulse(r32) _BFGET_(r32, 5, 5) |
| #define SET32PIPE_DSI_tear_request_pulse(r32,v) _BFSET_(r32, 5, 5,v) |
| #define GET16PIPE_DSI_tear_request_pulse(r16) _BFGET_(r16, 5, 5) |
| #define SET16PIPE_DSI_tear_request_pulse(r16,v) _BFSET_(r16, 5, 5,v) |
| |
| #define GET32PIPE_DSI_updatecfg_pulse(r32) _BFGET_(r32, 6, 6) |
| #define SET32PIPE_DSI_updatecfg_pulse(r32,v) _BFSET_(r32, 6, 6,v) |
| #define GET16PIPE_DSI_updatecfg_pulse(r16) _BFGET_(r16, 6, 6) |
| #define SET16PIPE_DSI_updatecfg_pulse(r16,v) _BFSET_(r16, 6, 6,v) |
| |
| #define GET32PIPE_DSI_edpi_mode(r32) _BFGET_(r32, 7, 7) |
| #define SET32PIPE_DSI_edpi_mode(r32,v) _BFSET_(r32, 7, 7,v) |
| #define GET16PIPE_DSI_edpi_mode(r16) _BFGET_(r16, 7, 7) |
| #define SET16PIPE_DSI_edpi_mode(r16,v) _BFSET_(r16, 7, 7,v) |
| |
| #define GET32PIPE_DSI_tear_sftrst(r32) _BFGET_(r32, 8, 8) |
| #define SET32PIPE_DSI_tear_sftrst(r32,v) _BFSET_(r32, 8, 8,v) |
| #define GET16PIPE_DSI_tear_sftrst(r16) _BFGET_(r16, 8, 8) |
| #define SET16PIPE_DSI_tear_sftrst(r16,v) _BFSET_(r16, 8, 8,v) |
| |
| #define w32PIPE_DSI {\ |
| UNSG32 uDSI_colormode : 1;\ |
| UNSG32 uDSI_shutdn : 1;\ |
| UNSG32 uDSI_hw_updatecfg_on : 1;\ |
| UNSG32 uDSI_hw_tear_effect_on : 1;\ |
| UNSG32 uDSI_force_pll_on : 1;\ |
| UNSG32 uDSI_tear_request_pulse : 1;\ |
| UNSG32 uDSI_updatecfg_pulse : 1;\ |
| UNSG32 uDSI_edpi_mode : 1;\ |
| UNSG32 uDSI_tear_sftrst : 1;\ |
| UNSG32 RSVDx18_b9 : 23;\ |
| } |
| union { UNSG32 u32PIPE_DSI; |
| struct w32PIPE_DSI; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32PIPE_DPHY_turn_disable_lane0(r32) _BFGET_(r32, 0, 0) |
| #define SET32PIPE_DPHY_turn_disable_lane0(r32,v) _BFSET_(r32, 0, 0,v) |
| #define GET16PIPE_DPHY_turn_disable_lane0(r16) _BFGET_(r16, 0, 0) |
| #define SET16PIPE_DPHY_turn_disable_lane0(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define GET32PIPE_DPHY_ftxstopmode_lane0(r32) _BFGET_(r32, 1, 1) |
| #define SET32PIPE_DPHY_ftxstopmode_lane0(r32,v) _BFSET_(r32, 1, 1,v) |
| #define GET16PIPE_DPHY_ftxstopmode_lane0(r16) _BFGET_(r16, 1, 1) |
| #define SET16PIPE_DPHY_ftxstopmode_lane0(r16,v) _BFSET_(r16, 1, 1,v) |
| |
| #define GET32PIPE_DPHY_forcerxmode_lane0(r32) _BFGET_(r32, 2, 2) |
| #define SET32PIPE_DPHY_forcerxmode_lane0(r32,v) _BFSET_(r32, 2, 2,v) |
| #define GET16PIPE_DPHY_forcerxmode_lane0(r16) _BFGET_(r16, 2, 2) |
| #define SET16PIPE_DPHY_forcerxmode_lane0(r16,v) _BFSET_(r16, 2, 2,v) |
| |
| #define GET32PIPE_DPHY_csr_cfgrstn(r32) _BFGET_(r32, 3, 3) |
| #define SET32PIPE_DPHY_csr_cfgrstn(r32,v) _BFSET_(r32, 3, 3,v) |
| #define GET16PIPE_DPHY_csr_cfgrstn(r16) _BFGET_(r16, 3, 3) |
| #define SET16PIPE_DPHY_csr_cfgrstn(r16,v) _BFSET_(r16, 3, 3,v) |
| |
| #define w32PIPE_DPHY {\ |
| UNSG32 uDPHY_turn_disable_lane0 : 1;\ |
| UNSG32 uDPHY_ftxstopmode_lane0 : 1;\ |
| UNSG32 uDPHY_forcerxmode_lane0 : 1;\ |
| UNSG32 uDPHY_csr_cfgrstn : 1;\ |
| UNSG32 RSVDx1C_b4 : 28;\ |
| } |
| union { UNSG32 u32PIPE_DPHY; |
| struct w32PIPE_DPHY; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32PIPE_INVSCAN_bitmap128_Rd0_en(r32) _BFGET_(r32, 0, 0) |
| #define SET32PIPE_INVSCAN_bitmap128_Rd0_en(r32,v) _BFSET_(r32, 0, 0,v) |
| #define GET16PIPE_INVSCAN_bitmap128_Rd0_en(r16) _BFGET_(r16, 0, 0) |
| #define SET16PIPE_INVSCAN_bitmap128_Rd0_en(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define GET32PIPE_INVSCAN_bitmap128_Rd1_en(r32) _BFGET_(r32, 1, 1) |
| #define SET32PIPE_INVSCAN_bitmap128_Rd1_en(r32,v) _BFSET_(r32, 1, 1,v) |
| #define GET16PIPE_INVSCAN_bitmap128_Rd1_en(r16) _BFGET_(r16, 1, 1) |
| #define SET16PIPE_INVSCAN_bitmap128_Rd1_en(r16,v) _BFSET_(r16, 1, 1,v) |
| |
| #define w32PIPE_INVSCAN {\ |
| UNSG32 uINVSCAN_bitmap128_Rd0_en : 1;\ |
| UNSG32 uINVSCAN_bitmap128_Rd1_en : 1;\ |
| UNSG32 RSVDx20_b2 : 30;\ |
| } |
| union { UNSG32 u32PIPE_INVSCAN; |
| struct w32PIPE_INVSCAN; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32PIPE_STATUS_vcnt(r32) _BFGET_(r32,15, 0) |
| #define SET32PIPE_STATUS_vcnt(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16PIPE_STATUS_vcnt(r16) _BFGET_(r16,15, 0) |
| #define SET16PIPE_STATUS_vcnt(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define w32PIPE_STATUS {\ |
| UNSG32 uSTATUS_vcnt : 16;\ |
| UNSG32 RSVDx24_b16 : 16;\ |
| } |
| union { UNSG32 u32PIPE_STATUS; |
| struct w32PIPE_STATUS; |
| }; |
| /////////////////////////////////////////////////////////// |
| SIE_BETG ie_TG; |
| /////////////////////////////////////////////////////////// |
| SIE_BITMAP40 ie_BITMAP40; |
| /////////////////////////////////////////////////////////// |
| SIE_ReadClient ie_RdClient0; |
| /////////////////////////////////////////////////////////// |
| SIE_ReadClient ie_RdClient1; |
| /////////////////////////////////////////////////////////// |
| } SIE_PIPE; |
| |
| typedef union T32PIPE_CTRL0 |
| { UNSG32 u32; |
| struct w32PIPE_CTRL0; |
| } T32PIPE_CTRL0; |
| typedef union T32PIPE_CTRL1 |
| { UNSG32 u32; |
| struct w32PIPE_CTRL1; |
| } T32PIPE_CTRL1; |
| typedef union T32PIPE_CTRL2 |
| { UNSG32 u32; |
| struct w32PIPE_CTRL2; |
| } T32PIPE_CTRL2; |
| typedef union T32PIPE_MTG |
| { UNSG32 u32; |
| struct w32PIPE_MTG; |
| } T32PIPE_MTG; |
| typedef union T32PIPE_CTRL |
| { UNSG32 u32; |
| struct w32PIPE_CTRL; |
| } T32PIPE_CTRL; |
| typedef union T32PIPE_UFSTATUS |
| { UNSG32 u32; |
| struct w32PIPE_UFSTATUS; |
| } T32PIPE_UFSTATUS; |
| typedef union T32PIPE_DSI |
| { UNSG32 u32; |
| struct w32PIPE_DSI; |
| } T32PIPE_DSI; |
| typedef union T32PIPE_DPHY |
| { UNSG32 u32; |
| struct w32PIPE_DPHY; |
| } T32PIPE_DPHY; |
| typedef union T32PIPE_INVSCAN |
| { UNSG32 u32; |
| struct w32PIPE_INVSCAN; |
| } T32PIPE_INVSCAN; |
| typedef union T32PIPE_STATUS |
| { UNSG32 u32; |
| struct w32PIPE_STATUS; |
| } T32PIPE_STATUS; |
| /////////////////////////////////////////////////////////// |
| |
| typedef union TPIPE_CTRL0 |
| { UNSG32 u32[1]; |
| struct { |
| struct w32PIPE_CTRL0; |
| }; |
| } TPIPE_CTRL0; |
| typedef union TPIPE_CTRL1 |
| { UNSG32 u32[1]; |
| struct { |
| struct w32PIPE_CTRL1; |
| }; |
| } TPIPE_CTRL1; |
| typedef union TPIPE_CTRL2 |
| { UNSG32 u32[1]; |
| struct { |
| struct w32PIPE_CTRL2; |
| }; |
| } TPIPE_CTRL2; |
| typedef union TPIPE_MTG |
| { UNSG32 u32[1]; |
| struct { |
| struct w32PIPE_MTG; |
| }; |
| } TPIPE_MTG; |
| typedef union TPIPE_CTRL |
| { UNSG32 u32[1]; |
| struct { |
| struct w32PIPE_CTRL; |
| }; |
| } TPIPE_CTRL; |
| typedef union TPIPE_UFSTATUS |
| { UNSG32 u32[1]; |
| struct { |
| struct w32PIPE_UFSTATUS; |
| }; |
| } TPIPE_UFSTATUS; |
| typedef union TPIPE_DSI |
| { UNSG32 u32[1]; |
| struct { |
| struct w32PIPE_DSI; |
| }; |
| } TPIPE_DSI; |
| typedef union TPIPE_DPHY |
| { UNSG32 u32[1]; |
| struct { |
| struct w32PIPE_DPHY; |
| }; |
| } TPIPE_DPHY; |
| typedef union TPIPE_INVSCAN |
| { UNSG32 u32[1]; |
| struct { |
| struct w32PIPE_INVSCAN; |
| }; |
| } TPIPE_INVSCAN; |
| typedef union TPIPE_STATUS |
| { UNSG32 u32[1]; |
| struct { |
| struct w32PIPE_STATUS; |
| }; |
| } TPIPE_STATUS; |
| |
| /////////////////////////////////////////////////////////// |
| SIGN32 PIPE_drvrd(SIE_PIPE *p, UNSG32 base, SIGN32 mem, SIGN32 tst); |
| SIGN32 PIPE_drvwr(SIE_PIPE *p, UNSG32 base, SIGN32 mem, SIGN32 tst, UNSG32 *pcmd); |
| void PIPE_reset(SIE_PIPE *p); |
| SIGN32 PIPE_cmp (SIE_PIPE *p, SIE_PIPE *pie, char *pfx, void *hLOG, SIGN32 mem, SIGN32 tst); |
| #define PIPE_check(p,pie,pfx,hLOG) PIPE_cmp(p,pie,pfx,(void*)(hLOG),0,0) |
| #define PIPE_print(p, pfx,hLOG) PIPE_cmp(p,0, pfx,(void*)(hLOG),0,0) |
| |
| #endif |
| ////// |
| /// ENDOFINTERFACE: PIPE |
| //////////////////////////////////////////////////////////// |
| |
| ////// |
| /// |
| /// $INTERFACE MIPI biu (4,4) |
| /// # # ---------------------------------------------------------- |
| /// @ 0x00000 (P) |
| /// # 0x00000 PIPE |
| /// $PIPE PIPE REG |
| /// ### |
| /// * Register specifications for MIPI pipe processing |
| /// ### |
| /// # # ---------------------------------------------------------- |
| /// $ENDOFINTERFACE # size: 284B, bits: 1537b, padding: 0B |
| //////////////////////////////////////////////////////////// |
| #ifndef h_MIPI |
| #define h_MIPI (){} |
| |
| #define RA_MIPI_PIPE 0x0000 |
| /////////////////////////////////////////////////////////// |
| |
| typedef struct SIE_MIPI { |
| /////////////////////////////////////////////////////////// |
| SIE_PIPE ie_PIPE; |
| /////////////////////////////////////////////////////////// |
| } SIE_MIPI; |
| |
| /////////////////////////////////////////////////////////// |
| SIGN32 MIPI_drvrd(SIE_MIPI *p, UNSG32 base, SIGN32 mem, SIGN32 tst); |
| SIGN32 MIPI_drvwr(SIE_MIPI *p, UNSG32 base, SIGN32 mem, SIGN32 tst, UNSG32 *pcmd); |
| void MIPI_reset(SIE_MIPI *p); |
| SIGN32 MIPI_cmp (SIE_MIPI *p, SIE_MIPI *pie, char *pfx, void *hLOG, SIGN32 mem, SIGN32 tst); |
| #define MIPI_check(p,pie,pfx,hLOG) MIPI_cmp(p,pie,pfx,(void*)(hLOG),0,0) |
| #define MIPI_print(p, pfx,hLOG) MIPI_cmp(p,0, pfx,(void*)(hLOG),0,0) |
| |
| #endif |
| ////// |
| /// ENDOFINTERFACE: MIPI |
| //////////////////////////////////////////////////////////// |
| |
| |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| #pragma pack() |
| |
| #endif |
| ////// |
| /// ENDOFFILE: mipiPipeCore.h |
| //////////////////////////////////////////////////////////// |
| |