#include #include #include #include #include "libvga.h" #define PCI_CONF_ADDR 0xcf8 #define PCI_CONF_DATA 0xcfc int __svgalib_use_procpci=0; int __svgalib_pci_ibus=0, __svgalib_pci_idev=0; static int pci_read_config (unsigned char bus, unsigned char device, unsigned char fn, unsigned long *buf, int size) { int i; unsigned long bx = ((fn&7)<<8) | ((device&31)<<11) | (bus<<16) | 0x80000000; for (i=0; i>16)&0xffff)==0x0300)) /* VGA Class */ if(!(--cont)){ if(__svgalib_use_procpci)proc_pci_read_config(bus,device,0,buf,64); else pci_read_config(bus,device,0,buf,64); memcpy(conf,buf,256); return 0; }; }; return cont; }