Re: [PATCH v3 5/6] bnxt_en: Use auxiliary bus calls over proprietary calls

From: Leon Romanovsky
Date: Mon Nov 07 2022 - 01:41:37 EST


On Fri, Nov 04, 2022 at 09:27:32AM -0700, Ajit Khaparde wrote:
> Wherever possible use the function ops provided by auxiliary bus
> instead of using proprietary ops.
>
> Defined bnxt_re_suspend and bnxt_re_resume calls which can be
> invoked by the bnxt_en driver instead of the ULP stop/start calls.
>
> Signed-off-by: Ajit Khaparde <ajit.khaparde@xxxxxxxxxxxx>
> Reviewed-by: Andy Gospodarek <andrew.gospodarek@xxxxxxxxxxxx>
> ---
> drivers/infiniband/hw/bnxt_re/main.c | 102 +++++++++++-------
> drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c | 40 ++++---
> drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.h | 2 -
> 3 files changed, 87 insertions(+), 57 deletions(-)

<...>

> void bnxt_ulp_sriov_cfg(struct bnxt *bp, int num_vfs)
> diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.h b/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.h
> index 26b7c627342b..e96f93d38a30 100644
> --- a/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.h
> +++ b/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.h
> @@ -29,8 +29,6 @@ struct bnxt_msix_entry {
> struct bnxt_ulp_ops {

Once you convert to use AUX bus, this struct should go too.

> /* async_notifier() cannot sleep (in BH context) */
> void (*ulp_async_notifier)(void *, struct hwrm_async_event_cmpl *);
> - void (*ulp_stop)(void *);
> - void (*ulp_start)(void *);
> void (*ulp_sriov_config)(void *, int);
> void (*ulp_shutdown)(void *);
> void (*ulp_irq_stop)(void *);
> --
> 2.37.1 (Apple Git-137.1)
>