Sir: I have got the way to map linux pci access way to the BSD way :) now ,several more question ,wondering :( FIRST struct pci_devinfo * pci_read_device(device_t pcib, int b, int s, int f, size_t size) struct cardbus_devinfo { struct pci_devinfo pci; uint8_t mprefetchable; /* bit mask of prefetchable BARs */
so what happen when dinfo = (struct cardbus_devinfo *)pci_read_device(brdev, bus, slot, func, sizeof(struct cardbus_devinfo)); can we use this magic as a common way to wrap common guts? SECOND what should we do to destroy a device and hot remove it from the system ? 1 pause the application 2 device_detach(devlist[tmp]); 3***_release_all_resources(busdev, dinfo); 4 device_delete_child(busdev, devlist[tmp]); 5 pci_freecfg((struct pci_devinfo *)dinfo); 6 shutdown power of the slot so what exactly happens between 2 and 5? THIRD Because the PCIE configure space is 4k long ,shall we change the #define PCI_REGMAX 255 to facilitate the PCI express config R/W? _______________________________________________ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[EMAIL PROTECTED]"