Turnstone Operating System
Loading...
Searching...
No Matches
pci_utils.64.c File Reference

PCI utility functions for 64-bit mode. More...

#include <types.h>
#include <pci.h>
#include <logging.h>
#include <memory/paging.h>
#include <memory/frame.h>
#include <utils.h>
#include <ports.h>
#include <apic.h>

Functions

 MODULE ("turnstone.kernel.hw.pci.utils")
 
int8_t pci_msix_configure (pci_generic_device_t *pci_gen_dev, pci_capability_msix_t *msix_cap)
 
uint8_t pci_msix_set_isr (pci_generic_device_t *pci_dev, pci_capability_msix_t *msix_cap, uint16_t msix_vector, interrupt_irq isr)
 
uint8_t pci_msix_update_lapic (pci_generic_device_t *pci_dev, pci_capability_msix_t *msix_cap, uint16_t msix_vector)
 
int8_t pci_msix_clear_pending_bit (pci_generic_device_t *pci_dev, pci_capability_msix_t *msix_cap, uint16_t msix_vector)
 
uint64_t pci_get_bar_size (pci_generic_device_t *pci_dev, uint8_t bar_no)
 
uint64_t pci_get_bar_address (pci_generic_device_t *pci_dev, uint8_t bar_no)
 
int8_t pci_set_bar_address (pci_generic_device_t *pci_dev, uint8_t bar_no, uint64_t bar_fa)
 
void pci_disable_interrupt (pci_generic_device_t *pci_dev)
 
void pci_enable_interrupt (pci_generic_device_t *pci_dev)
 
int8_t pci_io_port_write_data (uint32_t address, uint32_t data, uint8_t bc)
 
uint32_t pci_io_port_read_data (uint32_t address, uint8_t bc)
 

Detailed Description

PCI utility functions for 64-bit mode.

This work is licensed under TURNSTONE OS Public License. Please read and understand latest version of Licence.