Fwlog can be supported only on PF 0. Check this before calling
init/deinit functions.

Reviewed-by: Przemek Kitszel <[email protected]>
Signed-off-by: Michal Swiatkowski <[email protected]>
---
 drivers/net/ethernet/intel/ice/ice_common.c  | 8 ++++++++
 drivers/net/ethernet/intel/ice/ice_debugfs.c | 4 ----
 drivers/net/ethernet/intel/ice/ice_fwlog.c   | 7 -------
 3 files changed, 8 insertions(+), 11 deletions(-)

diff --git a/drivers/net/ethernet/intel/ice/ice_common.c 
b/drivers/net/ethernet/intel/ice/ice_common.c
index 9119d097eb08..2666e59b0786 100644
--- a/drivers/net/ethernet/intel/ice/ice_common.c
+++ b/drivers/net/ethernet/intel/ice/ice_common.c
@@ -1002,6 +1002,10 @@ static int __fwlog_init(struct ice_hw *hw)
        };
        int err;
 
+       /* only support fw log commands on PF 0 */
+       if (hw->bus.func)
+               return -EINVAL;
+
        err = ice_debugfs_pf_init(pf);
        if (err)
                return err;
@@ -1186,6 +1190,10 @@ int ice_init_hw(struct ice_hw *hw)
 
 static void __fwlog_deinit(struct ice_hw *hw)
 {
+       /* only support fw log commands on PF 0 */
+       if (hw->bus.func)
+               return;
+
        ice_debugfs_pf_deinit(hw->back);
        ice_fwlog_deinit(hw, &hw->fwlog);
 }
diff --git a/drivers/net/ethernet/intel/ice/ice_debugfs.c 
b/drivers/net/ethernet/intel/ice/ice_debugfs.c
index c7d9e92d7f56..e5b63b6bd44d 100644
--- a/drivers/net/ethernet/intel/ice/ice_debugfs.c
+++ b/drivers/net/ethernet/intel/ice/ice_debugfs.c
@@ -588,10 +588,6 @@ void ice_debugfs_fwlog_init(struct ice_pf *pf)
        struct dentry **fw_modules;
        int i;
 
-       /* only support fw log commands on PF 0 */
-       if (pf->hw.bus.func)
-               return;
-
        /* allocate space for this first because if it fails then we don't
         * need to unwind
         */
diff --git a/drivers/net/ethernet/intel/ice/ice_fwlog.c 
b/drivers/net/ethernet/intel/ice/ice_fwlog.c
index f7dbcb5e11aa..634e3de3ae66 100644
--- a/drivers/net/ethernet/intel/ice/ice_fwlog.c
+++ b/drivers/net/ethernet/intel/ice/ice_fwlog.c
@@ -242,9 +242,6 @@ static void ice_fwlog_set_supported(struct ice_fwlog *fwlog)
 int ice_fwlog_init(struct ice_hw *hw, struct ice_fwlog *fwlog,
                   struct ice_fwlog_api *api)
 {
-       /* only support fw log commands on PF 0 */
-       if (hw->bus.func)
-               return -EINVAL;
 
        fwlog->api = *api;
        ice_fwlog_set_supported(fwlog);
@@ -296,10 +293,6 @@ void ice_fwlog_deinit(struct ice_hw *hw, struct ice_fwlog 
*fwlog)
        struct ice_pf *pf = hw->back;
        int status;
 
-       /* only support fw log commands on PF 0 */
-       if (hw->bus.func)
-               return;
-
        /* make sure FW logging is disabled to not put the FW in a weird state
         * for the next driver load
         */
-- 
2.49.0

Reply via email to