📄 piix4.h
字号:
#define PIIX4_ICW2_BASE_MSK (MSK(5) << PIIX4_ICW2_BASE_SHF)#define PIIX4_ICW3M_CAS_SHF 2#define PIIX4_ICW3M_CAS_MSK (MSK(1) << PIIX4_ICW3M_CAS_SHF)#define PIIX4_ICW3M_CAS_BIT PIIX4_ICW3M_CAS_MSK#define PIIX4_ICW3S_SID_SHF 0#define PIIX4_ICW3S_SID_MSK (MSK(3) << PIIX4_ICW3S_SID_SHF)#define PIIX4_ICW3S_SID_DEF 0x2#define PIIX4_ICW4_SFNM_SHF 4#define PIIX4_ICW4_SFNM_MSK (MSK(1) << PIIX4_ICW4_SFNM_SHF)#define PIIX4_ICW4_SFNM_BIT PIIX4_ICW4_SFNM_MSK#define PIIX4_ICW4_AEOI_SHF 1#define PIIX4_ICW4_AEOI_MSK (MSK(1) << PIIX4_ICW4_AEOI_SHF)#define PIIX4_ICW4_UPMODE_SHF 0#define PIIX4_ICW4_UPMODE_MSK (MSK(1) << PIIX4_ICW4_UPMODE_SHF)#define PIIX4_ICW4_UPMODE_BIT PIIX4_ICW4_UPMODE_MSK#define PIIX4_OCW2_CODE_SHF 5#define PIIX4_OCW2_CODE_MSK (MSK(3) << PIIX4_OCW2_CODE_SHF)#define PIIX4_OCW2_CODE_NSEOI 0x1#define PIIX4_OCW2_CODE_SEOI 0x3#define PIIX4_OCW2_CODE_RNSEOI 0x5#define PIIX4_OCW2_CODE_RAEOIS 0x4#define PIIX4_OCW2_CODE_RAEOIC 0x0#define PIIX4_OCW2_CODE_RSEOI 0x7#define PIIX4_OCW2_CODE_SP 0x6#define PIIX4_OCW2_OCWSEL_SHF 3#define PIIX4_OCW2_OCWSEL_MSK (MSK(2) << PIIX4_OCW2_OCWSEL_SHF)#define PIIX4_OCW2_OCWSEL_2 0#define PIIX4_OCW2_ILS_SHF 0#define PIIX4_OCW2_ILS_MSK (MSK(3) << PIIX4_OCW2_ILS_SHF)#define PIIX4_OCW2_ILS_0_8 0#define PIIX4_OCW2_ILS_1_9 1#define PIIX4_OCW2_ILS_2_10 2#define PIIX4_OCW2_ILS_3_11 3#define PIIX4_OCW2_ILS_4_12 4#define PIIX4_OCW2_ISL_5_13 5#define PIIX4_OCW2_ISL_6_14 6#define PIIX4_OCW2_ISL_7_15 7#define PIIX4_OCW3_SMM_SHF 6#define PIIX4_OCW3_SMM_MSK (MSK(1) << PIIX4_OCW3_SMM_SHF)#define PIIX4_OCW3_SMM_BIT PIIX4_OCW3_SMM_MSK#define PIIX4_OCW3_ESMM_SHF 5#define PIIX4_OCW3_ESMM_MSK (MSK(1) << PIIX4_OCW3_ESMM_SHF)#define PIIX4_OCW3_ESMM_BIT PIIX4_OCW3_ESMM_MSK#define PIIX4_OCW3_OCWSEL_SHF 3#define PIIX4_OCW3_OCWSEL_MSK (MSK(2) << PIIX4_OCW3_OCWSEL_SHF)#define PIIX4_OCW3_OCWSEL_3 0x1#define PIIX4_OCW3_PMC_SHF 2#define PIIX4_OCW3_PMC_MSK (MSK(1) << PIIX4_OCW3_PMC_SHF)#define PIIX4_OCW3_PMC_BIT PIIX4_OCW3_PMC_MSK#define PIIX4_OCW3_RRC_SHF 0#define PIIX4_OCW3_RRC (MSK(2) << PIIX4_OCW3_RRC_SHF)#define PIIX4_OCW3_RRC_IRR 0x2#define PIIX4_OCW3_RRC_ISR 0x3#define PIIX4_ELCR1_IRQ7LEVEL_SHF 7#define PIIX4_ELCR1_IRQ7LEVEL_MSK (MSK(1) << PIIX4_ELCR1_IRQ7LEVEL_SHF)#define PIIX4_ELCR1_IRQ7LEVEL_BIT PIIX4_ELCR1_IRQ7LEVEL_MSK#define PIIX4_ELCR1_IRQ6LEVEL_SHF 6#define PIIX4_ELCR1_IRQ6LEVEL_MSK (MSK(1) << PIIX4_ELCR1_IRQ6LEVEL_SHF)#define PIIX4_ELCR1_IRQ6LEVEL_BIT PIIX4_ELCR1_IRQ6LEVEL_MSK#define PIIX4_ELCR1_IRQ5LEVEL_SHF 5#define PIIX4_ELCR1_IRQ5LEVEL_MSK (MSK(1) << PIIX4_ELCR1_IRQ5LEVEL_SHF)#define PIIX4_ELCR1_IRQ5LEVEL_BIT PIIX4_ELCR1_IRQ5LEVEL_MSK#define PIIX4_ELCR1_IRQ4LEVEL_SHF 4#define PIIX4_ELCR1_IRQ4LEVEL_MSK (MSK(1) << PIIX4_ELCR1_IRQ4LEVEL_SHF)#define PIIX4_ELCR1_IRQ4LEVEL_BIT PIIX4_ELCR1_IRQ4LEVEL_MSK#define PIIX4_ELCR1_IRQ3LEVEL_SHF 3#define PIIX4_ELCR1_IRQ3LEVEL_MSK (MSK(1) << PIIX4_ELCR1_IRQ3LEVEL_SHF)#define PIIX4_ELCR1_IRQ3LEVEL_BIT PIIX4_ELCR1_IRQ3LEVEL_MSK#define PIIX4_ELCR2_IRQ15LEVEL_SHF 7#define PIIX4_ELCR2_IRQ15LEVEL_MSK (MSK(1) << PIIX4_ELCR2_IRQ15LEVEL_SHF)#define PIIX4_ELCR2_IRQ15LEVEL_BIT PIIX4_ELCR2_IRQ15LEVEL_MSK#define PIIX4_ELCR2_IRQ14LEVEL_SHF 6#define PIIX4_ELCR2_IRQ14LEVEL_MSK (MSK(1) << PIIX4_ELCR2_IRQ14LEVEL_SHF)#define PIIX4_ELCR2_IRQ14LEVEL_BIT PIIX4_ELCR2_IRQ14LEVEL_MSK#define PIIX4_ELCR2_IRQ12LEVEL_SHF 4#define PIIX4_ELCR2_IRQ12LEVEL_MSK (MSK(1) << PIIX4_ELCR2_IRQ12LEVEL_SHF)#define PIIX4_ELCR2_IRQ12LEVEL_BIT PIIX4_ELCR2_IRQ12LEVEL_MSK#define PIIX4_ELCR2_IRQ11LEVEL_SHF 3#define PIIX4_ELCR2_IRQ11LEVEL_MSK (MSK(1) << PIIX4_ELCR2_IRQ11LEVEL_SHF)#define PIIX4_ELCR2_IRQ11LEVEL_BIT PIIX4_ELCR2_IRQ11LEVEL_MSK#define PIIX4_ELCR2_IRQ10LEVEL_SHF 2#define PIIX4_ELCR2_IRQ10LEVEL_MSK (MSK(1) << PIIX4_ELCR2_IRQ10LEVEL_SHF)#define PIIX4_ELCR2_IRQ10LEVEL_BIT PIIX4_ELCR2_IRQ10LEVEL_MSK#define PIIX4_ELCR2_IRQ9LEVEL_SHF 1#define PIIX4_ELCR2_IRQ9LEVEL_MSK (MSK(1) << PIIX4_ELCR2_IRQ9LEVEL_SHF)#define PIIX4_ELCR2_IRQ9LEVEL_BIT PIIX4_ELCR2_IRQ9LEVEL_MSK/* Timer countrol word */#define PIIX4_TCW_CS_SHF 6#define PIIX4_TCW_CS_MSK (MSK(2) << PIIX4_TCW_CS_SHF)#define PIIX4_TCW_CS_0 0#define PIIX4_TCW_CS_1 1#define PIIX4_TCW_CS_2 2#define PIIX4_TCW_CS_RB 3#define PIIX4_TCW_RW_SHF 4#define PIIX4_TCW_RW_MSK (MSK(2) << PIIX4_TCW_RW_SHF)#define PIIX4_TCW_RW_CL 0#define PIIX4_TCW_RW_LSB 1#define PIIX4_TCW_RW_MSB 2#define PIIX4_TCW_RW_16 3#define PIIX4_TCW_MODE_SHF 1#define PIIX4_TCW_MODE_MSK (MSK(3) << PIIX4_TCW_MODE_SHF)#define PIIX4_TCW_MODE_0 0#define PIIX4_TCW_MODE_1 1#define PIIX4_TCW_MODE_2 2#define PIIX4_TCW_MODE_3 3#define PIIX4_TCW_MODE_4 4#define PIIX4_TCW_MODE_5 5#define PIIX4_TCW_BCD_SHF 0#define PIIX4_TCW_BCD_MSK (MSK(1) << PIIX4_TCW_BCD_SHF)#define PIIX4_TCW_BCD_BIT PIIX4_TCW_BCD_MSK/* Power Management Control Register */#define PIIX4_PMCNTRL_SE_SHF 13#define PIIX4_PMCNTRL_SE_MSK (MSK(1) << PIIX4_PMCNTRL_SE_SHF)#define PIIX4_PMCNTRL_SE_BIT PIIX4_PMCNTRL_SE_MSK#define PIIX4_PMCNTRL_TYPE_SHF 10#define PIIX4_PMCNTRL_TYPE_MSK (MSK(3) << PIIX4_PMCNTRL_TYPE_SHF)#define PIIX4_PMCNTRL_TYPE_STD 0#define PIIX4_PMCNTRL_TYPE_STR 1#define PIIX4_PMCNTRL_TYPE_POSCL 2#define PIIX4_PMCNTRL_TYPE_POSCCL 3#define PIIX4_PMCNTRL_TYPE_POS 4#define PIIX4_PMCNTRL_TYPE_WORK 5/* Global Control Register */#define PIIX4_GLBCTL_LID_POL_SHF 25#define PIIX4_GLBCTL_LID_POL_MSK (MSK(1) << PIIX4_GLBCTL_LID_POL_SHF)#define PIIX4_GLBCTL_LID_POL_BIT PIIX4_GLBCTL_LID_POL_MSK#define PIIX4_GLBCTL_EOS_SHF 16#define PIIX4_GLBCTL_EOS_MSK (MSK(1) << PIIX4_GLBCTL_EOS_SHF)#define PIIX4_GLBCTL_EOS_BIT PIIX4_GLBCTL_EOS_MSK#define PIIX4_GLBCTL_GSTBY_CNT_SHF 9#define PIIX4_GLBCTL_GSTBY_CNT_MSK (MSK(7) << PIIX4_GLBCTL_GSTBY_CNT_SHF)#define PIIX4_GLBCTL_THRM_POL_SHF 2#define PIIX4_GLBCTL_THRM_POL_MSK (MSK(1) << PIIX4_GLBCTL_THRM_POL_SHF)#define PIIX4_GLBCTL_THRM_POL_BIT PIIX4_GLBCTL_THRM_POL_MSK#define PIIX4_GLBCTL_SMI_EN_SHF 0#define PIIX4_GLBCTL_SMI_EN_MSK (MSK(1) << PIIX4_GLBCTL_SMI_EN_SHF)#define PIIX4_GLBCTL_SMI_EN_BIT PIIX4_GLBCTL_SMI_EN_MSK/* SMB Host Control register */#define PIIX4_SMBHSTCNT_START_SHF 6#define PIIX4_SMBHSTCNT_START_MSK (MSK(1) << PIIX4_SMBHSTCNT_START_SHF)#define PIIX4_SMBHSTCNT_START_BIT PIIX4_SMBHSTCNT_START_MSK#define PIIX4_SMBHSTCNT_CP_SHF 2#define PIIX4_SMBHSTCNT_CP_MSK (MSK(3) << PIIX4_SMBHSTCNT_CP_SHF)#define PIIX4_SMBHSTCNT_CP_QRW 0#define PIIX4_SMBHSTCNT_CP_BRW 1#define PIIX4_SMBHSTCNT_CP_BDRW 2#define PIIX4_SMBHSTCNT_CP_WDRW 3#define PIIX4_SMBHSTCNT_CP_BLRW 5#define PIIX4_SMBHSTCNT_KILL_SHF 1#define PIIX4_SMBHSTCNT_KILL_MSK (MSK(1) << PIIX4_SMBHSTCNT_KILL_SHF)#define PIIX4_SMBHSTCNT_KILL_BIT PIIX4_SMBHSTCNT_KILL_MSK#define PIIX4_SMBHSTCNT_IE_SHF 0#define PIIX4_SMBHSTCNT_IE_MSK (MSK(1) << PIIX4_SMBHSTCNT_IE_SHF)#define PIIX4_SMBHSTCNT_IE_BIT PIIX4_SMBHSTCNT_IE_MSK/* SMB Host Status register */#define PIIX4_SMBHSTSTS_FAILED_SHF 4#define PIIX4_SMBHSTSTS_FAILED_MSK (MSK(1) << PIIX4_SMBHSTSTS_FAILED_SHF)#define PIIX4_SMBHSTSTS_FAILED_BIT PIIX4_SMBHSTSTS_FAILED_MSK#define PIIX4_SMBHSTSTS_COL_SHF 3#define PIIX4_SMBHSTSTS_COL_MSK (MSK(1) << PIIX4_SMBHSTSTS_COL_SHF)#define PIIX4_SMBHSTSTS_COL_BIT PIIX4_SMBHSTSTS_COL_MSK#define PIIX4_SMBHSTSTS_DE_SHF 2#define PIIX4_SMBHSTSTS_DE_MSK (MSK(1) << PIIX4_SMBHSTSTS_DE_SHF)#define PIIX4_SMBHSTSTS_DE_BIT PIIX4_SMBHSTSTS_DE_MSK#define PIIX4_SMBHSTSTS_INT_SHF 1#define PIIX4_SMBHSTSTS_INT_MSK (MSK(1) << PIIX4_SMBHSTSTS_INT_SHF)#define PIIX4_SMBHSTSTS_INT_BIT PIIX4_SMBHSTSTS_INT_MSK#define PIIX4_SMBHSTSTS_BUSY_SHF 0#define PIIX4_SMBHSTSTS_BUSY_MSK (MSK(1) << PIIX4_SMBHSTSTS_BUSY_SHF)#define PIIX4_SMBHSTSTS_BUSY_BIT PIIX4_SMBHSTSTS_BUSY_MSK/* Host Address register */#define PIIX4_SMBHSTADD_ADDR_SHF 1#define PIIX4_SMBHSTADD_ADDR_MSK (MSK(7) << PIIX4_SMBHSTADD_ADDR_SHF)#define PIIX4_SMBHSTADD_READ_SHF 0#define PIIX4_SMBHSTADD_READ_MSK (MSK(1) << PIIX4_SMBHSTADD_READ_SHF)#define PIIX4_SMBHSTADD_READ_BIT PIIX4_SMBHSTADD_READ_MSK/* IDE Timing register */#define PIIX4_IDETIM_IDE_SHF 15#define PIIX4_IDETIM_IDE_MSK (MSK(1) << PIIX4_IDETIM_IDE_SHF)#define PIIX4_IDETIM_IDE_BIT PIIX4_IDETIM_IDE_MSK/* General Purpose Enable Register */#define PIIX4_GPEN_GPIEN_SHF 9#define PIIX4_GPEN_GPIEN_MSK (MSK(1) << PIIX4_GPEN_GPIEN_SHF)#define PIIX4_GPEN_GPIEN_BIT PIIX4_GPEN_GPIEN_MSK/************************************************************************ * Misc ************************************************************************//* PIIX4 is a 4-function PCI device */#define PIIX4_PCI_FUNCTION_BRIDGE 0#define PIIX4_PCI_FUNCTION_IDE 1#define PIIX4_PCI_FUNCTION_USB 2#define PIIX4_PCI_FUNCTION_POWER 3/* BAR positions for fixed BARs */#define PIIX4_PCI_BAR_BRIDGE_POS PCI_BAR(0)#define PIIX4_PCI_BAR_POWER_POS 0x40#define PIIX4_PCI_BAR_SMB_POS 0x90/* Fixed I/O range mapping */#define PIIX4_IO_BRIDGE_START 0#define PIIX4_IO_BRIDGE_SIZE 0x1000#define PIIX4_IO_POWER_START 0x1000#define PIIX4_IO_POWER_SIZE 0x100#define PIIX4_IO_SMB_START 0x1100#define PIIX4_IO_SMB_SIZE 0x100/* Number of IRQs supported */#define PIIX4_IRQ_COUNT 16/* Timer period (ns) */#define PIIX4_TIMER_PERIOD_NS 838#endif /* #ifndef PIIX4_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -