svn commit: r291393 - head/sys/dev/sfxge/common

Andrew Rybchenko arybchik at FreeBSD.org
Fri Nov 27 16:03:53 UTC 2015


Author: arybchik
Date: Fri Nov 27 16:03:51 2015
New Revision: 291393
URL: https://svnweb.freebsd.org/changeset/base/291393

Log:
  sfxge: infer external port numbering for Pavia
  
  Adjust external port mapping table to distinguish Pavia from Monza.
  Now the presence of any 40G mode implies at least 2 outputs per
  external port.  So Pavia 4x10G ports are now mapped to 1,2,3,4;
  Monza 4x10G ports map to 1,1,2,2 as before.
  
  Submitted by:   Richard Houldsworth <rhouldsworth at solarflare.com>
  Sponsored by:   Solarflare Communications, Inc.
  MFC after:      2 days

Modified:
  head/sys/dev/sfxge/common/hunt_nic.c

Modified: head/sys/dev/sfxge/common/hunt_nic.c
==============================================================================
--- head/sys/dev/sfxge/common/hunt_nic.c	Fri Nov 27 15:58:52 2015	(r291392)
+++ head/sys/dev/sfxge/common/hunt_nic.c	Fri Nov 27 16:03:51 2015	(r291393)
@@ -948,19 +948,27 @@ static struct {
 	{
 		EFX_FAMILY_HUNTINGTON,
 		(1 << TLV_PORT_MODE_10G) |
-		(1 << TLV_PORT_MODE_40G) |
 		(1 << TLV_PORT_MODE_10G_10G) |
-		(1 << TLV_PORT_MODE_40G_40G),
+		(1 << TLV_PORT_MODE_10G_10G_10G_10G),
 		1
 	},
 	/* Supported modes requiring 2 outputs per port */
 	{
 		EFX_FAMILY_HUNTINGTON,
-		(1 << TLV_PORT_MODE_10G_10G_10G_10G) |
+		(1 << TLV_PORT_MODE_40G) |
+		(1 << TLV_PORT_MODE_40G_40G) |
 		(1 << TLV_PORT_MODE_40G_10G_10G) |
 		(1 << TLV_PORT_MODE_10G_10G_40G),
 		2
 	}
+	/*
+	 * NOTE: Medford modes will require 4 outputs per port:
+	 *	TLV_PORT_MODE_10G_10G_10G_10G_Q
+	 *	TLV_PORT_MODE_10G_10G_10G_10G_Q2
+	 * The Q2 mode routes outputs to external port 2. Support for this
+	 * will require a new field specifying the number to add after
+	 * scaling by stride. This is fixed at 1 currently.
+	 */
 };
 
 static	__checkReturn	int


More information about the svn-src-all mailing list