Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
ixgbe_mbx.h File Reference
#include "ixgbe_type.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_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_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 */
 

Functions

s32 ixgbe_read_mbx (struct ixgbe_hw *, u32 *, u16, u16)
 
s32 ixgbe_write_mbx (struct ixgbe_hw *, u32 *, u16, u16)
 
s32 ixgbe_check_for_msg (struct ixgbe_hw *, u16)
 
s32 ixgbe_check_for_ack (struct ixgbe_hw *, u16)
 
s32 ixgbe_check_for_rst (struct ixgbe_hw *, u16)
 

Variables

struct ixgbe_mbx_operations mbx_ops_generic
 

Macro Definition Documentation

#define IXGBE_ERR_MBX   -100

Definition at line 34 of file ixgbe_mbx.h.

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

Definition at line 47 of file ixgbe_mbx.h.

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

Definition at line 48 of file ixgbe_mbx.h.

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

Definition at line 45 of file ixgbe_mbx.h.

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

Definition at line 46 of file ixgbe_mbx.h.

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

Definition at line 74 of file ixgbe_mbx.h.

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

Definition at line 40 of file ixgbe_mbx.h.

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

Definition at line 42 of file ixgbe_mbx.h.

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

Definition at line 43 of file ixgbe_mbx.h.

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

Definition at line 39 of file ixgbe_mbx.h.

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

Definition at line 41 of file ixgbe_mbx.h.

#define IXGBE_VF_MBX_INIT_DELAY   500 /* microseconds between retries */

Definition at line 77 of file ixgbe_mbx.h.

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

Definition at line 76 of file ixgbe_mbx.h.

#define IXGBE_VF_MC_TYPE_WORD   3

Definition at line 72 of file ixgbe_mbx.h.

#define IXGBE_VF_PERMADDR_MSG_LEN   4

Definition at line 70 of file ixgbe_mbx.h.

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

Definition at line 62 of file ixgbe_mbx.h.

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

Definition at line 66 of file ixgbe_mbx.h.

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

Definition at line 63 of file ixgbe_mbx.h.

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

Definition at line 67 of file ixgbe_mbx.h.

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

Definition at line 64 of file ixgbe_mbx.h.

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

Definition at line 65 of file ixgbe_mbx.h.

#define IXGBE_VFMAILBOX   0x002FC

Definition at line 36 of file ixgbe_mbx.h.

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

Definition at line 33 of file ixgbe_mbx.h.

#define IXGBE_VFMBMEM   0x00200

Definition at line 37 of file ixgbe_mbx.h.

#define IXGBE_VT_MSGINFO_MASK   (0xFF << IXGBE_VT_MSGINFO_SHIFT)

Definition at line 60 of file ixgbe_mbx.h.

#define IXGBE_VT_MSGINFO_SHIFT   16

Definition at line 58 of file ixgbe_mbx.h.

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

Definition at line 55 of file ixgbe_mbx.h.

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

Definition at line 57 of file ixgbe_mbx.h.

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

Definition at line 56 of file ixgbe_mbx.h.

Function Documentation

s32 ixgbe_check_for_ack ( struct ixgbe_hw hw,
u16  mbx_id 
)

ixgbe_check_for_ack - checks to see if someone sent us ACK : pointer to the HW structure : id of mailbox to check

returns SUCCESS if the Status bit was found or else ERR_MBX

Definition at line 106 of file ixgbe_mbx.c.

s32 ixgbe_check_for_msg ( struct ixgbe_hw hw,
u16  mbx_id 
)

ixgbe_check_for_msg - checks to see if someone sent us mail : pointer to the HW structure : id of mailbox to check

returns SUCCESS if the Status bit was found or else ERR_MBX

Definition at line 88 of file ixgbe_mbx.c.

s32 ixgbe_check_for_rst ( struct ixgbe_hw hw,
u16  mbx_id 
)

ixgbe_check_for_rst - checks to see if other side has reset : pointer to the HW structure : id of mailbox to check

returns SUCCESS if the Status bit was found or else ERR_MBX

Definition at line 124 of file ixgbe_mbx.c.

s32 ixgbe_read_mbx ( struct ixgbe_hw hw,
u32 msg,
u16  size,
u16  mbx_id 
)

ixgbe_read_mbx - Reads a message from the mailbox : pointer to the HW structure : The message buffer : Length of buffer : id of mailbox to read

returns SUCCESS if it successfully read message from buffer

Definition at line 43 of file ixgbe_mbx.c.

s32 ixgbe_write_mbx ( struct ixgbe_hw hw,
u32 msg,
u16  size,
u16  mbx_id 
)

ixgbe_write_mbx - Write a message to the mailbox : pointer to the HW structure : The message buffer : Length of buffer : id of mailbox to write

returns SUCCESS if it successfully copied message into the buffer

Definition at line 67 of file ixgbe_mbx.c.

Variable Documentation

struct ixgbe_mbx_operations mbx_ops_generic

Definition at line 462 of file ixgbe_mbx.c.