cros_bundle_firmware: Allow FDT to be placed in image where anyone can find it

At present the FDT is attached to U-Boot, which is great for U-Boot but
not so good for everyone else. It is not easy for tools to locate the FDT
in an existing image.

Add a new fdtmap blob type which contains the FDT and therefore provides full
access to the flashmap and all private device data. This can then be included
in flashmaps which want it.

BUG=chromium-os:38794
TEST=manual
Build an image with an fdtmap but not an FMAP. Use flashrom to read a section
from it, and use the -V flag so that all sections are displayed.

Change-Id: I13899335dccb2ea82da4f92618a3d7dc214b52e1
Reviewed-on: https://gerrit.chromium.org/gerrit/43261
Reviewed-by: Randall Spangler <rspangler@chromium.org>
Commit-Queue: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
diff --git a/host/lib/bundle_firmware.py b/host/lib/bundle_firmware.py
index 0acb2c0..b55a085 100644
--- a/host/lib/bundle_firmware.py
+++ b/host/lib/bundle_firmware.py
@@ -1108,6 +1108,7 @@
       self._tools.WriteFile(bootstub_copy, data)
       self._tools.WriteFile(bootstub, data[-0x100000:])
 
+    pack.AddProperty('fdtmap', fdt.fname)
     image = os.path.join(self._tools.outdir, 'image.bin')
     pack.PackImage(self._tools.outdir, image)
     pack.AddProperty('image', image)