struct devlink_health_reporter *fw_fatal;
        } health;
        struct mlxsw_env *env;
-       bool is_initialized; /* Denotes if core was already initialized. */
        unsigned long driver_priv[];
        /* driver_priv has to be always the last item */
 };
                        goto err_driver_init;
        }
 
-       mlxsw_core->is_initialized = true;
        devlink_params_publish(devlink);
 
        if (!reload)
        }
 
        devlink_params_unpublish(devlink);
-       mlxsw_core->is_initialized = false;
        if (mlxsw_core->driver->fini)
                mlxsw_core->driver->fini(mlxsw_core);
        mlxsw_env_fini(mlxsw_core->env);
        return mlxsw_core->env;
 }
 
-bool mlxsw_core_is_initialized(const struct mlxsw_core *mlxsw_core)
-{
-       return mlxsw_core->is_initialized;
-}
-
 static void mlxsw_core_buf_dump_dbg(struct mlxsw_core *mlxsw_core,
                                    const char *buf, size_t size)
 {
 
                                 u8 local_port);
 bool mlxsw_core_port_is_xm(const struct mlxsw_core *mlxsw_core, u8 local_port);
 struct mlxsw_env *mlxsw_core_env(const struct mlxsw_core *mlxsw_core);
-bool mlxsw_core_is_initialized(const struct mlxsw_core *mlxsw_core);
 
 int mlxsw_core_schedule_dw(struct delayed_work *dwork, unsigned long delay);
 bool mlxsw_core_schedule_work(struct work_struct *work);
 
 {
        struct mlxsw_env *mlxsw_env = mlxsw_core_env(mlxsw_core);
 
-       /* Prevent switch driver from accessing uninitialized data. */
-       if (!mlxsw_core_is_initialized(mlxsw_core)) {
-               *p_counter = 0;
-               return 0;
-       }
-
        if (WARN_ON_ONCE(module >= mlxsw_env->module_count))
                return -EINVAL;