svn commit: r301387 - stable/10/sys/dev/sfxge/common
Andrew Rybchenko
arybchik at FreeBSD.org
Sat Jun 4 17:05:22 UTC 2016
Author: arybchik
Date: Sat Jun 4 17:05:20 2016
New Revision: 301387
URL: https://svnweb.freebsd.org/changeset/base/301387
Log:
MFC r300606
sfxge(4): provide option to disable not a local MAC address check
Option EFSYS_OPT_ALLOW_UNCONFIGURED_NIC disables check that the adapter
MAC address is not a local address (beginning 02).
Submitted by: Laurence Evans <levans at solarflare.com>
Reviewed by: gnn
Sponsored by: Solarflare Communications, Inc.
Modified:
stable/10/sys/dev/sfxge/common/efsys.h
stable/10/sys/dev/sfxge/common/efx_check.h
stable/10/sys/dev/sfxge/common/medford_nic.c
Directory Properties:
stable/10/ (props changed)
Modified: stable/10/sys/dev/sfxge/common/efsys.h
==============================================================================
--- stable/10/sys/dev/sfxge/common/efsys.h Sat Jun 4 17:03:06 2016 (r301386)
+++ stable/10/sys/dev/sfxge/common/efsys.h Sat Jun 4 17:05:20 2016 (r301387)
@@ -278,6 +278,8 @@ sfxge_map_mbuf_fast(bus_dma_tag_t tag, b
#define EFSYS_OPT_LICENSING 0
+#define EFSYS_OPT_ALLOW_UNCONFIGURED_NIC 0
+
/* ID */
typedef struct __efsys_identifier_s efsys_identifier_t;
Modified: stable/10/sys/dev/sfxge/common/efx_check.h
==============================================================================
--- stable/10/sys/dev/sfxge/common/efx_check.h Sat Jun 4 17:03:06 2016 (r301386)
+++ stable/10/sys/dev/sfxge/common/efx_check.h Sat Jun 4 17:05:20 2016 (r301387)
@@ -334,5 +334,12 @@
# endif
#endif /* EFSYS_OPT_LICENSING */
+/* Support adapters with missing static config (for factory use only) */
+#if EFSYS_OPT_ALLOW_UNCONFIGURED_NIC
+# if !EFSYS_OPT_MEDFORD
+# error "ALLOW_UNCONFIGURED_NIC requires MEDFORD"
+# endif
+#endif /* EFSYS_OPT_ALLOW_UNCONFIGURED_NIC */
+
#endif /* _SYS_EFX_CHECK_H */
Modified: stable/10/sys/dev/sfxge/common/medford_nic.c
==============================================================================
--- stable/10/sys/dev/sfxge/common/medford_nic.c Sat Jun 4 17:03:06 2016 (r301386)
+++ stable/10/sys/dev/sfxge/common/medford_nic.c Sat Jun 4 17:05:20 2016 (r301387)
@@ -180,6 +180,12 @@ medford_board_cfg(
/* MAC address for this function */
if (EFX_PCI_FUNCTION_IS_PF(encp)) {
rc = efx_mcdi_get_mac_address_pf(enp, mac_addr);
+#if EFSYS_OPT_ALLOW_UNCONFIGURED_NIC
+ /* Disable static config checking for Medford NICs, ONLY
+ * for manufacturing test and setup at the factory, to
+ * allow the static config to be installed.
+ */
+#else /* EFSYS_OPT_ALLOW_UNCONFIGURED_NIC */
if ((rc == 0) && (mac_addr[0] & 0x02)) {
/*
* If the static config does not include a global MAC
@@ -189,6 +195,7 @@ medford_board_cfg(
*/
rc = EINVAL;
}
+#endif /* EFSYS_OPT_ALLOW_UNCONFIGURED_NIC */
} else {
rc = efx_mcdi_get_mac_address_vf(enp, mac_addr);
}
More information about the svn-src-all
mailing list