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

#include <bnx2x_sp.h>

Data Fields

struct bnx2x_raw_obj raw
 
struct list_head head
 
struct bnx2x_exe_queue_obj exe_queue
 
struct bnx2x_credit_pool_objmacs_pool
 
struct bnx2x_credit_pool_objvlans_pool
 
int ramrod_cmd
 
int(* get_n_elements )(struct bnx2x *bp, struct bnx2x_vlan_mac_obj *o, int n, u8 *buf)
 
int(* check_add )(struct bnx2x *bp, struct bnx2x_vlan_mac_obj *o, union bnx2x_classification_ramrod_data *data)
 
struct
bnx2x_vlan_mac_registry_elem *(* 
check_del )(struct bnx2x *bp, struct bnx2x_vlan_mac_obj *o, union bnx2x_classification_ramrod_data *data)
 
bool(* check_move )(struct bnx2x *bp, struct bnx2x_vlan_mac_obj *src_o, struct bnx2x_vlan_mac_obj *dst_o, union bnx2x_classification_ramrod_data *data)
 
bool(* get_credit )(struct bnx2x_vlan_mac_obj *o)
 
bool(* put_credit )(struct bnx2x_vlan_mac_obj *o)
 
bool(* get_cam_offset )(struct bnx2x_vlan_mac_obj *o, int *offset)
 
bool(* put_cam_offset )(struct bnx2x_vlan_mac_obj *o, int offset)
 
void(* set_one_rule )(struct bnx2x *bp, struct bnx2x_vlan_mac_obj *o, struct bnx2x_exeq_elem *elem, int rule_idx, int cam_offset)
 
int(* delete_all )(struct bnx2x *bp, struct bnx2x_vlan_mac_obj *o, unsigned long *vlan_mac_flags, unsigned long *ramrod_flags)
 
int(* restore )(struct bnx2x *bp, struct bnx2x_vlan_mac_ramrod_params *p, struct bnx2x_vlan_mac_registry_elem **ppos)
 
int(* complete )(struct bnx2x *bp, struct bnx2x_vlan_mac_obj *o, union event_ring_elem *cqe, unsigned long *ramrod_flags)
 
int(* wait )(struct bnx2x *bp, struct bnx2x_vlan_mac_obj *o)
 

Detailed Description

Definition at line 280 of file bnx2x_sp.h.

Field Documentation

Checks if ADD-ramrod with the given params may be performed.

Returns
zero if the element may be added

Definition at line 319 of file bnx2x_sp.h.

Checks if DEL-ramrod with the given params may be performed.

Returns
true if the element may be deleted

Definition at line 329 of file bnx2x_sp.h.

Checks if DEL-ramrod with the given params may be performed.

Returns
true if the element may be deleted

Definition at line 338 of file bnx2x_sp.h.

int(* complete)(struct bnx2x *bp, struct bnx2x_vlan_mac_obj *o, union event_ring_elem *cqe, unsigned long *ramrod_flags)

Should be called on a completion arival.

Parameters
bp
o
cqeCompletion element we are handling
ramrod_flagsif RAMROD_CONT is set the next bulk of pending commands will be executed. RAMROD_DRV_CLR_ONLY and RAMROD_RESTORE may also be set if needed.
Returns
0 if there are neither pending nor waiting for completion commands. Positive value if there are pending for execution or for completion commands. Negative value in case of an error (including an error in the cqe).

Definition at line 418 of file bnx2x_sp.h.

int(* delete_all)(struct bnx2x *bp, struct bnx2x_vlan_mac_obj *o, unsigned long *vlan_mac_flags, unsigned long *ramrod_flags)

Delete all configured elements having the given vlan_mac_flags specification. Assumes no pending for execution commands. Will schedule all all currently configured MACs/VLANs/VLAN-MACs matching the vlan_mac_flags specification for deletion and will use the given ramrod_flags for the last DEL operation.

Parameters
bp
o
ramrod_flagsRAMROD_XX flags
Returns
0 if the last operation has completed successfully and there are no more elements left, positive value if there are pending for completion commands, negative value in case of failure.

Definition at line 377 of file bnx2x_sp.h.

Definition at line 289 of file bnx2x_sp.h.

bool(* get_cam_offset)(struct bnx2x_vlan_mac_obj *o, int *offset)

Definition at line 349 of file bnx2x_sp.h.

bool(* get_credit)(struct bnx2x_vlan_mac_obj *o)

Update the relevant credit object(s) (consume/return correspondingly).

Definition at line 347 of file bnx2x_sp.h.

int(* get_n_elements)(struct bnx2x *bp, struct bnx2x_vlan_mac_obj *o, int n, u8 *buf)

Definition at line 310 of file bnx2x_sp.h.

Definition at line 286 of file bnx2x_sp.h.

Definition at line 292 of file bnx2x_sp.h.

bool(* put_cam_offset)(struct bnx2x_vlan_mac_obj *o, int offset)

Definition at line 350 of file bnx2x_sp.h.

bool(* put_credit)(struct bnx2x_vlan_mac_obj *o)

Definition at line 348 of file bnx2x_sp.h.

int ramrod_cmd

Definition at line 298 of file bnx2x_sp.h.

Definition at line 281 of file bnx2x_sp.h.

Reconfigures the next MAC/VLAN/VLAN-MAC element from the previously configured elements list.

Parameters
bp
pCommand parameters (RAMROD_COMP_WAIT bit in ramrod_flags is only taken into an account)
pposa pointer to the cooky that should be given back in the next call to make function handle the next element. If *ppos is set to NULL it will restart the iterator. If returned *ppos == NULL this means that the last element has been handled.
Returns
int

Definition at line 397 of file bnx2x_sp.h.

void(* set_one_rule)(struct bnx2x *bp, struct bnx2x_vlan_mac_obj *o, struct bnx2x_exeq_elem *elem, int rule_idx, int cam_offset)

Configures one rule in the ramrod data buffer.

Definition at line 355 of file bnx2x_sp.h.

Definition at line 295 of file bnx2x_sp.h.

Wait for completion of all commands. Don't schedule new ones, just wait. It assumes that the completion code will schedule for new commands.

Definition at line 427 of file bnx2x_sp.h.


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