From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 65BDBA04B1; Thu, 24 Sep 2020 14:21:09 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 51C691E498; Thu, 24 Sep 2020 14:14:07 +0200 (CEST) Received: from dispatch1-us1.ppe-hosted.com (dispatch1-us1.ppe-hosted.com [148.163.129.52]) by dpdk.org (Postfix) with ESMTP id 205CA1DE2D for ; Thu, 24 Sep 2020 14:13:04 +0200 (CEST) Received: from mx1-us1.ppe-hosted.com (unknown [10.7.65.62]) by dispatch1-us1.ppe-hosted.com (PPE Hosted ESMTP Server) with ESMTP id A30C8600B0 for ; Thu, 24 Sep 2020 12:13:03 +0000 (UTC) Received: from us4-mdac16-58.ut7.mdlocal (unknown [10.7.66.29]) by mx1-us1.ppe-hosted.com (PPE Hosted ESMTP Server) with ESMTP id A1D80800A3 for ; Thu, 24 Sep 2020 12:13:03 +0000 (UTC) X-Virus-Scanned: Proofpoint Essentials engine Received: from mx1-us1.ppe-hosted.com (unknown [10.7.65.174]) by mx1-us1.ppe-hosted.com (PPE Hosted ESMTP Server) with ESMTPS id 15911280054 for ; Thu, 24 Sep 2020 12:13:03 +0000 (UTC) Received: from webmail.solarflare.com (uk.solarflare.com [193.34.186.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by mx1-us1.ppe-hosted.com (PPE Hosted ESMTP Server) with ESMTPS id C0AC41C0075 for ; Thu, 24 Sep 2020 12:13:02 +0000 (UTC) Received: from ukex01.SolarFlarecom.com (10.17.10.4) by ukex01.SolarFlarecom.com (10.17.10.4) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 24 Sep 2020 13:12:48 +0100 Received: from opal.uk.solarflarecom.com (10.17.10.1) by ukex01.SolarFlarecom.com (10.17.10.4) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Thu, 24 Sep 2020 13:12:48 +0100 Received: from ukv-loginhost.uk.solarflarecom.com (ukv-loginhost.uk.solarflarecom.com [10.17.10.39]) by opal.uk.solarflarecom.com (8.13.8/8.13.8) with ESMTP id 08OCCmpI026098 for ; Thu, 24 Sep 2020 13:12:48 +0100 Received: from ukv-loginhost.uk.solarflarecom.com (localhost [127.0.0.1]) by ukv-loginhost.uk.solarflarecom.com (Postfix) with ESMTP id 69DD31613AB for ; Thu, 24 Sep 2020 13:12:48 +0100 (BST) From: Andrew Rybchenko To: Date: Thu, 24 Sep 2020 13:12:27 +0100 Message-ID: <1600949555-28043-53-git-send-email-arybchenko@solarflare.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1600949555-28043-1-git-send-email-arybchenko@solarflare.com> References: <1600764594-14752-1-git-send-email-arybchenko@solarflare.com> <1600949555-28043-1-git-send-email-arybchenko@solarflare.com> MIME-Version: 1.0 Content-Type: text/plain X-TM-AS-Product-Ver: SMEX-12.5.0.1300-8.6.1012-25674.003 X-TM-AS-Result: No-2.218500-8.000000-10 X-TMASE-MatchedRID: JE3IqDHqIlRwmwJKzmoXvN1+No0HEURtaeMaKzvXUpljLp8Cm8vwF5eg nc+D+O7x7afHkEmafZNw5T4Iaj538mJZXQNDzktSrSAIWhdbeu+Oz/LLJUcaHlVkJxysad/IWFC ZbvPiXUWaJfo0dDvh7uehiFig8ZML2DRLgpZEiUb/V0SDC1Do0LqGBW9J0Yqj4uxAgOavdLkTw7 jCStQ0rgpziWOou199rotBFWSuK2gfE8yM4pjsD7TsNDeEKGMAxEHRux+uk8ifEzJ5hPndGb/l3 H6/FhCkcINU0gY/zhd1rxAhRQJGl4SBvWNn7mscFUX3r5/Cwe3+zdxDSa8yxd+Ie37Y4WM5cTO5 N2/Xfcu40d0Fv56SCRySoBCeolQDq8uPJC94SFgR06l6KId4N3r0M0SKNnXWVlxr1FJij9s= X-TM-AS-User-Approved-Sender: Yes X-TM-AS-User-Blocked-Sender: No X-TMASE-Result: 10--2.218500-8.000000 X-TMASE-Version: SMEX-12.5.0.1300-8.6.1012-25674.003 X-MDID: 1600949583-nPqiXnUjoJem Subject: [dpdk-dev] [PATCH v3 52/60] common/sfc_efx/base: use EF10 EVB methods for Riverhead X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" There is no difference yet in EVB support on EF10 and Riverhead. So, it is better to reuse existing methods. Signed-off-by: Andrew Rybchenko Reviewed-by: Andy Moreton --- drivers/common/sfc_efx/base/ef10_evb.c | 8 ++++---- drivers/common/sfc_efx/base/efx_check.h | 4 ++-- drivers/common/sfc_efx/base/efx_evb.c | 24 ++++++++++++++++++++++++ 3 files changed, 30 insertions(+), 6 deletions(-) diff --git a/drivers/common/sfc_efx/base/ef10_evb.c b/drivers/common/sfc_efx/base/ef10_evb.c index aeeaa5189f..089d791543 100644 --- a/drivers/common/sfc_efx/base/ef10_evb.c +++ b/drivers/common/sfc_efx/base/ef10_evb.c @@ -9,13 +9,13 @@ #if EFSYS_OPT_EVB -#if EFX_OPTS_EF10() +#if EFSYS_OPT_RIVERHEAD || EFX_OPTS_EF10() __checkReturn efx_rc_t ef10_evb_init( __in efx_nic_t *enp) { - EFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp)); + EFSYS_ASSERT(EFX_FAMILY_IS_EF100(enp) || EFX_FAMILY_IS_EF10(enp)); return (0); } @@ -24,7 +24,7 @@ ef10_evb_init( ef10_evb_fini( __in efx_nic_t *enp) { - EFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp)); + EFSYS_ASSERT(EFX_FAMILY_IS_EF100(enp) || EFX_FAMILY_IS_EF10(enp)); } static __checkReturn efx_rc_t @@ -545,5 +545,5 @@ ef10_evb_vport_stats( EFX_STATS_UPLOAD, 0)); } -#endif /* EFX_OPTS_EF10() */ +#endif /* EFSYS_OPT_RIVERHEAD || EFX_OPTS_EF10() */ #endif /* EFSYS_OPT_EVB */ diff --git a/drivers/common/sfc_efx/base/efx_check.h b/drivers/common/sfc_efx/base/efx_check.h index af90a4c373..f9f97946e5 100644 --- a/drivers/common/sfc_efx/base/efx_check.h +++ b/drivers/common/sfc_efx/base/efx_check.h @@ -373,8 +373,8 @@ #if EFSYS_OPT_EVB /* Support enterprise virtual bridging */ -# if !(EFX_OPTS_EF10()) -# error "EVB requires EF10 arch" +# if !(EFSYS_OPT_RIVERHEAD || EFX_OPTS_EF10()) +# error "EVB requires RIVERHEAD or EF10 arch" # endif #endif /* EFSYS_OPT_EVB */ diff --git a/drivers/common/sfc_efx/base/efx_evb.c b/drivers/common/sfc_efx/base/efx_evb.c index 17318b7e11..b6c9b88fc2 100644 --- a/drivers/common/sfc_efx/base/efx_evb.c +++ b/drivers/common/sfc_efx/base/efx_evb.c @@ -46,6 +46,24 @@ static const efx_evb_ops_t __efx_evb_ef10_ops = { }; #endif /* EFX_OPTS_EF10() */ +#if EFSYS_OPT_RIVERHEAD +static const efx_evb_ops_t __efx_evb_rhead_ops = { + ef10_evb_init, /* eeo_init */ + ef10_evb_fini, /* eeo_fini */ + ef10_evb_vswitch_alloc, /* eeo_vswitch_alloc */ + ef10_evb_vswitch_free, /* eeo_vswitch_free */ + ef10_evb_vport_alloc, /* eeo_vport_alloc */ + ef10_evb_vport_free, /* eeo_vport_free */ + ef10_evb_vport_mac_addr_add, /* eeo_vport_mac_addr_add */ + ef10_evb_vport_mac_addr_del, /* eeo_vport_mac_addr_del */ + ef10_evb_vadaptor_alloc, /* eeo_vadaptor_alloc */ + ef10_evb_vadaptor_free, /* eeo_vadaptor_free */ + ef10_evb_vport_assign, /* eeo_vport_assign */ + ef10_evb_vport_reconfigure, /* eeo_vport_reconfigure */ + ef10_evb_vport_stats, /* eeo_vport_stats */ +}; +#endif /* EFSYS_OPT_RIVERHEAD */ + __checkReturn efx_rc_t efx_evb_init( __in efx_nic_t *enp) @@ -83,6 +101,12 @@ efx_evb_init( break; #endif /* EFSYS_OPT_MEDFORD2 */ +#if EFSYS_OPT_RIVERHEAD + case EFX_FAMILY_RIVERHEAD: + eeop = &__efx_evb_rhead_ops; + break; +#endif /* EFSYS_OPT_RIVERHEAD */ + default: EFSYS_ASSERT(0); rc = ENOTSUP; -- 2.17.1