/* * This file is produced automatically. * Do not modify anything in here by hand. * * Created from source file * freebsd-org/sys/dev/pci/pcib_if.m * with * makeobjops.awk * * See the source file for legal information */ #ifndef _pcib_if_h_ #define _pcib_if_h_ #include "pci_if.h" /** @brief Unique descriptor for the PCIB_MAXSLOTS() method */ extern struct kobjop_desc pcib_maxslots_desc; /** @brief A function implementing the PCIB_MAXSLOTS() method */ typedef int pcib_maxslots_t(device_t dev); static __inline int PCIB_MAXSLOTS(device_t dev) { kobjop_t _m; KOBJOPLOOKUP(((kobj_t)dev)->ops,pcib_maxslots); return ((pcib_maxslots_t *) _m)(dev); } /** @brief Unique descriptor for the PCIB_MAXFUNCS() method */ extern struct kobjop_desc pcib_maxfuncs_desc; /** @brief A function implementing the PCIB_MAXFUNCS() method */ typedef int pcib_maxfuncs_t(device_t dev); static __inline int PCIB_MAXFUNCS(device_t dev) { kobjop_t _m; KOBJOPLOOKUP(((kobj_t)dev)->ops,pcib_maxfuncs); return ((pcib_maxfuncs_t *) _m)(dev); } /** @brief Unique descriptor for the PCIB_READ_CONFIG() method */ extern struct kobjop_desc pcib_read_config_desc; /** @brief A function implementing the PCIB_READ_CONFIG() method */ typedef u_int32_t pcib_read_config_t(device_t dev, u_int bus, u_int slot, u_int func, u_int reg, int width); static __inline u_int32_t PCIB_READ_CONFIG(device_t dev, u_int bus, u_int slot, u_int func, u_int reg, int width) { kobjop_t _m; KOBJOPLOOKUP(((kobj_t)dev)->ops,pcib_read_config); return ((pcib_read_config_t *) _m)(dev, bus, slot, func, reg, width); } /** @brief Unique descriptor for the PCIB_WRITE_CONFIG() method */ extern struct kobjop_desc pcib_write_config_desc; /** @brief A function implementing the PCIB_WRITE_CONFIG() method */ typedef void pcib_write_config_t(device_t dev, u_int bus, u_int slot, u_int func, u_int reg, u_int32_t value, int width); static __inline void PCIB_WRITE_CONFIG(device_t dev, u_int bus, u_int slot, u_int func, u_int reg, u_int32_t value, int width) { kobjop_t _m; KOBJOPLOOKUP(((kobj_t)dev)->ops,pcib_write_config); ((pcib_write_config_t *) _m)(dev, bus, slot, func, reg, value, width); } /** @brief Unique descriptor for the PCIB_ROUTE_INTERRUPT() method */ extern struct kobjop_desc pcib_route_interrupt_desc; /** @brief A function implementing the PCIB_ROUTE_INTERRUPT() method */ typedef int pcib_route_interrupt_t(device_t pcib, device_t dev, int pin); static __inline int PCIB_ROUTE_INTERRUPT(device_t pcib, device_t dev, int pin) { kobjop_t _m; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_route_interrupt); return ((pcib_route_interrupt_t *) _m)(pcib, dev, pin); } /** @brief Unique descriptor for the PCIB_ALLOC_MSI() method */ extern struct kobjop_desc pcib_alloc_msi_desc; /** @brief A function implementing the PCIB_ALLOC_MSI() method */ typedef int pcib_alloc_msi_t(device_t pcib, device_t dev, int count, int maxcount, int *irqs); static __inline int PCIB_ALLOC_MSI(device_t pcib, device_t dev, int count, int maxcount, int *irqs) { kobjop_t _m; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_alloc_msi); return ((pcib_alloc_msi_t *) _m)(pcib, dev, count, maxcount, irqs); } /** @brief Unique descriptor for the PCIB_RELEASE_MSI() method */ extern struct kobjop_desc pcib_release_msi_desc; /** @brief A function implementing the PCIB_RELEASE_MSI() method */ typedef int pcib_release_msi_t(device_t pcib, device_t dev, int count, int *irqs); static __inline int PCIB_RELEASE_MSI(device_t pcib, device_t dev, int count, int *irqs) { kobjop_t _m; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_release_msi); return ((pcib_release_msi_t *) _m)(pcib, dev, count, irqs); } /** @brief Unique descriptor for the PCIB_ALLOC_MSIX() method */ extern struct kobjop_desc pcib_alloc_msix_desc; /** @brief A function implementing the PCIB_ALLOC_MSIX() method */ typedef int pcib_alloc_msix_t(device_t pcib, device_t dev, int *irq); static __inline int PCIB_ALLOC_MSIX(device_t pcib, device_t dev, int *irq) { kobjop_t _m; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_alloc_msix); return ((pcib_alloc_msix_t *) _m)(pcib, dev, irq); } /** @brief Unique descriptor for the PCIB_RELEASE_MSIX() method */ extern struct kobjop_desc pcib_release_msix_desc; /** @brief A function implementing the PCIB_RELEASE_MSIX() method */ typedef int pcib_release_msix_t(device_t pcib, device_t dev, int irq); static __inline int PCIB_RELEASE_MSIX(device_t pcib, device_t dev, int irq) { kobjop_t _m; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_release_msix); return ((pcib_release_msix_t *) _m)(pcib, dev, irq); } /** @brief Unique descriptor for the PCIB_MAP_MSI() method */ extern struct kobjop_desc pcib_map_msi_desc; /** @brief A function implementing the PCIB_MAP_MSI() method */ typedef int pcib_map_msi_t(device_t pcib, device_t dev, int irq, uint64_t *addr, uint32_t *data); static __inline int PCIB_MAP_MSI(device_t pcib, device_t dev, int irq, uint64_t *addr, uint32_t *data) { kobjop_t _m; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_map_msi); return ((pcib_map_msi_t *) _m)(pcib, dev, irq, addr, data); } /** @brief Unique descriptor for the PCIB_POWER_FOR_SLEEP() method */ extern struct kobjop_desc pcib_power_for_sleep_desc; /** @brief A function implementing the PCIB_POWER_FOR_SLEEP() method */ typedef int pcib_power_for_sleep_t(device_t pcib, device_t dev, int *pstate); static __inline int PCIB_POWER_FOR_SLEEP(device_t pcib, device_t dev, int *pstate) { kobjop_t _m; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_power_for_sleep); return ((pcib_power_for_sleep_t *) _m)(pcib, dev, pstate); } /** @brief Unique descriptor for the PCIB_GET_ID() method */ extern struct kobjop_desc pcib_get_id_desc; /** @brief A function implementing the PCIB_GET_ID() method */ typedef int pcib_get_id_t(device_t pcib, device_t dev, enum pci_id_type type, uintptr_t *id); static __inline int PCIB_GET_ID(device_t pcib, device_t dev, enum pci_id_type type, uintptr_t *id) { kobjop_t _m; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_get_id); return ((pcib_get_id_t *) _m)(pcib, dev, type, id); } /** @brief Unique descriptor for the PCIB_TRY_ENABLE_ARI() method */ extern struct kobjop_desc pcib_try_enable_ari_desc; /** @brief A function implementing the PCIB_TRY_ENABLE_ARI() method */ typedef int pcib_try_enable_ari_t(device_t pcib, device_t dev); static __inline int PCIB_TRY_ENABLE_ARI(device_t pcib, device_t dev) { kobjop_t _m; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_try_enable_ari); return ((pcib_try_enable_ari_t *) _m)(pcib, dev); } /** @brief Unique descriptor for the PCIB_ARI_ENABLED() method */ extern struct kobjop_desc pcib_ari_enabled_desc; /** @brief A function implementing the PCIB_ARI_ENABLED() method */ typedef int pcib_ari_enabled_t(device_t pcib); static __inline int PCIB_ARI_ENABLED(device_t pcib) { kobjop_t _m; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_ari_enabled); return ((pcib_ari_enabled_t *) _m)(pcib); } /** @brief Unique descriptor for the PCIB_DECODE_RID() method */ extern struct kobjop_desc pcib_decode_rid_desc; /** @brief A function implementing the PCIB_DECODE_RID() method */ typedef void pcib_decode_rid_t(device_t pcib, uint16_t rid, int *bus, int *slot, int *func); static __inline void PCIB_DECODE_RID(device_t pcib, uint16_t rid, int *bus, int *slot, int *func) { kobjop_t _m; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_decode_rid); ((pcib_decode_rid_t *) _m)(pcib, rid, bus, slot, func); } /** @brief Unique descriptor for the PCIB_REQUEST_FEATURE() method */ extern struct kobjop_desc pcib_request_feature_desc; /** @brief A function implementing the PCIB_REQUEST_FEATURE() method */ typedef int pcib_request_feature_t(device_t pcib, device_t dev, enum pci_feature feature); static __inline int PCIB_REQUEST_FEATURE(device_t pcib, device_t dev, enum pci_feature feature) { kobjop_t _m; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_request_feature); return ((pcib_request_feature_t *) _m)(pcib, dev, feature); } #endif /* _pcib_if_h_ */