1 /* Automatically generated header! Do not Edit! */
    2 #ifndef  CLIB_OPENPCI_PROTOS_H
    3 #define  CLIB_OPENPCI_PROTOS_H
    4 
    5 #ifndef  EXEC_TYPES_H
    6 #include <exec/types.h>
    7 #endif
    8 #ifndef  EXEC_INTERRUPTS_H
    9 #include <exec/interrupts.h>
   10 #endif
   11 #ifndef  UTILITY_TAGITEM_H
   12 #include <utility/tagitem.h>
   13 #endif
   14 #ifndef  DEVICES_TIMER_H
   15 #include <devices/timer.h>
   16 #endif
   17 
   18 
   19 #ifdef __cplusplus
   20 extern "C" {
   21 #endif /* __cplusplus */
   22 
   23 struct pci_dev;
   24 struct Interrupt;
   25 
   26 
   27 unsigned short pci_bus(void);
   28 
   29 
   30 struct  pci_dev *pci_find_device( unsigned short vendor, unsigned short device, struct pci_dev *pcidev);
   31 struct  pci_dev *pci_find_class( unsigned long _class,  struct  pci_dev *pcidev);
   32 struct  pci_dev *pci_find_slot( unsigned char bus,  unsigned long devfn);
   33 
   34 
   35 
   36 unsigned char pci_inb(unsigned long address);
   37 void pci_outb(unsigned char value, unsigned long address);
   38 
   39 
   40 unsigned short pci_inw(unsigned long address);
   41 void pci_outw(unsigned short value, unsigned long address);
   42 
   43 
   44 unsigned long pci_inl(unsigned long address);
   45 void pci_outl(unsigned long value, unsigned long address);
   46 
   47 
   48 void pci_to_hostcpy(void *pcimemsrc, void *memdest, unsigned long packetsize);
   49 void host_to_pcicpy(void *memsrc, void *pcimemdest, unsigned long packetsize);
   50 void pci_to_pcicpy(void *pcimemsrc, void *pcimemdest, unsigned long packetsize);
   51 
   52 
   53 unsigned char pci_read_config_byte(unsigned char registernum,struct  pci_dev *pcidev);
   54 unsigned short pci_read_config_word(unsigned char registernum,struct  pci_dev *pcidev);
   55 unsigned long pci_read_config_long(unsigned char registernum,struct  pci_dev *pcidev);
   56 void pci_write_config_byte(unsigned char registernum, unsigned char val,struct  pci_dev *pcidev);
   57 void pci_write_config_word(unsigned char registernum, unsigned short val,struct  pci_dev *pcidev);
   58 void pci_write_config_long(unsigned char registernum, unsigned long val,struct  pci_dev *pcidev);
   59 
   60 
   61 BOOL pci_set_master(struct  pci_dev *pcidev);
   62 
   63 
   64 BOOL pci_add_intserver(struct Interrupt *PciInterrupt, struct pci_dev *pcidev);
   65 void pci_rem_intserver(struct Interrupt *PciInterrupt, struct pci_dev *pcidev);
   66 
   67 
   68 APTR pci_allocdma_mem(unsigned long size, unsigned long flags);
   69 void pci_freedma_mem(APTR buffer,unsigned long size);
   70 
   71 
   72 APTR pci_logic_to_physic_addr(APTR PciLogicalAddr, struct pci_dev *pcidev);
   73 
   74 #ifdef __cplusplus
   75 }
   76 #endif /* __cplusplus */
   77 
   78 #endif