[−][src]Module sunrise_ahci::pci 
PCI discovery
A minimal PCI implementation, that permits only discovering AHCI devices, and querying their BAR.
Structs
| PciConfigPortsPair | A struct tying the two pci config ports together.  | 
| PciDevice | A pci device, addressed by its bus number, slot, and function.  | 
| PciHeader00 | Pci header when Header Type == 0x00 (General device).  | 
Enums
| BAR | Base Address Registers. Minimal implementation, does not support 64-bits BARs.  | 
| PciHeader | Contents of pci config registers 0x4-0xf, structure varies based on Header Type.  | 
Constants
| CONFIG_ADDRESS | The CONFIG_ADDRESS I/O location.  | 
| CONFIG_DATA | The CONFIG_DATA I/O location.  | 
| MAX_BUS | The highest addressable bus.  | 
| MAX_FUNC | The highest addressable function on a slot on a bus.  | 
| MAX_REGISTER | The highest addressable register on a function on a slot on a bus.  | 
| MAX_SLOT | The highest addressable slot on a bus.  | 
Statics
| PCI_CONFIG_PORTS | A mutex around the two ports used to address pci configuration space.  | 
Functions
| discover | Discover all pci devices, by probing the PID-VID of every slot on every bus.  | 
| get_ahci_controllers | Gets the ahci controllers found by pci discovery.  | 
| pci_config_read_word | Read one of the 64 32-bit registers of a pci bus>device>func.  | 
| pci_config_write_word | Read one of the 64 32-bit registers of a pci bus>device>func.  |