rtapi_pci - RTAPI wrappers for linux kernel functionality
#include <rtapi_pci.h>
struct
rtapi_pci_device_id \{ ... };
struct rtapi_pci_resource \{ ... };
struct rtapi_pci_dev \{ ... };
struct rtapi_pci_driver \{ ... };
const char *rtapi_pci_name(const struct rtapi_pci_dev
*pdev);
int rtapi_pci_enable_device(struct rtapi_pci_dev *dev);
void rtapi__iomem *rtapi_pci_ioremap_bar(struct
rtapi_pci_dev *pdev, int bar);
int rtapi_pci_register_driver(struct rtapi_pci_driver
*driver);
void rtapi_pci_unregister_driver(struct rtapi_pci_driver
*driver);
int rtapi_pci_enable_device(struct rtapi_pci_dev *dev);
int rtapi_pci_disable_device(struct rtapi_pci_dev *dev);
#define rtapi_pci_resource_start(dev, bar) ...
#define rtapi_pci_resource_end(dev, bar) ...
#define rtapi_pci_resource_flags(dev, bar) ...
#define rtapi_pci_resource_len(dev,bar) ....
void rtapi_pci_set_drvdata(struct rtapi_pci_dev *pdev, void
*data)
void rtapi_pci_set_drvdata(struct rtapi_pci_dev *pdev, void
*data)
void rtapi_iounmap(volatile void *addr);
struct rtapi_pci;
In kernel space, each rtapi_xxx or RTAPI_XXX identifier is mapped to the underlying kernel functionality, if available.
In userspace, or in kernels where the underlying functionality is not provided by a kernel, generally another implementation—possibly with reduced functionality—is provided. (For example, the userspace implementation for rtapi_pci_register always succeeds)
Typically, these functions may be called from realtime init/cleanup code.
As in Linux.