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);
        
_______________________________________________
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