cmd_pos
struct ecore_mcast_obj *o, struct ecore_pending_mcast_cmd *cmd_pos,
&cmd_pos->data.macs_head, link, struct ecore_mcast_mac_elem) {
o->set_one_rule(pdev, o, cnt, &cfg_data, cmd_pos->type);
&cmd_pos->data.macs_head);
if (ECORE_LIST_IS_EMPTY(&cmd_pos->data.macs_head))
cmd_pos->done = TRUE;
struct ecore_mcast_obj *o, struct ecore_pending_mcast_cmd *cmd_pos,
while (cmd_pos->data.macs_num) {
o->set_one_rule(pdev, o, cnt, NULL, cmd_pos->type);
cmd_pos->data.macs_num--;
cmd_pos->data.macs_num, cnt);
if (!cmd_pos->data.macs_num)
cmd_pos->done = TRUE;
struct ecore_mcast_obj *o, struct ecore_pending_mcast_cmd *cmd_pos,
cmd_pos->data.next_bin = o->hdl_restore(pdev, o, cmd_pos->data.next_bin,
if (cmd_pos->data.next_bin < 0)
cmd_pos->done = TRUE;
cmd_pos->data.next_bin++;
struct ecore_pending_mcast_cmd *cmd_pos, *cmd_pos_n;
ECORE_LIST_FOR_EACH_ENTRY_SAFE(cmd_pos, cmd_pos_n,
switch (cmd_pos->type) {
ecore_mcast_hdl_pending_add_e2(pdev, o, cmd_pos, &cnt);
ecore_mcast_hdl_pending_del_e2(pdev, o, cmd_pos, &cnt);
ecore_mcast_hdl_pending_restore_e2(pdev, o, cmd_pos,
ECORE_ERR("Unknown command: %d\n", cmd_pos->type);
if (cmd_pos->done) {
ECORE_LIST_REMOVE_ENTRY(&cmd_pos->link,
ECORE_FREE(pdev, cmd_pos, cmd_pos->alloc_len);
struct ecore_pending_mcast_cmd *cmd_pos;
cmd_pos = ECORE_LIST_FIRST_ENTRY(&o->pending_cmds_head,
switch (cmd_pos->type) {
ECORE_LIST_FOR_EACH_ENTRY(pmac_pos, &cmd_pos->data.macs_head,
o->set_one_rule(pdev, o, cnt, &cfg_data, cmd_pos->type);
cnt = cmd_pos->data.macs_num;
ECORE_ERR("Unknown command: %d\n", cmd_pos->type);
ECORE_LIST_REMOVE_ENTRY(&cmd_pos->link, &o->pending_cmds_head);
ECORE_FREE(pdev, cmd_pos, cmd_pos->alloc_len);