#ifndef _QED_LL2_IF_H
#define _QED_LL2_IF_H
#include <linux/types.h>
#include <linux/interrupt.h>
#include <linux/netdevice.h>
#include <linux/pci.h>
#include <linux/skbuff.h>
#include <linux/kernel.h>
#include <linux/slab.h>
#include <linux/qed/qed_if.h>
enum qed_ll2_conn_type { … };
enum qed_ll2_rx_conn_type { … };
enum qed_ll2_roce_flavor_type { … };
enum qed_ll2_tx_dest { … };
enum qed_ll2_error_handle { … };
struct qed_ll2_stats { … };
struct qed_ll2_comp_rx_data { … };
qed_ll2_complete_rx_packet_cb;
qed_ll2_release_rx_packet_cb;
qed_ll2_complete_tx_packet_cb;
qed_ll2_release_tx_packet_cb;
qed_ll2_slowpath_cb;
struct qed_ll2_cbs { … };
struct qed_ll2_acquire_data_inputs { … };
struct qed_ll2_acquire_data { … };
struct qed_ll2_tx_pkt_info { … };
#define QED_LL2_UNUSED_HANDLE …
struct qed_ll2_cb_ops { … };
struct qed_ll2_params { … };
enum qed_ll2_xmit_flags { … };
struct qed_ll2_ops { … };
#ifdef CONFIG_QED_LL2
int qed_ll2_alloc_if(struct qed_dev *);
void qed_ll2_dealloc_if(struct qed_dev *);
#else
static const struct qed_ll2_ops qed_ll2_ops_pass = {
.start = NULL,
.stop = NULL,
.start_xmit = NULL,
.register_cb_ops = NULL,
.get_stats = NULL,
};
static inline int qed_ll2_alloc_if(struct qed_dev *cdev)
{
return 0;
}
static inline void qed_ll2_dealloc_if(struct qed_dev *cdev)
{
}
#endif
#endif