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

Quelle  bfa_defs_mfg_comm.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Linux network driver for QLogic BR-series Converged Network Adapter.
 */

/*
 * Copyright (c) 2005-2014 Brocade Communications Systems, Inc.
 * Copyright (c) 2014-2015 QLogic Corporation
 * All rights reserved
 * www.qlogic.com
 */

#ifndef __BFA_DEFS_MFG_COMM_H__
#define __BFA_DEFS_MFG_COMM_H__

#include "bfa_defs.h"

/* Manufacturing block version */
#define BFA_MFG_VERSION    3
#define BFA_MFG_VERSION_UNINIT   0xFF

/* Manufacturing block encrypted version */
#define BFA_MFG_ENC_VER    2

/* Manufacturing block version 1 length */
#define BFA_MFG_VER1_LEN   128

/* Manufacturing block header length */
#define BFA_MFG_HDR_LEN    4

#define BFA_MFG_SERIALNUM_SIZE   11
#define STRSZ(_n)    (((_n) + 4) & ~3)

/* Manufacturing card type */
enum {
 BFA_MFG_TYPE_CB_MAX  = 825,      /*!< Crossbow card type max */
 BFA_MFG_TYPE_FC8P2   = 825,      /*!< 8G 2port FC card */
 BFA_MFG_TYPE_FC8P1   = 815,      /*!< 8G 1port FC card */
 BFA_MFG_TYPE_FC4P2   = 425,      /*!< 4G 2port FC card */
 BFA_MFG_TYPE_FC4P1   = 415,      /*!< 4G 1port FC card */
 BFA_MFG_TYPE_CNA10P2 = 1020,     /*!< 10G 2port CNA card */
 BFA_MFG_TYPE_CNA10P1 = 1010,     /*!< 10G 1port CNA card */
 BFA_MFG_TYPE_JAYHAWK = 804,  /*!< Jayhawk mezz card */
 BFA_MFG_TYPE_WANCHESE = 1007,  /*!< Wanchese mezz card */
 BFA_MFG_TYPE_ASTRA    = 807,  /*!< Astra mezz card */
 BFA_MFG_TYPE_LIGHTNING_P0 = 902, /*!< Lightning mezz card - old */
 BFA_MFG_TYPE_LIGHTNING = 1741,  /*!< Lightning mezz card */
 BFA_MFG_TYPE_PROWLER_F = 1560,  /*!< Prowler FC only cards */
 BFA_MFG_TYPE_PROWLER_N = 1410,  /*!< Prowler NIC only cards */
 BFA_MFG_TYPE_PROWLER_C = 1710,  /*!< Prowler CNA only cards */
 BFA_MFG_TYPE_PROWLER_D = 1860,  /*!< Prowler Dual cards */
 BFA_MFG_TYPE_CHINOOK   = 1867,  /*!< Chinook cards */
 BFA_MFG_TYPE_INVALID = 0,  /*!< Invalid card type */
};

/* Check if Mezz card */
#define bfa_mfg_is_mezz(type) (( \
 (type) == BFA_MFG_TYPE_JAYHAWK || \
 (type) == BFA_MFG_TYPE_WANCHESE || \
 (type) == BFA_MFG_TYPE_ASTRA || \
 (type) == BFA_MFG_TYPE_LIGHTNING_P0 || \
 (type) == BFA_MFG_TYPE_LIGHTNING || \
 (type) == BFA_MFG_TYPE_CHINOOK))

enum {
 CB_GPIO_TTV = (1),  /*!< TTV debug capable cards */
 CB_GPIO_FC8P2   = (2),  /*!< 8G 2port FC card */
 CB_GPIO_FC8P1   = (3),  /*!< 8G 1port FC card */
 CB_GPIO_FC4P2   = (4),  /*!< 4G 2port FC card */
 CB_GPIO_FC4P1   = (5),  /*!< 4G 1port FC card */
 CB_GPIO_DFLY    = (6),  /*!< 8G 2port FC mezzanine card */
 CB_GPIO_PROTO   = BIT(7) /*!< 8G 2port FC prototypes */
};

#define bfa_mfg_adapter_prop_init_gpio(gpio, card_type, prop) \
do {        \
 if ((gpio) & CB_GPIO_PROTO) {    \
  (prop) |= BFI_ADAPTER_PROTO;   \
  (gpio) &= ~CB_GPIO_PROTO;   \
 }       \
 switch (gpio) {      \
 case CB_GPIO_TTV:     \
  (prop) |= BFI_ADAPTER_TTV;   \
 case CB_GPIO_DFLY:     \
 case CB_GPIO_FC8P2:     \
  (prop) |= BFI_ADAPTER_SETP(NPORTS, 2);  \
  (prop) |= BFI_ADAPTER_SETP(SPEED, 8);  \
  (card_type) = BFA_MFG_TYPE_FC8P2;  \
  break;      \
 case CB_GPIO_FC8P1:     \
  (prop) |= BFI_ADAPTER_SETP(NPORTS, 1);  \
  (prop) |= BFI_ADAPTER_SETP(SPEED, 8);  \
  (card_type) = BFA_MFG_TYPE_FC8P1;  \
  break;      \
 case CB_GPIO_FC4P2:     \
  (prop) |= BFI_ADAPTER_SETP(NPORTS, 2);  \
  (prop) |= BFI_ADAPTER_SETP(SPEED, 4);  \
  (card_type) = BFA_MFG_TYPE_FC4P2;  \
  break;      \
 case CB_GPIO_FC4P1:     \
  (prop) |= BFI_ADAPTER_SETP(NPORTS, 1);  \
  (prop) |= BFI_ADAPTER_SETP(SPEED, 4);  \
  (card_type) = BFA_MFG_TYPE_FC4P1;  \
  break;      \
 default:      \
  (prop) |= BFI_ADAPTER_UNSUPP;   \
  (card_type) = BFA_MFG_TYPE_INVALID;  \
 }       \
while (0)

/* VPD data length */
#define BFA_MFG_VPD_LEN   512
#define BFA_MFG_VPD_LEN_INVALID  0

#define BFA_MFG_VPD_PCI_HDR_OFF  137
#define BFA_MFG_VPD_PCI_VER_MASK 0x07 /*!< version mask 3 bits */
#define BFA_MFG_VPD_PCI_VDR_MASK 0xf8 /*!< vendor mask 5 bits */

/* VPD vendor tag */
enum {
 BFA_MFG_VPD_UNKNOWN = 0,     /*!< vendor unknown */
 BFA_MFG_VPD_IBM  = 1,     /*!< vendor IBM */
 BFA_MFG_VPD_HP  = 2,     /*!< vendor HP */
 BFA_MFG_VPD_DELL = 3,     /*!< vendor DELL */
 BFA_MFG_VPD_PCI_IBM = 0x08,  /*!< PCI VPD IBM */
 BFA_MFG_VPD_PCI_HP = 0x10,  /*!< PCI VPD HP */
 BFA_MFG_VPD_PCI_DELL = 0x20,  /*!< PCI VPD DELL */
 BFA_MFG_VPD_PCI_BRCD = 0xf8,  /*!< PCI VPD Brocade */
};

/* BFA adapter flash vpd data definition.
 *
 * All numerical fields are in big-endian format.
 */

struct bfa_mfg_vpd {
 u8  version; /*!< vpd data version */
 u8  vpd_sig[3]; /*!< characters 'V', 'P', 'D' */
 u8  chksum;  /*!< u8 checksum */
 u8  vendor;  /*!< vendor */
 u8 len;  /*!< vpd data length excluding header */
 u8 rsv;
 u8  data[BFA_MFG_VPD_LEN]; /*!< vpd data */
} __packed;

#endif /* __BFA_DEFS_MFG_H__ */

Messung V0.5
C=93 H=95 G=93

¤ Dauer der Verarbeitung: 0.0 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.