📄 pci.h
字号:
/* --- values for the class_sub field for class_base = 0x05 (memory)--- */#define PCI_ram 0x00 /* RAM */#define PCI_flash 0x01 /* flash */#define PCI_memory_other 0x80 /* other memory controller *//* --- values for the class_sub field for class_base = 0x06 (bridge)--- */#define PCI_host 0x00 /* host bridge */#define PCI_isa 0x01 /* ISA bridge */#define PCI_eisa 0x02 /* EISA bridge */#define PCI_microchannel 0x03 /* MicroChannel bridge */#define PCI_pci 0x04 /* PCI-to-PCI bridge */#define PCI_pcmcia 0x05 /* PCMCIA bridge */#define PCI_nubus 0x06 /* NuBus bridge */#define PCI_cardbus 0x07 /* CardBus bridge */#define PCI_raceway 0x08 /* RACEway bridge */#define PCI_bridge_other 0x80 /* other bridge device *//* --- values for the class_sub field for class_base = 0x07 (simple communications controllers)--- */#define PCI_serial 0x00 /* serial port controller */#define PCI_parallel 0x01 /* parallel port */#define PCI_multiport_serial 0x02 /* multiport serial controller */#define PCI_modem 0x03 /* modem */#define PCI_simple_communications_other 0x80 /* other communications device *//* --- values of the class_api field for class_base = 0x07 (simple communications), and class_sub = 0x00 (serial port controller)--- */#define PCI_serial_xt 0x00 /* XT-compatible serial controller */#define PCI_serial_16450 0x01 /* 16450-compatible serial controller */#define PCI_serial_16550 0x02 /* 16550-compatible serial controller *//* --- values of the class_api field for class_base = 0x07 (simple communications), and class_sub = 0x01 (parallel port)--- */#define PCI_parallel_simple 0x00 /* simple (output-only) parallel port */#define PCI_parallel_bidirectional 0x01 /* bidirectional parallel port */#define PCI_parallel_ecp 0x02 /* ECP 1.x compliant parallel port *//* --- values for the class_sub field for class_base = 0x08 (generic system peripherals)--- */#define PCI_pic 0x00 /* periperal interrupt controller */#define PCI_dma 0x01 /* dma controller */#define PCI_timer 0x02 /* timers */#define PCI_rtc 0x03 /* real time clock */#define PCI_generic_hot_plug 0x04 /* generic PCI hot-plug controller */#define PCI_system_peripheral_other 0x80 /* other generic system peripheral *//* --- values of the class_api field for class_base = 0x08 (generic system peripherals) class_sub = 0x00 (peripheral interrupt controller)--- */#define PCI_pic_8259 0x00 /* generic 8259 */#define PCI_pic_isa 0x01 /* ISA pic */#define PCI_pic_eisa 0x02 /* EISA pic *//* --- values of the class_api field for class_base = 0x08 (generic system peripherals) class_sub = 0x01 (dma controller)--- */#define PCI_dma_8237 0x00 /* generic 8237 */#define PCI_dma_isa 0x01 /* ISA dma */#define PCI_dma_eisa 0x02 /* EISA dma *//* --- values of the class_api field for class_base = 0x08 (generic system peripherals) class_sub = 0x02 (timer)--- */#define PCI_timer_8254 0x00 /* generic 8254 */#define PCI_timer_isa 0x01 /* ISA timer */#define PCI_timer_eisa 0x02 /* EISA timers (2 timers) *//* --- values of the class_api field for class_base = 0x08 (generic system peripherals) class_sub = 0x03 (real time clock--- */#define PCI_rtc_generic 0x00 /* generic real time clock */#define PCI_rtc_isa 0x01 /* ISA real time clock *//* --- values for the class_sub field for class_base = 0x09 (input devices)--- */#define PCI_keyboard 0x00 /* keyboard controller */#define PCI_pen 0x01 /* pen */#define PCI_mouse 0x02 /* mouse controller */#define PCI_scanner 0x03 /* scanner controller */#define PCI_gameport 0x04 /* gameport controller */#define PCI_input_other 0x80 /* other input controller *//* --- values for the class_sub field for class_base = 0x0a (docking stations)--- */#define PCI_docking_generic 0x00 /* generic docking station *//* --- values for the class_sub field for class_base = 0x0b (processor)--- */#define PCI_386 0x00 /* 386 */#define PCI_486 0x01 /* 486 */#define PCI_pentium 0x02 /* Pentium */#define PCI_alpha 0x10 /* Alpha */#define PCI_PowerPC 0x20 /* PowerPC */#define PCI_mips 0x30 /* MIPS */#define PCI_coprocessor 0x40 /* co-processor *//* --- values for the class_sub field for class_base = 0x0c (serial bus controller)--- */#define PCI_firewire 0x00 /* FireWire (IEEE 1394) */#define PCI_access 0x01 /* ACCESS bus */#define PCI_ssa 0x02 /* SSA */#define PCI_usb 0x03 /* Universal Serial Bus */#define PCI_fibre_channel 0x04 /* Fibre channel *//* --- values of the class_api field for class_base = 0x0c ( serial bus controller ) class_sub = 0x03 ( Universal Serial Bus )--- */#define PCI_usb_uhci 0x00 /* Universal Host Controller Interface */#define PCI_usb_ohci 0x10 /* Open Host Controller Interface *//* --- masks for command register bits--- */#define PCI_command_io 0x001 /* 1/0 i/o space en/disabled */#define PCI_command_memory 0x002 /* 1/0 memory space en/disabled */#define PCI_command_master 0x004 /* 1/0 pci master en/disabled */#define PCI_command_special 0x008 /* 1/0 pci special cycles en/disabled */#define PCI_command_mwi 0x010 /* 1/0 memory write & invalidate en/disabled */#define PCI_command_vga_snoop 0x020 /* 1/0 vga pallette snoop en/disabled */#define PCI_command_parity 0x040 /* 1/0 parity check en/disabled */#define PCI_command_address_step 0x080 /* 1/0 address stepping en/disabled */#define PCI_command_serr 0x100 /* 1/0 SERR# en/disabled */#define PCI_command_fastback 0x200 /* 1/0 fast back-to-back en/disabled *//* --- masks for status register bits--- */#define PCI_status_capabilities 0x0010 /* capabilities list */#define PCI_status_66_MHz_capable 0x0020 /* 66 Mhz capable */#define PCI_status_udf_supported 0x0040 /* user-definable-features (udf) supported */#define PCI_status_fastback 0x0080 /* fast back-to-back capable */#define PCI_status_parity_signalled 0x0100 /* parity error signalled */#define PCI_status_devsel 0x0600 /* devsel timing (see below) */#define PCI_status_target_abort_signalled 0x0800 /* signaled a target abort */#define PCI_status_target_abort_received 0x1000 /* received a target abort */#define PCI_status_master_abort_received 0x2000 /* received a master abort */#define PCI_status_serr_signalled 0x4000 /* signalled SERR# */#define PCI_status_parity_error_detected 0x8000 /* parity error detected *//* --- masks for devsel field in status register--- */#define PCI_status_devsel_fast 0x0000 /* fast */#define PCI_status_devsel_medium 0x0200 /* medium */#define PCI_status_devsel_slow 0x0400 /* slow *//* --- masks for header type register--- */#define PCI_header_type_mask 0x7F /* header type field */#define PCI_multifunction 0x80 /* multifunction device flag *//** types of PCI header */#define PCI_header_type_generic 0x00#define PCI_header_type_PCI_to_PCI_bridge 0x01#define PCI_header_type_cardbus 0x02/* --- masks for built in self test (bist) register bits--- */#define PCI_bist_code 0x0F /* self-test completion code, 0 = success */#define PCI_bist_start 0x40 /* 1 = start self-test */#define PCI_bist_capable 0x80 /* 1 = self-test capable *//** masks for flags in the various base address registers */#define PCI_address_space 0x01 /* 0 = memory space, 1 = i/o space */#define PCI_register_start 0x10#define PCI_register_end 0x24#define PCI_register_ppb_end 0x18#define PCI_register_pcb_end 0x14/** masks for flags in memory space base address registers */#define PCI_address_type_32 0x00 /* locate anywhere in 32 bit space */#define PCI_address_type_32_low 0x02 /* locate below 1 Meg */#define PCI_address_type_64 0x04 /* locate anywhere in 64 bit space */#define PCI_address_type 0x06 /* type (see below) */#define PCI_address_prefetchable 0x08 /* 1 if prefetchable (see PCI spec) */#define PCI_address_memory_32_mask 0xFFFFFFF0 /* mask to get 32bit memory space base address *//* --- masks for flags in i/o space base address registers--- */#define PCI_address_io_mask 0xFFFFFFFC /* mask to get i/o space base address *//* --- masks for flags in expansion rom base address registers--- */#define PCI_rom_enable 0x00000001 /* 1 = expansion rom decode enabled */#define PCI_rom_address_mask 0xFFFFF800 /* mask to get expansion rom addr *//** PCI interrupt pin values */#define PCI_pin_mask 0x07#define PCI_pin_none 0x00#define PCI_pin_a 0x01#define PCI_pin_b 0x02#define PCI_pin_c 0x03#define PCI_pin_d 0x04#define PCI_pin_max 0x04/** PCI Capability Codes */#define PCI_cap_id_reserved 0x00#define PCI_cap_id_pm 0x01 /* Power management */#define PCI_cap_id_agp 0x02 /* AGP */#define PCI_cap_id_vpd 0x03 /* Vital product data */#define PCI_cap_id_slotid 0x04 /* Slot ID */#define PCI_cap_id_msi 0x05 /* Message signalled interrupt ??? */#define PCI_cap_id_chswp 0x06 /* Compact PCI HotSwap */#define PCI_cap_id_pcix 0x07#define PCI_cap_id_ldt 0x08#define PCI_cap_id_vendspec 0x09#define PCI_cap_id_debugport 0x0a#define PCI_cap_id_cpci_rsrcctl 0x0b#define PCI_cap_id_hotplug 0x0c/** Power Management Control Status Register settings */#define PCI_pm_mask 0x03#define PCI_pm_ctrl 0x02#define PCI_pm_d1supp 0x0200#define PCI_pm_d2supp 0x0400#define PCI_pm_status 0x04#define PCI_pm_state_d0 0x00#define PCI_pm_state_d1 0x01#define PCI_pm_state_d2 0x02#define PCI_pm_state_d3 0x03#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -