Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Linux/drivers/net/ethernet/qlogic/qlcnic/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 2 kB image not shown  

SSL qlcnic_dcb.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * QLogic qlcnic NIC Driver
 * Copyright (c)  2009-2013 QLogic Corporation
 */


#ifndef __QLCNIC_DCBX_H
#define __QLCNIC_DCBX_H

#define QLCNIC_DCB_STATE 0
#define QLCNIC_DCB_AEN_MODE 1

#ifdef CONFIG_QLCNIC_DCB
int qlcnic_register_dcb(struct qlcnic_adapter *);
#else
static inline int qlcnic_register_dcb(struct qlcnic_adapter *adapter)
return 0; }
#endif

struct qlcnic_dcb;

struct qlcnic_dcb_ops {
 int (*query_hw_capability) (struct qlcnic_dcb *, char *);
 int (*get_hw_capability) (struct qlcnic_dcb *);
 int (*query_cee_param) (struct qlcnic_dcb *, char *, u8);
 void (*init_dcbnl_ops) (struct qlcnic_dcb *);
 void (*aen_handler) (struct qlcnic_dcb *, void *);
 int (*get_cee_cfg) (struct qlcnic_dcb *);
 void (*get_info) (struct qlcnic_dcb *);
 int (*attach) (struct qlcnic_dcb *);
 void (*free) (struct qlcnic_dcb *);
};

struct qlcnic_dcb {
 struct qlcnic_dcb_mbx_params *param;
 struct qlcnic_adapter  *adapter;
 struct delayed_work  aen_work;
 struct workqueue_struct  *wq;
 const struct qlcnic_dcb_ops *ops;
 struct qlcnic_dcb_cfg  *cfg;
 unsigned long   state;
};

static inline int qlcnic_dcb_get_hw_capability(struct qlcnic_dcb *dcb)
{
 if (dcb && dcb->ops->get_hw_capability)
  return dcb->ops->get_hw_capability(dcb);

 return -EOPNOTSUPP;
}

static inline void qlcnic_dcb_free(struct qlcnic_dcb *dcb)
{
 if (dcb && dcb->ops->free)
  dcb->ops->free(dcb);
}

static inline int qlcnic_dcb_attach(struct qlcnic_dcb *dcb)
{
 if (dcb && dcb->ops->attach)
  return dcb->ops->attach(dcb);

 return -EOPNOTSUPP;
}

static inline int
qlcnic_dcb_query_hw_capability(struct qlcnic_dcb *dcb, char *buf)
{
 if (dcb && dcb->ops->query_hw_capability)
  return dcb->ops->query_hw_capability(dcb, buf);

 return -EOPNOTSUPP;
}

static inline void qlcnic_dcb_get_info(struct qlcnic_dcb *dcb)
{
 if (dcb && dcb->ops->get_info)
  dcb->ops->get_info(dcb);
}

static inline int
qlcnic_dcb_query_cee_param(struct qlcnic_dcb *dcb, char *buf, u8 type)
{
 if (dcb && dcb->ops->query_cee_param)
  return dcb->ops->query_cee_param(dcb, buf, type);

 return -EOPNOTSUPP;
}

static inline int qlcnic_dcb_get_cee_cfg(struct qlcnic_dcb *dcb)
{
 if (dcb && dcb->ops->get_cee_cfg)
  return dcb->ops->get_cee_cfg(dcb);

 return -EOPNOTSUPP;
}

static inline void qlcnic_dcb_aen_handler(struct qlcnic_dcb *dcb, void *msg)
{
 if (dcb && dcb->ops->aen_handler)
  dcb->ops->aen_handler(dcb, msg);
}

static inline void qlcnic_dcb_init_dcbnl_ops(struct qlcnic_dcb *dcb)
{
 if (dcb && dcb->ops->init_dcbnl_ops)
  dcb->ops->init_dcbnl_ops(dcb);
}

static inline int qlcnic_dcb_enable(struct qlcnic_dcb *dcb)
{
 return dcb ? qlcnic_dcb_attach(dcb) : 0;
}
#endif

Messung V0.5
C=97 H=91 G=93

¤ Dauer der Verarbeitung: 0.1 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.