Author: arybchik
Date: Tue Nov 27 12:21:41 2018
New Revision: 341031
URL: https://svnweb.freebsd.org/changeset/base/341031

Log:
  sfxge(4): add Medford2 support to NVRAM module
  
  Submitted by:   Andy Moreton <amoreton at solarflare.com>
  Sponsored by:   Solarflare Communications, Inc.
  Differential Revision:  https://reviews.freebsd.org/D18153

Modified:
  head/sys/dev/sfxge/common/ef10_nvram.c
  head/sys/dev/sfxge/common/efx_nvram.c

Modified: head/sys/dev/sfxge/common/ef10_nvram.c
==============================================================================
--- head/sys/dev/sfxge/common/ef10_nvram.c      Tue Nov 27 12:21:30 2018        
(r341030)
+++ head/sys/dev/sfxge/common/ef10_nvram.c      Tue Nov 27 12:21:41 2018        
(r341031)
@@ -34,7 +34,7 @@ __FBSDID("$FreeBSD$");
 #include "efx.h"
 #include "efx_impl.h"
 
-#if EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD
+#if EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD || EFSYS_OPT_MEDFORD2
 
 #if EFSYS_OPT_VPD || EFSYS_OPT_NVRAM
 
@@ -2179,6 +2179,20 @@ static ef10_parttbl_entry_t medford_parttbl[] = {
        PARTN_MAP_ENTRY(MUM_FIRMWARE,           ALL,    MUM_FIRMWARE),
 };
 
+static ef10_parttbl_entry_t medford2_parttbl[] = {
+       /*              partn                   ports   nvtype */
+       PARTN_MAP_ENTRY(MC_FIRMWARE,            ALL,    MC_FIRMWARE),
+       PARTN_MAP_ENTRY(MC_FIRMWARE_BACKUP,     ALL,    MC_GOLDEN),
+       PARTN_MAP_ENTRY(EXPANSION_ROM,          ALL,    BOOTROM),
+       PARTN_MAP_ENTRY(EXPROM_CONFIG,          ALL,    BOOTROM_CFG),
+       PARTN_MAP_ENTRY(DYNAMIC_CONFIG,         ALL,    DYNAMIC_CFG),
+       PARTN_MAP_ENTRY(FPGA,                   ALL,    FPGA),
+       PARTN_MAP_ENTRY(FPGA_BACKUP,            ALL,    FPGA_BACKUP),
+       PARTN_MAP_ENTRY(LICENSE,                ALL,    LICENSE),
+       PARTN_MAP_ENTRY(EXPANSION_UEFI,         ALL,    UEFIROM),
+       PARTN_MAP_ENTRY(MUM_FIRMWARE,           ALL,    MUM_FIRMWARE),
+};
+
 static __checkReturn           efx_rc_t
 ef10_parttbl_get(
        __in                    efx_nic_t *enp,
@@ -2196,6 +2210,11 @@ ef10_parttbl_get(
                *parttbl_rowsp = EFX_ARRAY_SIZE(medford_parttbl);
                break;
 
+       case EFX_FAMILY_MEDFORD2:
+               *parttblp = medford2_parttbl;
+               *parttbl_rowsp = EFX_ARRAY_SIZE(medford2_parttbl);
+               break;
+
        default:
                EFSYS_ASSERT(B_FALSE);
                return (EINVAL);
@@ -2389,4 +2408,4 @@ fail1:
 
 #endif /* EFSYS_OPT_NVRAM */
 
-#endif /* EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD */
+#endif /* EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD || EFSYS_OPT_MEDFORD2 */

Modified: head/sys/dev/sfxge/common/efx_nvram.c
==============================================================================
--- head/sys/dev/sfxge/common/efx_nvram.c       Tue Nov 27 12:21:30 2018        
(r341030)
+++ head/sys/dev/sfxge/common/efx_nvram.c       Tue Nov 27 12:21:41 2018        
(r341031)
@@ -59,7 +59,7 @@ static const efx_nvram_ops_t  __efx_nvram_siena_ops = {
 
 #endif /* EFSYS_OPT_SIENA */
 
-#if EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD
+#if EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD || EFSYS_OPT_MEDFORD2
 
 static const efx_nvram_ops_t   __efx_nvram_ef10_ops = {
 #if EFSYS_OPT_DIAG
@@ -78,7 +78,7 @@ static const efx_nvram_ops_t  __efx_nvram_ef10_ops = {
        ef10_nvram_buffer_validate,     /* envo_buffer_validate */
 };
 
-#endif /* EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD */
+#endif /* EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD || EFSYS_OPT_MEDFORD2 */
 
        __checkReturn   efx_rc_t
 efx_nvram_init(
@@ -109,6 +109,12 @@ efx_nvram_init(
                envop = &__efx_nvram_ef10_ops;
                break;
 #endif /* EFSYS_OPT_MEDFORD */
+
+#if EFSYS_OPT_MEDFORD2
+       case EFX_FAMILY_MEDFORD2:
+               envop = &__efx_nvram_ef10_ops;
+               break;
+#endif /* EFSYS_OPT_MEDFORD2 */
 
        default:
                EFSYS_ASSERT(0);
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to