18#include <drivers/rtl8139.h>
26extern cstring display_adapter_name;
27extern cstring GPUName[2];
28extern cstring using_graphics_card;
29extern uint64* graphics_base_Address;
30extern int total_devices;
33#define PCI_CONFIG_ADDRESS 0xCF8
34#define PCI_CONFIG_DATA 0xCFC
36typedef void (*pci_probe_fn)(uint8_t bus, uint8_t slot, uint8_t function);
56uint16
pci_read_word(uint16 bus, uint16 slot, uint16 func, uint16 offset);
66uint16
getVendorID(uint16 bus, uint16 device, uint16 function);
76uint16
getDeviceID(uint16 bus, uint16 device, uint16 function);
86uint16
getClassId(uint16 bus, uint16 device, uint16 function);
97uint8 getRevision(uint16 bus, uint16 slot, uint16 func);
98uint8 getProgIF(uint16 bus, uint16 device, uint16 function);
105void print_lspci(
void);
117void pci_config_write_dword(uint8 bus, uint8 slot, uint8 func, uint8 offset, uint32_t value);
Header definitions and structures for the AHCI Driver.
This is a basic header files with FrostWing specific short forms and basically a good for life header...
The headers files for E9 hack.
Contains all the print functions.
Header file for Hardware Abstraction Layer -> Source from GoGX OS.
Interrupts handler header.
uint32 get_ahci_bar_address(uint8 bus, int slot, int func, int bar_num)
Gets the AHCI bar address.
uint16 getDeviceID(uint16 bus, uint16 device, uint16 function)
Gets the Device ID from PCI.
uint16 getVendorID(uint16 bus, uint16 device, uint16 function)
Gets the Vendor ID from PCI.
uint16 getClassId(uint16 bus, uint16 device, uint16 function)
Gets the Class ID from PCI.
uint16 getSubClassId(uint16 bus, uint16 device, uint16 function)
Gets the Sub-class ID from PCI.
int proc_pci_register()
Registers the PCI devices into the procfs.
uint16 pci_read_word(uint16 bus, uint16 slot, uint16 func, uint16 offset)
Read a 16-bit value from a PCI configuration register.
uint32 pci_config_read_dword(uint8 bus, uint8 slot, uint8 func, uint8 offset)
Function to read a 32-bit value from the PCI configuration space.
void probe_pci(void)
Scans (Probes) PCI Devices.
The list of all officially recognized devices.