|
@@ -32,6 +32,8 @@ Implemented devices:
|
|
|
- OCM (256KB of On Chip Memory)
|
|
|
- XRAM (4MB of on chip Accelerator RAM)
|
|
|
- DDR memory
|
|
|
+- BBRAM (36 bytes of Battery-backed RAM)
|
|
|
+- eFUSE (3072 bytes of one-time field-programmable bit array)
|
|
|
|
|
|
QEMU does not yet model any other devices, including the PL and the AI Engine.
|
|
|
|
|
@@ -175,3 +177,50 @@ Run the following at the U-Boot prompt:
|
|
|
fdt set /chosen/dom0 reg <0x00000000 0x40000000 0x0 0x03100000>
|
|
|
booti 30000000 - 20000000
|
|
|
|
|
|
+BBRAM File Backend
|
|
|
+""""""""""""""""""
|
|
|
+BBRAM can have an optional file backend, which must be a seekable
|
|
|
+binary file with a size of 36 bytes or larger. A file with all
|
|
|
+binary 0s is a 'blank'.
|
|
|
+
|
|
|
+To add a file-backend for the BBRAM:
|
|
|
+
|
|
|
+.. code-block:: bash
|
|
|
+
|
|
|
+ -drive if=pflash,index=0,file=versal-bbram.bin,format=raw
|
|
|
+
|
|
|
+To use a different index value, N, from default of 0, add:
|
|
|
+
|
|
|
+.. code-block:: bash
|
|
|
+
|
|
|
+ -global xlnx,bbram-ctrl.drive-index=N
|
|
|
+
|
|
|
+eFUSE File Backend
|
|
|
+""""""""""""""""""
|
|
|
+eFUSE can have an optional file backend, which must be a seekable
|
|
|
+binary file with a size of 3072 bytes or larger. A file with all
|
|
|
+binary 0s is a 'blank'.
|
|
|
+
|
|
|
+To add a file-backend for the eFUSE:
|
|
|
+
|
|
|
+.. code-block:: bash
|
|
|
+
|
|
|
+ -drive if=pflash,index=1,file=versal-efuse.bin,format=raw
|
|
|
+
|
|
|
+To use a different index value, N, from default of 1, add:
|
|
|
+
|
|
|
+.. code-block:: bash
|
|
|
+
|
|
|
+ -global xlnx,efuse.drive-index=N
|
|
|
+
|
|
|
+.. warning::
|
|
|
+ In actual physical Versal, BBRAM and eFUSE contain sensitive data.
|
|
|
+ The QEMU device models do **not** encrypt nor obfuscate any data
|
|
|
+ when holding them in models' memory or when writing them to their
|
|
|
+ file backends.
|
|
|
+
|
|
|
+ Thus, a file backend should be used with caution, and 'format=luks'
|
|
|
+ is highly recommended (albeit with usage complexity).
|
|
|
+
|
|
|
+ Better yet, do not use actual product data when running guest image
|
|
|
+ on this Xilinx Versal Virt board.
|