diff options
author | Ariel Elior <ariele@broadcom.com> | 2013-01-01 05:22:29 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-01-02 01:45:05 -0800 |
commit | 381ac16b10ae9369ebbbd74bb52b970818f68022 (patch) | |
tree | ae14a3c059359493aaf25df0f7ec345546208ad3 /drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.h | |
parent | 9b176b6b63ed07472c26b6833a0ac23b373e6bf8 (diff) | |
download | op-kernel-dev-381ac16b10ae9369ebbbd74bb52b970818f68022.zip op-kernel-dev-381ac16b10ae9369ebbbd74bb52b970818f68022.tar.gz |
bnx2x: Support ndo_set_rxmode in VF driver
The VF driver uses the 'q_filter' request in the VF <-> PF channel to
have the PF configure the requested rxmode to device. ndo_set_rxmode
is called under bottom half lock, so sleeping until the response
arrives over the VF <-> PF channel is out of the question. For this reason
the VF driver returns from the ndo after scheduling a work item, which
in turn processes the rx mode request and adds the classification
information through the VF <-> PF channel accordingly.
Signed-off-by: Ariel Elior <ariele@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.h')
-rw-r--r-- | drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.h b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.h index ed4a618..bf11e08 100644 --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.h +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.h @@ -54,6 +54,13 @@ struct hw_sb_info { #define VFPF_QUEUE_DROP_TTL0 (1 << 2) #define VFPF_QUEUE_DROP_UDP_CS_ERR (1 << 3) +#define VFPF_RX_MASK_ACCEPT_NONE 0x00000000 +#define VFPF_RX_MASK_ACCEPT_MATCHED_UNICAST 0x00000001 +#define VFPF_RX_MASK_ACCEPT_MATCHED_MULTICAST 0x00000002 +#define VFPF_RX_MASK_ACCEPT_ALL_UNICAST 0x00000004 +#define VFPF_RX_MASK_ACCEPT_ALL_MULTICAST 0x00000008 +#define VFPF_RX_MASK_ACCEPT_BROADCAST 0x00000010 + enum { PFVF_STATUS_WAITING = 0, PFVF_STATUS_SUCCESS, |