#include <linux/module.h>
#include <linux/idr.h>
#include <rdma/ib_verbs.h>
#include <rdma/ib_user_verbs.h>
#include <rdma/ib_addr.h>
#include <rdma/ib_mad.h>
#include <linux/netdevice.h>
#include <net/addrconf.h>
#include "ocrdma.h"
#include "ocrdma_verbs.h"
#include "ocrdma_ah.h"
#include "be_roce.h"
#include "ocrdma_hw.h"
#include "ocrdma_stats.h"
#include <rdma/ocrdma-abi.h>
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;
static enum rdma_link_layer ocrdma_link_layer(struct ib_device *device,
u32 port_num)
{ … }
static int ocrdma_port_immutable(struct ib_device *ibdev, u32 port_num,
struct ib_port_immutable *immutable)
{ … }
static void get_dev_fw_str(struct ib_device *device, char *str)
{ … }
static ssize_t hw_rev_show(struct device *device,
struct device_attribute *attr, char *buf)
{ … }
static DEVICE_ATTR_RO(hw_rev);
static ssize_t hca_type_show(struct device *device,
struct device_attribute *attr, char *buf)
{ … }
static DEVICE_ATTR_RO(hca_type);
static struct attribute *ocrdma_attributes[] = …;
static const struct attribute_group ocrdma_attr_group = …;
static const struct ib_device_ops ocrdma_dev_ops = …;
static const struct ib_device_ops ocrdma_dev_srq_ops = …;
static int ocrdma_register_device(struct ocrdma_dev *dev)
{ … }
static int ocrdma_alloc_resources(struct ocrdma_dev *dev)
{ … }
static void ocrdma_free_resources(struct ocrdma_dev *dev)
{ … }
static struct ocrdma_dev *ocrdma_add(struct be_dev_info *dev_info)
{ … }
static void ocrdma_remove_free(struct ocrdma_dev *dev)
{ … }
static void ocrdma_remove(struct ocrdma_dev *dev)
{ … }
static int ocrdma_dispatch_port_active(struct ocrdma_dev *dev)
{ … }
static int ocrdma_dispatch_port_error(struct ocrdma_dev *dev)
{ … }
static void ocrdma_shutdown(struct ocrdma_dev *dev)
{ … }
static void ocrdma_event_handler(struct ocrdma_dev *dev, u32 event)
{ … }
void ocrdma_update_link_state(struct ocrdma_dev *dev, u8 lstate)
{ … }
static struct ocrdma_driver ocrdma_drv = …;
static int __init ocrdma_init_module(void)
{ … }
static void __exit ocrdma_exit_module(void)
{ … }
module_init(…) …;
module_exit(ocrdma_exit_module);