Porting FreeBSD driver from 8.4 to 10.3 - PCI_ENABLE_MSI definition missing

Reguna, Lakshmi Lakshmi.Reguna at caviumnetworks.com
Thu Apr 14 23:40:12 UTC 2016


Hi,

I am attempting to port a freebsd driver from 8.4 to 10.3. I ran into the following compilation error. I am not able to find any file which declares PCI_ENABLE_MSI,   PCI_ENABLE_MSIX, PCI_DISABLE_MSI etc. The actual definition of PCI_ENABLE_MSI seems to point to  pci_enable_msi_method in pci.c. Any thoughts on what might be missing ?

               DEVMETHOD(pci_enable_msi,     pci_enable_msi_method),


Build Error:

@/dev/pci/pcivar.h:459:5: error: implicit declaration of function 'PCI_ENABLE_MSI' is invalid in C99
      [-Werror,-Wimplicit-function-declaration]
    PCI_ENABLE_MSI(device_get_parent(dev), dev, address, data);


@/dev/pci/pcivar.h:465:5: error: implicit declaration of function 'PCI_ENABLE_MSIX' is invalid in C99
      [-Werror,-Wimplicit-function-declaration]
    PCI_ENABLE_MSIX(device_get_parent(dev), dev, index, address, data);

@/dev/pci/pcivar.h:471:5: error: implicit declaration of function 'PCI_DISABLE_MSI' is invalid in C99
      [-Werror,-Wimplicit-function-declaration]
    PCI_DISABLE_MSI(device_get_parent(dev), dev);
    ^
@/dev/pci/pcivar.h:501:13: error: implicit declaration of function 'PCI_MSIX_PBA_BAR' is invalid in C99
      [-Werror,-Wimplicit-function-declaration]
    return (PCI_MSIX_PBA_BAR(device_get_parent(dev), dev));
            ^
@/dev/pci/pcivar.h:507:13: error: implicit declaration of function 'PCI_MSIX_TABLE_BAR' is invalid in C99
      [-Werror,-Wimplicit-function-declaration]
    return (PCI_MSIX_TABLE_BAR(device_get_parent(dev), dev));

@/dev/pci/pcivar.h:520:13: error: implicit declaration of function 'PCI_CHILD_ADDED' is invalid in C99
      [-Werror,-Wimplicit-function-declaration]
    return (PCI_CHILD_ADDED(device_get_parent(dev), dev));

Thanks,
Lakshmi Reguna
Lead Technical Marketing Engineer
Cavium Inc.
2315 N First St
San Jose CA 95131
408-943-4652 (o)



More information about the freebsd-drivers mailing list