feat: refactor to use gcc types
This commit is contained in:
@@ -60,60 +60,60 @@
|
||||
typedef struct pci_driver pci_driver;
|
||||
typedef struct pci_device pci_device;
|
||||
|
||||
typedef u8 (*pci_driver_validate)(const pci_device *);
|
||||
typedef uint8_t (*pci_driver_validate)(const pci_device *);
|
||||
|
||||
typedef u8 (*pci_driver_initialize)(pci_device *);
|
||||
typedef uint8_t (*pci_driver_initialize)(pci_device *);
|
||||
|
||||
typedef struct pci_driver {
|
||||
const char *name;
|
||||
const char *description;
|
||||
u8 order;
|
||||
u8 pci_class;
|
||||
u8 pci_subclass;
|
||||
uint8_t order;
|
||||
uint8_t pci_class;
|
||||
uint8_t pci_subclass;
|
||||
struct {
|
||||
u8 pci_use_subclass: 1;
|
||||
uint8_t pci_use_subclass: 1;
|
||||
};
|
||||
pci_driver_validate validate;
|
||||
pci_driver_initialize initialize;
|
||||
} pci_driver;
|
||||
|
||||
typedef struct {
|
||||
u32 address;
|
||||
u32 size;
|
||||
u8 present: 1;
|
||||
u8 is_io_space: 1;
|
||||
u8 type: 2;
|
||||
u8 prefetchable: 1;
|
||||
uint32_t address;
|
||||
uint32_t size;
|
||||
uint8_t present: 1;
|
||||
uint8_t is_io_space: 1;
|
||||
uint8_t type: 2;
|
||||
uint8_t prefetchable: 1;
|
||||
} bar_info;
|
||||
|
||||
typedef struct pci_device {
|
||||
u8 bus;
|
||||
u8 slot;
|
||||
u8 func;
|
||||
uint8_t bus;
|
||||
uint8_t slot;
|
||||
uint8_t func;
|
||||
union {
|
||||
struct {
|
||||
u16 vendorId;
|
||||
u16 deviceId;
|
||||
uint16_t vendorId;
|
||||
uint16_t deviceId;
|
||||
};
|
||||
u32 config_line_0;
|
||||
uint32_t config_line_0;
|
||||
};
|
||||
union {
|
||||
struct {
|
||||
u8 revisionId;
|
||||
u8 programInterface;
|
||||
u8 subclass;
|
||||
u8 class;
|
||||
uint8_t revisionId;
|
||||
uint8_t programInterface;
|
||||
uint8_t subclass;
|
||||
uint8_t class;
|
||||
};
|
||||
u32 config_line_2;
|
||||
uint32_t config_line_2;
|
||||
};
|
||||
union {
|
||||
struct {
|
||||
u8 cacheLineSize;
|
||||
u8 latencyTimer;
|
||||
u8 headerType;
|
||||
u8 bist;
|
||||
uint8_t cacheLineSize;
|
||||
uint8_t latencyTimer;
|
||||
uint8_t headerType;
|
||||
uint8_t bist;
|
||||
};
|
||||
u32 config_line_3;
|
||||
uint32_t config_line_3;
|
||||
};
|
||||
bar_info bar0;
|
||||
bar_info bar1;
|
||||
@@ -123,16 +123,16 @@ typedef struct pci_device {
|
||||
bar_info bar5;
|
||||
const pci_driver *pci_driver;
|
||||
struct {
|
||||
u8 present: 1;
|
||||
uint8_t present: 1;
|
||||
} device_state;
|
||||
struct {
|
||||
u8 initialized: 1;
|
||||
uint8_t initialized: 1;
|
||||
} driver_state;
|
||||
} pci_device;
|
||||
|
||||
void pci_print_info();
|
||||
|
||||
u32 pci_register_driver(const pci_driver *pci_driver);
|
||||
uint32_t pci_register_driver(const pci_driver *pci_driver);
|
||||
|
||||
void pci_sort_drivers();
|
||||
|
||||
@@ -140,18 +140,18 @@ void pci_init_drivers();
|
||||
|
||||
void pci_scan();
|
||||
|
||||
u32 pci_config_read_double_word(u8 bus, u8 slot, u8 func, u8 offset);
|
||||
uint32_t pci_config_read_double_word(uint8_t bus, uint8_t slot, uint8_t func, uint8_t offset);
|
||||
|
||||
u16 pci_config_read_word(u8 bus, u8 slot, u8 func, u8 offset);
|
||||
uint16_t pci_config_read_word(uint8_t bus, uint8_t slot, uint8_t func, uint8_t offset);
|
||||
|
||||
u8 pci_config_read_byte(u8 bus, u8 slot, u8 func, u8 offset);
|
||||
uint8_t pci_config_read_byte(uint8_t bus, uint8_t slot, uint8_t func, uint8_t offset);
|
||||
|
||||
void pci_config_write_double_word(u8 bus, u8 slot, u8 func, u8 offset, u32 value);
|
||||
void pci_config_write_double_word(uint8_t bus, uint8_t slot, uint8_t func, uint8_t offset, uint32_t value);
|
||||
|
||||
void pci_config_write_word(u8 bus, u8 slot, u8 func, u8 offset, u16 value);
|
||||
void pci_config_write_word(uint8_t bus, uint8_t slot, uint8_t func, uint8_t offset, uint16_t value);
|
||||
|
||||
void pci_config_write_byte(u8 bus, u8 slot, u8 func, u8 offset, u8 value);
|
||||
void pci_config_write_byte(uint8_t bus, uint8_t slot, uint8_t func, uint8_t offset, uint8_t value);
|
||||
|
||||
void pci_init_bar(pci_device *device, u8 bar_index);
|
||||
void pci_init_bar(pci_device *device, uint8_t bar_index);
|
||||
|
||||
#endif //NEW_KERNEL_PCI_H
|
||||
|
||||
Reference in New Issue
Block a user