[PATCH v2 02/45] common/sfc_efx/base: add efsys option for Medford4
Ivan Malov
ivan.malov at arknetworks.am
Wed Apr 23 17:59:19 CEST 2025
From: Denis Pryazhennikov <denis.pryazhennikov at arknetworks.am>
Later patches will use this to implement support for Medford4.
Signed-off-by: Denis Pryazhennikov <denis.pryazhennikov at arknetworks.am>
Reviewed-by: Andy Moreton <andy.moreton at amd.com>
---
drivers/common/sfc_efx/base/efx_check.h | 25 ++++++++++++++-----------
drivers/common/sfc_efx/efsys.h | 2 ++
2 files changed, 16 insertions(+), 11 deletions(-)
diff --git a/drivers/common/sfc_efx/base/efx_check.h b/drivers/common/sfc_efx/base/efx_check.h
index 66b38eeae0..0035ff732b 100644
--- a/drivers/common/sfc_efx/base/efx_check.h
+++ b/drivers/common/sfc_efx/base/efx_check.h
@@ -32,7 +32,8 @@
/* Check family options for EF10 architecture controllers. */
#define EFX_OPTS_EF10() \
- (EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD || EFSYS_OPT_MEDFORD2)
+ (EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD || EFSYS_OPT_MEDFORD2 || \
+ EFSYS_OPT_MEDFORD4)
#ifdef EFSYS_OPT_FALCON
# error "FALCON is obsolete and is not supported."
@@ -197,8 +198,8 @@
#if EFSYS_OPT_IMAGE_LAYOUT
/* Support signed image layout handling */
-# if !(EFSYS_OPT_MEDFORD || EFSYS_OPT_MEDFORD2)
-# error "IMAGE_LAYOUT requires MEDFORD or MEDFORD2"
+# if !(EFSYS_OPT_MEDFORD || EFSYS_OPT_MEDFORD2 || EFSYS_OPT_MEDFORD4)
+# error "IMAGE_LAYOUT requires MEDFORD or MEDFORD2 or MEDFORD4"
# endif
#endif /* EFSYS_OPT_IMAGE_LAYOUT */
@@ -338,8 +339,9 @@
#if EFSYS_OPT_ALLOW_UNCONFIGURED_NIC
/* Support adapters with missing static config (for factory use only) */
-# if !(EFSYS_OPT_RIVERHEAD || EFSYS_OPT_MEDFORD || EFSYS_OPT_MEDFORD2)
-# error "ALLOW_UNCONFIGURED_NIC requires RIVERHEAD or MEDFORD or MEDFORD2"
+# if !(EFSYS_OPT_RIVERHEAD || EFSYS_OPT_MEDFORD || EFSYS_OPT_MEDFORD2 || \
+ EFSYS_OPT_MEDFORD4)
+# error "ALLOW_UNCONFIGURED_NIC requires RIVERHEAD or MEDFORD or MEDFORD2 or MEDFORD4"
# endif
#endif /* EFSYS_OPT_ALLOW_UNCONFIGURED_NIC */
@@ -352,22 +354,23 @@
#if EFSYS_OPT_RX_ES_SUPER_BUFFER
/* Support equal stride super-buffer mode */
-# if !(EFSYS_OPT_MEDFORD2)
-# error "ES_SUPER_BUFFER requires MEDFORD2"
+# if !(EFSYS_OPT_MEDFORD2 || EFSYS_OPT_MEDFORD4)
+# error "ES_SUPER_BUFFER requires MEDFORD2 or MEDFORD4"
# endif
#endif
/* Support hardware assistance for tunnels */
#if EFSYS_OPT_TUNNEL
-# if !(EFSYS_OPT_RIVERHEAD || EFSYS_OPT_MEDFORD || EFSYS_OPT_MEDFORD2)
-# error "TUNNEL requires RIVERHEAD or MEDFORD or MEDFORD2"
+# if !(EFSYS_OPT_RIVERHEAD || EFSYS_OPT_MEDFORD || EFSYS_OPT_MEDFORD2 || \
+ EFSYS_OPT_MEDFORD4)
+# error "TUNNEL requires RIVERHEAD or MEDFORD or MEDFORD2 or MEDFORD4"
# endif
#endif /* EFSYS_OPT_TUNNEL */
#if EFSYS_OPT_FW_SUBVARIANT_AWARE
/* Advertise that the driver is firmware subvariant aware */
-# if !(EFSYS_OPT_MEDFORD2)
-# error "FW_SUBVARIANT_AWARE requires MEDFORD2"
+# if !(EFSYS_OPT_MEDFORD2 || EFSYS_OPT_MEDFORD4)
+# error "FW_SUBVARIANT_AWARE requires MEDFORD2 or MEDFORD4"
# endif
#endif
diff --git a/drivers/common/sfc_efx/efsys.h b/drivers/common/sfc_efx/efsys.h
index 41fa3da762..e63cbdbe8f 100644
--- a/drivers/common/sfc_efx/efsys.h
+++ b/drivers/common/sfc_efx/efsys.h
@@ -125,6 +125,8 @@ prefetch_read_once(const volatile void *addr)
#define EFSYS_OPT_MEDFORD2 1
/* Enable Riverhead support */
#define EFSYS_OPT_RIVERHEAD 1
+/* Disable Medford4 support (not supported yet) */
+#define EFSYS_OPT_MEDFORD4 0
#ifdef RTE_DEBUG_COMMON_SFC_EFX
#define EFSYS_OPT_CHECK_REG 1
--
2.39.5
More information about the dev
mailing list