svn commit: r315872 - head/sys/dev/bhnd/bcma

Landon J. Fuller landonf at FreeBSD.org
Thu Mar 23 22:12:16 UTC 2017


Author: landonf
Date: Thu Mar 23 22:12:14 2017
New Revision: 315872
URL: https://svnweb.freebsd.org/changeset/base/315872

Log:
  Add a workaround for the BCM4706's dangling core region EROM entries.
  
  Approved by:	adrian (mentor, implicit)

Modified:
  head/sys/dev/bhnd/bcma/bcma_erom.c

Modified: head/sys/dev/bhnd/bcma/bcma_erom.c
==============================================================================
--- head/sys/dev/bhnd/bcma/bcma_erom.c	Thu Mar 23 22:06:06 2017	(r315871)
+++ head/sys/dev/bhnd/bcma/bcma_erom.c	Thu Mar 23 22:12:14 2017	(r315872)
@@ -1344,6 +1344,19 @@ bcma_erom_next_corecfg(struct bcma_erom 
 			goto failed;
 	}
 
+	/*
+	 * Seek to the next core entry (if any), skipping any dangling/invalid
+	 * region entries.
+	 * 
+	 * On the BCM4706, the EROM entry for the memory controller core
+	 * (0x4bf/0x52E) contains a dangling/unused slave wrapper port region
+	 * descriptor.
+	 */
+	if ((error = bcma_erom_seek_next(erom, BCMA_EROM_ENTRY_TYPE_CORE))) {
+		if (error != ENOENT)
+			goto failed;
+	}
+
 	*result = cfg;
 	return (0);
 	


More information about the svn-src-all mailing list