X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fbnx2x%2Fecore_sp.c;h=61f99c6408ad30c55d5f9694dfdbd23880139ef7;hb=eeded2044af5bbe88220120b14933536cbb3edb6;hp=ceac8281574918ae8e8f46f1cf1d6fce7a510cfc;hpb=38dff79ba7360f7171303300fadc4f00592d8630;p=dpdk.git diff --git a/drivers/net/bnx2x/ecore_sp.c b/drivers/net/bnx2x/ecore_sp.c index ceac828157..61f99c6408 100644 --- a/drivers/net/bnx2x/ecore_sp.c +++ b/drivers/net/bnx2x/ecore_sp.c @@ -161,7 +161,7 @@ static inline void ecore_exe_queue_reset_pending(struct bnx2x_softc *sc, */ static int ecore_exe_queue_step(struct bnx2x_softc *sc, struct ecore_exe_queue_obj *o, - unsigned long *ramrod_flags) + uint32_t *ramrod_flags) { struct ecore_exeq_elem *elem, spacer; int cur_len = 0, rc; @@ -245,7 +245,7 @@ static struct ecore_exeq_elem *ecore_exe_queue_alloc_elem(struct } /************************ raw_obj functions ***********************************/ -static int ecore_raw_check_pending(struct ecore_raw_obj *o) +static bool ecore_raw_check_pending(struct ecore_raw_obj *o) { /* * !! converts the value returned by ECORE_TEST_BIT such that it @@ -282,7 +282,7 @@ static void ecore_raw_set_pending(struct ecore_raw_obj *o) * */ static int ecore_state_wait(struct bnx2x_softc *sc, int state, - unsigned long *pstate) + uint32_t *pstate) { /* can take a while if any port is running */ int cnt = 5000; @@ -328,7 +328,7 @@ static int ecore_raw_wait(struct bnx2x_softc *sc, struct ecore_raw_obj *raw) /***************** Classification verbs: Set/Del MAC/VLAN/VLAN-MAC ************/ /* credit handling callbacks */ -static int ecore_get_cam_offset_mac(struct ecore_vlan_mac_obj *o, int *offset) +static bool ecore_get_cam_offset_mac(struct ecore_vlan_mac_obj *o, int *offset) { struct ecore_credit_pool_obj *mp = o->macs_pool; @@ -337,7 +337,7 @@ static int ecore_get_cam_offset_mac(struct ecore_vlan_mac_obj *o, int *offset) return mp->get_entry(mp, offset); } -static int ecore_get_credit_mac(struct ecore_vlan_mac_obj *o) +static bool ecore_get_credit_mac(struct ecore_vlan_mac_obj *o) { struct ecore_credit_pool_obj *mp = o->macs_pool; @@ -346,14 +346,14 @@ static int ecore_get_credit_mac(struct ecore_vlan_mac_obj *o) return mp->get(mp, 1); } -static int ecore_put_cam_offset_mac(struct ecore_vlan_mac_obj *o, int offset) +static bool ecore_put_cam_offset_mac(struct ecore_vlan_mac_obj *o, int offset) { struct ecore_credit_pool_obj *mp = o->macs_pool; return mp->put_entry(mp, offset); } -static int ecore_put_credit_mac(struct ecore_vlan_mac_obj *o) +static bool ecore_put_credit_mac(struct ecore_vlan_mac_obj *o) { struct ecore_credit_pool_obj *mp = o->macs_pool; @@ -396,9 +396,9 @@ static void __ecore_vlan_mac_h_exec_pending(struct bnx2x_softc *sc, struct ecore_vlan_mac_obj *o) { int rc; - unsigned long ramrod_flags = o->saved_ramrod_flags; + uint32_t ramrod_flags = o->saved_ramrod_flags; - ECORE_MSG(sc, "vlan_mac_lock execute pending command with ramrod flags %lu", + ECORE_MSG(sc, "vlan_mac_lock execute pending command with ramrod flags %u", ramrod_flags); o->head_exe_request = FALSE; o->saved_ramrod_flags = 0; @@ -425,11 +425,11 @@ static void __ecore_vlan_mac_h_exec_pending(struct bnx2x_softc *sc, */ static void __ecore_vlan_mac_h_pend(struct bnx2x_softc *sc __rte_unused, struct ecore_vlan_mac_obj *o, - unsigned long ramrod_flags) + uint32_t ramrod_flags) { o->head_exe_request = TRUE; o->saved_ramrod_flags = ramrod_flags; - ECORE_MSG(sc, "Placing pending execution with ramrod flags %lu", + ECORE_MSG(sc, "Placing pending execution with ramrod flags %u", ramrod_flags); } @@ -501,7 +501,7 @@ static int __ecore_vlan_mac_h_read_lock(struct bnx2x_softc *sc __rte_unused, * * @details May sleep. Claims and releases execution queue lock during its run. */ -static int ecore_vlan_mac_h_read_lock(struct bnx2x_softc *sc, +int ecore_vlan_mac_h_read_lock(struct bnx2x_softc *sc, struct ecore_vlan_mac_obj *o) { int rc; @@ -661,7 +661,7 @@ static struct ecore_vlan_mac_registry_elem *ecore_check_mac_del(struct bnx2x_sof } /* check_move() callback */ -static int ecore_check_move(struct bnx2x_softc *sc, +static bool ecore_check_move(struct bnx2x_softc *sc, struct ecore_vlan_mac_obj *src_o, struct ecore_vlan_mac_obj *dst_o, union ecore_classification_ramrod_data *data) @@ -686,7 +686,7 @@ static int ecore_check_move(struct bnx2x_softc *sc, return TRUE; } -static int ecore_check_move_always_err(__rte_unused struct bnx2x_softc *sc, +static bool ecore_check_move_always_err(__rte_unused struct bnx2x_softc *sc, __rte_unused struct ecore_vlan_mac_obj *src_o, __rte_unused struct ecore_vlan_mac_obj *dst_o, __rte_unused union @@ -712,8 +712,8 @@ static uint8_t ecore_vlan_mac_get_rx_tx_flag(struct ecore_vlan_mac_obj return rx_tx_flag; } -static void ecore_set_mac_in_nig(struct bnx2x_softc *sc, - int add, unsigned char *dev_addr, int index) +void ecore_set_mac_in_nig(struct bnx2x_softc *sc, + bool add, unsigned char *dev_addr, int index) { uint32_t wb_data[2]; uint32_t reg_offset = ECORE_PORT_ID(sc) ? NIG_REG_LLH1_FUNC_MEM : @@ -754,7 +754,7 @@ static void ecore_set_mac_in_nig(struct bnx2x_softc *sc, * */ static void ecore_vlan_mac_set_cmd_hdr_e2(struct ecore_vlan_mac_obj *o, - int add, int opcode, + bool add, int opcode, struct eth_classify_cmd_header *hdr) { @@ -803,8 +803,8 @@ static void ecore_set_one_mac_e2(struct bnx2x_softc *sc, (struct eth_classify_rules_ramrod_data *)(raw->rdata); int rule_cnt = rule_idx + 1, cmd = elem->cmd_data.vlan_mac.cmd; union eth_classify_rule_cmd *rule_entry = &data->rules[rule_idx]; - int add = (cmd == ECORE_VLAN_MAC_ADD) ? TRUE : FALSE; - unsigned long *vlan_mac_flags = &elem->cmd_data.vlan_mac.vlan_mac_flags; + bool add = (cmd == ECORE_VLAN_MAC_ADD) ? TRUE : FALSE; + uint32_t *vlan_mac_flags = &elem->cmd_data.vlan_mac.vlan_mac_flags; uint8_t *mac = elem->cmd_data.vlan_mac.u.mac.mac; /* Set LLH CAM entry: currently only iSCSI and ETH macs are @@ -1326,7 +1326,7 @@ static int ecore_wait_vlan_mac(struct bnx2x_softc *sc, static int __ecore_vlan_mac_execute_step(struct bnx2x_softc *sc, struct ecore_vlan_mac_obj *o, - unsigned long *ramrod_flags) + uint32_t *ramrod_flags) { int rc = ECORE_SUCCESS; @@ -1362,7 +1362,7 @@ static int __ecore_vlan_mac_execute_step(struct bnx2x_softc *sc, static int ecore_complete_vlan_mac(struct bnx2x_softc *sc, struct ecore_vlan_mac_obj *o, union event_ring_elem *cqe, - unsigned long *ramrod_flags) + uint32_t *ramrod_flags) { struct ecore_raw_obj *r = &o->raw; int rc; @@ -1518,7 +1518,7 @@ static int ecore_vlan_mac_get_registry_elem(struct bnx2x_softc *sc, static int ecore_execute_vlan_mac(struct bnx2x_softc *sc, union ecore_qable_obj *qo, ecore_list_t * exe_chunk, - unsigned long *ramrod_flags) + uint32_t *ramrod_flags) { struct ecore_exeq_elem *elem; struct ecore_vlan_mac_obj *o = &qo->vlan_mac, *cam_obj; @@ -1678,7 +1678,7 @@ int ecore_config_vlan_mac(struct bnx2x_softc *sc, { int rc = ECORE_SUCCESS; struct ecore_vlan_mac_obj *o = p->vlan_mac_obj; - unsigned long *ramrod_flags = &p->ramrod_flags; + uint32_t *ramrod_flags = &p->ramrod_flags; int cont = ECORE_TEST_BIT(RAMROD_CONT, ramrod_flags); struct ecore_raw_obj *raw = &o->raw; @@ -1758,8 +1758,8 @@ int ecore_config_vlan_mac(struct bnx2x_softc *sc, */ static int ecore_vlan_mac_del_all(struct bnx2x_softc *sc, struct ecore_vlan_mac_obj *o, - unsigned long *vlan_mac_flags, - unsigned long *ramrod_flags) + uint32_t *vlan_mac_flags, + uint32_t *ramrod_flags) { struct ecore_vlan_mac_registry_elem *pos = NULL; int rc = 0, read_lock; @@ -1836,7 +1836,7 @@ static void ecore_init_raw_obj(struct ecore_raw_obj *raw, uint8_t cl_id, uint32_t cid, uint8_t func_id, void *rdata, ecore_dma_addr_t rdata_mapping, int state, - unsigned long *pstate, ecore_obj_type type) + uint32_t *pstate, ecore_obj_type type) { raw->func_id = func_id; raw->cid = cid; @@ -1856,7 +1856,7 @@ static void ecore_init_vlan_mac_common(struct ecore_vlan_mac_obj *o, uint8_t cl_id, uint32_t cid, uint8_t func_id, void *rdata, ecore_dma_addr_t rdata_mapping, - int state, unsigned long *pstate, + int state, uint32_t *pstate, ecore_obj_type type, struct ecore_credit_pool_obj *macs_pool, struct ecore_credit_pool_obj @@ -1883,7 +1883,7 @@ void ecore_init_mac_obj(struct bnx2x_softc *sc, struct ecore_vlan_mac_obj *mac_obj, uint8_t cl_id, uint32_t cid, uint8_t func_id, void *rdata, ecore_dma_addr_t rdata_mapping, int state, - unsigned long *pstate, ecore_obj_type type, + uint32_t *pstate, ecore_obj_type type, struct ecore_credit_pool_obj *macs_pool) { union ecore_qable_obj *qable_obj = (union ecore_qable_obj *)mac_obj; @@ -2034,8 +2034,8 @@ static void ecore_rx_mode_set_rdata_hdr_e2(uint32_t cid, struct eth_classify_hea hdr->rule_cnt = rule_cnt; } -static void ecore_rx_mode_set_cmd_state_e2(unsigned long *accept_flags, struct eth_filter_rules_cmd - *cmd, int clear_accept_all) +static void ecore_rx_mode_set_cmd_state_e2(uint32_t *accept_flags, + struct eth_filter_rules_cmd *cmd, int clear_accept_all) { uint16_t state; @@ -2157,7 +2157,7 @@ static int ecore_set_rx_mode_e2(struct bnx2x_softc *sc, ecore_rx_mode_set_rdata_hdr_e2(p->cid, &data->header, rule_idx); ECORE_MSG - (sc, "About to configure %d rules, rx_accept_flags 0x%lx, tx_accept_flags 0x%lx", + (sc, "About to configure %d rules, rx_accept_flags 0x%x, tx_accept_flags 0x%x", data->header.rule_cnt, p->rx_accept_flags, p->tx_accept_flags); /* No need for an explicit memory barrier here as long we would @@ -2764,12 +2764,16 @@ static int ecore_mcast_validate_e2(__rte_unused struct bnx2x_softc *sc, static void ecore_mcast_revert_e2(__rte_unused struct bnx2x_softc *sc, struct ecore_mcast_ramrod_params *p, - int old_num_bins) + int old_num_bins, + enum ecore_mcast_cmd cmd) { struct ecore_mcast_obj *o = p->mcast_obj; o->set_registry_size(o, old_num_bins); o->total_pending_num -= p->mcast_list_len; + + if (cmd == ECORE_MCAST_CMD_SET) + o->total_pending_num -= o->max_cmd_len; } /** @@ -2915,7 +2919,8 @@ static int ecore_mcast_validate_e1h(__rte_unused struct bnx2x_softc *sc, static void ecore_mcast_revert_e1h(__rte_unused struct bnx2x_softc *sc, __rte_unused struct ecore_mcast_ramrod_params - *p, __rte_unused int old_num_bins) + *p, __rte_unused int old_num_bins, + __rte_unused enum ecore_mcast_cmd cmd) { /* Do nothing */ } @@ -3093,7 +3098,7 @@ error_exit2: r->clear_pending(r); error_exit1: - o->revert(sc, p, old_reg_size); + o->revert(sc, p, old_reg_size, cmd); return rc; } @@ -3112,12 +3117,12 @@ static void ecore_mcast_set_sched(struct ecore_mcast_obj *o) ECORE_SMP_MB_AFTER_CLEAR_BIT(); } -static int ecore_mcast_check_sched(struct ecore_mcast_obj *o) +static bool ecore_mcast_check_sched(struct ecore_mcast_obj *o) { return ! !ECORE_TEST_BIT(o->sched_state, o->raw.pstate); } -static int ecore_mcast_check_pending(struct ecore_mcast_obj *o) +static bool ecore_mcast_check_pending(struct ecore_mcast_obj *o) { return o->raw.check_pending(&o->raw) || o->check_sched(o); } @@ -3127,7 +3132,7 @@ void ecore_init_mcast_obj(struct bnx2x_softc *sc, uint8_t mcast_cl_id, uint32_t mcast_cid, uint8_t func_id, uint8_t engine_id, void *rdata, ecore_dma_addr_t rdata_mapping, int state, - unsigned long *pstate, ecore_obj_type type) + uint32_t *pstate, ecore_obj_type type) { ECORE_MEMSET(mcast_obj, 0, sizeof(*mcast_obj)); @@ -3190,7 +3195,7 @@ void ecore_init_mcast_obj(struct bnx2x_softc *sc, * returns TRUE if (v + a) was less than u, and FALSE otherwise. * */ -static int __atomic_add_ifless(ecore_atomic_t * v, int a, int u) +static bool __atomic_add_ifless(ecore_atomic_t *v, int a, int u) { int c, old; @@ -3218,7 +3223,7 @@ static int __atomic_add_ifless(ecore_atomic_t * v, int a, int u) * returns TRUE if (v - a) was more or equal than u, and FALSE * otherwise. */ -static int __atomic_dec_ifmoe(ecore_atomic_t * v, int a, int u) +static bool __atomic_dec_ifmoe(ecore_atomic_t *v, int a, int u) { int c, old; @@ -3236,9 +3241,9 @@ static int __atomic_dec_ifmoe(ecore_atomic_t * v, int a, int u) return TRUE; } -static int ecore_credit_pool_get(struct ecore_credit_pool_obj *o, int cnt) +static bool ecore_credit_pool_get(struct ecore_credit_pool_obj *o, int cnt) { - int rc; + bool rc; ECORE_SMP_MB(); rc = __atomic_dec_ifmoe(&o->credit, cnt, 0); @@ -3247,9 +3252,9 @@ static int ecore_credit_pool_get(struct ecore_credit_pool_obj *o, int cnt) return rc; } -static int ecore_credit_pool_put(struct ecore_credit_pool_obj *o, int cnt) +static bool ecore_credit_pool_put(struct ecore_credit_pool_obj *o, int cnt) { - int rc; + bool rc; ECORE_SMP_MB(); @@ -3271,14 +3276,14 @@ static int ecore_credit_pool_check(struct ecore_credit_pool_obj *o) return cur_credit; } -static int ecore_credit_pool_always_TRUE(__rte_unused struct +static bool ecore_credit_pool_always_TRUE(__rte_unused struct ecore_credit_pool_obj *o, __rte_unused int cnt) { return TRUE; } -static int ecore_credit_pool_get_entry(struct ecore_credit_pool_obj *o, +static bool ecore_credit_pool_get_entry(struct ecore_credit_pool_obj *o, int *offset) { int idx, vec, i; @@ -3307,7 +3312,7 @@ static int ecore_credit_pool_get_entry(struct ecore_credit_pool_obj *o, return FALSE; } -static int ecore_credit_pool_put_entry(struct ecore_credit_pool_obj *o, +static bool ecore_credit_pool_put_entry(struct ecore_credit_pool_obj *o, int offset) { if (offset < o->base_pool_offset) @@ -3324,14 +3329,14 @@ static int ecore_credit_pool_put_entry(struct ecore_credit_pool_obj *o, return TRUE; } -static int ecore_credit_pool_put_entry_always_TRUE(__rte_unused struct +static bool ecore_credit_pool_put_entry_always_TRUE(__rte_unused struct ecore_credit_pool_obj *o, __rte_unused int offset) { return TRUE; } -static int ecore_credit_pool_get_entry_always_TRUE(__rte_unused struct +static bool ecore_credit_pool_get_entry_always_TRUE(__rte_unused struct ecore_credit_pool_obj *o, __rte_unused int *offset) { @@ -3350,7 +3355,7 @@ static int ecore_credit_pool_get_entry_always_TRUE(__rte_unused struct * If credit is negative pool operations will always succeed (unlimited pool). * */ -static void ecore_init_credit_pool(struct ecore_credit_pool_obj *p, +void ecore_init_credit_pool(struct ecore_credit_pool_obj *p, int base, int credit) { /* Zero the object first */ @@ -3588,11 +3593,13 @@ int ecore_config_rss(struct bnx2x_softc *sc, struct ecore_config_rss_params *p) return rc; } -void ecore_init_rss_config_obj(struct ecore_rss_config_obj *rss_obj, +void ecore_init_rss_config_obj(struct bnx2x_softc *sc __rte_unused, + struct ecore_rss_config_obj *rss_obj, uint8_t cl_id, uint32_t cid, uint8_t func_id, - uint8_t engine_id, void *rdata, - ecore_dma_addr_t rdata_mapping, int state, - unsigned long *pstate, ecore_obj_type type) + uint8_t engine_id, + void *rdata, ecore_dma_addr_t rdata_mapping, + int state, uint32_t *pstate, + ecore_obj_type type) { ecore_init_raw_obj(&rss_obj->raw, cl_id, cid, func_id, rdata, rdata_mapping, state, pstate, type); @@ -3620,7 +3627,7 @@ int ecore_queue_state_change(struct bnx2x_softc *sc, { struct ecore_queue_sp_obj *o = params->q_obj; int rc, pending_bit; - unsigned long *pending = &o->pending; + uint32_t *pending = &o->pending; /* Check that the requested transition is legal */ rc = o->check_transition(sc, o, params); @@ -3631,9 +3638,9 @@ int ecore_queue_state_change(struct bnx2x_softc *sc, } /* Set "pending" bit */ - ECORE_MSG(sc, "pending bit was=%lx", o->pending); + ECORE_MSG(sc, "pending bit was=%x", o->pending); pending_bit = o->set_pending(o, params); - ECORE_MSG(sc, "pending bit now=%lx", o->pending); + ECORE_MSG(sc, "pending bit now=%x", o->pending); /* Don't send a command if only driver cleanup was requested */ if (ECORE_TEST_BIT(RAMROD_DRV_CLR_ONLY, ¶ms->ramrod_flags)) @@ -3697,11 +3704,11 @@ static int ecore_queue_comp_cmd(struct bnx2x_softc *sc __rte_unused, struct ecore_queue_sp_obj *o, enum ecore_queue_cmd cmd) { - unsigned long cur_pending = o->pending; + uint32_t cur_pending = o->pending; if (!ECORE_TEST_AND_CLEAR_BIT(cmd, &cur_pending)) { PMD_DRV_LOG(ERR, sc, - "Bad MC reply %d for queue %d in state %d pending 0x%lx, next_state %d", + "Bad MC reply %d for queue %d in state %d pending 0x%x, next_state %d", cmd, o->cids[ECORE_PRIMARY_CID_INDEX], o->state, cur_pending, o->next_state); return ECORE_INVAL; @@ -3755,7 +3762,7 @@ static void ecore_q_fill_init_general_data(struct bnx2x_softc *sc __rte_unused, struct ecore_queue_sp_obj *o, struct ecore_general_setup_params *params, struct client_init_general_data - *gen_data, unsigned long *flags) + *gen_data, uint32_t *flags) { gen_data->client_id = o->cl_id; @@ -3787,7 +3794,7 @@ static void ecore_q_fill_init_general_data(struct bnx2x_softc *sc __rte_unused, static void ecore_q_fill_init_tx_data(struct ecore_txq_setup_params *params, struct client_init_tx_data *tx_data, - unsigned long *flags) + uint32_t *flags) { tx_data->enforce_security_flg = ECORE_TEST_BIT(ECORE_Q_FLG_TX_SEC, flags); @@ -3833,7 +3840,7 @@ static void ecore_q_fill_init_pause_data(struct rxq_pause_params *params, static void ecore_q_fill_init_rx_data(struct ecore_rxq_setup_params *params, struct client_init_rx_data *rx_data, - unsigned long *flags) + uint32_t *flags) { rx_data->tpa_en = ECORE_TEST_BIT(ECORE_Q_FLG_TPA, flags) * CLIENT_INIT_RX_DATA_TPA_EN_IPV4; @@ -4414,7 +4421,7 @@ static int ecore_queue_chk_transition(struct bnx2x_softc *sc __rte_unused, * the previous one. */ if (o->pending) { - PMD_DRV_LOG(ERR, sc, "Blocking transition since pending was %lx", + PMD_DRV_LOG(ERR, sc, "Blocking transition since pending was %x", o->pending); return ECORE_BUSY; } @@ -4623,7 +4630,7 @@ void ecore_init_queue_obj(struct bnx2x_softc *sc, struct ecore_queue_sp_obj *obj, uint8_t cl_id, uint32_t * cids, uint8_t cid_cnt, uint8_t func_id, void *rdata, - ecore_dma_addr_t rdata_mapping, unsigned long type) + ecore_dma_addr_t rdata_mapping, uint32_t type) { ECORE_MEMSET(obj, 0, sizeof(*obj)); @@ -4692,11 +4699,11 @@ ecore_func_state_change_comp(struct bnx2x_softc *sc __rte_unused, struct ecore_func_sp_obj *o, enum ecore_func_cmd cmd) { - unsigned long cur_pending = o->pending; + uint32_t cur_pending = o->pending; if (!ECORE_TEST_AND_CLEAR_BIT(cmd, &cur_pending)) { PMD_DRV_LOG(ERR, sc, - "Bad MC reply %d for func %d in state %d pending 0x%lx, next_state %d", + "Bad MC reply %d for func %d in state %d pending 0x%x, next_state %d", cmd, ECORE_FUNC_ID(sc), o->state, cur_pending, o->next_state); return ECORE_INVAL; @@ -5107,8 +5114,14 @@ static int ecore_func_send_switch_update(struct bnx2x_softc *sc, struct ecore_fu ECORE_MEMSET(rdata, 0, sizeof(*rdata)); /* Fill the ramrod data with provided parameters */ - rdata->tx_switch_suspend_change_flg = 1; - rdata->tx_switch_suspend = switch_update_params->suspend; + if (ECORE_TEST_BIT(ECORE_F_UPDATE_TX_SWITCH_SUSPEND_CHNG, + &switch_update_params->changes)) { + rdata->tx_switch_suspend_change_flg = 1; + rdata->tx_switch_suspend = + ECORE_TEST_BIT(ECORE_F_UPDATE_TX_SWITCH_SUSPEND, + &switch_update_params->changes); + } + rdata->echo = SWITCH_UPDATE; return ecore_sp_post(sc, RAMROD_CMD_ID_COMMON_FUNCTION_UPDATE, 0, @@ -5220,7 +5233,7 @@ static int ecore_func_send_tx_start(struct bnx2x_softc *sc, struct ecore_func_st rdata->dcb_enabled = tx_start_params->dcb_enabled; rdata->dcb_version = tx_start_params->dcb_version; - rdata->dont_add_pri_0_en = tx_start_params->dont_add_pri_0; + rdata->dont_add_pri_0_en = tx_start_params->dont_add_pri_0_en; for (i = 0; i < ARRAY_SIZE(rdata->traffic_type_to_priority_cos); i++) rdata->traffic_type_to_priority_cos[i] = @@ -5298,7 +5311,7 @@ int ecore_func_state_change(struct bnx2x_softc *sc, struct ecore_func_sp_obj *o = params->f_obj; int rc, cnt = 300; enum ecore_func_cmd cmd = params->cmd; - unsigned long *pending = &o->pending; + uint32_t *pending = &o->pending; ECORE_MUTEX_LOCK(&o->one_pending_mutex);