📄 cim_regs.h
字号:
#define DF_CONFIG_FMT_MASK 0x00000038
#define DF_CONFIG_FMT_CRT 0x00000000
#define DF_CONFIG_FMT_FP 0x00000008
/*----------------------------------------------------------------*/
/* PCI DEFINITIONS */
/*----------------------------------------------------------------*/
#define PCI_VENDOR_DEVICE_GEODEGX 0x0028100B
#define PCI_VENDOR_DEVICE_GEODEGX_VIDEO 0x0030100B
#define PCI_VENDOR_DEVICE_GEODELX 0x20801022
#define PCI_VENDOR_DEVICE_GEODELX_VIDEO 0x20811022
#define PCI_VENDOR_5535 0x002B100B
#define PCI_VENDOR_5536 0x20901022
/*----------------------------------------------------------------*/
/* VIP DEFINITIONS */
/*----------------------------------------------------------------*/
#define VIP_CONTROL1 0x00000000
#define VIP_CONTROL2 0x00000004
#define VIP_STATUS 0x00000008
#define VIP_INTERRUPT 0x0000000C
#define VIP_CURRENT_TARGET 0x00000010
#define VIP_MAX_ADDRESS 0x00000014
#define VIP_TASKA_VID_EVEN_BASE 0x00000018
#define VIP_TASKA_VID_ODD_BASE 0x0000001C
#define VIP_TASKA_VBI_EVEN_BASE 0x00000020
#define VIP_TASKA_VBI_ODD_BASE 0x00000024
#define VIP_TASKA_VID_PITCH 0x00000028
#define VIP_CONTROL3 0x0000002C
#define VIP_TASKA_V_OFFSET 0x00000030
#define VIP_TASKA_U_OFFSET 0x00000034
#define VIP_TASKB_VID_EVEN_BASE 0x00000038
#define VIP_601_HORZ_END 0x00000038
#define VIP_TASKB_VID_ODD_BASE 0x0000003C
#define VIP_601_HORZ_START 0x0000003C
#define VIP_TASKB_VBI_EVEN_BASE 0x00000040
#define VIP_601_VBI_END 0x00000040
#define VIP_TASKB_VBI_ODD_BASE 0x00000044
#define VIP_601_VBI_START 0x00000044
#define VIP_TASKB_VID_PITCH 0x00000048
#define VIP_601_EVEN_START_STOP 0x00000048
#define VIP_TASKB_V_OFFSET 0x00000050
#define VIP_ODD_FIELD_DETECT 0x00000050
#define VIP_TASKB_U_OFFSET 0x00000054
#define VIP_ANC_MSG1_BASE 0x00000058
#define VIP_ANC_MSG2_BASE 0x0000005C
#define VIP_ANC_MSG_SIZE 0x00000060
#define VIP_PAGE_OFFSET 0x00000068
#define VIP_VERTICAL_START_STOP 0x0000006C
#define VIP_601_ODD_START_STOP 0x0000006C
#define VIP_FIFO_ADDRESS 0x00000070
#define VIP_FIFO_DATA 0x00000074
#define VIP_VSYNC_ERR_COUNT 0x00000078
#define VIP_TASKA_U_EVEN_OFFSET 0x0000007C
#define VIP_TASKA_V_EVEN_OFFSET 0x00000080
/* INDIVIDUAL REGISTER BIT DEFINITIONS */
/* Multibit register subsets are expressed as a mask and shift. */
/* Single bit values are represented as a mask. */
/* VIP_CONTROL1 REGISTER DEFINITIONS */
#define VIP_CONTROL1_DEFAULT_ANC_FF 2
#define VIP_CONTROL1_ANC_FF_MASK 0xE0000000
#define VIP_CONTROL1_ANC_FF_SHIFT 29
#define VIP_CONTROL1_DEFAULT_VID_FF 2
#define VIP_CONTROL1_VID_FF_MASK 0x1F000000
#define VIP_CONTROL1_VID_FF_SHIFT 24
#define VIP_CONTROL1_VDE_FF_MASK 0x00F00000
#define VIP_CONTROL1_VDE_FF_SHIFT 20
#define VIP_CONTROL1_NON_INTERLACED (1L << 19)
#define VIP_CONTROL1_MSG_STRM_CTRL (1L << 18)
#define VIP_CONTROL1_DISABLE_ZERO_DETECT (1L << 17)
#define VIP_CONTROL1_DISABLE_DECIMATION (1L << 16)
#define VIP_CONTROL1_CAPTURE_ENABLE_MASK 0x0000FF00
#define VIP_CONTROL1_CAPTURE_ENABLE_SHIFT 8
#define VIP_CONTROL1_RUNMODE_MASK 0x000000E0
#define VIP_CONTROL1_RUNMODE_SHIFT 5
#define VIP_CONTROL1_PLANAR (1L << 4)
#define VIP_CONTROL1_MODE_MASK 0x0000000E
#define VIP_CONTROL1_MODE_SHIFT 1
#define VIP_CONTROL1_RESET 0x00000001
/* VIP_CONTROL2 REGISTER DEFINITIONS */
#define VIP_CONTROL2_INVERT_POLARITY (1L << 31)
#define VIP_CONTROL2_ADD_ERROR_ENABLE (1L << 30)
#define VIP_CONTROL2_REPEAT_ENABLE (1L << 29)
#define VIP_CONTROL2_SWC_ENABLE (1L << 28)
#define VIP_CONTROL2_ANC10 (1L << 27)
#define VIP_CONTROL2_ANCPEN (1L << 26)
#define VIP_CONTROL2_LOOPBACK_ENABLE (1L << 25)
#define VIP_CONTROL2_FIFO_ACCESS (1L << 24)
#define VIP_CONTROL2_VERTERROR_ENABLE (1L << 15)
#define VIP_CONTROL2_PAGECNT_MASK 0x00E00000
#define VIP_CONTROL2_PAGECNT_SHIFT 21
#define VIP_CONTROL2_DEFAULT_ANCTH 5
#define VIP_CONTROL2_ANCTH_MASK 0x001F0000
#define VIP_CONTROL2_ANCTH_SHIFT 16
#define VIP_CONTROL2_DEFAULT_VIDTH_420 19
#define VIP_CONTROL2_DEFAULT_VIDTH_422 19
#define VIP_CONTROL2_VIDTH_MASK 0x00007F00
#define VIP_CONTROL2_VIDTH_SHIFT 8
#define VIP_CONTROL2_SYNC2PIN_MASK 0x000000E0
#define VIP_CONTROL2_SYNC2PIN_SHIFT 5
#define VIP_CONTROL2_FIELD2VG_MASK 0x00000018
#define VIP_CONTROL2_FIELD2VG_SHIFT 3
#define VIP_CONTROL2_SYNC2VG_MASK 0x00000007
#define VIP_CONTROL2_SYNC2VG_SHIFT 0
/* VIP_CONTROL3 REGISTER DEFINITIONS */
#define VIP_CONTROL3_PLANAR_DEINT 0x00000400
#define VIP_CONTROL3_BASE_UPDATE 0x00000200
#define VIP_CONTROL3_DISABLE_OVERFLOW 0x00000100
#define VIP_CONTROL3_DECIMATE_EVEN 0x00000080
#define VIP_CONTROL3_TASK_POLARITY 0x00000040
#define VIP_CONTROL3_VSYNC_POLARITY 0x00000020
#define VIP_CONTROL3_HSYNC_POLARITY 0x00000010
#define VIP_CONTROL3_FIFO_RESET 0x00000001
/* VIP_STATUS REGISTER DEFINITIONS */
#define VIP_STATUS_ANC_COUNT_MASK 0xFF000000
#define VIP_STATUS_ANC_COUNT_SHIFT 24
#define VIP_STATUS_FIFO_ERROR 0x00700000
#define VIP_STATUS_ERROR_SHIFT 20
#define VIP_STATUS_DEC_COUNT (1L << 18)
#define VIP_STATUS_SYNCOUT (1L << 17)
#define VIP_STATUS_BASEREG_NOTUPDT (1L << 16)
#define VIP_STATUS_MSGBUFF_ERR (1L << 14)
#define VIP_STATUS_MSGBUFF2_FULL (1L << 13)
#define VIP_STATUS_MSGBUFF1_FULL (1L << 12)
#define VIP_STATUS_WRITES_COMPLETE (1L << 9)
#define VIP_STATUS_FIFO_EMPTY (1L << 8)
#define VIP_STATUS_FIELD (1L << 4)
#define VIP_STATUS_VBLANK (1L << 3)
#define VIP_STATUS_RUN_MASK 0x00000007
#define VIP_STATUS_RUN_SHIFT 0
/* VIP_CURRENT_TARGET REGISTER DEFINITIONS */
#define VIP_CTARGET_TLINE_MASK 0xFFFF0000
#define VIP_CTARGET_TLINE_SHIFT 16
#define VIP_CTARGET_CLINE_MASK 0x0000FFFF
#define VIP_CTARGET_CLINE_SHIFT 0
/* VIP_MAX_ADDRESS REGISTER DEFINITIONS */
#define VIP_MAXADDR_MASK 0xFFFFFFFF
#define VIP_MAXADDR_SHIFT 0
/* VIP BUFFER PITCH DEFINITIONS */
#define VIP_TASK_PITCH_MASK 0x0000FFFF
#define VIP_TASK_PITCH_SHIFT 0
/* VERTICAL START/STOP */
#define VIP_VSTART_VERTEND_MASK 0x0FFF0000
#define VIP_VSTART_VERTEND_SHIFT 16
#define VIP_VSTART_VERTSTART_MASK 0x00000FFF
#define VIP_VSTART_VERTSTART_SHIFT 0
/* VIP FIFO ADDRESS DEFINITIONS */
#define VIP_FIFO_ADDRESS_MASK 0x000000FF
#define VIP_FIFO_ADDRESS_SHIFT 0
/* VIP VSYNC ERROR DEFINITIONS */
#define VIP_VSYNC_ERR_WINDOW_MASK 0xFF000000
#define VIP_VSYNC_ERR_WINDOW_SHIFT 24
#define VIP_VSYNC_ERR_COUNT_MASK 0x00FFFFFF
#define VIP_VSYNC_ERR_COUNT_SHIFT 0
/*---------------------*/
/* VIP MSR DEFINITIONS */
/*---------------------*/
/* CAPABILITIES */
#define VIP_MSR_CAP_NSMI_MASK 0xF8000000
#define VIP_MSR_CAP_NSMI_SHIFT 27
#define VIP_MSR_CAP_NCLK_MASK 0x07000000
#define VIP_MSR_CAP_NCLK_SHIFT 24
#define VIP_MSR_CAP_DEVID_MASK 0x00FFFF00
#define VIP_MSR_CAP_DEVID_SHIFT 8
#define VIP_MSR_CAP_REVID_MASK 0x000000FF
#define VIP_MSR_CAP_REVID_SHIFT 0
/* MASTER CONFIG */
#define VIP_MSR_MCR_SECOND_PRIORITY_MASK 0x00000700
#define VIP_MSR_MCR_SECOND_PRIORITY_SHIFT 8
#define VIP_MSR_MCR_PRIMARY_PRIORITY_MASK 0x00000070
#define VIP_MSR_MCR_PRIMARY_PRIORITY_SHIFT 4
#define VIP_MSR_MCR_PID_MASK 0x00000007
#define VIP_MSR_MCR_PID_SHIFT 0
/* VIP SMI */
#define VIP_MSR_SMI_FIFO_OVERFLOW (1L << 29)
#define VIP_MSR_SMI_FIFO_THRESHOLD (1L << 28)
#define VIP_MSR_SMI_LONGLINE (1L << 27)
#define VIP_MSR_SMI_VERTICAL_TIMING (1L << 26)
#define VIP_MSR_SMI_ACTIVE_PIXELS (1L << 25)
#define VIP_MSR_SMI_CLOCK_INPUT (1L << 24)
#define VIP_MSR_SMI_ANC_CHECKSUM_PARITY (1L << 23)
#define VIP_MSR_SMI_MSG_BUFFER_FULL (1L << 22)
#define VIP_MSR_SMI_END_VBLANK (1L << 21)
#define VIP_MSR_SMI_START_VBLANK (1L << 20)
#define VIP_MSR_SMI_START_EVEN (1L << 19)
#define VIP_MSR_SMI_START_ODD (1L << 18)
#define VIP_MSR_SMI_LINE_MATCH_TARGET (1L << 17)
#define VIP_MSR_SMI_GLINK (1L << 16)
/* VIP ERROR */
#define VIP_MSR_ERROR_ADDRESS_MASK (1L << 17)
#define VIP_MSR_ERROR_ADDRESS_SHIFT 17
#define VIP_MSR_ERROR_ADDRESS_ENABLE (1L << 1)
#define VIP_MSR_ERROR_ADDRESS_EN_SHIFT 1
#define VIP_MSR_ERROR_TYPE_MASK (1L << 16)
#define VIP_MSR_ERROR_TYPE_SHIFT 16
#define VIP_MSR_ERROR_TYPE_ENABLE 1
#define VIP_MSR_ERROR_TYPE_EN_SHIFT 0
/* VIP POWER */
#define VIP_MSR_POWER_GLINK (1L << 0)
#define VIP_MSR_POWER_CLOCK (1L << 2)
/* VIP DIAG */
#define VIP_MSR_DIAG_BIST_WMASK 0x00000003
#define VIP_MSR_DIAG_BIST_RMASK 0x00000007
#define VIP_MSR_DIAG_BIST_SHIFT 0
#define VIP_MSR_DIAG_MSB_ENABLE (1L << 31)
#define VIP_MSR_DIAG_SEL_UPPER_MASK 0x7FFF0000
#define VIP_MSR_DIAG_SEL_UPPER_SHIFT 16
#define VIP_MSR_DIAG_LSB_ENABLE (1L << 15)
#define VIP_MSR_DIAG_SEL_LOWER_MASK 0x00007FFF
#define VIP_MSR_DIAG_SEL_LOWER_SHIFT 0
/*----------------------------------------------------------------*/
/* VOP DEFINITIONS */
/*----------------------------------------------------------------*/
#define VOP_CONFIGURATION 0x00000800
#define VOP_SIGNATURE 0x00000808
/* VOP_CONFIGURATION BIT DEFINITIONS */
#define VOP_CONFIG_SWAPVBI 0x01000000
#define VOP_CONFIG_RGBMODE 0x00200000
#define VOP_CONFIG_SIGVAL 0x00100000
#define VOP_CONFIG_INVERT_DISPE 0x00080000
#define VOP_CONFIG_INVERT_VSYNC 0x00040000
#define VOP_CONFIG_INVERT_HSYNC 0x00020000
#define VOP_CONFIG_SWAPUV 0x00010000
#define VOP_CONFIG_VSYNC_MASK 0x0000C000
#define VOP_CONFIG_DISABLE_DECIMATE 0x00002000
#define VOP_CONFIG_ENABLE_601 0x00001000
#define VOP_CONFIG_VBI 0x00000800
#define VOP_CONFIG_TASK 0x00000200
#define VOP_CONFIG_SIG_FREE_RUN 0x00000100
#define VOP_CONFIG_ENABLE_SIGNATURE 0x00000080
#define VOP_CONFIG_SC_COMPATIBLE 0x00000040
#define VOP_CONFIG_422_COSITED 0x00000000
#define VOP_CONFIG_422_INTERSPERSED 0x00000010
#define VOP_CONFIG_422_ALTERNATING 0x00000020
#define VOP_CONFIG_422_MASK 0x00000030
#define VOP_CONFIG_EXTENDED_SAV 0x00000008
#define VOP_CONFIG_VIP2_16BIT 0x00000004
#define VOP_CONFIG_DISABLED 0x00000000
#define VOP_CONFIG_VIP1_1 0x00000001
#define VOP_CONFIG_VIP2_0 0x00000002
#define VOP_CONFIG_CCIR656 0x00000003
#define VOP_CONFIG_MODE_MASK 0x00000003
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -