|
@@ -191,7 +191,7 @@ qed_sp_fcoe_func_start(struct qed_hwfn *p_hwfn,
|
|
|
p_data->q_params.cq_sb_pi = fcoe_pf_params->gl_rq_pi;
|
|
|
p_data->q_params.cmdq_sb_pi = fcoe_pf_params->gl_cmd_pi;
|
|
|
|
|
|
- p_data->q_params.bdq_resource_id = FCOE_BDQ_ID(p_hwfn->port_id);
|
|
|
+ p_data->q_params.bdq_resource_id = (u8)RESC_START(p_hwfn, QED_BDQ);
|
|
|
|
|
|
DMA_REGPAIR_LE(p_data->q_params.bdq_pbl_base_address[BDQ_ID_RQ],
|
|
|
fcoe_pf_params->bdq_pbl_base_addr[BDQ_ID_RQ]);
|
|
@@ -512,19 +512,31 @@ static void __iomem *qed_fcoe_get_db_addr(struct qed_hwfn *p_hwfn, u32 cid)
|
|
|
static void __iomem *qed_fcoe_get_primary_bdq_prod(struct qed_hwfn *p_hwfn,
|
|
|
u8 bdq_id)
|
|
|
{
|
|
|
- u8 bdq_function_id = FCOE_BDQ_ID(p_hwfn->port_id);
|
|
|
-
|
|
|
- return (u8 __iomem *)p_hwfn->regview + GTT_BAR0_MAP_REG_MSDM_RAM +
|
|
|
- MSTORM_SCSI_BDQ_EXT_PROD_OFFSET(bdq_function_id, bdq_id);
|
|
|
+ if (RESC_NUM(p_hwfn, QED_BDQ)) {
|
|
|
+ return (u8 __iomem *)p_hwfn->regview +
|
|
|
+ GTT_BAR0_MAP_REG_MSDM_RAM +
|
|
|
+ MSTORM_SCSI_BDQ_EXT_PROD_OFFSET(RESC_START(p_hwfn,
|
|
|
+ QED_BDQ),
|
|
|
+ bdq_id);
|
|
|
+ } else {
|
|
|
+ DP_NOTICE(p_hwfn, "BDQ is not allocated!\n");
|
|
|
+ return NULL;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
static void __iomem *qed_fcoe_get_secondary_bdq_prod(struct qed_hwfn *p_hwfn,
|
|
|
u8 bdq_id)
|
|
|
{
|
|
|
- u8 bdq_function_id = FCOE_BDQ_ID(p_hwfn->port_id);
|
|
|
-
|
|
|
- return (u8 __iomem *)p_hwfn->regview + GTT_BAR0_MAP_REG_TSDM_RAM +
|
|
|
- TSTORM_SCSI_BDQ_EXT_PROD_OFFSET(bdq_function_id, bdq_id);
|
|
|
+ if (RESC_NUM(p_hwfn, QED_BDQ)) {
|
|
|
+ return (u8 __iomem *)p_hwfn->regview +
|
|
|
+ GTT_BAR0_MAP_REG_TSDM_RAM +
|
|
|
+ TSTORM_SCSI_BDQ_EXT_PROD_OFFSET(RESC_START(p_hwfn,
|
|
|
+ QED_BDQ),
|
|
|
+ bdq_id);
|
|
|
+ } else {
|
|
|
+ DP_NOTICE(p_hwfn, "BDQ is not allocated!\n");
|
|
|
+ return NULL;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
struct qed_fcoe_info *qed_fcoe_alloc(struct qed_hwfn *p_hwfn)
|