d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * CDDL HEADER START
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi *
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * The contents of this file are subject to the terms of the
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * Common Development and Distribution License (the "License").
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * You may not use this file except in compliance with the License.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi *
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * or http://www.opensolaris.org/os/licensing.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * See the License for the specific language governing permissions
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * and limitations under the License.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi *
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * When distributing Covered Code, include this CDDL HEADER in each
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * If applicable, add the following below this CDDL HEADER, with the
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * fields enclosed by brackets "[]" replaced with your own identifying
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * information: Portions Copyright [yyyy] [name of copyright owner]
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi *
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * CDDL HEADER END
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi *
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * Copyright 2014 QLogic Corporation
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * The contents of this file are subject to the terms of the
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * QLogic End User License (the "License").
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * You may not use this file except in compliance with the License.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi *
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * You can obtain a copy of the License at
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * http://www.qlogic.com/Resources/Documents/DriverDownloadHelp/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * QLogic_End_User_Software_License.txt
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * See the License for the specific language governing permissions
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * and limitations under the License.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi *
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi *
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * FILE NAME: ncsi_cmds.h
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi *
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * DESCRIPTION: Note that the response definitions include the notion of
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * a rsp Payload consisting of the actual data returned for a
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * given rsp, and the rsp frame Payload consisting of the rsp
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * Payload plus all padding and checksum bytes. The size of
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * each of these must be understood independently for proper
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * programming of the rsp pkt header, and the actual UMP TX
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * operation.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi *
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * CONVENTIONS:
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi *
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * AUTHOR: Tim Sharp
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi *
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi * CREATION DATE: 2007
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi *
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi *
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi ****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#ifndef NCSI_CMDS_H
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMDS_H
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*----------------------------------------------------------------------------
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi------------------------------ include files ---------------------------------
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi----------------------------------------------------------------------------*/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#include "bcmtype.h"
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#include "ncsi_basic_types.h"
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*----------------------------------------------------------------------------
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi------------------------------ local definitions -----------------------------
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchistructs, unions, typedefs, #defines, etc belong here...
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi----------------------------------------------------------------------------*/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef enum NcsiGetParameterSelector
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NCSI_PARAM_BOOTCODE_REV = 0,
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NCSI_PARAM_HOST_L2_MAC,
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NCSI_PARAM_ALT_HOST_L2_MAC,
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NCSI_PARAM_HOST_ISCSI_MAC,
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NCSI_PARAM_ALT_HOST_ISCSI_MAC,
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NCSI_PARAM_PXE_BOOT_REV,
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NCSI_PARAM_ISCSI_BOOT_REV,
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NCSI_PARAM_PCI_DEVICE_ID,
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NCSI_PARAM_PCI_VENDOR_ID,
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NCSI_PARAM_PCI_SUBSYSTEM_ID,
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NCSI_PARAM_PCI_SUBSYSTEM_VENDOR_ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}NcsiGetParameterSelector_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiRmiiControlPktHeader_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the common UMP command/response frame
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi header used in both cmd and rsp pkts.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi UMP frame header idntifies wheteher a received packet is to be processed
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi locally or forwarded for transmission.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_CHANNEL_ID_MAX_VALUE 1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_HEADER_SIZE 16
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiControlPktHeader
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t PlusTwoPadding; /* for plus 2 alignment */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t DestAddr[SIZEOF_MAC_ADDRESS]; /* 6 */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t SrcAddr[SIZEOF_MAC_ADDRESS]; /* 12 */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t EtherType; /* 14 ids pkt as cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_ETHER_TYPE_ID (0x88F8)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t McId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t HeaderRevNum; /* 16 ids */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved0;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t InstanceId; /* 18 ids order of pkts */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t TypeCode; /* 19 ids specific command */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_AEN (0xFF)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_MASK (0x7F)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_CLEAR_INITIAL_STATE (0x00)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_PACKAGE_SELECT (0x01)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_PACKAGE_DESELECT (0x02)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_ENABLE_CHANNEL (0x03)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_DISABLE_CHANNEL (0x04)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_RESET_CHANNEL (0x05)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_ENABLE_CHANNEL_EGRESS_TX (0x06)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_DISABLE_CHANNEL_EGRESS_TX (0x07)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_ENABLE_AEN (0x08)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_SET_LINK (0x09)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_GET_LINK_STATUS (0x0A)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_SET_VLAN_FILTERS (0x0B)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_ENABLE_VLAN (0x0C)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_DISABLE_VLAN (0x0D)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_SET_MAC_ADDRESS (0x0E)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_ENABLE_BROADCAST_PKT_FILTER (0x10)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_DISABLE_BROADCAST_PKT_FILTER (0x11)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_ENABLE_MULTICAST_PKT_FILTER (0x12)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_DISABLE_MULTICAST_PKT_FILTER (0x13)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_SET_NCSI_FLOW_CONTROL (0x14)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_GET_VERSION_ID (0x15)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_GET_CAPABILITIES (0x16)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_GET_PARAMETERS (0x17)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_GET_IF_STATISTICS (0x18)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_GET_NCSI_STATISTICS (0x19)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_GET_NCSI_PASS_THROUGH_STATISTICS (0x1A)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_LAST_NON_OEM_CMD NCSI_CMD_TYPE_GET_NCSI_PASS_THROUGH_STATISTICS
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_OEM (0x50)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RESPONSE_BIT (0x80)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t ChannelId; /* 20 ids specific bcm5706 */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_CHANNEL_ID_MASK 0x1F
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_PACKAGE_ID_MASK 0xE0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t PayloadSize; /* 22 ids how much Payload */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t Reserved1[2];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiRmiiControlPktHeader_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t DestAddr[SIZEOF_MAC_ADDRESS+2]; /* 6 + 2 padding */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t SrcAddr[SIZEOF_MAC_ADDRESS-2];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t EtherType; /* 14 ids pkt as cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_ETHER_TYPE_ID (0x88F8)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t SrcAddr_lsw[2];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t InstanceId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved0;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t HeaderRevNum;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t McId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t PayloadSize; /* 22 ids how much Payload */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t ChannelId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_PACKAGE_ID_MASK 0xE0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_CHANNEL_ID_MASK 0x1F
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t TypeCode;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RESPONSE_BIT (0x80)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_OEM (0x50)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_LAST_NON_OEM_CMD NCSI_CMD_TYPE_GET_NCSI_PASS_THROUGH_STATISTICS
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_GET_NCSI_PASS_THROUGH_STATISTICS (0x1A)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_GET_NCSI_STATISTICS (0x19)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_GET_IF_STATISTICS (0x18)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_GET_PARAMETERS (0x17)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_GET_CAPABILITIES (0x16)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_GET_VERSION_ID (0x15)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_SET_NCSI_FLOW_CONTROL (0x14)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_DISABLE_MULTICAST_PKT_FILTER (0x13)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_ENABLE_MULTICAST_PKT_FILTER (0x12)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_DISABLE_BROADCAST_PKT_FILTER (0x11)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_ENABLE_BROADCAST_PKT_FILTER (0x10)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_SET_MAC_ADDRESS (0x0E)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_DISABLE_VLAN (0x0D)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_ENABLE_VLAN (0x0C)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_SET_VLAN_FILTERS (0x0B)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_GET_LINK_STATUS (0x0A)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_SET_LINK (0x09)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_ENABLE_AEN (0x08)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_DISABLE_CHANNEL_EGRESS_TX (0x07)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_ENABLE_CHANNEL_EGRESS_TX (0x06)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_RESET_CHANNEL (0x05)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_DISABLE_CHANNEL (0x04)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_ENABLE_CHANNEL (0x03)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_PACKAGE_DESELECT (0x02)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_PACKAGE_SELECT (0x01)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_CLEAR_INITIAL_STATE (0x00)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_MASK (0x7F)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_TYPE_AEN (0xFF)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t Reserved1[2];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiRmiiControlPktHeader_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiRmiiControlPktHeader_t *pNcsiRmiiControlPktHeader_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_DEFS_SIZE_OF_NCSI_FRAME_HEADER (sizeof (NcsiRmiiControlPktHeader_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiFwTestCmdPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi Structure definition for most basic UMP cmd Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi Write command is not bounded.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi Read command is bounded to 128 bytes, or 32 dwords. That fits in with
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi existing statistics command response payload size, and handles existing
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi testing needs.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct FwTestCmdPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t OperationType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_TEST_READ 0x0 // read N register dwords starting at address provided (word count, address )
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_TEST_WRITE 0x1 // write N words starting at address provided with Value provided (word count, address, value)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_TEST_READ_FW_STATE 0x2 // read and return internal fw state word
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_TEST_SAVE_SET_OS_PRES_FLAG 0x3 // canned functional meaning
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_TEST_RESTORE_OS_PRES_FLAG 0x4 // canned functional meaning
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_TEST_SAVE_SET_EXCEED_LOW_POWER_FLAG 0x5 // canned functional meaning
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_TEST_RESTORE_EXCEED_LOW_POWER_FLAG 0x6 // canned functional meaning
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi union {
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi struct {
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t Address;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t WordCount;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi } Read;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi struct {
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t Address;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t WordCount;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t Value;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi } Write;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi } OperationParameters;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} FwTestCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// type definitions for Dual Media Support
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef enum PhyPrioritySel
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi PHY_PRI_HW_PIN, // HW pin strapping value
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi PHY_PRI_COPPER_FIRST, // Copper priority selection
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi PHY_PRI_XAUI_FIRST, // XAUI priority selection
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi PHY_PRI_COPPER_ONLY, // use copper, ignore XAUI priority
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi PHY_PRI_XAUI_ONLY // use XAUI, ignore copper priority
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}PhyPrioritySel_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiSetDualMediaParametersPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi Structure definitions for Dual Media support
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SET_PHY_PRIORITY_RSP_PAYLOAD_VERSION 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct SetDualMediaParametersPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved[3];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PhyPrioritySelection;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} SetDualMediaParametersPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PhyPrioritySelection;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved[3];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi SetDualMediaParametersPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiOemGetDualMediaParametersPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Reserved;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PhySelection;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PhyPrioritySelection;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiOemGetDualMediaParametersPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PhyPrioritySelection;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PhySelection;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Reserved;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiOemGetDualMediaParametersPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SET_MAC_OEM_CMD_PAYLOAD_VERSION 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct BrcmOemCmdRspHeader
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define BRCM_OEM_SET_ALT_HOST_MAC_ADDRESS_CMD 0x00
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define BRCM_OEM_GET_NCSI_PARAMETERS_CMD 0x01
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define BRCM_OEM_NCSI_TEST_CMD 0x02
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define BRCM_OEM_SET_PHY_PRIORITY_CMD 0x03
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define BRCM_OEM_GET_PHY_PRIORITY_CMD 0x04
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t PayloadLength;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t Reserved;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t PayloadLength;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define BRCM_OEM_SET_ALT_HOST_MAC_ADDRESS_CMD 0x00
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define BRCM_OEM_GET_NCSI_PARAMETERS_CMD 0x01
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define BRCM_OEM_NCSI_TEST_CMD 0x02
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define BRCM_OEM_SET_PHY_PRIORITY_CMD 0x03
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define BRCM_OEM_GET_PHY_PRIORITY_CMD 0x04
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t Reserved;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} BrcmOemCmdRspHeader_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct ModifyHostMacAddrCmdPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Res;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Flags;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_OEM_CMD_SET_ALT_HOST_MAC_ADDR_FLAG_FIELD_ENABLE_MAC_ADDR 0x01
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_OEM_CMD_SET_ALT_HOST_MAC_ADDR_FLAG_FIELD_ISCSI_MAC_ADDR_SELECT 0x02
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MacHigh;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MacMiddle;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MacLow;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} ModifyHostMacAddrCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MacHigh;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Flags;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_OEM_CMD_SET_ALT_HOST_MAC_ADDR_FLAG_FIELD_ENABLE_MAC_ADDR 0x01
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_OEM_CMD_SET_ALT_HOST_MAC_ADDR_FLAG_FIELD_ISCSI_MAC_ADDR_SELECT 0x02
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Res;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MacLow;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MacMiddle;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi ModifyHostMacAddrCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef union BrcmOemCmdPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi ModifyHostMacAddrCmdPayload_t ModifyHostMacAddrCmd; // BRCM_OEM_SET_ALT_HOST_MAC_ADDRESS_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi FwTestCmdPayload_t NsciTestCmd; // BRCM_OEM_NCSI_TEST_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi SetDualMediaParametersPayload_t SetDualMediaParametersCmd; // BRCM_OEM_SET_PHY_PRIORITY_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} BrcmOemCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_INVENTORY_CMD 0x00
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_EXTENDED_CAPABILITIES_CMD 0x01
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_PARTITION_INFORMATION_CMD 0x02
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_FCOE_CAPABILITIES_CMD 0x03
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_VIRTUAL_LINK_CMD 0x04
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_LAN_STATISTICS_CMD 0x05
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_FCOE_STATISTICS_CMD 0x06
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_SET_ADDR_CMD 0x07
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_ADDR_CMD 0x08
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_SET_LICENSE_CMD 0x09
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_LICENSE_CMD 0x0A
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_SET_PASSTHRU_CONTROL_CMD 0x0B
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_PASSTHRU_CONTROL_CMD 0x0C
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_SET_PARTITION_TX_BANDWIDTH_CMD 0x0D
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_PARTITION_TX_BANDWIDTH_CMD 0x0E
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_SET_MC_IP_ADDRESS_CMD 0x0F
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_TEAMING_INFORMATION_CMD 0x10
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_ENABLE_PORTS_CMD 0x11
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_DISABLE_PORTS_CMD 0x12
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_TEMPERATURE_CMD 0x13
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_SET_LINK_TUNING_CMD 0x14
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_ENABLE_OUTOFBOX_WOL_CMD 0x15
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_DISABLE_OUTOFBOX_WOL_CMD 0x16
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_SUPP_PAYLOAD_VERSION_CMD 0x1A
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_OS_DRIVER_VERSION_CMD 0x1C
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_ISCSI_BOOT_INITIATOR_CONFIG_CMD 0x1D
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_SET_ISCSI_BOOT_INITIATOR_CONFIG_CMD 0x1E
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_ISCSI_BOOT_TARGET_CONFIG_CMD 0x1F
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_SET_ISCSI_BOOT_TARGET_CONFIG_CMD 0x20
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_GET_FCOE_BOOT_TARGET_CONFIG_CMD 0x21
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_SET_FCOE_BOOT_TARGET_CONFIG_CMD 0x22
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_NVRAM_COMMIT_CMD 0x23
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_NVRAM_COMMIT_STATUS_CMD 0x24
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_QLOGIC_IANA (0x113D)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_DELL_IANA (0x2A2)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x00 Get Inventory Used to get the inventory information for the Ethernet Controller 0x00 (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_PAYLOAD_V1 (1<<1)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELL_OEM_PAYLOAD_V2 (1<<2)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellDfltCmd
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Pad;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Pad;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}DellDfltCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellDfltCmdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Pad;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Pad;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellDfltCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellDfltCmd_t DellGetInventoryCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellGetInventoryCmdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MediaType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_BASE_T 0x0001 // 0 Base-T 0b = Base-T is not supported. 1b = Base-T is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_BASE_KR 0x0002 // 1 Base-KR 0b = Base-KR is not supported. 1b = Base-KR is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_BASE_KX 0x0004 // 2 Base-KX 0b = Base-KX is not supported. 1b = Base-KX is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_BASE_KX4 0x0008 // 3 Base-KX4 0b = Base-KX4 is not supported.1b = Base-KX4 is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_SR 0x0010 // 4 SR 0b = SR is not supported. 1b = SR is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_SFP 0x0020 // 5 SFP 0b = SFP is not supported. 1b = SFP is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_SFP_PLUS 0x0040 // 6 SFP+ 0b = SFP+ is not supported. 1b = SFP+ is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_DCA 0x0080 // 7 DCA 0b = DCA is not supported. 1b = DCA is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_RESERVED 0xFF00 // 8-15 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FamilyFWVer;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FW_VER_MAJOR_MASK 0xFF000000
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FW_VER_MINOR_MASK 0x00FF0000
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FW_VER_BUILD_MASK 0x0000FF00
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FW_VER_SUB_BUILD_MASK 0x000000FF
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FamilyDrvVer;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DRV_FW_VER_MAJOR_MASK 0xFF000000
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DRV_FW_VER_MINOR_MASK 0x00FF0000
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DRV_FW_VER_BUILD_MASK 0x0000FF00
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DRV_FW_VER_SUB_BUILD_MASK 0x000000FF
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FirstInventoryLength;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FirstInventoryType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define INVENTORY_TYPE_DEVICE 0x0 // = Device Name
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define INVENTORY_TYPE_VENDOR 0x1 // = Vendor Name
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x2-0xFF = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t InventoryNameBuf[];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MediaType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_BASE_T 0x0001 // 0 Base-T 0b = Base-T is not supported. 1b = Base-T is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_BASE_KR 0x0002 // 1 Base-KR 0b = Base-KR is not supported. 1b = Base-KR is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_BASE_KX 0x0004 // 2 Base-KX 0b = Base-KX is not supported. 1b = Base-KX is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_BASE_KX4 0x0008 // 3 Base-KX4 0b = Base-KX4 is not supported.1b = Base-KX4 is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_SR 0x0010 // 4 SR 0b = SR is not supported. 1b = SR is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_SFP 0x0020 // 5 SFP 0b = SFP is not supported. 1b = SFP is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_SFP_PLUS 0x0040 // 6 SFP+ 0b = SFP+ is not supported. 1b = SFP+ is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_DCA 0x0080 // 7 DCA 0b = DCA is not supported. 1b = DCA is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MEDIA_RESERVED 0xFF00 // 8-15 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FamilyFWVer;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FW_VER_MAJOR_MASK 0xFF000000
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FW_VER_MINOR_MASK 0x00FF0000
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FW_VER_BUILD_MASK 0x0000FF00
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FW_VER_SUB_BUILD_MASK 0x000000FF
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FamilyDrvVer;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DRV_FW_VER_MAJOR_MASK 0xFF000000
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DRV_FW_VER_MINOR_MASK 0x00FF0000
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DRV_FW_VER_BUILD_MASK 0x0000FF00
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DRV_FW_VER_SUB_BUILD_MASK 0x000000FF
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FirstInventoryNameBuf[2];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FirstInventoryLength;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FirstInventoryType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define INVENTORY_TYPE_DEVICE 0x0 // = Device Name
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define INVENTORY_TYPE_VENDOR 0x1 // = Vendor Name
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x2-0xFF = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t InventoryNameBuf[];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellGetInventoryCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x01 Get Extended Capabilities Used to get the feature capabilities of a channel. 0x01 (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellDfltCmd_t DellGetExtendedCapabilitiesCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellGetExtendedCapabilitiesCmdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t CapabilitiesHiWord;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 16-17 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_PXE_SUPPORT_SUPPORT (1<< (18-16)) // 18 PXE 0b = PXE is not supported. 1b = PXE is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_ISCSI_BOOT_SUPPORT (1<< (19-16)) // 19 iSCSI Boot (iBFT or HBA) 0b = iSCSI Boot is not supported. 1b = iSCSI Boot is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_FCOE_BOOT_SUPPORT (1<< (20-16)) // 20 FCoE Boot 0b = FCoE Boot is not supported. 1b = FCoE Boot is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_STORAGE_BOOT_M_PROVISIONING (1<< (21-16)) // 20 Storage Boot Parameter Provisioning 0b = not supported. 1b = is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 22-23 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_NIC_PARTITIONING_SUPPORT (1<< (24-16)) // 24 NIC Partitioning 0b = NIC Partitioning is not supported. 1b = NIC Partitioning is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_SRIOV_SUPPORT (1<< (25-16)) // 25 SR-IOV 0b = SR-IOV is not supported. 1b = SR-IOV is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_DELL_LICENSE_MGR_SUPPORT (1<< (26-16)) // 26 Dell License Manager 0b = Dell License Manager is not supported 1b = Dell License Manager is supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_IPSEC_OFFLOAD_SUPPORT (1<< (27-16)) // 27 IPSec Offload 0b = IPSec Offload is not supported 1b = IPSec Offload is supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_MACSEC_SUPPORT (1<< (28-16)) // 28 MACSec 0b = MACSec is not supported 1b = MACSec is supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_RDMA_SUPPORT (1<< (29-16)) // 29 RDMA 0b = RDMA is not supported 1b = RDMA is supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 30-31 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t CapabilitiesLoWord;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_VIRTUAL_ADDRESSING_SUPPORT 0x0001 // 0 Virtual Addressing 0b = Virtual Addressing is not supported. 1b = Virtual Addressing is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_LINK_TUNING_SUPPORT 0x0002 // 1 Link Tuning 0b = Link Tuning is not supported. 1b = Link Tuning is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_REMOTEPHY_SUPPORT 0x0004 // 2 RemotePHY 0b = RemotePHY is not supported 1b = RemotePHY is supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_OPTION_ROM_PRESENT_SUPPORT 0x0008 // 3 Option ROM Present 0b = OPROM is not present 1b = OPROM is present
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_UEFI_SUPPORT 0x0010 // 4 uEFI 0b = uEFI is not supported 1b = uEFI is supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_WOL_SUPPORT 0x0020 // 5 WakeOnLAN 0b = WakeOnLAN is not supported. 1b = WakeOnLAN is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_NETWORK_MGMT_PASS_THRU_SUPPORT 0x0040 // 6 Network Management pass through 0b = Network Management pass through is not supported. 1b = Network Management pass through is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_OS_BMC_PASS_THRU_SUPPORT 0x0080 // 7 OS-BMC pass through 0b = OS-BMC pass through is not supported. 1b = OS-BMC pass through is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_EEE_SUPPORT 0x0100 // 8 Energy Efficient Ethernet 0b = EEE is not supported. 1b = EEE is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_ON_CHIP_THERMAL_SENSOR_SUPPORT 0x0200 // 9 On chip thermal sensor 0b = On chip thermal sensor is supported. 1b = On chip thermal sensor is not supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 10-11 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_TCP_OFFLOAD_SUPPORT 0x1000 // 12 TCP Offload 0b = TCP Offload is not supported. 1b = TCP Offload is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_ISCSI_OFFLOAD_SUPPORT 0x2000 // 13 iSCSI Offload 0b = iSCSI Offload is not supported. 1b = iSCSI Offload is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_FCOE_SUPPORT 0x4000 // 14 Fibre Channel over Ethernet 0b = Fibre Channel over Ethernet is not supported. 1b = Fibre Channel over Ethernet is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 15 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t DCB_Capabilities;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DCB_CAP_ETS_SUPPORT 0x0001 // 0 Enhanced Transmission Selection (ETS) 0b = ETS is not supported. 1b = ETS is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DCB_CAP_PFC_SUPPORT 0x0002 // 1 Priority Flow Control (PFC) 0b = PFC is not supported. 1b = PFC is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DCB_CAP_CN_SUPPORT 0x0004 // 2 Congestion Notification (CN) 0b = CN is not supported. 1b = CN is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DCB_CAP_DCBX_SUPPORT 0x0008 // 3 DCB Exchange Protocol (DCBXP) 0b = DCBXP is not supported. 1b = DCBXP is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 4-7 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t NP_Capabilities;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_CAP_WOL 0x01 // 0 WakeOnLan 0b = WakeOnLan is not supported. 1b = WakeOnLan is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_CAP_VIRTUAL_LINK_CTRL 0x02 // 1 Virtual Link Control 0b = Virtual Link Control is not supported. 1b = Virtual Link Control is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_CAP_RX_FLOW_CTRL 0x04 // 2 Receive Flow Control 0b = Receive Flow Control is not supported. 1b = Receive Flow Control is supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_CAP_TX_FLOW_CTRL 0x08 // 3 Transmit Flow Control 0b = Transmit Flow Control is not supported.1b = Transmit Flow Control is supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_CAP_TX_BW_CTRL_MAX 0x10 // 4 Transmit Bandwidth Control Maximum 0b = TX Bandwidth Control Maximum is not supported. 1b = TX Bandwidth Control Maximum is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_CAP_TX_BW_CTRL_MIN 0x20 // 5 Transmit Bandwidth Control Minimum 0b = TX Bandwidth Control Minimum is not supported. 1b = TX Bandwidth Control Minimum is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 6-7 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t E_Switch_Capabilities;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define E_SWITCH_CAP_VEB 0x0001 // 0 VEB 0b = VEB is not supported. 1b = VEB is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define E_SWITCH_CAP_BIT1 0x0002 // 1 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define E_SWITCH_CAP_BIT2 0x0004 // 2 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define E_SWITCH_CAP_BPE 0x0008 // 3 BPE 0b = BPE is not supported. 1b = BPE is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define E_SWITCH_CAP_OPEN_FLOW 0x0010 // 4 Open Flow 0b = Open Flow is not supported. 1b = Open Flow is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 5-7 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PF_num; // Number of PCI Physical functions
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t VF_num; // Number of PCI Virtual functions
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t CapabilitiesHiWord;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 16-17 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_PXE_SUPPORT_SUPPORT (1<< (18-16)) // 18 PXE 0b = PXE is not supported. 1b = PXE is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_ISCSI_BOOT_SUPPORT (1<< (19-16)) // 19 iSCSI Boot (iBFT or HBA) 0b = iSCSI Boot is not supported. 1b = iSCSI Boot is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_FCOE_BOOT_SUPPORT (1<< (20-16)) // 20 FCoE Boot 0b = FCoE Boot is not supported. 1b = FCoE Boot is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_STORAGE_BOOT_M_PROVISIONING (1<< (21-16)) // 20 Storage Boot Parameter Provisioning 0b = not supported. 1b = is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 22-23 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_NIC_PARTITIONING_SUPPORT (1<< (24-16)) // 24 NIC Partitioning 0b = NIC Partitioning is not supported. 1b = NIC Partitioning is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_SRIOV_SUPPORT (1<< (25-16)) // 25 SR-IOV 0b = SR-IOV is not supported. 1b = SR-IOV is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_DELL_LICENSE_MGR_SUPPORT (1<< (26-16)) // 26 Dell License Manager 0b = Dell License Manager is not supported 1b = Dell License Manager is supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_IPSEC_OFFLOAD_SUPPORT (1<< (27-16)) // 27 IPSec Offload 0b = IPSec Offload is not supported 1b = IPSec Offload is supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_MACSEC_SUPPORT (1<< (28-16)) // 28 MACSec 0b = MACSec is not supported 1b = MACSec is supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_RDMA_SUPPORT (1<< (29-16)) // 29 RDMA 0b = RDMA is not supported 1b = RDMA is supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 30-31 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t DCB_Capabilities;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DCB_CAP_ETS_SUPPORT 0x0001 // 0 Enhanced Transmission Selection (ETS) 0b = ETS is not supported. 1b = ETS is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DCB_CAP_PFC_SUPPORT 0x0002 // 1 Priority Flow Control (PFC) 0b = PFC is not supported. 1b = PFC is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DCB_CAP_CN_SUPPORT 0x0004 // 2 Congestion Notification (CN) 0b = CN is not supported. 1b = CN is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DCB_CAP_DCBX_SUPPORT 0x0008 // 3 DCB Exchange Protocol (DCBXP) 0b = DCBXP is not supported. 1b = DCBXP is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 4-7 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t CapabilitiesLoWord;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_VIRTUAL_ADDRESSING_SUPPORT 0x0001 // 0 Virtual Addressing 0b = Virtual Addressing is not supported. 1b = Virtual Addressing is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_LINK_TUNING_SUPPORT 0x0002 // 1 Link Tuning 0b = Link Tuning is not supported. 1b = Link Tuning is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_REMOTEPHY_SUPPORT 0x0004 // 2 RemotePHY 0b = RemotePHY is not supported 1b = RemotePHY is supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_OPTION_ROM_PRESENT_SUPPORT 0x0008 // 3 Option ROM Present 0b = OPROM is not present 1b = OPROM is present
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_UEFI_SUPPORT 0x0010 // 4 uEFI 0b = uEFI is not supported 1b = uEFI is supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_WOL_SUPPORT 0x0020 // 5 WakeOnLAN 0b = WakeOnLAN is not supported. 1b = WakeOnLAN is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_NETWORK_MGMT_PASS_THRU_SUPPORT 0x0040 // 6 Network Management pass through 0b = Network Management pass through is not supported. 1b = Network Management pass through is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_OS_BMC_PASS_THRU_SUPPORT 0x0080 // 7 OS-BMC pass through 0b = OS-BMC pass through is not supported. 1b = OS-BMC pass through is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_EEE_SUPPORT 0x0100 // 8 Energy Efficient Ethernet 0b = EEE is not supported. 1b = EEE is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_ON_CHIP_THERMAL_SENSOR_SUPPORT 0x0200 // 9 On chip thermal sensor 0b = On chip thermal sensor is supported. 1b = On chip thermal sensor is not supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 10-11 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_TCP_OFFLOAD_SUPPORT 0x1000 // 12 TCP Offload 0b = TCP Offload is not supported. 1b = TCP Offload is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_ISCSI_OFFLOAD_SUPPORT 0x2000 // 13 iSCSI Offload 0b = iSCSI Offload is not supported. 1b = iSCSI Offload is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define CAP_FCOE_SUPPORT 0x4000 // 14 Fibre Channel over Ethernet 0b = Fibre Channel over Ethernet is not supported. 1b = Fibre Channel over Ethernet is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 15 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t VF_num; // Number of PCI Virtual functions
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PF_num; // Number of PCI Physical functions
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t E_Switch_Capabilities;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define E_SWITCH_CAP_VEB 0x0001 // 0 VEB 0b = VEB is not supported. 1b = VEB is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 1 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 2 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define E_SWITCH_CAP_BPE 0x0008 // 3 BPE 0b = BPE is not supported. 1b = BPE is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define E_SWITCH_CAP_OPEN_FLOW 0x0010 // 4 Open Flow 0b = Open Flow is not supported. 1b = Open Flow is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 5-7 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t NP_Capabilities;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_CAP_WOL 0x01 // 0 WakeOnLan 0b = WakeOnLan is not supported. 1b = WakeOnLan is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_CAP_VIRTUAL_LINK_CTRL 0x02 // 1 Virtual Link Control 0b = Virtual Link Control is not supported. 1b = Virtual Link Control is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_CAP_RX_FLOW_CTRL 0x04 // 2 Receive Flow Control 0b = Receive Flow Control is not supported. 1b = Receive Flow Control is supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_CAP_TX_FLOW_CTRL 0x08 // 3 Transmit Flow Control 0b = Transmit Flow Control is not supported.1b = Transmit Flow Control is supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_CAP_TX_BW_CTRL_MAX 0x10 // 4 Transmit Bandwidth Control Maximum 0b = TX Bandwidth Control Maximum is not supported. 1b = TX Bandwidth Control Maximum is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_CAP_TX_BW_CTRL_MIN 0x20 // 5 Transmit Bandwidth Control Minimum 0b = TX Bandwidth Control Minimum is not supported. 1b = TX Bandwidth Control Minimum is supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 6-7 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellGetExtendedCapabilitiesCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x02 Get Partition Information Used to get NIC Partition information of a channel. 0x02 (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellDfltCmd_t DellGetPartitionInfoCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellGetPartitionInfoCmdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Enabled_PF_num; // Number of PCI Physical Functions Enabled
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId; // Partition ID #1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t PartitionStatus; // Partition Status
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PARTITION_STATUS_PERSONALITIES_NUM_MASK 0x07 // 0..2 Number of personalities configured Number of personalities configured on the partition.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PARTITION_STATUS_LAN 0x08 // 3 LAN 0b = LAN is not configured 1b = LAN is configured
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PARTITION_STATUS_ISOE 0x10 // 4 iSOE (Stateful) 0b = iSOE is not configured 1b = iSOE is configured iSOE = iSCSI Offload Engine
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PARTITION_STATUS_FCOE 0x20 // 5 FCoE (Stateful) 0b = FCoE is not configured 1b = FCoE is configured FCoE = Fibre Channel Over Ethernet
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 6-15 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FirstPartitionInterfaceLength;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FirstPartitionInterfaceType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PARTITION_INTERFACE_LAN 0x0 // 0x0 = LAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PARTITION_INTERFACE_ISCSI 0x1 // 0x1 = iSCSI
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PARTITION_INTERFACE_FCOE 0x2 // 0x2 = FCoE
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x3-0xFF = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t InterfaceBuf[4*2*44]; // worst case scenario == 4 pf * 2 personalities * 44 bytes/personality
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId; // Partition ID #1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Enabled_PF_num; // Number of PCI Physical Functions Enabled
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 30-31 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t PartitionStatus; // Partition Status
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PARTITION_STATUS_PERSONALITIES_NUM_MASK 0x07 // 0..2 Number of personalities configured Number of personalities configured on the partition.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PARTITION_STATUS_LAN 0x08 // 3 LAN 0b = LAN is not configured 1b = LAN is configured
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PARTITION_STATUS_ISOE 0x10 // 4 iSOE (Stateful) 0b = iSOE is not configured 1b = iSOE is configured iSOE = iSCSI Offload Engine
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PARTITION_STATUS_FCOE 0x20 // 5 FCoE (Stateful) 0b = FCoE is not configured 1b = FCoE is configured FCoE = Fibre Channel Over Ethernet
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 6-15 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FirstPartitionInterfaceType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PARTITION_INTERFACE_LAN 0x0 // 0x0 = LAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PARTITION_INTERFACE_ISCSI 0x1 // 0x1 = iSCSI
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PARTITION_INTERFACE_FCOE 0x2 // 0x2 = FCoE
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x3-0xFF = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FirstPartitionInterfaceLength;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t InterfaceBuf[4*2*44]; // worst case scenario == 4 pf * 2 personalities * 44 bytes/personality
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellGetPartitionInfoCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x03 Get FCoE Capabilities Used to get FCoE Capabilities of a channel. 0x03 (Conditional)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellDfltCmd_t DellGetFcoeCapabilitiesCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellGetFcoeCapabilitiesCmdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved; // Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FcoeFeatureSettings; // FCoE Feature Settings
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCOE_FEATURE_FCOE_SUPPORT 0x0001 // 0 FCoE Support 0b = Stateless Offload 1b = Stateful Offload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 7..1 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MaxIoPerConnection; // Maximum number of I/Os per connection
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MaxLoginsPerPort; // Maximum number of Logins per port
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MaxExchanges; // Maximum number of exchanges
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MaxNPIV_WWN_PerPort; // Maximum NPIV WWN per port
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MaxSupportedTargets; // Maximum number of targets supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MaxOutstandingCmds; // Maximum number of outstanding commands across all connections
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FcoeFeatureSettings; // FCoE Feature Settings
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCOE_FEATURE_FCOE_SUPPORT 0x0001 // 0 FCoE Support 0b = Stateless Offload 1b = Stateful Offload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 7..1 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved; // Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MaxLoginsPerPort; // Maximum number of Logins per port
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MaxIoPerConnection; // Maximum number of I/Os per connection
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MaxNPIV_WWN_PerPort; // Maximum NPIV WWN per port
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MaxExchanges; // Maximum number of exchanges
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MaxOutstandingCmds; // Maximum number of outstanding commands across all connections
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MaxSupportedTargets; // Maximum number of targets supported
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellGetFcoeCapabilitiesCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x04 Get Virtual Link Used to get virtual link status of a partition enabled in a specific channel. 0x04 (Conditional)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellGetVirtualLinkCmd
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Pad;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Pad;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}DellCmdPartition_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellCmdPartition_t DellGetVirtualLinkCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellGetVirtualLinkCmdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Status;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define VIRTUAL_LINK_STATUS (0x1 << 0) // 0 Virtual Link 0b = Virtual Link is up 1b = Virtual Link is down
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LAN_HOST_DRV_STATE_MASK (0X3 << 1) // 2..1 LAN Host driver state
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LAN_HOST_DRV_NOT_IMPLEMENTED (0x0 << 1) // 0x0 = LAN Host driver state feature is not implemented.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LAN_HOST_DRV_NOT_OPERATIONAL (0x1 << 1) // 0x1 = LAN Host driver state is not operational
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LAN_HOST_DRV_OPERATIONAL (0x2 << 1) // 0x2 = LAN Host driver state is operational
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x3 = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISOE_HOST_DRV_STATE_MASK (0x3 << 3) // 4..3 iSOE Host driver state
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISOE_HOST_DRV_NOT_IMPLEMENTED (0x0 << 3) // 0x0 = iSOE Host driver state feature is not implemented.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISOE_HOST_DRV_NOT_OPERATIONAL (0x1 << 3) // 0x1 = iSOE Host driver state is not operational
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISOE_HOST_DRV_OPERATIONAL (0x2 << 3) // 0x2 = iSOE Host driver state is operational
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x3 = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCOE_HOST_DRV_STATE_MASK (0x3 << 5) // 6..5 FCoE Host driver state
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCOE_HOST_DRV_NOT_IMPLEMENTED (0x0 << 5) // 0x0 = FCoE Host driver state feature is not implemented.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCOE_HOST_DRV_NOT_OPERATIONAL (0x1 << 5) // 0x1 = FCoE Host driver state is not operational
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCOE_HOST_DRV_OPERATIONAL (0x2 << 5) // 0x2 = FCoE Host driver state is operational
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x3 = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 7 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Status;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define VIRTUAL_LINK_STATUS (0x1 << 0) // 0 Virtual Link 0b = Virtual Link is up 1b = Virtual Link is down
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LAN_HOST_DRV_STATE_MASK (0X3 << 1) // 2..1 LAN Host driver state
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LAN_HOST_DRV_NOT_IMPLEMENTED (0x0 << 1) // 0x0 = LAN Host driver state feature is not implemented.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LAN_HOST_DRV_NOT_OPERATIONAL (0x1 << 1) // 0x1 = LAN Host driver state is not operational
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LAN_HOST_DRV_OPERATIONAL (0x2 << 1) // 0x2 = LAN Host driver state is operational
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x3 = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISOE_HOST_DRV_STATE_MASK (0x3 << 3) // 4..3 iSOE Host driver state
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISOE_HOST_DRV_NOT_IMPLEMENTED (0x0 << 3) // 0x0 = iSOE Host driver state feature is not implemented.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISOE_HOST_DRV_NOT_OPERATIONAL (0x1 << 3) // 0x1 = iSOE Host driver state is not operational
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISOE_HOST_DRV_OPERATIONAL (0x2 << 3) // 0x2 = iSOE Host driver state is operational
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x3 = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCOE_HOST_DRV_STATE_MASK (0x3 << 5) // 6..5 FCoE Host driver state
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCOE_HOST_DRV_NOT_IMPLEMENTED (0x0 << 5) // 0x0 = FCoE Host driver state feature is not implemented.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCOE_HOST_DRV_NOT_OPERATIONAL (0x1 << 5) // 0x1 = FCoE Host driver state is not operational
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCOE_HOST_DRV_OPERATIONAL (0x2 << 5) // 0x2 = FCoE Host driver state is operational
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x3 = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 7 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellGetVirtualLinkCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x05 Get LAN Statistics Used to get LAN statistics of a partition enabled in a specific channel. 0x05 (Conditional)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellCmdPartition_t DellGetLanStatisticsCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellGetLanStatisticsCmdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId; // Partition ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CountersClearedFromLastRead; // Counters Cleared from Last Read
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TOTAL_UNICAST_PKT_RCVD_CLEARED 0x01 // 0 Total Unicast Packets Received 0b = Not Cleared 1b = Cleared
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TOTAL_UNICAST_PKT_XMIT_CLEARED 0x02 // 1 Total Unicast Packets Transmitted 0b = Not Cleared 1b = Cleared
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCS_ERRORS_CLEARED 0x04 // 2 FCS Receive Errors 0b = Not Cleared 1b = Cleared
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 7:3 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalUnicastPktsRcvdHi; // 64-bit Total Unicast Packets Received
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalUnicastPktsRcvdLo; // 64-bit Total Unicast Packets Received
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalUnicastPktsXmitHi; // 64-bit Total Unicast Packets Transmitted
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalUnicastPktsXmitLo; // 64-bit Total Unicast Packets Transmitted
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FCS_Errors; // FCS Receive Errors
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CountersClearedFromLastRead; // Counters Cleared from Last Read
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TOTAL_UNICAST_PKT_RCVD_CLEARED 0x01 // 0 Total Unicast Packets Received 0b = Not Cleared 1b = Cleared
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TOTAL_UNICAST_PKT_XMIT_CLEARED 0x02 // 1 Total Unicast Packets Transmitted 0b = Not Cleared 1b = Cleared
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCS_ERRORS_CLEARED 0x04 // 2 FCS Receive Errors 0b = Not Cleared 1b = Cleared
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 7:3 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId; // Partition ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalUnicastPktsRcvdHi; // 64-bit Total Unicast Packets Received
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalUnicastPktsRcvdLo; // 64-bit Total Unicast Packets Received
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalUnicastPktsXmitHi; // 64-bit Total Unicast Packets Transmitted
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalUnicastPktsXmitLo; // 64-bit Total Unicast Packets Transmitted
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FCS_Errors; // FCS Receive Errors
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellGetLanStatisticsCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x06 Get FCoE Statistics Used to get FCoE statistics of a partition enabled in a specific channel. 0x06 (Conditional)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellCmdPartition_t DellGetFcoeStatisticsCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellFcoeStat
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalFcoePktsRcvdHi; // 64-bit Total FCoE Packets Received
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalFcoePktsRcvdLo; // 64-bit Total FCoE Packets Received
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalFcoePktsXmitHi; // 64-bit Total FCoE Packets Transmitted
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalFcoePktsXmitLo; // 64-bit Total FCoE Packets Transmitted
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FCS_Errors; // FCS Receive Errors
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FC_ErrCnt; // FC CRC Error Count
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FIP_LoginFailureCnt; // FIP Login Failure Count
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}DellFcoeStat_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellGetFcoeStatisticsCmdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId; // Partition ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CountersClearedFromLastRead; // Counters Cleared from Last Read
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TOTAL_UNICAST_PKT_RCVD_CLEARED 0x01 // 0 Total FCoE Packets Received 0b = Not Cleared 1b = Cleared
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TOTAL_UNICAST_PKT_XMIT_CLEARED 0x02 // 1 Total FCoE Packets Transmitted 0b = Not Cleared 1b = Cleared
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCS_ERRORS_CLEARED 0x04 // 2 FCS Receive Errors 0b = Not Cleared 1b = Cleared
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FC_CRC_ERR_CNT_CLEARED 0x08 // 3 FC CRC Error Count 0b = Not Cleared 1b = Cleared
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FIP_LOGIN_FAILURE_CNT_CLEARED 0x10 // 4 FIP Login Failure Count 0b = Not Cleared 1b = Cleared
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 7:5 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellFcoeStat_t stat;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CountersClearedFromLastRead; // Counters Cleared from Last Read
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TOTAL_UNICAST_PKT_RCVD_CLEARED 0x01 // 0 Total FCoE Packets Received 0b = Not Cleared 1b = Cleared
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TOTAL_UNICAST_PKT_XMIT_CLEARED 0x02 // 1 Total FCoE Packets Transmitted 0b = Not Cleared 1b = Cleared
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCS_ERRORS_CLEARED 0x04 // 2 FCS Receive Errors 0b = Not Cleared 1b = Cleared
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FC_CRC_ERR_CNT_CLEARED 0x08 // 3 FC CRC Error Count 0b = Not Cleared 1b = Cleared
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FIP_LOGIN_FAILURE_CNT_CLEARED 0x10 // 4 FIP Login Failure Count 0b = Not Cleared 1b = Cleared
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 7:5 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId; // Partition ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellFcoeStat_t stat;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellGetFcoeStatisticsCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x07 Set Address Used to program virtual addresses of a partition enabled in a specific channel. 0x07 (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellSetAddrCmd
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // The Partition ID field indicates the PCI identity of the partition
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_DEVICE_ID_MASK 0x18
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_DEVICE_ID_MASK_SHIFT 3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_FUNC_ID_MASK 0x7
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_FUNC_ID_MASK_SHIFT 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AddrLength;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_LENGTH_MAX 8
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AddrType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // Field to define type of address that follows
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x0 = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x1 = LAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x2 = iSCSI
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x3 = WWN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x4 = FCoE-FIP
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x5 = IB GUID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x6 = LAN/iSCSI
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x7 = LAN/FCoE-FIP
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x8 = iSCSI/FCoE-FIP
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x9-0xFF = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_RESERVED 0x0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_LAN 0x1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_ISCSI 0x2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_WWN 0x3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_FCOE_FIP 0x4
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_IB GUID 0x5
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_MAX 0x6
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AddrBuf[MAC_ADDR_LENGTH_MAX];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AddrLength;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_LENGTH_MAX 8
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // The Partition ID field indicates the PCI identity of the partition
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_DEVICE_ID_MASK 0x18
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_DEVICE_ID_MASK_SHIFT 3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_FUNC_ID_MASK 0x7
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_FUNC_ID_MASK_SHIFT 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AddrBufTemp[3]; // the rest of TLV data up to 16 bytes
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AddrType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // The MAC Addr Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // Field to define type of address that follows
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x0 = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x1 = LAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x2 = iSCSI
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x3 = WWN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x4 = FCoE-FIP
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x5 = IB GUID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x6 = LAN/iSCSI
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x7 = LAN/FCoE-FIP
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x8 = iSCSI/FCoE-FIP
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x9-0xFF = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_RESERVED 0x0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_LAN 0x1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_ISCSI 0x2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_WWN 0x3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_FCOE_FIP 0x4
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_IB GUID 0x5
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_MAX 0x6
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AddrBuf[MAC_ADDR_LENGTH_MAX-3];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}DellSetAddrCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellRspsPartition
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // The Partition ID field indicates the PCI identity of the partition
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_DEVICE_ID_MASK 0x18
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_DEVICE_ID_MASK_SHIFT 3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_FUNC_ID_MASK 0x7
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_FUNC_ID_MASK_SHIFT 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // The Partition ID field indicates the PCI identity of the partition
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_DEVICE_ID_MASK 0x18
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_DEVICE_ID_MASK_SHIFT 3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_FUNC_ID_MASK 0x7
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_FUNC_ID_MASK_SHIFT 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellRspsPartition_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellRspsPartition_t DellSetAddrCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x08 Get Address Used to read virtual and permanent addresses of a partition enabled in a specific channel. 0x08 (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellGetAddrCmd
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t anufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // The Partition ID field indicates the PCI identity of the partition
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_DEVICE_ID_MASK 0x18
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_DEVICE_ID_MASK_SHIFT 3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_FUNC_ID_MASK 0x7
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_FUNC_ID_MASK_SHIFT 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AddrVer;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // The MAC Addr Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // bit 0 MAC Source 0b = Permanent MAC Address
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 1b = Active MAC Address
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_VER_MAC_SOURCE_MASK 0x1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_VER_MAC_SOURCE_PERMANENT 0x0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_VER_MAC_SOURCE_VIRTUAL 0x1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AddrVer;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // The MAC Addr Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // bit 0 MAC Source 0b = Permanent MAC Address
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 1b = Active MAC Address
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_VER_MAC_SOURCE_MASK 0x1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_VER_MAC_SOURCE_PERMANENT 0x0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_VER_MAC_SOURCE_VIRTUAL 0x1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // The Partition ID field indicates the PCI identity of the partition
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_DEVICE_ID_MASK 0x18
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_DEVICE_ID_MASK_SHIFT 3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_FUNC_ID_MASK 0x7
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_FUNC_ID_MASK_SHIFT 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}DellGetAddrCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellGetAddrCmdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // The Partition ID field indicates the PCI identity of the partition
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_DEVICE_ID_MASK 0x18
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_DEVICE_ID_MASK_SHIFT 3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_FUNC_ID_MASK 0x7
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_FUNC_ID_MASK_SHIFT 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FirstAddrLength;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_LENGTH_MAX 8
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FirstAddrType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // Field to define type of address that follows
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x0 = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x1 = LAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x2 = iSCSI
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x3 = WWN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x4 = FCoE-FIP
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x5 = IB GUID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x6 = LAN/iSCSI
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x7 = LAN/FCoE-FIP
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x8 = iSCSI/FCoE-FIP
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x9-0xFF = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_RESERVED 0x0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_LAN 0x1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_ISCSI 0x2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_WWN 0x3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_FCOE_FIP 0x4
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_IB GUID 0x5
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_MAX 0x6
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AddrBuf[5*(MAC_ADDR_LENGTH_MAX + 2)];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // In the future, we might have up to 5 addresses for each PF
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FirstAddrLength;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_LENGTH_MAX 8
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // The Partition ID field indicates the PCI identity of the partition
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_DEVICE_ID_MASK 0x18
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_DEVICE_ID_MASK_SHIFT 3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_FUNC_ID_MASK 0x7
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NP_FUNC_ID_MASK_SHIFT 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AddrBufTemp[3];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FirstAddrType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // Field to define type of address that follows
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x0 = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x1 = LAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x2 = iSCSI
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x3 = WWN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x4 = FCoE-FIP
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x5 = IB GUID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x6 = LAN/iSCSI
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x7 = LAN/FCoE-FIP
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x8 = iSCSI/FCoE-FIP
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x9-0xFF = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_RESERVED 0x0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_LAN 0x1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_ISCSI 0x2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_WWN 0x3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_FCOE_FIP 0x4
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_IB GUID 0x5
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAC_ADDR_TYPE_MAX 0x6
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AddrBuf[5*(MAC_ADDR_LENGTH_MAX + 2)-3];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellGetAddrCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x09 Set License Used to program license for licensable features of Ethernet Controller. 0x09 (Conditional)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellSetLicenseCmd
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Reserved;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FEB; // Feature Enablement Bitmap (FEB)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FEB_ISOE 1 // 0 iSOE 0b = Disable the License for iSOE 1b = Enable the License for iSOE
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FEB_FCOE 2 // 1 FCoE 0b = Disable the License for FCoE 1b = Enable the License for FCoE
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 2-31 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t EPO[24]; // EntitlementID Plus Object (EPO)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // EntitlementID Plus object field is a 24 byte ASCII string
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // defined by the Dell license manager. Ethernet Controllers
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // shall store the information when provided by the Management Controller.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Reserved;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FEB; // Feature Enablement Bitmap (FEB)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FEB_ISOE 1 // 0 iSOE 0b = Disable the License for iSOE 1b = Enable the License for iSOE
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FEB_FCOE 2 // 1 FCoE 0b = Disable the License for FCoE 1b = Enable the License for FCoE
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 2-31 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t EPO[24]; // EntitlementID Plus Object (EPO)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // EntitlementID Plus object field is a 24 byte ASCII string
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // defined by the Dell license manager. Ethernet Controllers
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // shall store the information when provided by the Management Controller.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}DellSetLicenseCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellSetLicenseCmdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Reserved;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t EFB; // Enabled Features Bitmap Field
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define EFB_ISOE 1 // 0 iSOE 0b = Disable the License for iSOE 1b = Enable the License for iSOE
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define EFB_FCOE 2 // 1 FCoE 0b = Disable the License for FCoE 1b = Enable the License for FCoE
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 2-31 Reserved 2-31 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Reserved;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t EFB; // Enabled Features Bitmap Field
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define EFB_ISOE 1 // 0 iSOE 0b = Disable the License for iSOE 1b = Enable the License for iSOE
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define EFB_FCOE 2 // 1 FCoE 0b = Disable the License for FCoE 1b = Enable the License for FCoE
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellSetLicenseCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x0A Get License Used to read licensable features information of the Ethernet Controller. 0x0A (Conditional)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellDfltCmd_t DellGetLicenseCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellGetLicenseCmdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t StorageType; // Storage Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LICENSE_PERSISTENT 1 // 0 Storage Type 0b = License is persistent 1b = License is not persistent
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 1-7 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved; // Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t EFB; // Enabled Features Bitmap (EFB)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define EFB_iSOE (1) // 0 iSOE 0b = iSOE license is disabled 1b = iSOE license is enabled
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define EFB_FCoE (2) // 1 FCoE 0b = FCoE license is disabled 1b = FCoE license is enabled
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 2-31 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi //
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FCB; // Feature Capability Bitmap (FCB)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCB_iSOE (1) // 0 iSOE 0b = Not capable of licensing iSOE 1b = Capable of licensing iSOE
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCB_FCoE (2) // 1 FCoE 0b = Not capable of licensing FCoE 1b = Capable of licensing FCoE
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 2-31 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t UID[16]; // Unique Identifier (UID)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // The Unique Identifier field is a 16 byte ASCII string defined to uniquely identify the Ethernet Controller. It is generated using the permanent MAC address of PCI physical function 0 of the Ethernet Controller. The least 12 bytes is the permanent LAN MAC address of the PCI Physical function 0 and most significant 4 bytes is padded with zeroes. UID shall be all zeros if the Ethernet Controller cannot provide it.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // Example: "00000019D2485C12" for MAC address 00:19:D2:48:5C:12
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t EPO[24]; // EntitlementID Plus Object (EPO)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // EntitlementID Plus object field is a 24 byte string defined by the Dell license manager. Ethernet Controllers shall store the information when provided by the Management Controller. EPO shall be all zeroes if not provided by the Management Controller.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved; // Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t StorageType; // Storage Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LICENSE_PERSISTENT 1 // 0 Storage Type 0b = License is persistent 1b = License is not persistent
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 1-7 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t EFB; // Enabled Features Bitmap (EFB)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define EFB_iSOE (1) // 0 iSOE 0b = iSOE license is disabled 1b = iSOE license is enabled
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define EFB_FCoE (2) // 1 FCoE 0b = FCoE license is disabled 1b = FCoE license is enabled
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 2-31 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi //
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FCB; // Feature Capability Bitmap (FCB)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCB_iSOE (1) // 0 iSOE 0b = Not capable of licensing iSOE 1b = Capable of licensing iSOE
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCB_FCoE (2) // 1 FCoE 0b = Not capable of licensing FCoE 1b = Capable of licensing FCoE
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 2-31 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t UID[16]; // Unique Identifier (UID)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // The Unique Identifier field is a 16 byte ASCII string defined to uniquely identify the Ethernet Controller. It is generated using the permanent MAC address of PCI physical function 0 of the Ethernet Controller. The least 12 bytes is the permanent LAN MAC address of the PCI Physical function 0 and most significant 4 bytes is padded with zeroes. UID shall be all zeros if the Ethernet Controller cannot provide it.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // Example: "00000019D2485C12" for MAC address 00:19:D2:48:5C:12
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t EPO[24]; // EntitlementID Plus Object (EPO)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // EntitlementID Plus object field is a 24 byte string defined by the Dell license manager. Ethernet Controllers shall store the information when provided by the Management Controller. EPO shall be all zeroes if not provided by the Management Controller.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellGetLicenseCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x0B Set Passthru Control Used to enable/disable different passthru data paths in the Controller. 0x0B (Conditional)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellSetPassthruCtrlCmd
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PassthruType; // Passthru Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PASSTHRU_ENABLE 1 // 0 Status 0b = Disable 1b = Enable
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PASSTHRU_MASK (1<<1) // 7..1 Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define OS_BMC_PASSTHRU (0<<1) // 0x00 = OS-BMC Passthru
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NETW_BMC_PASSTHRU (1<<1) // 0x01 = Network-BMC Passthru
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x02-0x7F = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Pad; // Pad (0x00)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Pad; // Pad (0x00)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PassthruType; // Passthru Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PASSTHRU_ENABLE 1 // 0 Status 0b = Disable 1b = Enable
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PASSTHRU_MASK (1<<1) // 7..1 Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define OS_BMC_PASSTHRU (0<<1) // 0x00 = OS-BMC Passthru
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NETW_BMC_PASSTHRU (1<<1) // 0x01 = Network-BMC Passthru
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x02-0x7F = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}DellSetPassthruCtrlCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellRspsDefault
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Pad; // Pad (0x00)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Pad; // Pad (0x00)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellRspsDefault_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellRspsDefault_t DellSetPassthruCtrlCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x0C Get Passthru Control Used to read current status of different passthru data paths in the Controller 0x0C (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellGetPassthruCtrlCmd
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PassthruType; // Passthru Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PASSTHRU_MASK (1<<1) // 7..1 Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define OS_BMC_PASSTHRU (0<<1) // 0x00 = OS-BMC Passthru
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NETW_BMC_PASSTHRU (1<<1) // 0x01 = Network-BMC Passthru
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x02-0x7F = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Pad; // Pad (0x00)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Pad; // Pad (0x00)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PassthruType; // Passthru Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0 Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PASSTHRU_MASK (1<<1) // 7..1 Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define OS_BMC_PASSTHRU (0<<1) // 0x00 = OS-BMC Passthru
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NETW_BMC_PASSTHRU (1<<1) // 0x01 = Network-BMC Passthru
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x02-0x7F = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}DellGetPassthruCtrlCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellGetPassthruCtrlCmdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PassthruType; // Passthru Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PASSTHRU_ENABLE 1 // 0 Status 0b = Disable 1b = Enable
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PASSTHRU_MASK (1<<1) // 7..1 Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define OS_BMC_PASSTHRU (0<<1) // 0x00 = OS-BMC Passthru
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NETW_BMC_PASSTHRU (1<<1) // 0x01 = Network-BMC Passthru
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x02-0x7F = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Pad; // Pad (0x00)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Pad; // Pad (0x00)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PassthruType; // Passthru Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PASSTHRU_ENABLE 1 // 0 Status 0b = Disable 1b = Enable
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define PASSTHRU_MASK (1<<1) // 7..1 Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define OS_BMC_PASSTHRU (0<<1) // 0x00 = OS-BMC Passthru
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NETW_BMC_PASSTHRU (1<<1) // 0x01 = Network-BMC Passthru
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x02-0x7F = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellGetPassthruCtrlCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x0D Set Partition TX Bandwidth Used to configure bandwidth of a partition enabled on a specific channel. 0x0D (Conditional)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellSetPartitionTxBandwidthCmd
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId; // Partition ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MinBandwidth; // Minimum Bandwidth value ranges from 0 to 100
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MaxBandwidth; // Maximum Bandwidth value ranges from 0 to 100
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Pad[3]; // Pad
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MinBandwidth; // Minimum Bandwidth value ranges from 0 to 100
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId; // Partition ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Pad[3]; // Pad
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MaxBandwidth; // Maximum Bandwidth value ranges from 0 to 100
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}DellSetPartitionTxBandwidthCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellRspsPartition_t DellSetPartitionTxBandwidthCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x0E Get Partition TX Bandwidth Used to read bandwidth of a partition enabled on a specific channel. 0x0E (Conditional)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellCmdPartition_t DellGetPartitionTxBandwidthCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellGetPartitionTxBandwidthCmdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId; // Partition ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MinBandwidth; // Minimum Bandwidth value ranges from 0 to 100
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MaxBandwidth; // Maximum Bandwidth value ranges from 0 to 100
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Pad[3]; // Pad
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MinBandwidth; // Minimum Bandwidth value ranges from 0 to 100
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId; // Partition ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Pad[3]; // Pad
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MaxBandwidth; // Maximum Bandwidth value ranges from 0 to 100
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellGetPartitionTxBandwidthCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x0F Set MC IP Address Used to program the IP address of the Management Controller. 0x0F (Optional)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// The Set MC IP Address command allows the Management controller to provide
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// its own IP address to the Ethernet Controller for OS-BMC operations. This
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// IP address must be programmed before the OS-BMC feature is enabled.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// Type-Length and IP addresses fields are repeated if the Management
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// Controller is to be configured to work in both IPv4 and IPV6 network
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// environments.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// The Set MC IP Address Command is addressed to the package, rather than
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// to a particular channel (that is, the command is sent with a Channel ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// where the Package ID subfield matches the ID of the intended package and
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// the Internal Channel ID subfield is set to 0x1F).
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellSetMcIpAddrCmd
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; //* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AddrType; // 7:0 IP Address Type Field to define type of address that follows
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ADDR_TYPE_IPv4 0 // 0x0 = IPv4
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ADDR_TYPE_IPv6 1 // 0x1 = IPv6
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x2-0xFF = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Length; // 15:8 IP Address Length The length indicates the number of bytes used to represent the IP Address.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Addr[16]; // IP Address shall be provided in hexadecimal and
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // the least significant byte of the IP Address
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // field should carry the first octet of the address.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Length; // 15:8 IP Address Length The length indicates the number of bytes used to represent the IP Address.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AddrType; // 7:0 IP Address Type Field to define type of address that follows
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ADDR_TYPE_IPv4 0 // 0x0 = IPv4
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ADDR_TYPE_IPv6 1 // 0x1 = IPv6
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x2-0xFF = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Addr[16]; // IP Address shall be provided in hexadecimal and
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // the least significant byte of the IP Address
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // field should carry the first octet of the address.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}DellSetMcIpAddrCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellRspsDefault_t DellSetMcIpAddrCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x10 Get Teaming Information Used to read Network teaming information of a partition in a specific channel. 0x10 (Optional)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellCmdPartition_t DellGetTeamingInfoCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellGetTeamingInfoCmdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t TeamingInfo; // Team Information
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TEAMING_ENABLED 1 // 0 Network Teaming Status 0b = Network Teaming is not enabled 1b = Network Teaming is enabled
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TEAMING_ID_MASK (0x7F << 1) // 7:1 Team ID Team ID represents the ID of the team of which the network interface on a partition is one of the members. The value ranges from 0x00 - 0x7F.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t TeamLength; // 15..8 Team Length: Value indicates the length of the string to represent the name of the Team type. Ex: IEEE 802.3ad
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t TeamType; // 7..0 Team Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TEAM_TYPE_UNKNOWNR 0x0 // 0x0 = Unknown
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TEAM_TYPE_FAILOVER 0x1 // 0x1 = Failover
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TEAM_TYPE_LOAD_BALANCE 0x2 // 0x2 = Load Balance
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TEAM_TYPE_LINK_AGGREGATION 0x3 // 0x3 = Link Aggregation
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x4-0xFF = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t TeamName[16];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t TeamingInfo; // Team Information
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TEAMING_ENABLED 1 // 0 Network Teaming Status 0b = Network Teaming is not enabled 1b = Network Teaming is enabled
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TEAMING_ID_MASK (0x7F << 1) // 7:1 Team ID Team ID represents the ID of the team of which the network interface on a partition is one of the members. The value ranges from 0x00 - 0x7F.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t TeamNameExtra[2];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t TeamType; // 7..0 Team Type
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TEAM_TYPE_UNKNOWNR 0x0 // 0x0 = Unknown
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TEAM_TYPE_FAILOVER 0x1 // 0x1 = Failover
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TEAM_TYPE_LOAD_BALANCE 0x2 // 0x2 = Load Balance
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define TEAM_TYPE_LINK_AGGREGATION 0x3 // 0x3 = Link Aggregation
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x4-0xFF = Reserved
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t TeamLength; // 15..8 Team Length: Value indicates the length of the string to represent the name of the Team type. Ex: IEEE 802.3ad
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t TeamName[16-2];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellGetTeamingInfoCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x11 Enable Ports Used to enable physical ports of the Ethernet Controller. 0x11 (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellDfltCmd_t DellEnablePortsCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellRspsDefault_t DellEnablePortsCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x12 Disable Ports Used to disable physical ports of the Ethernet Controller. 0x12 (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellDfltCmd_t DellDisablePortsCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellRspsDefault_t DellDisablePortsCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x13 Get Temperature Used to read on-chip temperature values of the Ethernet Controller. 0x13 (Conditional)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellDfltCmd_t DellGetTempCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellGetTempCmdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MaxTemp; // Maximum temperature in degrees Celsius
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CurTemp; // Current temperature in degrees Celsius
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CurTemp; // Current temperature in degrees Celsius
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MaxTemp; // Maximum temperature in degrees Celsius
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellGetTempCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x14 Set Link Tuning Used to configure Link Tuning parameters of a specific channel. 0x14 (Conditional)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct DellSetLinkTuningCmd
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t LinkTuning[8]; // Link Tuning Data is an 8 byte value defined in accordance with the Link Tuning and FlexAddress Interface Specification
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Pad; // Pad
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t LinkTuning_first[2]; // Link Tuning Data is an 8 byte value defined in accordance with the Link Tuning and FlexAddress Interface Specification
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // OEM command ID
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t LinkTuning[4]; // Link Tuning Data is an 8 byte value defined in accordance with the Link Tuning and FlexAddress Interface Specification
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Pad; // Pad
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t LinkTuning_last[2]; // Link Tuning Data is an 8 byte value defined in accordance with the Link Tuning and FlexAddress Interface Specification
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}DellSetLinkTuningCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellRspsDefault_t DellSetLinkTuningCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x15 Enable OutOfBox WOL Used to enable OutOfBox WOL on a specific channel. 0x15 (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x16 Disable OutOfBox WOL Used to disable OutOfBox WOL on a specific channel. 0x16 (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellDfltCmd_t DellEnableDisableOutOfBoxWolCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellRspsDefault_t DellEnableDisableOutOfBoxWolCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*MAX_TLV_COMMAND_SIZE :(i.e. GetiSCSIBootTargetConfig)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi connectTgt 2+8 =10 (�Disabled�)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi TgtIpAddress 2+39=41 (IPv6 max size is 39)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi TgtTcpPort 2+5=7 (2^16 so 5 digits)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi TgtBootLun 2+3=5 (max support is 256)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi TgtIscsiName 2+128=130
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi TgtChapId 2+128=130
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi TgtChapPwd 2+16=18
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi TgtIpVer 2+4= 6 (�IPv6�)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi Total 347 *2 = 694 bytes (for 1st and 2nd target) just for TLVs
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define MAX_TLV_COMMAND_SIZE (694)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x1A Get Supported Payload Version - Used to indicate Payload Versions supported by controller (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x1C Get iSCSI Offload Statistics - Used to get vendor version ID of the OS driver currently running on the
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// partition(or Port) (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x1D Get iSCSI Boot Initiator Config Command - query the channel (partition) for the iSCSI Boot Initiator settings
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// configured on the channel (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x1E Set iSCSI Boot Initiator Config Command - send to the channel (partition) the iSCSI Boot Initiator settings
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// to be used by the channel (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x1F Get iSCSI Boot Target Config Command - query the channel for the iSCSI Boot Target configuration settings of
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// the port or partition (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x20 Set iSCSI Boot Target Config Command - send to the channel (partition) the iSCSI Boot Target settings to be
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// used by the channel (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x21 Get FC/FCoE Boot Target Config Command - query the channel for the FC/FCoE Boot Target configuration settings
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// of the port or partition (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x22 Set FC/FCoE Boot Target Config Command - send to the channel (partition) the FC/FCoE Boot Target settings to
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// be used by the channel (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x23 NVRAM Commit Command - instructs the Ethernet or FC Controller to write attribute settings held in temporary
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// storage to the controller�s NVRAM (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// 0x24 NVRAM Commit Status Command - send to the channel (partition) the iSCSI Boot Target settings to be used by
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// the channel (Mandatory)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t NumOfTLVs;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi /*This is a place holder for the Maximum size in bytesof this command with all TLV's present*/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t buf[MAX_TLV_COMMAND_SIZE];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellOemCmdPartitionTLV_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellDfltCmd_t DellGetSupportedVerCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellCmdPartition_t DellGetOsDriverVerCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellCmdPartition_t DellGetiScsiInitiatorConfCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellOemCmdPartitionTLV_t DellSetiScsiInitiatorConfCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellCmdPartition_t DellGetiScsiTargetConfCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellOemCmdPartitionTLV_t DellSetiScsiTargetConfCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellCmdPartition_t DellGetFcoeTargetConfCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellOemCmdPartitionTLV_t DellSetFcoeTargetConfCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellDfltCmd_t DellCommitNvramCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellDfltCmd_t DellGetCommitNvramStatusCmd_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef union DellOemCmdPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // Dell OEM NCSI commands
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetInventoryCmd_t GetInventoryCmd; // DELL_OEM_GET_INVENTORY_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetExtendedCapabilitiesCmd_t GetExtendedCapabilitiesCmd; // DELL_OEM_GET_EXTENDED_CAPABILITIES_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetPartitionInfoCmd_t GetPartitionInfoCmd; // DELL_OEM_GET_PARTITION_INFORMATION_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetFcoeCapabilitiesCmd_t GetFcoeCapabilitiesCmd; // DELL_OEM_GET_FCOE_CAPABILITIES_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetVirtualLinkCmd_t GetVirtualLinkCmd; // DELL_OEM_GET_VIRTUAL_LINK_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetLanStatisticsCmd_t GetLanStatisticsCmd; // DELL_OEM_GET_LAN_STATISTICS_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetFcoeStatisticsCmd_t GetFcoeStatisticsCmd; // DELL_OEM_GET_FCOE_STATISTICS_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellSetAddrCmd_t SetAddrCmd; // DELL_OEM_SET_ADDR_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetAddrCmd_t GetAddrCmd; // DELL_OEM_GET_ADDR_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellSetLicenseCmd_t SetLicenseCmd; // DELL_OEM_SET_LICENSE_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetLicenseCmd_t GetLicenseCmd; // DELL_OEM_GET_LICENSE_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellSetPassthruCtrlCmd_t SetPassthruCtrlCmd; // DELL_OEM_SET_PASSTHRU_CONTROL_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetPassthruCtrlCmd_t GetPassthruCtrlCmd; // DELL_OEM_GET_PASSTHRU_CONTROL_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellSetPartitionTxBandwidthCmd_t SetPartitionTxBandwidthCmd; // DELL_OEM_SET_PARTITIONCmd_tX_BANDWIDTH_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetPartitionTxBandwidthCmd_t GetPartitionTxBandwidthCmd; // DELL_OEM_GET_PARTITIONCmd_tX_BANDWIDTH_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellSetMcIpAddrCmd_t SetMcIpAddrCmd; // DELL_OEM_SET_MC_IP_ADDRESS_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetTeamingInfoCmd_t GetTeamingInfoCmd; // DELL_OEM_GETCmd_tEAMING_INFORMATION_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellEnablePortsCmd_t EnablePortsCmd; // DELL_OEM_ENABLE_PORTS_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellDisablePortsCmd_t DisablePortsCmd; // DELL_OEM_DISABLE_PORTS_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetTempCmd_t GetTempCmd; // DELL_OEM_GET_TEMPERATURE_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellSetLinkTuningCmd_t SetLinkTuningCmd; // DELL_OEM_SET_LINKTUNING_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellEnableDisableOutOfBoxWolCmd_t EnableDisableOutOfBoxWolCmd; // DELL_OEM_ENABLE_OUTOFBOX_WOL_CMD and DELL_OEM_DISABLE_OUTOFBOX_WOL_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetSupportedVerCmd_t GetSupportedVerCmd; // DELL_OEM_GET_SUPP_PAYLOAD_VERSION_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetOsDriverVerCmd_t GetOsDriverVerCmd; // DELL_OEM_GET_OS_DRIVER_VERSION_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetiScsiInitiatorConfCmd_t GetiScsiInitiatorConfCmd; // DELL_OEM_GET_ISCSI_BOOT_INITIATOR_CONFIG_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellSetiScsiInitiatorConfCmd_t SetiScsiInitiatorConfCmd; // DELL_OEM_SET_ISCSI_BOOT_INITIATOR_CONFIG_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetiScsiTargetConfCmd_t GetiScsiTargetConfCmd; // DELL_OEM_GET_ISCSI_BOOT_TARGET_CONFIG_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellSetiScsiTargetConfCmd_t SetiScsiTargetConfCmd; // DELL_OEM_SET_ISCSI_BOOT_TARGET_CONFIG_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetFcoeTargetConfCmd_t GetFcoeTargetConfCmd; // DELL_OEM_GET_FCOE_BOOT_TARGET_CONFIG_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellSetFcoeTargetConfCmd_t SetFcoeTargetConfCmd; // DELL_OEM_SET_FCOE_BOOT_TARGET_CONFIG_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellCommitNvramCmd_t CommitNvramCmd; // DELL_OEM_NVRAM_COMMIT_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetCommitNvramStatusCmd_t GetCommitNvramStatusCmd; // DELL_OEM_NVRAM_COMMIT_STATUS_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellOemCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct BrcmOemVendorData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi BrcmOemCmdRspHeader_t BrcmOemCmdRspHeader;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi BrcmOemCmdPayload_t OemPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} BrcmOemVendorData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdOemCmdPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi BrcmOemVendorData_t VendorData;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdOemCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdSelectPackageCmdPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the select package cmd Payload.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdSelectPackageCmdPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t DisableHwArbitration;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define HW_ARBITRATION_MASK 0x1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define HW_ARBITRATION_ENABLE 0x0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define HW_ARBITRATION_DISABLE 0x1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdSelectPackageCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdEnableMulticastPacketFilteringCmdPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the cmd Payload.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdEnableMulticastPacketFilteringCmdPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t Setting;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_MULTICAST_PACKET_PASSTHRU_SETTING_MASK 7
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_MULTICAST_PACKET_PASSTHRU_SETTING_IPV6_NEIGHBOR_ADV 1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_MULTICAST_PACKET_PASSTHRU_SETTING_IPV6_ROUTER_ADV 2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_MULTICAST_PACKET_PASSTHRU_SETTING_DHCPV6 4
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdEnableMulticastPacketFilteringCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdSetNcsiFlowControlCmdPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the set ncsi flowcontrol cmd Payload.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdSetNcsiFlowControlCmdPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t Setting;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_NCSI_FLOW_CONTROL_SETTING_ENABLE 3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_NCSI_FLOW_CONTROL_SETTING_DISABLE 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdSetNcsiFlowControlCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdEnableVlanCmdPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the set ncsi flowcontrol cmd Payload.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdEnableVlanCmdPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t Setting;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_ENABLE_VLAN_SETTING_VLAN_TAG_MODE 1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_ENABLE_VLAN_SETTING_MIXED_MODE 2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_ENABLE_VLAN_SETTING_PROM_VLAN_MODE 3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdEnableVlanCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdSetVlanCmdPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the enable VLAN cmd Payload.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdSetVlanCmdPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Reserved0;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t VlanTag;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Reserved1;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FilterSelector;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Enable;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdSetVlanCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t VlanTag;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Reserved0;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Enable;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FilterSelector;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Reserved1;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdSetVlanCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdEnableAenCmdPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the enable aen cmd Payload.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdEnableAenCmdPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved[3];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AenMcId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t AenControl;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_ENABLE_AEN_CMD_PAYLOAD_ENABLE_LINK_CHANGED_AEN 0x1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_ENABLE_AEN_CMD_PAYLOAD_ENABLE_RESET_OCCURRED_AEN 0x2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_ENABLE_AEN_CMD_PAYLOAD_ENABLE_OS_CHANGED_AEN 0x4
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdEnableAenCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AenMcId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved[3];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t AenControl;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_ENABLE_AEN_CMD_PAYLOAD_ENABLE_LINK_CHANGED_AEN 0x1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_ENABLE_AEN_CMD_PAYLOAD_ENABLE_RESET_OCCURRED_AEN 0x2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_ENABLE_AEN_CMD_PAYLOAD_ENABLE_OS_CHANGED_AEN 0x4
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdEnableAenCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdSetMacAddrCmdPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the set MAC addr command Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdSetMacAddrCmdPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MacAddrHigh;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MacAddrLowHigh;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MacAddrLowLow;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MacAddrNum;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AddrTypeEnable; // bits 7..5=address type, bits 4..1=reserved, bit 0=address enable
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SET_MAC_ADDR_CMD_ADDR_ENABLE 0x01
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SET_MAC_ADDR_CMD_ADDR_TYPE_MASK 0xE0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SET_MAC_ADDR_CMD_ADDR_TYPE_UNICAST 0x00
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SET_MAC_ADDR_CMD_ADDR_TYPE_MULTICAST 0x20
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdSetMacAddrCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MacAddrLowHigh;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MacAddrHigh;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t AddrTypeEnable; // bits 7..5=address type, bits 4..1=reserved, bit 0=address enable
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MacAddrNum;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t MacAddrLowLow;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SET_MAC_ADDR_CMD_ADDR_ENABLE 0x01
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SET_MAC_ADDR_CMD_ADDR_TYPE_MASK 0xE0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SET_MAC_ADDR_CMD_ADDR_TYPE_UNICAST 0x00
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SET_MAC_ADDR_CMD_ADDR_TYPE_MULTICAST 0x20
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdSetMacAddrCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdSetLinkCmdPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the set link command Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdSetLinkCmdPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t LinkSettings;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t OemLinkSettings;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdSetLinkCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdDisableResetChannelCmdPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the reset channel command Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdDisableResetChannelCmdPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t Reserved;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdDisableResetChannelCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdEnableBroadcastPacketFilteringCmdPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the set link command Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdEnableBroadcastPacketFilteringCmdPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FilterSettings;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_ENABLE_BROADCAST_PKT_PASSTHROUGH_ARP 1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_ENABLE_BROADCAST_PKT_PASSTHROUGH_DHCP_CLIENT 2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_ENABLE_BROADCAST_PKT_PASSTHROUGH_DHCP_SERVER 4
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_ENABLE_BROADCAST_PKT_PASSTHROUGH_NETBIOS 8
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdEnableBroadcastPacketFilteringCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiCmdEnableBroadcastPacketFilteringCmdPayload_t *pNcsiCmdEnableBroadcastPacketFilteringCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this union definition combines the various response Payload definitions
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi into a single reference.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef union NcsiCmdPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdDisableResetChannelCmdPayload_t ResetChannelCmdPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdDisableResetChannelCmdPayload_t DisableChannelCmdPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdSetMacAddrCmdPayload_t SetMacAddrPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdSetVlanCmdPayload_t SetVlanPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdSetLinkCmdPayload_t SetLinkPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdEnableAenCmdPayload_t EnableAenPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdEnableBroadcastPacketFilteringCmdPayload_t EnableBroadcastFilterPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdSelectPackageCmdPayload_t SelectPackagePayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdSetNcsiFlowControlCmdPayload_t SetFlowControlPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdEnableVlanCmdPayload_t EnableVlanPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdEnableMulticastPacketFilteringCmdPayload_t EnableMulticastFilterPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdOemCmdPayload_t OemCmdPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellOemCmdPayload_t DellOemCmdPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_DISABLE_RESET_CHANNEL_CMD_PAYLOAD_SIZE (sizeof (NcsiCmdDisableResetChannelCmdPayload_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define UMPCMDPUB_SET_VLAN_CMD_PAYLOAD_SIZE (sizeof (NcsiCmdSetVlanCmdPayload_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define UMPCMDPUB_SET_MAC_CMD_PAYLOAD_SIZE (sizeof (NcsiCmdSetMacAddrCmdPayload_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define UMPCMDPUB_CLR_MAC_CMD_PAYLOAD_SIZE (sizeof (NcsiCmdClearMacAddrCmdPayload_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define UMPCMDPUB_SET_LINK_CMD_PAYLOAD_SIZE (sizeof (NcsiCmdSetLinkCmdPayload_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define UMPCMDPUB_CMD_PAYLOAD_SIZE (sizeof (NcsiCmdPayload_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define UC_32_BIT_ALIGN(X) ((4 - (X & 3)) & 3)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiRmiiCmdPkt_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the the UMP command frame.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi IMD command frames are received from iLO over the UMP interface, and are
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi either processed locally for configuration and control, or are forwarded
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi for transmission at the primary ethernet port.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdPkt
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiRmiiControlPktHeader_t Header;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdPayload_t Payload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiRmiiCmdPkt_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiRmiiCmdPkt_t *pNcsiRmiiCmdPkt_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define UC_MAX_CMD_FRAME_SIZE sizeof(NcsiRmiiCmdPkt_t)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiOemDefaultReturnData_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi Structure definition for data portion of most basic response Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdRspStatus
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSP_CODE_CMD_COMPLETED_OK 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSP_CODE_CMD_FAILED 1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSP_CODE_CMD_UNAVAILABLE 2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSP_CODE_CMD_UNSUPPORTED 3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_NO_ERROR 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_INTERFACE_INIT_REQUIRED 1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_PARAMETER_INVALID_OUT_OF_RANGE 2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_CHANNEL_NOT_READY 3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_PACKAGE_NOT_READY 4
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_INVALID_PAYLOAD_LENGTH 5
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_VLAN_TAG_OF_0_IS_INVALID ((NCSI_CMD_TYPE_SET_VLAN_FILTERS << 8) + 7)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_MAC_ADDR_OF_0_IS_INVALID ((NCSI_CMD_TYPE_SET_MAC_ADDRESS << 8) + 8)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_ASYNCH_FC_NOT_SUPPORTED ((NCSI_CMD_TYPE_SET_NCSI_FLOW_CONTROL << 8) + 9)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_GENERIC_RSN_CODE_OS_CONFLICT 0x80
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_GENERIC_RSN_CODE_OEM_PAYLOAD_VER_ERR 0x81
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x1 Set Link Host OS/ Driver Conflict Returned when the Set Link command is received
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // when the Host NC driver is operational
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x2 Set Link Media Conflict Returned when Set Link command parameters conflict
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // with the media type (for example, Fiber Media)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x3 Set Link Parameter Conflict Returned when Set Link parameters conflict with each
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // other (for example, 1000 Mbps HD with copper media)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x4 Set Link Power Mode Conflict Returned when Set Link parameters conflict with
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // current low-power levels by exceeding capability
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x5 Set Link Speed Conflict Returned when Set Link parameters attempt to force
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // more than one speed at the same time
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x6 Link Command Failed-Hardware Access Error
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // Returned when PHY R/W access fails to complete
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // normally while executing the Set Link or Get Link Status command
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_SET_LINK_HOST_CONFLICT 1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_SET_LINK_MEDIA_CONFLICT 2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_SET_LINK_PARAMETER_CONFLICT 3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_SET_LINK_POWER_MODE_CONFLICT 4
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_SET_LINK_SPEED_CONFLICT 5
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_SET_LINK_HW_ACCESS_ERR 6
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // Dell OEM Set Mac Command-specific Reason Code
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x8000 NIC Partitioning not enabled Returned when the NIC Partitioning feature is not enabled.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x8001 Partition ID not enabled Returned when the individual partition is not enabled.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x8002 Partition ID not associated Returned when the Partition ID is not one of the partitions enumerated on the channel.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x8003 System reboot required Returned when the command can be executed only at system power up or when no operating system is present or driver is loaded.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x8004 Invalid Length The length of a Type-Length field in the Command is incorrect.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x8005 Information not available Returned when the controller is not able to provide the requested information.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x8006 Unsupported Address type Returned when the SetAddress command failed because the specified Address Type in the command is not supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x8007 Unsupported Passthru type Returned when the Set Passthru Control or Get Passthru Control command failed because the specified Passthru Type in the command is not supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x8008 Reached maximum number of allowed ports Returned when OutOfBox WOL is already configured on the maximum number of ports per channel or Device (may be implementation dependent)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // 0x8009 System reboot required for the changes to be effective Returned when the command was executed successfully (Response code = 0) but a driver unload or system reboot is required in order for the changes to become effective.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_NP_NOT_ENABLED 0x8000
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_PARTITION_ID_NOT_ENABLED 0x8001
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_PARTITION_ID_NOT_ASSOCIATED 0x8002
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_REBOOT_REQUIRED 0x8003
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_INVALID_LENGTH 0x8004
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_INFO_NOT_AVAILABLE 0x8005
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_UNSUPPORTED_ADDR_TYPE 0x8006
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_UNSUPPORTED_PASSTHRU_TYPE 0x8007
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_MAX_ALLOW_PORTS_REACHED 0x8008
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_SYS_REBOOT_REQUIRED 0x8009
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_UNSUPPORTED_PAYLOAD_VERSION 0x800a
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_HOST_DRIVER_NOT_LOADED 0x800b
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_LINK_CMD_FAILED_HW_ACCESS_ERR 0x800c
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_INTERNAL_STORAGE_EXCEEDED 0x800d
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_NVRAM_WRITE_FAILURE 0x800e
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_NVRAM_WRITE_PENDING 0x800f
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_UNK_CMD_TYPE 0x7FFF
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_SPECIFIC_RSN_CODE_TYPE_MASK 0xFF00
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_SPECIFIC_RSN_CODE_ERR_MASK 0x00FF
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_SPECIFIC_RSN_CODE_MAC_ADDR_INIT_ERR ((NCSI_CMD_TYPE_ENABLE_CHANNEL_EGRESS_TX << 8) + 0x80)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_SPECIFIC_RSN_CODE_VLAN_TAG_INIT_ERR ((NCSI_CMD_TYPE_ENABLE_VLAN << 8) + 0x81)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdRspStatus_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSP_CODE_CMD_UNSUPPORTED 3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSP_CODE_CMD_UNAVAILABLE 2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSP_CODE_CMD_FAILED 1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSP_CODE_CMD_COMPLETED_OK 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_NO_ERROR 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_INTERFACE_INIT_REQUIRED 1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_PARAMETER_INVALID_OUT_OF_RANGE 2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_CHANNEL_NOT_READY 3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_PACKAGE_NOT_READY 4
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_INVALID_PAYLOAD_LENGTH 5
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_VLAN_TAG_OF_0_IS_INVALID ((NCSI_CMD_TYPE_SET_VLAN_FILTERS << 8) + 7)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_MAC_ADDR_OF_0_IS_INVALID ((NCSI_CMD_TYPE_SET_MAC_ADDRESS << 8) + 8)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_ASYNCH_FC_NOT_SUPPORTED ((NCSI_CMD_TYPE_SET_NCSI_FLOW_CONTROL << 8) + 9)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_GENERIC_RSN_CODE_OS_CONFLICT 0x80
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_GENERIC_RSN_CODE_OEM_PAYLOAD_VER_ERR 0x81
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi /* Dell OEM Set Mac Command-specific Reason Code
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi 0x8000 NIC Partitioning not enabled Returned when the NIC Partitioning feature is not enabled.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi 0x8001 Partition ID not enabled Returned when the individual partition is not enabled.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi 0x8002 Partition ID not associated Returned when the Partition ID is not one of the partitions enumerated on the channel.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi 0x8003 System reboot required Returned when the command can be executed only at system power up or when no operating system is present or driver is loaded.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi 0x8004 Invalid Length The length of a Type-Length field in the Command is incorrect.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi 0x8005 Information not available Returned when the controller is not able to provide the requested information.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi 0x8006 Unsupported Address type Returned when the SetAddress command failed because the specified Address Type in the command is not supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi 0x8007 Unsupported Passthru type Returned when the Set Passthru Control or Get Passthru Control command failed because the specified Passthru Type in the command is not supported.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi 0x8008 Reached maximum number of allowed ports Returned when OutOfBox WOL is already configured on the maximum number of ports per channel or Device (may be implementation dependent)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi 0x8009 System reboot required for the changes to be effective Returned when the command was executed successfully (Response code = 0) but a driver unload or system reboot is required in order for the changes to become effective.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi 0x800A Returned when the Ethernet or FC controller does not support the Payload Version specified in the incoming OEM command. Note: This Reason code does not apply to the Get Supported Payload Version command
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi 0x800B Returned when the command is unable to be successfully executed because there is no OS driver loaded
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi 0x800D Returned when there is insufficient storage to store parameters to be written to NVRAM
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi 0x800E Returned when there is a failure in the NVRAM write operation
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi 0x800F Returned when the NVRAM write operation is not complete
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_NP_NOT_ENABLED 0x8000
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_PARTITION_ID_NOT_ENABLED 0x8001
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_PARTITION_ID_NOT_ASSOCIATED 0x8002
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_REBOOT_REQUIRED 0x8003
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_INVALID_LENGTH 0x8004
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_INFO_NOT_AVAILABLE 0x8005
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_UNSUPPORTED_ADDR_TYPE 0x8006
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_UNSUPPORTED_PASSTHRU_TYPE 0x8007
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_MAX_ALLOW_PORTS_REACHED 0x8008
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_RSN_CODE_SYS_REBOOT_REQUIRED 0x8009
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_UNSUPPORTED_PAYLOAD_VERSION 0x800A
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_HOST_DRIVER_NOT_LOADED 0x800B
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_INTERNAL_STORAGE_EXCEEDED 0x800D
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_NVRAM_WRITE_FAILURE 0x800E
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_DELL_NVRAM_WRITE_PENDING 0x800F
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_RSN_CODE_UNK_CMD_TYPE 0x7FFF
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_SPECIFIC_RSN_CODE_TYPE_MASK 0xFF00
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_SPECIFIC_RSN_CODE_ERR_MASK 0x00FF
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_SPECIFIC_RSN_CODE_MAC_ADDR_INIT_ERR ((NCSI_CMD_TYPE_ENABLE_CHANNEL_EGRESS_TX << 8) + 0x80)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_OEM_SPECIFIC_RSN_CODE_VLAN_TAG_INIT_ERR ((NCSI_CMD_TYPE_ENABLE_VLAN << 8) + 0x81)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdRspStatus_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct OemDefaultReturnData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi BrcmOemCmdRspHeader_t BrcmOemCmdRspHeader;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} OemDefaultReturnData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiDefaultOemCmdRspData_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the data fields of the rsp frm Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi returned in response to the OEM cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiDefaultOemCmdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi OemDefaultReturnData_t ReturnData;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiDefaultOemCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi OemDefaultReturnData_t ReturnData;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiDefaultOemCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct OemTestReturnData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi BrcmOemCmdRspHeader_t BrcmOemCmdRspHeader;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t OemPayload[33];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} OemTestReturnData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdNcsiTestReadCmdRspData_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the data fields of the rsp frm Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi returned in response to the NCSI Test OEM cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdNcsiTestReadCmdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi OemTestReturnData_t ReturnData;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdNcsiTestReadCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi OemTestReturnData_t ReturnData;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdNcsiTestReadCmdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiOemGetNcsiParametersPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t NcsiFwVersionNumber;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t BootcodeVersionNumber;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t PxeBootVersionNumber;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t IScsiBootVersionNumber;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t OemLinkSettings;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostMacAddrHigh;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostMacAddrMiddle;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostMacAddrLow;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostVirtualL2MacAddrHigh;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostVirtualL2MacAddrMiddle;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostVirtualL2MacAddrLow;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostIscsiMacAddrHigh;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostIscsiMacAddrMiddle;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostIscsiMacAddrLow;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostVirtualIscsiMacAddrHigh;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostVirtualIscsiMacAddrMiddle;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostVirtualIscsiMacAddrLow;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // UmpMacAddr_t HostMacAddr;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // UmpMacAddr_t HostVirtualL2MacAddr;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // UmpMacAddr_t HostIscsiMacAddr;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // UmpMacAddr_t HostVirtualIscsiMacAddr;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}NcsiOemGetNcsiParametersPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t NcsiFwVersionNumber;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t BootcodeVersionNumber;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t PxeBootVersionNumber;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t IScsiBootVersionNumber;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t OemLinkSettings;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostMacAddrMiddle;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostMacAddrHigh;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostVirtualL2MacAddrHigh;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostMacAddrLow;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostVirtualL2MacAddrLow;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostVirtualL2MacAddrMiddle;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostIscsiMacAddrMiddle;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostIscsiMacAddrHigh;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostVirtualIscsiMacAddrHigh;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostIscsiMacAddrLow;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostVirtualIscsiMacAddrLow;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t HostVirtualIscsiMacAddrMiddle;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // UmpMacAddr_t HostMacAddr;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // UmpMacAddr_t HostVirtualL2MacAddr;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // UmpMacAddr_t HostIscsiMacAddr;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // UmpMacAddr_t HostVirtualIscsiMacAddr;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiOemGetNcsiParametersPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // ENDIAN
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_NCSI_PARAM_RSP_PAYLOAD_VERSION 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiOemGetNcsiParametersReturnData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi BrcmOemCmdRspHeader_t BrcmOemCmdRspHeader;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiOemGetNcsiParametersPayload_t OemPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiOemGetNcsiParametersReturnData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_PHY_PRIORITY_RSP_PAYLOAD_VERSION 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiOemGetDualMediaParametersReturnData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi BrcmOemCmdRspHeader_t BrcmOemCmdRspHeader;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiOemGetDualMediaParametersPayload_t OemPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiOemGetDualMediaParametersReturnData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiOemGetNcsiParametersRspData_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the data fields of the rsp frm Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi returned in response to the OEM cmds.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiOemGetNcsiParametersRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiOemGetNcsiParametersReturnData_t ReturnData;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiOemGetNcsiParametersRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiOemGetDualMediaParametersRspData_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the data fields of the rsp frm Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi returned in response to the OEM cmds.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiOemGetDualMediaParametersRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiOemGetDualMediaParametersReturnData_t ReturnData;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiOemGetDualMediaParametersRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdGetParametersRspData_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the data fields of the rsp frm Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi returned in response to the get parameters ump cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdGetParametersRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MacAddrCount;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved0[2];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MacAddrFlags;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t VlanTagCount;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved1;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t VlanTagFlags;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t LinkSettings;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t BroadcastFilterSettings;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ConfigurationFlags;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t VlanMode;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FcEnable;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Reserved2;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t AenControl;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiMacAddr_t Mac[NCSI_MAC_ADDRESS_MAX];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t VlanTag[NCSI_VLAN_TAG_COUNT];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}NcsiCmdGetParametersRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MacAddrFlags;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved0[2];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MacAddrCount;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t VlanTagFlags;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved1;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t VlanTagCount;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t LinkSettings;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t BroadcastFilterSettings;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ConfigurationFlags;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Reserved2;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FcEnable;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t VlanMode;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t AenControl;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiMacAddr_t Mac[NCSI_MAC_ADDRESS_MAX];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t VlanTag[NCSI_VLAN_TAG_COUNT];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdGetParametersRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdGetCapabilitiesRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t Flags;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_CAPABILITY_RSP_PAYLOAD_CAPABILITY_FLAG_HW_ARBITRATION 0x01
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_CAPABILITY_RSP_PAYLOAD_CAPABILITY_FLAG_OS_AWARENESS 0x02
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_CAPABILITY_RSP_PAYLOAD_CAPABILITY_FLAG_TX_FLOWCONTROL 0x04
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_CAPABILITY_RSP_PAYLOAD_CAPABILITY_FLAG_RX_FLOWCONTROL 0x08
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_CAPABILITY_RSP_PAYLOAD_CAPABILITY_FLAG_MULTICAST_SUPPORT 0x10
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t BroadcastFiltering;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t MulticastFiltering;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t IngressBuffering;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t AenControl;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t VlanFilterCount;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MixedMacFilterCount;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MulticastFilterCount;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t UnicastFilterCount;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Reserved0;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t VlanModes;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_CAPABILITY_RSP_PAYLOAD_VLAN_MODE_VLAN_ONLY 0x01
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_CAPABILITY_RSP_PAYLOAD_VLAN_MODE_VLAN_NON_VLAN 0x02
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_CAPABILITY_RSP_PAYLOAD_VLAN_MODE_PROMISCUOUS_VLAN 0x04
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t ChannelCount;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdGetCapabilitiesRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t Flags;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_CAPABILITY_RSP_PAYLOAD_CAPABILITY_FLAG_HW_ARBITRATION 0x01
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_CAPABILITY_RSP_PAYLOAD_CAPABILITY_FLAG_OS_AWARENESS 0x02
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_CAPABILITY_RSP_PAYLOAD_CAPABILITY_FLAG_TX_FLOWCONTROL 0x04
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_CAPABILITY_RSP_PAYLOAD_CAPABILITY_FLAG_RX_FLOWCONTROL 0x08
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_CAPABILITY_RSP_PAYLOAD_CAPABILITY_FLAG_MULTICAST_SUPPORT 0x10
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t BroadcastFiltering;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t MulticastFiltering;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t IngressBuffering;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t AenControl;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t UnicastFilterCount;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MulticastFilterCount;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t MixedMacFilterCount;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t VlanFilterCount;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t ChannelCount;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t VlanModes;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_CAPABILITY_RSP_PAYLOAD_VLAN_MODE_PROMISCUOUS_VLAN 0x04
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_CAPABILITY_RSP_PAYLOAD_VLAN_MODE_VLAN_NON_VLAN 0x02
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_GET_CAPABILITY_RSP_PAYLOAD_VLAN_MODE_VLAN_ONLY 0x01
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t Reserved0;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdGetCapabilitiesRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdGetLinkStatusRspData_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the data field portion of the response
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi Payload returned when processing the get link status ump cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdGetLinkStatusRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t LinkState;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_MASK (1<<0)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_ENABLED (1<<0)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_SPEED_DUPLEX_NO_HCD (0<<0)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_SPEED_AND_DUPLEX_MASK (0xF<<1)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_SPEED_DUPLEX_10BASE_T_HD (1<<1)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_SPEED_DUPLEX_10BASE_T_FD (2<<1)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_SPEED_DUPLEX_100BASE_TX_HD (3<<1)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_SPEED_DUPLEX_100BASE_TX_FD (5<<1)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_SPEED_DUPLEX_1000BASE_T_FD (7<<1)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_SPEED_DUPLEX_UMP_2_5GB_HD (8<<1)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_SPEED_DUPLEX_UMP_2_5GB_FD (9<<1)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_SPEED_DUPLEX_UMP_10GBASE_T (10<<1)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_SPEED_DUPLEX_NCSI_10GBASE_T (8<<1)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_AUTO_NEG_ENABLED (1<<5)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_AUTO_NEG_COMPLETE (1<<6)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_PARALLEL_DETECTION (1<<7)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_PARTNER_ADVERTIZED_PAUSE_FC_CAPABLE (1<<8)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_PARTNER_ADVERTIZED_SPEED_DUPLEX_1000BASE_T_FD (1<<9)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_PARTNER_ADVERTIZED_SPEED_DUPLEX_1000BASE_T_HD (1<<10)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_PARTNER_ADVERTIZED_SPEED_DUPLEX_100BASE_TX_FD (1<<12)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_PARTNER_ADVERTIZED_SPEED_DUPLEX_100BASE_TX_HD (1<<13)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_PARTNER_ADVERTIZED_SPEED_DUPLEX_10BASE_T_FD (1<<14)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_PARTNER_ADVERTIZED_SPEED_DUPLEX_10BASE_T_HD (1<<15)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_TX_FC_ENABLED (1<<16)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_RX_FC_ENABLED (1<<17)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_PARTNER_ADVERTIZED_FC_1000X_MASK (3<<18)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_PARTNER_ADVERTIZED_FC_1000X_NO_PAUSE (0<<18)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_PARTNER_ADVERTIZED_FC_1000X_SYM_PAUSE (1<<18)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_PARTNER_ADVERTIZED_FC_1000X_ASYM_PAUSE_TO_PARTNER (2<<18)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_PARTNER_ADVERTIZED_FC_1000X_SYM_ASYM_PAUSE_TO_PARTNER (3<<18)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_SERDES_FLAG (1<<20)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_OEM_LINK_SPEED_VALID_FLAG (1<<21)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t OtherIndications;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t OemLinkSpeed;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_SPEED_DUPLEX_NCSI_2_5GB_HD (1<<0)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define LINK_STATUS_LINK_SPEED_DUPLEX_NCSI_2_5GB_FD (1<<1)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdGetLinkStatusRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdGetNcsiStatisticsRspData_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure defines the data field portion of the response Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi returned when processing the get ncsi statistics cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdGetNcsiStatisticsRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t CommandPktsRx; // ncsi cmds rx and processed
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalCommandPktsDropped; // total ncsi cmds dropped
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t CommandPktsDroppedTypeError; // ncsi cmds dropped for type error
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t CommandPktsDroppedCsError; // ncsi cmds dropped for checksum error
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalControlPktsRx; // total ncsi cmds rx, processed + dropped
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalControlPktsTx; // total ncsi pkts sent, AEN + rsp
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalAensSent; //
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdGetNcsiStatisticsRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiCmdGetNcsiStatisticsRspData_t *pNcsiCmdGetNcsiStatisticsRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdGetNcsiPassThruStatisticsRspData_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure defines the data field portion of the response Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi returned when processing the get ncsi pass through statistics cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdGetNcsiPassThruStatisticsRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalEgressPktsHigh;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalEgressPktsLow;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalEgressPktsDropped;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t EgressPktsDroppedChannelStateError;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t EgressPktsDroppedUndersizedError;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t EgressPktsDroppedOversizedError;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalIngressPkts;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalIngressPktsDropped;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t IngressPktsDroppedChannelStateError;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t IngressPktsDroppedUndersizedError;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t IngressPktsDroppedOversizedError;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdGetNcsiPassThruStatisticsRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiCmdGetNcsiPassThruStatisticsRspData_t *pNcsiCmdGetNcsiPassThruStatisticsRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiNicEmacStats
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalBytesRx_High;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalBytesRx_Low;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalBytesTx_High;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalBytesTx_Low;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalUnicastPktsRx_High;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalUnicastPktsRx_Low;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalMulticastPktsRx_High;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalMulticastPktsRx_Low;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalBroadcastPktsRx_High;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalBroadcastPktsRx_Low;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalUnicastPktsTx_High;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalUnicastPktsTx_Low;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalMulticastPktsTx_High;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalMulticastPktsTx_Low;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalBroadcastPktsTx_High;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t TotalBroadcastPktsTx_Low;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t CrcRxErrors;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t AlignmentErrors;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FalseCarrierDetects;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t RuntPktsRx;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t JabberPktsRx;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t PauseXonFramesRx;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t PauseXoffFramesRx;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t PauseXonFramesTx;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t PauseXoffFramesTx;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t SingleCollisionTxFrames;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t MultipleCollisionTxFrames;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t LateCollisionFrames;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ExcessiveCollisionFrames;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ControlFramesRx;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FramesRx64Byte;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FramesRx65_127Bytes;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FramesRx128_255Bytes;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FramesRx256_511Bytes;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FramesRx512_1023Bytes;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FramesRx1024_1522Bytes;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FramesRx1523_9022Bytes;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FramesTx64Byte;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FramesTx65_127Bytes;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FramesTx128_255Bytes;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FramesTx256_511Bytes;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FramesTx512_1023Bytes;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FramesTx1024_1522Bytes;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FramesTx1523_9022Bytes;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ValidBytesRx_High;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ValidBytesRx_Low;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ErrorRuntPktsRx;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ErrorJabberPktsRx;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiNicEmacStats_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiNicEmacStats_t *pNcsiNicEmacStats_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdGetPortStatisticsRspData_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure defines the data field portion of the response Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi returned when processing the get ump i/f statistics ump cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdGetPortStatisticsRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t CountersClearedHigh;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t CountersClearedLow;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiNicEmacStats_t Stats;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdGetPortStatisticsRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiCmdGetPortStatisticsRspData_t *pNcsiCmdGetPortStatisticsRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdGetControllerVerIdRspData_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the data fields of the response Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi returned used processing the get bcm version ID ump cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define GET_NIC_VER_ID_SIZE_OF_FW_NAME 12
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdGetControllerVerIdRspData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#if defined (BIG_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiVersion_t NcsiVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FirmwareName[GET_NIC_VER_ID_SIZE_OF_FW_NAME];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FirmwareRev;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t PciDeviceId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t PciVendorId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t PciSubsystemId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t PciSubsystemVendorId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdGetControllerVerIdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#elif defined (LITTLE_ENDIAN)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode; /* ids reasons for rsp */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode; /* ids outcome of cmd */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiVersion_t NcsiVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/* u8_t Major;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved0;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Alpha1;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Update;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Minor;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t FirmwareName[12];
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Alpha2;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved2;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t Reserved1;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t FirmwareRev;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t PciVendorId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t PciDeviceId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t PciSubsystemVendorId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t PciSubsystemId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdGetControllerVerIdRspData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif // endian
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_DEFAULT_RSP_DATA (sizeof (NcsiCmdRspStatus_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_GET_PARAMS_RSP_DATA (sizeof (NcsiCmdGetParametersRspData_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_GET_LINK_STATUS_RSP_DATA (sizeof (NcsiCmdGetLinkStatusRspData_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_GET_STATS_RSP_DATA (sizeof (NcsiCmdGetPortStatisticsRspData_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_GET_CNTLR_VER_ID_RSP_DATA (sizeof (NcsiCmdGetControllerVerIdRspData_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_GET_NCSI_STATS_RSP_DATA (sizeof (NcsiCmdGetNcsiStatisticsRspData_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_GET_CAPABILITY_RSP_DATA (sizeof (NcsiCmdGetCapabilitiesRspData_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_GET_NCSI_PASSTHRU_STATS_RSP_DATA (sizeof (NcsiCmdGetNcsiPassThruStatisticsRspData_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_DEFAULT_OEM_CMD_RSP_DATA (sizeof (NcsiDefaultOemCmdRspData_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_DEFAULT_DELL_OEM_CMD_RSP_DATA (sizeof(DellDfltCmdRspData_t)) // response/reason code, Manufacture ID, payload ver, Cmd ID, .. )
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_GET_NCSI_PARAMETERS_RSP_DATA (sizeof (NcsiOemGetNcsiParametersRspData_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_NCSI_TEST_READ_CMD_RSP_DATA (sizeof (NcsiCmdNcsiTestReadCmdRspData_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_GET_PHY_PRIORITY_CMD_RSP_DATA (sizeof (NcsiOemGetDualMediaParametersRspData_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdDefaultRspPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi Structure definition for most basic UMP response Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdDefaultRspPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdRspStatus_t Data;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ChecksumCompensation;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdDefaultRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiCmdDefaultRspPayload_t *pNcsiCmdDefaultRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiDefaultOemCmdRspPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure defines the response Payload returned after processing
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi the Oem cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiDefaultOemCmdRspPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiDefaultOemCmdRspData_t Data;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ChecksumCompensation;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiDefaultOemCmdRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiDefaultOemCmdRspPayload_t *pNcsiDefaultOemCmdRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiOemGetNcsiParametersRspPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure defines the response Payload returned after processing
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi the Oem cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiOemGetNcsiParametersRspPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiOemGetNcsiParametersRspData_t Data;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ChecksumCompensation;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiOemGetNcsiParametersRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiOemGetNcsiParametersRspPayload_t *pNcsiOemGetNcsiParametersRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiOemGetDualMediaParametersRspPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure defines the response Payload returned after processing
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi the Oem cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiOemGetDualMediaParametersRspPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiOemGetDualMediaParametersRspData_t Data;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ChecksumCompensation;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiOemGetDualMediaParametersRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiOemGetDualMediaParametersRspPayload_t *pNcsiOemGetDualMediaParametersRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct {
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType; /* OEM command ID */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t SupportedVersons;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t Reserved;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellRspsGetSupportedVer_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct {
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ResponseCode;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u16_t ReasonCode;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ManufacturerId; /* ManufacturerId IANA */
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PayloadVersion;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t CommandType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t PartitionId;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t NumOfTLVs;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u8_t buf[MAX_TLV_COMMAND_SIZE]; /*This is a place holder for the Maximum size in bytesof this command with all TLV's present*/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} DellRspsPartitionTLV_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define DELLOEMRSP_PARTITION_TLV_BASE_SIZE 12 //exclude pad & chksum
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// TLV type definition for Get OS Driver Version Command
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define OSVER_TYPE_LAN 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define OSVER_TYPE_ISCSI 1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define OSVER_TYPE_FCOE 2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define OSVER_TYPE_RDMA 3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define OSVER_TYPE_FC 4
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// TLV type definition for Set/Get iSCSI Boot Initiator Config Command
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi//v4 v6 size
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_ADDR 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_ADDR_V4 1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_ADDR_V6 2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_SUBNET 3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_SUBNET_PREFIX 4
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_GATEWAY 5
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_GATEWAY_V4 6
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_GATEWAY_V6 7
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_PRIMARY_DNS 8
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_PRIMARY_DNS_V4 9
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_PRIMARY_DNS_V6 0xa
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_SECOND_DNS 0xb
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_SECOND_DNS_V4 0xc
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_SECOND_DNS_V6 0xd
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_NAME 0xe
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_CHAP_ID 0xf
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_CHAP_PSWD 0x10
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_IP_VER 0x11
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_MAX ISCSI_INITIATOR_TYPE_IP_VER
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_SUPPORTED_V4_MASK ((1<<ISCSI_INITIATOR_TYPE_ADDR)|(1<<ISCSI_INITIATOR_TYPE_ADDR_V4)| \
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi (1<<ISCSI_INITIATOR_TYPE_SUBNET)|(1<<ISCSI_INITIATOR_TYPE_GATEWAY)| \
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi (1<<ISCSI_INITIATOR_TYPE_GATEWAY_V4)| \
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi (1<<ISCSI_INITIATOR_TYPE_PRIMARY_DNS)| \
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi (1<<ISCSI_INITIATOR_TYPE_PRIMARY_DNS_V4)| \
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi (1<<ISCSI_INITIATOR_TYPE_SECOND_DNS)| \
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi (1<<ISCSI_INITIATOR_TYPE_SECOND_DNS_V4)| \
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi (1<<ISCSI_INITIATOR_TYPE_NAME)|(1<<ISCSI_INITIATOR_TYPE_CHAP_ID)| \
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi (1<<ISCSI_INITIATOR_TYPE_CHAP_PSWD)|(1<<ISCSI_INITIATOR_TYPE_IP_VER))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_INITIATOR_TYPE_SUPPORTED_V6_MASK ((1<<ISCSI_INITIATOR_TYPE_ADDR)|(1<<ISCSI_INITIATOR_TYPE_ADDR_V6)| \
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi (1<<ISCSI_INITIATOR_TYPE_SUBNET_PREFIX)| \
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi (1<<ISCSI_INITIATOR_TYPE_GATEWAY)| \
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi (1<<ISCSI_INITIATOR_TYPE_GATEWAY_V6)| \
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi (1<<ISCSI_INITIATOR_TYPE_PRIMARY_DNS)| \
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi (1<<ISCSI_INITIATOR_TYPE_PRIMARY_DNS_V6)| \
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi (1<<ISCSI_INITIATOR_TYPE_SECOND_DNS)| \
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi (1<<ISCSI_INITIATOR_TYPE_SECOND_DNS_V6)| \
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi (1<<ISCSI_INITIATOR_TYPE_NAME)|(1<<ISCSI_INITIATOR_TYPE_CHAP_ID)| \
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi (1<<ISCSI_INITIATOR_TYPE_CHAP_PSWD)|(1<<ISCSI_INITIATOR_TYPE_IP_VER))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi// TLV type definition for Set/Get iSCSI Boot Target Config Command
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET_TYPE_CONNECT 0x0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET_TYPE_IP_ADDR 0x1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET_TYPE_TCP_PORT 0x2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET_TYPE_BOOT_LUN 0x3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET_TYPE_NAME 0x4
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET_TYPE_CHAP_ID 0x5
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET_TYPE_CHAP_PSWD 0x6
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET_TYPE_IP_VER 0x7
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET2_TYPE_CONNECT 0x8
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET2_TYPE_IP_ADDR 0x9
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET2_TYPE_TCP_PORT 0xa
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET2_TYPE_BOOT_LUN 0xb
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET2_TYPE_NAME 0xc
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET2_TYPE_CHAP_ID 0xd
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET2_TYPE_CHAP_PSWD 0xe
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET2_TYPE_IP_VER 0xf
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET2_BASE ISCSI_TARGET2_TYPE_CONNECT
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define ISCSI_TARGET_TYPE_MAX ISCSI_TARGET2_TYPE_IP_VER
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCOE_BOOT_SCAN_SELECTION 0x0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCOE_FIRST_WWPN_TARGET 0x1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCOE_FIRST_BOOT_TARGET_LUN 0x2
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCOE_FIRST_FCF_VLAN_ID 0x3
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCOE_TGT_BOOT 0x4
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define FCOE_TARGET_TYPE_MAX FCOE_TGT_BOOT
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellRspsPartitionTLV_t DellRspsGetOsDriverVer_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellRspsPartitionTLV_t DellRspsGetiScsiInitiatorConf_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellRspsPartition_t DellRspsSetiScsiInitiatorConf_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellRspsPartitionTLV_t DellRspsGetiScsiTargetConf_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellRspsPartition_t DellRspsSetiScsiTargetConf_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellRspsPartitionTLV_t DellRspsGetFcoeTargetConf_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellRspsPartition_t DellRspsSetFcoeTargetConf_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellRspsDefault_t DellRspsCommitNvram_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef DellRspsDefault_t DellRspsGetCommitNvramStatus_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiDellOemCmdRspPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure defines the response Payload returned after processing
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi the Oem cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiDellOemCmdRspPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi union
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi {
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // Dell OEM commands Response Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetInventoryCmdRspData_t GetInventory; // 0x00 DELL_OEM_GET_INVENTORY_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetExtendedCapabilitiesCmdRspData_t GetExtendedCapabilities; // 0x01 DELL_OEM_GET_EXTENDED_CAPABILITIES_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetPartitionInfoCmdRspData_t GetPartitionInfo; // 0x02 DELL_OEM_GET_PARTITION_INFORMATION_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetFcoeCapabilitiesCmdRspData_t GetFcoeCapabilities; // 0x03 DELL_OEM_GET_FCOE_CAPABILITIES_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetVirtualLinkCmdRspData_t GetVirtualLink; // 0x04 DELL_OEM_GET_VIRTUAL_LINK_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetLanStatisticsCmdRspData_t GetLanStatistics; // 0x05 DELL_OEM_GET_LAN_STATISTICS_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetFcoeStatisticsCmdRspData_t GetFcoeStatistics; // 0x06 DELL_OEM_GET_FCOE_STATISTICS_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellSetAddrCmdRspData_t SetAddr; // 0x07 DELL_OEM_SET_ADDR_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetAddrCmdRspData_t GetAddr; // 0x08 DELL_OEM_GET_ADDR_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellSetLicenseCmdRspData_t SetLicense; // 0x09 DELL_OEM_SET_LICENSE_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetLicenseCmdRspData_t GetLicense; // 0x0A DELL_OEM_GET_LICENSE_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellSetPassthruCtrlCmdRspData_t SetPassthruCtrl; // 0x0B DELL_OEM_SET_PASSTHRU_CONTROL_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetPassthruCtrlCmdRspData_t GetPassthruCtrl; // 0x0C DELL_OEM_GET_PASSTHRU_CONTROL_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellSetPartitionTxBandwidthCmdRspData_t SetPartitionTxBandwidth; // 0x0D DELL_OEM_SET_PARTITIONCmd_tX_BANDWIDTH_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetPartitionTxBandwidthCmdRspData_t GetPartitionTxBandwidth; // 0x0E DELL_OEM_GET_PARTITIONCmd_tX_BANDWIDTH_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellSetMcIpAddrCmdRspData_t SetMcIpAddr; // 0x0F DELL_OEM_SET_MC_IP_ADDRESS_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetTeamingInfoCmdRspData_t GetTeamingInfo; // 0x10 DELL_OEM_GETCmd_tEAMING_INFORMATION_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellEnablePortsCmdRspData_t EnablePorts; // 0x11 DELL_OEM_ENABLE_PORTS_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellDisablePortsCmdRspData_t DisablePorts; // 0x12 DELL_OEM_DISABLE_PORTS_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellGetTempCmdRspData_t GetTemp; // 0x13 DELL_OEM_GET_TEMPERATURE_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellSetLinkTuningCmdRspData_t SetLinkTuning; // 0x14 DELL_OEM_SET_LINKTUNING_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellEnableDisableOutOfBoxWolCmdRspData_t EnableDisableOutOfBoxWol; // 0x15 DELL_OEM_ENABLE_OUTOFBOX_WOL_CMD and 0x16 DELL_OEM_DISABLE_OUTOFBOX_WOL_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellRspsGetSupportedVer_t GetSupportedVer; // 0x1A DELL_OEM_GET_SUPP_PAYLOAD_VERSION_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellRspsGetOsDriverVer_t GetOsDriverVer; // 0x1C DELL_OEM_GET_OS_DRIVER_VERSION_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellRspsGetiScsiInitiatorConf_t GetiScsiInitiatorConf; // 0x1D DELL_OEM_GET_ISCSI_BOOT_INITIATOR_CONFIG_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellRspsSetiScsiInitiatorConf_t SetiScsiInitiatorConf; // 0x1E DELL_OEM_SET_ISCSI_BOOT_INITIATOR_CONFIG_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellRspsGetiScsiTargetConf_t GetiScsiTargetConf; // 0x1F DELL_OEM_GET_ISCSI_BOOT_TARGET_CONFIG_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellRspsSetiScsiTargetConf_t SetiScsiTargetConf; // 0x20 DELL_OEM_SET_ISCSI_BOOT_TARGET_CONFIG_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellRspsGetFcoeTargetConf_t GetFcoeTargetConf; // 0x21 DELL_OEM_GET_FCOE_BOOT_TARGET_CONFIG_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellRspsSetFcoeTargetConf_t SetFcoeTargetConf; // 0x22 DELL_OEM_SET_FCOE_BOOT_TARGET_CONFIG_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellRspsCommitNvram_t CommitNvram; // 0x23 DELL_OEM_NVRAM_COMMIT_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi DellRspsGetCommitNvramStatus_t GetCommitNvramStatus; // 0x24 DELL_OEM_NVRAM_COMMIT_STATUS_CMD
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi };
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ChecksumCompensation;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiDellOemCmdRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiDellOemCmdRspPayload_t *pNcsiDellOemCmdRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdGetParametersRspPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure defines the response frame Payload returned in response to
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi the get parameters ump cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdGetParametersRspPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdGetParametersRspData_t Data;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ChecksumCompensation;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi}NcsiCmdGetParametersRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdNcsiTestReadRspPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure defines the response frame Payload returned in response to
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi the NCSI Test read cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdNcsiTestReadRspPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdNcsiTestReadCmdRspData_t Data;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ChecksumCompensation;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdNcsiTestReadRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdGetLinkStatusRspPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure defines the response Payload returned after processing
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi the get link status ump cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdGetLinkStatusRspPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdGetLinkStatusRspData_t Data;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ChecksumCompensation;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdGetLinkStatusRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiCmdGetLinkStatusRspPayload_t *pNcsiCmdGetLinkStatusRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdGetCapabilitiesRspPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure defines the response Payload returned after processing
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi the get link status ump cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdGetCapabilitiesRspPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdGetCapabilitiesRspData_t Data;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ChecksumCompensation;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdGetCapabilitiesRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiCmdGetCapabilitiesRspPayload_t *pNcsiCmdGetCapabilitiesRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdGetPortStatisticsRspPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the response Payload used when processing
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi the get i/f statistics ump cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdGetPortStatisticsRspPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdGetPortStatisticsRspData_t Data;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ChecksumCompensation;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdGetPortStatisticsRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiCmdGetPortStatisticsRspPayload_t *pNcsiCmdGetPortStatisticsRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdGetNcsiStatisticsRspPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the response Payload used when processing
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi the get ump i/f statistics ump cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdGetNcsiStatisticsRspPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdGetNcsiStatisticsRspData_t Data;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ChecksumCompensation;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdGetNcsiStatisticsRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiCmdGetNcsiStatisticsRspPayload_t *pNcsiCmdGetNcsiStatisticsRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdGetNcsiPassThruStatisticsRspPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the response Payload used when processing
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi the get .
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdGetNcsiPassThruStatisticsRspPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdGetNcsiPassThruStatisticsRspData_t Data;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ChecksumCompensation;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdGetNcsiPassThruStatisticsRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiCmdGetNcsiPassThruStatisticsRspPayload_t *pNcsiCmdGetNcsiPassThruStatisticsRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdGetControllerVerIdRspPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the response Payload used when processing
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi the get bcm version ID ump cmd.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdGetControllerVerIdRspPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdGetControllerVerIdRspData_t Data;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ChecksumCompensation;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdGetControllerVerIdRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdRspPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this union definition combines the various response Payload definitions
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi into a single reference.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef union NcsiCmdRspPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdDefaultRspPayload_t DefaultPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiDefaultOemCmdRspPayload_t DefaultOemCmdPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiOemGetNcsiParametersRspPayload_t GetNcsiParametersPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiOemGetDualMediaParametersRspPayload_t GetDualMediaParametersPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdGetParametersRspPayload_t GetParametersPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdGetLinkStatusRspPayload_t GetLinkStatusPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdGetPortStatisticsRspPayload_t GetStatisticsPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdGetControllerVerIdRspPayload_t GetCntlrVerIdPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdGetNcsiStatisticsRspPayload_t GetNcsiStatsPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdGetNcsiPassThruStatisticsRspPayload_t GetNcsiPassThruStatsPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdGetCapabilitiesRspPayload_t GetCapabilitiesPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdNcsiTestReadRspPayload_t NcsiTestReadPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi // Dell OEM commands Response Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiDellOemCmdRspPayload_t DellOemCmdRspPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdRspPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_CHKSUM_SIZE SIZEOF(NcsiCmdDefaultRspPayload_t, ChecksumCompensation)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiRmiiCmdRspPkt_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the command response frame that is sent
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi back to the IMD for each processed UMP command.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi IMD command frames are acknowledged by copying the command frame header
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi into received from iLO over the UMP interface, and are
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi either processed locally for configuration and control, or are forwarded
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi for transmission at the primary ethernet port.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiRmiiCmdRspPkt
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiRmiiControlPktHeader_t Header;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdRspPayload_t Payload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiRmiiCmdRspPkt_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiRmiiCmdRspPkt_t *pNcsiRmiiCmdRspPkt_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdDefaultAenData_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi Structure definition for most basic Aen data
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdDefaultAenData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t AenType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_AEN_TYPE_LINK_CHANGED (0)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_AEN_TYPE_SOFT_RESET (1)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_AEN_TYPE_OS_CHANGED (2)
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdDefaultAenData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdLinkChangedAenData_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi Structure definition for link changed Aen data
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdLinkChangedAenData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t AenType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t LinkState;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t OemLinkSpeed;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdLinkChangedAenData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdOsChangedAenData_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi Structure definition for os changed Aen data
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdOsChangedAenData
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t AenType;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t OsState;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define UMPCMDPUB_OS_STATE_CHANGED_AEN_OS_PRESENT 1
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define UMPCMDPUB_OS_STATE_CHANGED_AEN_OS_ABSENT 0
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdOsChangedAenData_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_DEFAULT_AEN_DATA (sizeof (NcsiCmdDefaultAenData_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_LINK_CHANGED_AEN_DATA (sizeof (NcsiCmdLinkChangedAenData_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_OS_CHANGED_AEN_DATA (sizeof (NcsiCmdOsChangedAenData_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdDefaultAenPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi Structure definition for most basic Aen Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdDefaultAenPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdDefaultAenData_t Data;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ChecksumCompensation;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdDefaultAenPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdLinkChangedAenPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi Structure definition for Link changed Aen Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdLinkChangedAenPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdLinkChangedAenData_t Data;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ChecksumCompensation;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdLinkChangedAenPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdOsChangedAenPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi Structure definition for os chagned Aen Payload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdOsChangedAenPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdOsChangedAenData_t Data;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi u32_t ChecksumCompensation;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdOsChangedAenPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdAenPayload_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this union definition combines the various Aen Payload definitions
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi into a single reference.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef union NcsiCmdAenPayload
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdDefaultAenPayload_t DefaultPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdLinkChangedAenPayload_t LinkChangedPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdOsChangedAenPayload_t OsChangedPayload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdAenPayload_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_DEFAULT_AEN_PAYLOAD (sizeof (NcsiCmdDefaultAenPayload_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_LINK_CHANGED_AEN_PAYLOAD (sizeof (NcsiCmdLinkChangedAenPayload_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#define NCSI_CMD_SIZEOF_OS_CHANGED_AEN_PAYLOAD (sizeof (NcsiCmdOsChangedAenPayload_t))
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi/*****************************************************************************
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert MustacchiNcsiCmdAenPacket_t
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi this structure definition is for the UMP AEN frame that is sent to the BMC
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi for to report asynchronous events.
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi*****************************************************************************/
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef struct NcsiCmdAenPacket
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi{
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiRmiiControlPktHeader_t Header;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi NcsiCmdAenPayload_t Payload;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi} NcsiCmdAenPacket_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchitypedef NcsiCmdAenPacket_t *pNcsiCmdAenPacket_t;
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi#endif
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi
d14abf155341d55053c76eeec58b787a456b753bRobert Mustacchi