summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2019-07-20 12:24:00 -0600
committerSimon Glass <sjg@chromium.org>2019-07-29 09:38:06 -0600
commit95a0f3c6919e5586c23e41df46d7d41e401f13bb (patch)
treec916abd17cde5bca9bca03c1f2aa344b0153e3cd
parent89d66907b37b2578b0e998faf3ba8ef66c6a7606 (diff)
binman: Adjust fmap to ignore CBFS files
The FMAP is not intended to show the files inside a CBFS. The FMAP can be used to locate the CBFS itself, but then the CBFS must be read to find out what is in it. Update the FMAP to work this way and add some debugging while we are here. Signed-off-by: Simon Glass <sjg@chromium.org>
-rw-r--r--tools/binman/README.entries3
-rw-r--r--tools/binman/etype/fmap.py9
2 files changed, 9 insertions, 3 deletions
diff --git a/tools/binman/README.entries b/tools/binman/README.entries
index 37b8b4c4f9..0f0e367d02 100644
--- a/tools/binman/README.entries
+++ b/tools/binman/README.entries
@@ -314,7 +314,8 @@ see www.flashrom.org/Flashrom for more information.
When used, this entry will be populated with an FMAP which reflects the
entries in the current image. Note that any hierarchy is squashed, since
-FMAP does not support this.
+FMAP does not support this. Also, CBFS entries appear as a single entry -
+the sub-entries are ignored.
diff --git a/tools/binman/etype/fmap.py b/tools/binman/etype/fmap.py
index 56677cbac1..835ba5012e 100644
--- a/tools/binman/etype/fmap.py
+++ b/tools/binman/etype/fmap.py
@@ -8,6 +8,8 @@
from entry import Entry
import fmap_util
import tools
+from tools import ToHexSize
+import tout
class Entry_fmap(Entry):
@@ -26,7 +28,8 @@ class Entry_fmap(Entry):
When used, this entry will be populated with an FMAP which reflects the
entries in the current image. Note that any hierarchy is squashed, since
- FMAP does not support this.
+ FMAP does not support this. Also, CBFS entries appear as a single entry -
+ the sub-entries are ignored.
"""
def __init__(self, section, etype, node):
Entry.__init__(self, section, etype, node)
@@ -39,7 +42,9 @@ class Entry_fmap(Entry):
"""
def _AddEntries(areas, entry):
entries = entry.GetEntries()
- if entries:
+ tout.Debug("fmap: Add entry '%s' type '%s' (%s subentries)" %
+ (entry.GetPath(), entry.etype, ToHexSize(entries)))
+ if entries and entry.etype != 'cbfs':
for subentry in entries.values():
_AddEntries(areas, subentry)
else: