Author: arybchik
Date: Tue Nov 27 12:20:46 2018
New Revision: 341026
URL: https://svnweb.freebsd.org/changeset/base/341026

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

Modified:
  head/sys/dev/sfxge/common/ef10_mac.c
  head/sys/dev/sfxge/common/efx_impl.h
  head/sys/dev/sfxge/common/efx_mac.c

Modified: head/sys/dev/sfxge/common/ef10_mac.c
==============================================================================
--- head/sys/dev/sfxge/common/ef10_mac.c        Tue Nov 27 12:20:35 2018        
(r341025)
+++ head/sys/dev/sfxge/common/ef10_mac.c        Tue Nov 27 12:20:46 2018        
(r341026)
@@ -35,7 +35,7 @@ __FBSDID("$FreeBSD$");
 #include "efx_impl.h"
 
 
-#if EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD
+#if EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD || EFSYS_OPT_MEDFORD2
 
        __checkReturn   efx_rc_t
 ef10_mac_poll(
@@ -383,7 +383,8 @@ ef10_mac_multicast_list_set(
        efx_rc_t rc;
 
        EFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||
-                   enp->en_family == EFX_FAMILY_MEDFORD);
+           enp->en_family == EFX_FAMILY_MEDFORD ||
+           enp->en_family == EFX_FAMILY_MEDFORD2);
 
        if ((rc = emop->emo_reconfigure(enp)) != 0)
                goto fail1;
@@ -897,4 +898,4 @@ ef10_mac_stats_update(
 
 #endif /* EFSYS_OPT_MAC_STATS */
 
-#endif /* EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD */
+#endif /* EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD || EFSYS_OPT_MEDFORD2 */

Modified: head/sys/dev/sfxge/common/efx_impl.h
==============================================================================
--- head/sys/dev/sfxge/common/efx_impl.h        Tue Nov 27 12:20:35 2018        
(r341025)
+++ head/sys/dev/sfxge/common/efx_impl.h        Tue Nov 27 12:20:46 2018        
(r341026)
@@ -93,6 +93,7 @@ typedef enum efx_mac_type_e {
        EFX_MAC_SIENA,
        EFX_MAC_HUNTINGTON,
        EFX_MAC_MEDFORD,
+       EFX_MAC_MEDFORD2,
        EFX_MAC_NTYPES
 } efx_mac_type_t;
 

Modified: head/sys/dev/sfxge/common/efx_mac.c
==============================================================================
--- head/sys/dev/sfxge/common/efx_mac.c Tue Nov 27 12:20:35 2018        
(r341025)
+++ head/sys/dev/sfxge/common/efx_mac.c Tue Nov 27 12:20:46 2018        
(r341026)
@@ -68,7 +68,7 @@ static const efx_mac_ops_t    __efx_mac_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_mac_ops_t     __efx_mac_ef10_ops = {
        ef10_mac_poll,                          /* emo_poll */
        ef10_mac_up,                            /* emo_up */
@@ -91,7 +91,7 @@ static const efx_mac_ops_t    __efx_mac_ef10_ops = {
        ef10_mac_stats_update                   /* emo_stats_update */
 #endif /* EFSYS_OPT_MAC_STATS */
 };
-#endif /* EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD */
+#endif /* EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD || EFSYS_OPT_MEDFORD2 */
 
        __checkReturn                   efx_rc_t
 efx_mac_pdu_set(
@@ -854,6 +854,13 @@ efx_mac_select(
                type = EFX_MAC_MEDFORD;
                break;
 #endif /* EFSYS_OPT_MEDFORD */
+
+#if EFSYS_OPT_MEDFORD2
+       case EFX_FAMILY_MEDFORD2:
+               emop = &__efx_mac_ef10_ops;
+               type = EFX_MAC_MEDFORD2;
+               break;
+#endif /* EFSYS_OPT_MEDFORD2 */
 
        default:
                rc = EINVAL;
_______________________________________________
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