📄 pci_intel.h
字号:
/*pci_intel.hCreated: Jan 2000 by Philip Homburg <philip@cs.vu.nl>*/#define PCII_CONFADD 0xCF8#define PCIIC_CODE 0x80000000#define PCIIC_BUSNUM_MASK 0xff0000#define PCIIC_BUSNUM_SHIFT 16#define PCIIC_DEVNUM_MASK 0xf800#define PCIIC_DEVNUM_SHIFT 11#define PCIIC_FUNCNUM_MASK 0x700#define PCIIC_FUNCNUM_SHIFT 8#define PCIIC_REGNUM_MASK 0xfc#define PCIIC_REGNUM_SHIFT 2#define PCII_CONFDATA 0xCFC#define PCII_SELREG_(bus, dev, func, reg) \ (PCIIC_CODE | \ (((bus) << PCIIC_BUSNUM_SHIFT) & PCIIC_BUSNUM_MASK) | \ (((dev) << PCIIC_DEVNUM_SHIFT) & PCIIC_DEVNUM_MASK) | \ (((func) << PCIIC_FUNCNUM_SHIFT) & PCIIC_FUNCNUM_MASK) | \ ((((reg)/4) << PCIIC_REGNUM_SHIFT) & PCIIC_REGNUM_MASK))#define PCII_UNSEL (0)#define PCII_RREG8_(bus, dev, func, reg) \ (pci_outl(PCII_CONFADD, PCII_SELREG_(bus, dev, func, reg)), \ pci_inb(PCII_CONFDATA+((reg)&3)))#define PCII_RREG16_(bus, dev, func, reg) \ (PCII_RREG8_(bus, dev, func, reg) | \ (PCII_RREG8_(bus, dev, func, reg+1) << 8))#define PCII_RREG32_(bus, dev, func, reg) \ (PCII_RREG16_(bus, dev, func, reg) | \ (PCII_RREG16_(bus, dev, func, reg+2) << 16))#define PCII_WREG8_(bus, dev, func, reg, val) \ (pci_outl(PCII_CONFADD, PCII_SELREG_(bus, dev, func, reg)), \ pci_outb(PCII_CONFDATA+((reg)&3), (val)))#define PCII_WREG16_(bus, dev, func, reg, val) \ (PCII_WREG8_(bus, dev, func, reg, (val)), \ (PCII_WREG8_(bus, dev, func, reg+1, (val) >> 8)))#define PCII_WREG32_(bus, dev, func, reg, val) \ (PCII_WREG16_(bus, dev, func, reg, (val)), \ (PCII_WREG16_(bus, dev, func, reg+2, (val) >> 16)))/* PIIX configuration registers */#define PIIX_PIRQRCA 0x60#define PIIX_IRQ_DI 0x80#define PIIX_IRQ_MASK 0x0F/* PIIX extensions to the PIC */#define PIIX_ELCR1 0x4D0#define PIIX_ELCR2 0x4D1/* * $PchId: pci_intel.h,v 1.1 2000/08/12 11:20:17 philip Exp $ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -