#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/errno.h>
#include <linux/types.h>
#include <linux/debugfs.h>
#include <linux/export.h>
#include <linux/list.h>
#include <linux/skbuff.h>
#include <linux/pci.h>
#include "cxgb4.h"
#include "cxgb4_uld.h"
#include "t4_regs.h"
#include "t4fw_api.h"
#include "t4_msg.h"
#define for_each_uldrxq(m, i) …
static void uldrx_flush_handler(struct sge_rspq *q)
{ … }
static int uldrx_handler(struct sge_rspq *q, const __be64 *rsp,
const struct pkt_gl *gl)
{ … }
static int alloc_uld_rxqs(struct adapter *adap,
struct sge_uld_rxq_info *rxq_info, bool lro)
{ … }
static int
setup_sge_queues_uld(struct adapter *adap, unsigned int uld_type, bool lro)
{ … }
static void t4_free_uld_rxqs(struct adapter *adap, int n,
struct sge_ofld_rxq *q)
{ … }
static void free_sge_queues_uld(struct adapter *adap, unsigned int uld_type)
{ … }
static int cfg_queues_uld(struct adapter *adap, unsigned int uld_type,
const struct cxgb4_uld_info *uld_info)
{ … }
static void free_queues_uld(struct adapter *adap, unsigned int uld_type)
{ … }
static int
request_msix_queue_irqs_uld(struct adapter *adap, unsigned int uld_type)
{ … }
static void
free_msix_queue_irqs_uld(struct adapter *adap, unsigned int uld_type)
{ … }
static void enable_rx_uld(struct adapter *adap, unsigned int uld_type)
{ … }
static void quiesce_rx_uld(struct adapter *adap, unsigned int uld_type)
{ … }
static void
free_sge_txq_uld(struct adapter *adap, struct sge_uld_txq_info *txq_info)
{ … }
static int
alloc_sge_txq_uld(struct adapter *adap, struct sge_uld_txq_info *txq_info,
unsigned int uld_type)
{ … }
static void
release_sge_txq_uld(struct adapter *adap, unsigned int uld_type)
{ … }
static int
setup_sge_txq_uld(struct adapter *adap, unsigned int uld_type,
const struct cxgb4_uld_info *uld_info)
{ … }
static void uld_queue_init(struct adapter *adap, unsigned int uld_type,
struct cxgb4_lld_info *lli)
{ … }
int t4_uld_mem_alloc(struct adapter *adap)
{ … }
void t4_uld_mem_free(struct adapter *adap)
{ … }
static void cxgb4_shutdown_uld_adapter(struct adapter *adap, enum cxgb4_uld type)
{ … }
void t4_uld_clean_up(struct adapter *adap)
{ … }
static void uld_init(struct adapter *adap, struct cxgb4_lld_info *lld)
{ … }
static int uld_attach(struct adapter *adap, unsigned int uld)
{ … }
#if IS_ENABLED(CONFIG_CHELSIO_TLS_DEVICE)
static bool cxgb4_uld_in_use(struct adapter *adap)
{ … }
int cxgb4_set_ktls_feature(struct adapter *adap, bool enable)
{ … }
#endif
static void cxgb4_uld_alloc_resources(struct adapter *adap,
enum cxgb4_uld type,
const struct cxgb4_uld_info *p)
{ … }
void cxgb4_uld_enable(struct adapter *adap)
{ … }
void cxgb4_register_uld(enum cxgb4_uld type,
const struct cxgb4_uld_info *p)
{ … }
EXPORT_SYMBOL(…);
int cxgb4_unregister_uld(enum cxgb4_uld type)
{ … }
EXPORT_SYMBOL(…);