Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Enumerations
mbx.h File Reference
#include "vf.h"

Go to the source code of this file.

Macros

#define IXGBE_VFMAILBOX_SIZE   16 /* 16 32 bit words - 64 bytes */
 
#define IXGBE_ERR_MBX   -100
 
#define IXGBE_VFMAILBOX   0x002FC
 
#define IXGBE_VFMBMEM   0x00200
 
#define IXGBE_VFMAILBOX_REQ   0x00000001 /* Request for PF Ready bit */
 
#define IXGBE_VFMAILBOX_ACK   0x00000002 /* Ack PF message received */
 
#define IXGBE_VFMAILBOX_VFU   0x00000004 /* VF owns the mailbox buffer */
 
#define IXGBE_VFMAILBOX_PFU   0x00000008 /* PF owns the mailbox buffer */
 
#define IXGBE_VFMAILBOX_PFSTS   0x00000010 /* PF wrote a message in the MB */
 
#define IXGBE_VFMAILBOX_PFACK   0x00000020 /* PF ack the previous VF msg */
 
#define IXGBE_VFMAILBOX_RSTI   0x00000040 /* PF has reset indication */
 
#define IXGBE_VFMAILBOX_RSTD   0x00000080 /* PF has indicated reset done */
 
#define IXGBE_VFMAILBOX_R2C_BITS   0x000000B0 /* All read to clear bits */
 
#define IXGBE_PFMAILBOX(x)   (0x04B00 + (4 * (x)))
 
#define IXGBE_PFMBMEM(vfn)   (0x13000 + (64 * (vfn)))
 
#define IXGBE_PFMAILBOX_STS   0x00000001 /* Initiate message send to VF */
 
#define IXGBE_PFMAILBOX_ACK   0x00000002 /* Ack message recv'd from VF */
 
#define IXGBE_PFMAILBOX_VFU   0x00000004 /* VF owns the mailbox buffer */
 
#define IXGBE_PFMAILBOX_PFU   0x00000008 /* PF owns the mailbox buffer */
 
#define IXGBE_PFMAILBOX_RVFU   0x00000010 /* Reset VFU - used when VF stuck */
 
#define IXGBE_MBVFICR_VFREQ_MASK   0x0000FFFF /* bits for VF messages */
 
#define IXGBE_MBVFICR_VFREQ_VF1   0x00000001 /* bit for VF 1 message */
 
#define IXGBE_MBVFICR_VFACK_MASK   0xFFFF0000 /* bits for VF acks */
 
#define IXGBE_MBVFICR_VFACK_VF1   0x00010000 /* bit for VF 1 ack */
 
#define IXGBE_VT_MSGTYPE_ACK
 
#define IXGBE_VT_MSGTYPE_NACK
 
#define IXGBE_VT_MSGTYPE_CTS
 
#define IXGBE_VT_MSGINFO_SHIFT   16
 
#define IXGBE_VT_MSGINFO_MASK   (0xFF << IXGBE_VT_MSGINFO_SHIFT)
 
#define IXGBE_VF_RESET   0x01 /* VF requests reset */
 
#define IXGBE_VF_SET_MAC_ADDR   0x02 /* VF requests PF to set MAC addr */
 
#define IXGBE_VF_SET_MULTICAST   0x03 /* VF requests PF to set MC addr */
 
#define IXGBE_VF_SET_VLAN   0x04 /* VF requests PF to set VLAN */
 
#define IXGBE_VF_SET_LPE   0x05 /* VF requests PF to set VMOLR.LPE */
 
#define IXGBE_VF_SET_MACVLAN   0x06 /* VF requests PF for unicast filter */
 
#define IXGBE_VF_API_NEGOTIATE   0x08 /* negotiate API version */
 
#define IXGBE_VF_PERMADDR_MSG_LEN   4
 
#define IXGBE_VF_MC_TYPE_WORD   3
 
#define IXGBE_PF_CONTROL_MSG   0x0100 /* PF control message */
 
#define IXGBE_VF_MBX_INIT_TIMEOUT   2000 /* number of retries on mailbox */
 
#define IXGBE_VF_MBX_INIT_DELAY   500 /* microseconds between retries */
 

Enumerations

enum  ixgbe_pfvf_api_rev { ixgbe_mbox_api_10, ixgbe_mbox_api_20, ixgbe_mbox_api_unknown }
 

Macro Definition Documentation

#define IXGBE_ERR_MBX   -100

Definition at line 34 of file mbx.h.

#define IXGBE_MBVFICR_VFACK_MASK   0xFFFF0000 /* bits for VF acks */

Definition at line 61 of file mbx.h.

#define IXGBE_MBVFICR_VFACK_VF1   0x00010000 /* bit for VF 1 ack */

Definition at line 62 of file mbx.h.

#define IXGBE_MBVFICR_VFREQ_MASK   0x0000FFFF /* bits for VF messages */

Definition at line 59 of file mbx.h.

#define IXGBE_MBVFICR_VFREQ_VF1   0x00000001 /* bit for VF 1 message */

Definition at line 60 of file mbx.h.

#define IXGBE_PF_CONTROL_MSG   0x0100 /* PF control message */

Definition at line 105 of file mbx.h.

#define IXGBE_PFMAILBOX (   x)    (0x04B00 + (4 * (x)))

Definition at line 50 of file mbx.h.

#define IXGBE_PFMAILBOX_ACK   0x00000002 /* Ack message recv'd from VF */

Definition at line 54 of file mbx.h.

#define IXGBE_PFMAILBOX_PFU   0x00000008 /* PF owns the mailbox buffer */

Definition at line 56 of file mbx.h.

#define IXGBE_PFMAILBOX_RVFU   0x00000010 /* Reset VFU - used when VF stuck */

Definition at line 57 of file mbx.h.

#define IXGBE_PFMAILBOX_STS   0x00000001 /* Initiate message send to VF */

Definition at line 53 of file mbx.h.

#define IXGBE_PFMAILBOX_VFU   0x00000004 /* VF owns the mailbox buffer */

Definition at line 55 of file mbx.h.

#define IXGBE_PFMBMEM (   vfn)    (0x13000 + (64 * (vfn)))

Definition at line 51 of file mbx.h.

#define IXGBE_VF_API_NEGOTIATE   0x08 /* negotiate API version */

Definition at line 98 of file mbx.h.

#define IXGBE_VF_MBX_INIT_DELAY   500 /* microseconds between retries */

Definition at line 108 of file mbx.h.

#define IXGBE_VF_MBX_INIT_TIMEOUT   2000 /* number of retries on mailbox */

Definition at line 107 of file mbx.h.

#define IXGBE_VF_MC_TYPE_WORD   3

Definition at line 103 of file mbx.h.

#define IXGBE_VF_PERMADDR_MSG_LEN   4

Definition at line 101 of file mbx.h.

#define IXGBE_VF_RESET   0x01 /* VF requests reset */

Definition at line 90 of file mbx.h.

#define IXGBE_VF_SET_LPE   0x05 /* VF requests PF to set VMOLR.LPE */

Definition at line 96 of file mbx.h.

#define IXGBE_VF_SET_MAC_ADDR   0x02 /* VF requests PF to set MAC addr */

Definition at line 91 of file mbx.h.

#define IXGBE_VF_SET_MACVLAN   0x06 /* VF requests PF for unicast filter */

Definition at line 97 of file mbx.h.

#define IXGBE_VF_SET_MULTICAST   0x03 /* VF requests PF to set MC addr */

Definition at line 92 of file mbx.h.

#define IXGBE_VF_SET_VLAN   0x04 /* VF requests PF to set VLAN */

Definition at line 93 of file mbx.h.

#define IXGBE_VFMAILBOX   0x002FC

Definition at line 36 of file mbx.h.

#define IXGBE_VFMAILBOX_ACK   0x00000002 /* Ack PF message received */

Definition at line 41 of file mbx.h.

#define IXGBE_VFMAILBOX_PFACK   0x00000020 /* PF ack the previous VF msg */

Definition at line 45 of file mbx.h.

#define IXGBE_VFMAILBOX_PFSTS   0x00000010 /* PF wrote a message in the MB */

Definition at line 44 of file mbx.h.

#define IXGBE_VFMAILBOX_PFU   0x00000008 /* PF owns the mailbox buffer */

Definition at line 43 of file mbx.h.

#define IXGBE_VFMAILBOX_R2C_BITS   0x000000B0 /* All read to clear bits */

Definition at line 48 of file mbx.h.

#define IXGBE_VFMAILBOX_REQ   0x00000001 /* Request for PF Ready bit */

Definition at line 40 of file mbx.h.

#define IXGBE_VFMAILBOX_RSTD   0x00000080 /* PF has indicated reset done */

Definition at line 47 of file mbx.h.

#define IXGBE_VFMAILBOX_RSTI   0x00000040 /* PF has reset indication */

Definition at line 46 of file mbx.h.

#define IXGBE_VFMAILBOX_SIZE   16 /* 16 32 bit words - 64 bytes */

Definition at line 33 of file mbx.h.

#define IXGBE_VFMAILBOX_VFU   0x00000004 /* VF owns the mailbox buffer */

Definition at line 42 of file mbx.h.

#define IXGBE_VFMBMEM   0x00200

Definition at line 37 of file mbx.h.

#define IXGBE_VT_MSGINFO_MASK   (0xFF << IXGBE_VT_MSGINFO_SHIFT)

Definition at line 74 of file mbx.h.

#define IXGBE_VT_MSGINFO_SHIFT   16

Definition at line 72 of file mbx.h.

#define IXGBE_VT_MSGTYPE_ACK
Value:
0x80000000 /* Messages below or'd with
* this are the ACK */

Definition at line 69 of file mbx.h.

#define IXGBE_VT_MSGTYPE_CTS
Value:
0x20000000 /* Indicates that VF is still
* clear to send requests */

Definition at line 71 of file mbx.h.

#define IXGBE_VT_MSGTYPE_NACK
Value:
0x40000000 /* Messages below or'd with
* this are the NACK */

Definition at line 70 of file mbx.h.

Enumeration Type Documentation

Enumerator:
ixgbe_mbox_api_10 
ixgbe_mbox_api_20 
ixgbe_mbox_api_unknown 

Definition at line 82 of file mbx.h.