mirror of
https://github.com/torvalds/linux.git
synced 2026-05-24 15:12:13 +02:00
ice: ice_probe: init ice_adapter after HW init
Move ice_adapter initialization to be after HW init, so it could use HW capabilities, like number of PFs. This is needed for devlink-resource based RSS LUT size management for PF/VF (not in this series). Reviewed-by: Marcin Szycik <marcin.szycik@linux.intel.com> Signed-off-by: Przemek Kitszel <przemyslaw.kitszel@intel.com> Reviewed-by: Kalesh AP <kalesh-anakkur.purayil@broadcom.com> Tested-by: Pucha Himasekhar Reddy <himasekharx.reddy.pucha@intel.com> (A Contingent worker at Intel) Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
This commit is contained in:
parent
5d5d9c2c0f
commit
fb59a520bb
|
|
@ -5277,13 +5277,7 @@ ice_probe(struct pci_dev *pdev, const struct pci_device_id __always_unused *ent)
|
|||
}
|
||||
|
||||
pci_set_master(pdev);
|
||||
|
||||
adapter = ice_adapter_get(pdev);
|
||||
if (IS_ERR(adapter))
|
||||
return PTR_ERR(adapter);
|
||||
|
||||
pf->pdev = pdev;
|
||||
pf->adapter = adapter;
|
||||
pci_set_drvdata(pdev, pf);
|
||||
set_bit(ICE_DOWN, pf->state);
|
||||
/* Disable service task until DOWN bit is cleared */
|
||||
|
|
@ -5314,12 +5308,19 @@ ice_probe(struct pci_dev *pdev, const struct pci_device_id __always_unused *ent)
|
|||
err = ice_init_hw(hw);
|
||||
if (err) {
|
||||
dev_err(dev, "ice_init_hw failed: %d\n", err);
|
||||
goto unroll_adapter;
|
||||
return err;
|
||||
}
|
||||
|
||||
adapter = ice_adapter_get(pdev);
|
||||
if (IS_ERR(adapter)) {
|
||||
err = PTR_ERR(adapter);
|
||||
goto unroll_hw_init;
|
||||
}
|
||||
pf->adapter = adapter;
|
||||
|
||||
err = ice_init(pf);
|
||||
if (err)
|
||||
goto unroll_hw_init;
|
||||
goto unroll_adapter;
|
||||
|
||||
devl_lock(priv_to_devlink(pf));
|
||||
err = ice_load(pf);
|
||||
|
|
@ -5338,10 +5339,10 @@ ice_probe(struct pci_dev *pdev, const struct pci_device_id __always_unused *ent)
|
|||
unroll_init:
|
||||
devl_unlock(priv_to_devlink(pf));
|
||||
ice_deinit(pf);
|
||||
unroll_hw_init:
|
||||
ice_deinit_hw(hw);
|
||||
unroll_adapter:
|
||||
ice_adapter_put(pdev);
|
||||
unroll_hw_init:
|
||||
ice_deinit_hw(hw);
|
||||
return err;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user