diff --git a/headers/private/kernel/pci_priv.h b/headers/private/kernel/pci_priv.h index dae731911c..00cc002e9e 100644 --- a/headers/private/kernel/pci_priv.h +++ b/headers/private/kernel/pci_priv.h @@ -1,5 +1,8 @@ -#include -#include +#include + +#ifdef __cplusplus +extern "C" { +#endif status_t pci_config_init(void); uint32 pci_read_config(uint8 bus, uint8 device, uint8 function, uint8 offset, uint8 size); @@ -15,15 +18,16 @@ uint32 pci_read_io_32(int mapped_io_addr); void pci_write_io_32(int mapped_io_addr, uint32 value); status_t pci_irq_init(void); -uint8 pci_read_irq(uint8 bus, uint8 device, uint8 function, uint8 line); -void pci_write_irq(uint8 bus, uint8 device, uint8 function, uint8 line, uint8 irq); +uint8 pci_read_irq(uint8 bus, uint8 device, uint8 function, uint8 pin); +void pci_write_irq(uint8 bus, uint8 device, uint8 function, uint8 pin, uint8 irq); +extern spinlock gConfigLock; extern int gMaxBusDevices; extern bool gIrqRouterAvailable; -#define PCI_LOCK_CONFIG(status) \ +#define PCI_LOCK_CONFIG(cpu_status) \ { \ - status = disable_interrupts(); \ + cpu_status = disable_interrupts(); \ acquire_spinlock(&gConfigLock); \ } @@ -32,3 +36,7 @@ extern bool gIrqRouterAvailable; release_spinlock(&gConfigLock); \ restore_interrupts(cpu_status); \ } + +#ifdef __cplusplus +} +#endif diff --git a/src/add-ons/kernel/bus_managers/pci/arch/ppc/pci_irq.c b/src/add-ons/kernel/bus_managers/pci/arch/ppc/pci_irq.c index fae1ba7f0a..bbe552d9d7 100644 --- a/src/add-ons/kernel/bus_managers/pci/arch/ppc/pci_irq.c +++ b/src/add-ons/kernel/bus_managers/pci/arch/ppc/pci_irq.c @@ -8,13 +8,13 @@ pci_irq_init(void) uint8 -pci_read_irq(uint8 bus, uint8 device, uint8 function, uint8 line) +pci_read_irq(uint8 bus, uint8 device, uint8 function, uint8 pin) { return 0; } void -pci_write_irq(uint8 bus, uint8 device, uint8 function, uint8 line, uint8 irq) +pci_write_irq(uint8 bus, uint8 device, uint8 function, uint8 pin, uint8 irq) { } diff --git a/src/add-ons/kernel/bus_managers/pci/arch/x86/pci_irq.c b/src/add-ons/kernel/bus_managers/pci/arch/x86/pci_irq.c index fae1ba7f0a..bbe552d9d7 100644 --- a/src/add-ons/kernel/bus_managers/pci/arch/x86/pci_irq.c +++ b/src/add-ons/kernel/bus_managers/pci/arch/x86/pci_irq.c @@ -8,13 +8,13 @@ pci_irq_init(void) uint8 -pci_read_irq(uint8 bus, uint8 device, uint8 function, uint8 line) +pci_read_irq(uint8 bus, uint8 device, uint8 function, uint8 pin) { return 0; } void -pci_write_irq(uint8 bus, uint8 device, uint8 function, uint8 line, uint8 irq) +pci_write_irq(uint8 bus, uint8 device, uint8 function, uint8 pin, uint8 irq) { }