Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Fields
bnx2x_mcast_obj Struct Reference

#include <bnx2x_sp.h>

Data Fields

struct bnx2x_raw_obj raw
 
union {
   struct {
      u64   vec [BNX2X_MCAST_VEC_SZ]
 
      int   num_bins_set
 
   }   aprox_match
 
   struct {
      struct list_head   macs
 
      int   num_macs_set
 
   }   exact_match
 
registry
 
struct list_head pending_cmds_head
 
int sched_state
 
int max_cmd_len
 
int total_pending_num
 
u8 engine_id
 
int(* config_mcast )(struct bnx2x *bp, struct bnx2x_mcast_ramrod_params *p, int cmd)
 
int(* hdl_restore )(struct bnx2x *bp, struct bnx2x_mcast_obj *o, int start_bin, int *rdata_idx)
 
int(* enqueue_cmd )(struct bnx2x *bp, struct bnx2x_mcast_obj *o, struct bnx2x_mcast_ramrod_params *p, int cmd)
 
void(* set_one_rule )(struct bnx2x *bp, struct bnx2x_mcast_obj *o, int idx, union bnx2x_mcast_config_data *cfg_data, int cmd)
 
bool(* check_pending )(struct bnx2x_mcast_obj *o)
 
void(* set_sched )(struct bnx2x_mcast_obj *o)
 
void(* clear_sched )(struct bnx2x_mcast_obj *o)
 
bool(* check_sched )(struct bnx2x_mcast_obj *o)
 
int(* wait_comp )(struct bnx2x *bp, struct bnx2x_mcast_obj *o)
 
int(* validate )(struct bnx2x *bp, struct bnx2x_mcast_ramrod_params *p, int cmd)
 
void(* revert )(struct bnx2x *bp, struct bnx2x_mcast_ramrod_params *p, int old_num_bins)
 
int(* get_registry_size )(struct bnx2x_mcast_obj *o)
 
void(* set_registry_size )(struct bnx2x_mcast_obj *o, int n)
 

Detailed Description

Definition at line 528 of file bnx2x_sp.h.

Field Documentation

struct { ... } aprox_match
bool(* check_pending)(struct bnx2x_mcast_obj *o)

Checks if there are more mcast MACs to be set or a previous command is still pending.

Definition at line 596 of file bnx2x_sp.h.

bool(* check_sched)(struct bnx2x_mcast_obj *o)

Definition at line 603 of file bnx2x_sp.h.

void(* clear_sched)(struct bnx2x_mcast_obj *o)

Definition at line 602 of file bnx2x_sp.h.

Parameters
cmdcommand to execute (BNX2X_MCAST_CMD_X, see above)

Definition at line 569 of file bnx2x_sp.h.

u8 engine_id

Definition at line 564 of file bnx2x_sp.h.

Definition at line 586 of file bnx2x_sp.h.

struct { ... } exact_match
int(* get_registry_size)(struct bnx2x_mcast_obj *o)

Definition at line 623 of file bnx2x_sp.h.

int(* hdl_restore)(struct bnx2x *bp, struct bnx2x_mcast_obj *o, int start_bin, int *rdata_idx)

Fills the ramrod data during the RESTORE flow.

Parameters
bp
o
start_idxRegistry index to start from
rdata_idxIndex in the ramrod data to start from
Returns
-1 if we handled the whole registry or index of the last handled registry element.

Definition at line 583 of file bnx2x_sp.h.

Definition at line 545 of file bnx2x_sp.h.

int max_cmd_len

Definition at line 557 of file bnx2x_sp.h.

int num_bins_set

Number of BINs to clear. Should be updated immediately when a command arrives in order to properly create DEL commands.

Definition at line 541 of file bnx2x_sp.h.

int num_macs_set

Definition at line 546 of file bnx2x_sp.h.

struct list_head pending_cmds_head

Definition at line 551 of file bnx2x_sp.h.

Definition at line 529 of file bnx2x_sp.h.

union { ... } registry
void(* revert)(struct bnx2x *bp, struct bnx2x_mcast_ramrod_params *p, int old_num_bins)

Restore the values of internal counters in case of a failure.

Definition at line 619 of file bnx2x_sp.h.

Definition at line 554 of file bnx2x_sp.h.

void(* set_one_rule)(struct bnx2x *bp, struct bnx2x_mcast_obj *o, int idx, union bnx2x_mcast_config_data *cfg_data, int cmd)

Definition at line 589 of file bnx2x_sp.h.

void(* set_registry_size)(struct bnx2x_mcast_obj *o, int n)

Definition at line 624 of file bnx2x_sp.h.

void(* set_sched)(struct bnx2x_mcast_obj *o)

Set/Clear/Check SCHEDULED state of the object

Definition at line 601 of file bnx2x_sp.h.

int total_pending_num

Definition at line 562 of file bnx2x_sp.h.

Handle the internal object counters needed for proper commands handling. Checks that the provided parameters are feasible.

Definition at line 613 of file bnx2x_sp.h.

Definition at line 535 of file bnx2x_sp.h.

int(* wait_comp)(struct bnx2x *bp, struct bnx2x_mcast_obj *o)

Definition at line 606 of file bnx2x_sp.h.


The documentation for this struct was generated from the following file: