public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [PATCH v5 00/23] Migration to using binman for bootloader
@ 2023-07-07 12:34 Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 01/23] binman: ti-board-config: Add support for TI board config binaries Neha Malcom Francis
                   ` (22 more replies)
  0 siblings, 23 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

This series aims to eliminate the use of additional custom repositories
such as k3-image-gen (K3 Image Generation) repo and core-secdev-k3 (K3
Security Development Tools) that was plumbed into the U-Boot build flow
to generate boot images for TI K3 platform devices. And instead, we move
towards using binman that aligns better with the community standard build
flow.

This series uses binman for all K3 platforms supported on U-Boot currently;
both HS (High Security, both SE and FS) and GP (General Purpose) devices.

Background on using k3-image-gen:
	* TI K3 devices require a SYSFW (System Firmware) image consisting
	of a signed system firmware image and board configuration binaries,
	this is needed to bring up system firmware during U-Boot R5 SPL
	startup.
	* Board configuration data contain board-specific information
	such as resource management, power management and security.

Background on using core-secdev-k3:
	* Contains resources to sign x509 certificates for HS devices

Series intends to use binman to take over the packaging and signing for
the R5 bootloader images tiboot3.bin (and sysfw.itb, for non-combined
boot flow) instead of k3-image-gen.

Series also packages the A72/A53 bootloader images (tispl.bin and
u-boot.img) using ATF, OPTEE and DM (Device Manager)

Changes in v5:
	- updated all board configurations to latest
	- changed output binary filenames
	- fixed multiple certificate generation leading to packaging
	  inconsistency in ti-secure*.py
	- added patch to overwrite symlink if exists, patch 21/23
	  ("binman: Overwrite symlink if it already exists")

Changes in v4:
	- added support for iot2050
	- documentation fixes
	- move to using self.Raise in ti-board-config etype
	- introduced common k3-binman.dtsi (further reduction in code
	  duplication can be targeted, this as first step)

Changes in v3:
	- added support for HS-FS devices
	- added support for AM68-sk
	- added back dropped documentation patch
	- changed prefix for SYSFW and DM files to expected directory
	  name
	- extended test coverage to 100%
	- documentation fixes
	- corrected formatting changes

Changes in v2:
	- removed all external scripts
	- created ti-board-config etype to support generation of board
	  config binaries
	- created ti-secure and ti-secure-rom etypes to handle signing
	  instead of using external TI_SECURE_DEV_PKG
	- updated openssl btool to support x509 certificate generation
	- dropped Makefile changes to obtain external binary components,
	  moving to using BINMAN_INDIRS to achieve the same

CI/CD passes 100% (with series rebased on -master, current series based
on -next) [1]

v1: https://patchwork.ozlabs.org/project/uboot/cover/20230120101903.179959-1-n-francis@ti.com/
v2: https://patchwork.ozlabs.org/project/uboot/cover/20230404121342.446935-1-n-francis@ti.com/
v3: https://patchwork.ozlabs.org/project/uboot/cover/20230421123203.1315330-1-n-francis@ti.com/ 
v4: https://patchwork.ozlabs.org/project/uboot/cover/20230518142713.184164-1-n-francis@ti.com/

[1] https://github.com/u-boot/u-boot/pull/341

Andrew Davis (1):
  binman: Overwrite symlink if it already exists

Neha Malcom Francis (20):
  binman: ti-board-config: Add support for TI board config binaries
  binman: ti-secure: Add support for TI signing
  arm: dts: k3: Add support for packaging sysfw.itb and tiboot3.bin
  j721e: schema: yaml: Add general schema and J721E board config files
  j721e: dts: binman: Package tiboot3.bin, sysfw.itb, tispl.bin,
    u-boot.img
  j7200: yaml: Add J7200 board config files
  j7200: dts: binman: Package tiboot3.bin, tispl.bin, u-boot.img
  am65x: yaml: Add AM65x board config files
  am65: dts: binman: Package tiboot3.bin, sysfw.itb, tispl.bin,
    u-boot.img
  am64x: yaml: Add board configs for AM64x
  am64x: dts: binman: Package tiboot3.bin, tispl.bin u-boot.img
  j721s2: yaml: Add board configs for J721S2
  j721s2: dts: binman: Package tiboot3.bin, tispl.bin and u-boot.img
  am62: yaml: Add board configs for AM62
  am625: dts: binman: Package tiboot3.bin, tispl.bin and u-boot.img
  am62a: yaml: Add board configs for AM62ax
  am62a: dts: binman: Package tiboot3.bin, tispl.bin, u-boot.img
  arm: k3-am65x-iot2050: Use binman for tispl.bin for iot2050
  k3: tools: config.mk: Update makefile and remove scripts
  doc: board: ti: Update documentation for binman flow

Tom Rini (2):
  buildman: Create a requirements.txt file
  CI: Make use of buildman requirements.txt

 .azure-pipelines.yml                          |    4 +
 .gitlab-ci.yml                                |    4 +
 arch/arm/dts/k3-am625-r5-sk.dts               |    1 +
 arch/arm/dts/k3-am625-sk-binman.dtsi          |  463 +++
 arch/arm/dts/k3-am625-sk-u-boot.dtsi          |    2 +
 arch/arm/dts/k3-am62a-sk-binman.dtsi          |  466 +++
 arch/arm/dts/k3-am62a7-r5-sk.dts              |    1 +
 arch/arm/dts/k3-am62a7-sk.dts                 |    1 +
 arch/arm/dts/k3-am642-evm-u-boot.dtsi         |    2 +
 arch/arm/dts/k3-am642-r5-evm.dts              |    1 +
 arch/arm/dts/k3-am642-sk-u-boot.dtsi          |    2 +
 arch/arm/dts/k3-am64x-binman.dtsi             |  515 +++
 arch/arm/dts/k3-am65-iot2050-boot-image.dtsi  |   76 +-
 arch/arm/dts/k3-am654-base-board-u-boot.dtsi  |    1 +
 .../dts/k3-am654-r5-base-board-u-boot.dtsi    |    1 +
 arch/arm/dts/k3-am65x-binman.dtsi             |  518 +++
 .../arm/dts/k3-am68-sk-base-board-u-boot.dtsi |    2 +
 arch/arm/dts/k3-binman.dtsi                   |  116 +
 arch/arm/dts/k3-j7200-binman.dtsi             |  502 +++
 .../k3-j7200-common-proc-board-u-boot.dtsi    |    2 +
 arch/arm/dts/k3-j721e-binman.dtsi             |  701 ++++
 .../k3-j721e-common-proc-board-u-boot.dtsi    |    1 +
 .../arm/dts/k3-j721e-r5-common-proc-board.dts |    1 +
 arch/arm/dts/k3-j721e-sk-u-boot.dtsi          |    1 +
 arch/arm/dts/k3-j721s2-binman.dtsi            |  546 +++
 .../k3-j721s2-common-proc-board-u-boot.dtsi   |    2 +
 .../dts/k3-j721s2-r5-common-proc-board.dts    |    1 +
 arch/arm/mach-k3/config.mk                    |  103 -
 board/ti/am62ax/Kconfig                       |    2 +
 board/ti/am62ax/board-cfg.yaml                |   36 +
 board/ti/am62ax/pm-cfg.yaml                   |   12 +
 board/ti/am62ax/rm-cfg.yaml                   | 1151 ++++++
 board/ti/am62ax/sec-cfg.yaml                  |  379 ++
 board/ti/am62ax/tifs-rm-cfg.yaml              | 1011 ++++++
 board/ti/am62x/Kconfig                        |    2 +
 board/ti/am62x/board-cfg.yaml                 |   36 +
 board/ti/am62x/pm-cfg.yaml                    |   12 +
 board/ti/am62x/rm-cfg.yaml                    | 1088 ++++++
 board/ti/am62x/sec-cfg.yaml                   |  379 ++
 board/ti/am64x/Kconfig                        |    2 +
 board/ti/am64x/board-cfg.yaml                 |   37 +
 board/ti/am64x/pm-cfg.yaml                    |   12 +
 board/ti/am64x/rm-cfg.yaml                    | 1400 ++++++++
 board/ti/am64x/sec-cfg.yaml                   |  380 ++
 board/ti/am65x/Kconfig                        |    2 +
 board/ti/am65x/board-cfg.yaml                 |   36 +
 board/ti/am65x/pm-cfg.yaml                    |   12 +
 board/ti/am65x/rm-cfg.yaml                    | 2068 +++++++++++
 board/ti/am65x/sec-cfg.yaml                   |  379 ++
 board/ti/common/schema.yaml                   |  436 +++
 board/ti/j721e/Kconfig                        |    4 +
 board/ti/j721e/board-cfg.yaml                 |   37 +
 board/ti/j721e/board-cfg_j7200.yaml           |   36 +
 board/ti/j721e/pm-cfg.yaml                    |   13 +
 board/ti/j721e/pm-cfg_j7200.yaml              |   12 +
 board/ti/j721e/rm-cfg.yaml                    | 3174 +++++++++++++++++
 board/ti/j721e/rm-cfg_j7200.yaml              | 2065 +++++++++++
 board/ti/j721e/sec-cfg.yaml                   |  381 ++
 board/ti/j721e/sec-cfg_j7200.yaml             |  380 ++
 board/ti/j721s2/Kconfig                       |    2 +
 board/ti/j721s2/board-cfg.yaml                |   37 +
 board/ti/j721s2/pm-cfg.yaml                   |   12 +
 board/ti/j721s2/rm-cfg.yaml                   | 2901 +++++++++++++++
 board/ti/j721s2/sec-cfg.yaml                  |  379 ++
 board/ti/keys/custMpk.pem                     |   51 +
 board/ti/keys/ti-degenerate-key.pem           |   10 +
 doc/board/ti/am62x_sk.rst                     |   42 +-
 doc/board/ti/j721e_evm.rst                    |   50 +-
 doc/board/ti/k3.rst                           |   95 +-
 tools/binman/btool/openssl.py                 |  244 ++
 tools/binman/entries.rst                      |  113 +
 tools/binman/etype/ti_board_config.py         |  259 ++
 tools/binman/etype/ti_secure.py               |   78 +
 tools/binman/etype/ti_secure_rom.py           |  249 ++
 tools/binman/etype/x509_cert.py               |   87 +-
 tools/binman/ftest.py                         |   72 +
 tools/binman/image.py                         |    2 +
 tools/binman/test/277_ti_board_cfg.dts        |   14 +
 .../binman/test/278_ti_board_cfg_combined.dts |   25 +
 .../binman/test/279_ti_board_cfg_no_type.dts  |   11 +
 tools/binman/test/279_ti_secure.dts           |   17 +
 tools/binman/test/280_ti_secure_rom.dts       |   17 +
 .../test/281_ti_secure_rom_combined.dts       |   25 +
 tools/binman/test/288_ti_secure_rom_a.dts     |   19 +
 tools/binman/test/289_ti_secure_rom_b.dts     |   18 +
 tools/binman/test/yaml/config.yaml            |   19 +
 tools/binman/test/yaml/schema.yaml            |   51 +
 tools/binman/test/yaml/schema_notype.yaml     |   40 +
 tools/buildman/requirements.txt               |    2 +
 tools/k3_fit_atf.sh                           |  123 -
 tools/k3_gen_x509_cert.sh                     |  262 --
 91 files changed, 23724 insertions(+), 612 deletions(-)
 create mode 100644 arch/arm/dts/k3-am625-sk-binman.dtsi
 create mode 100644 arch/arm/dts/k3-am62a-sk-binman.dtsi
 create mode 100644 arch/arm/dts/k3-am64x-binman.dtsi
 create mode 100644 arch/arm/dts/k3-am65x-binman.dtsi
 create mode 100644 arch/arm/dts/k3-binman.dtsi
 create mode 100644 arch/arm/dts/k3-j7200-binman.dtsi
 create mode 100644 arch/arm/dts/k3-j721e-binman.dtsi
 create mode 100644 arch/arm/dts/k3-j721s2-binman.dtsi
 delete mode 100644 arch/arm/mach-k3/config.mk
 create mode 100644 board/ti/am62ax/board-cfg.yaml
 create mode 100644 board/ti/am62ax/pm-cfg.yaml
 create mode 100644 board/ti/am62ax/rm-cfg.yaml
 create mode 100644 board/ti/am62ax/sec-cfg.yaml
 create mode 100644 board/ti/am62ax/tifs-rm-cfg.yaml
 create mode 100644 board/ti/am62x/board-cfg.yaml
 create mode 100644 board/ti/am62x/pm-cfg.yaml
 create mode 100644 board/ti/am62x/rm-cfg.yaml
 create mode 100644 board/ti/am62x/sec-cfg.yaml
 create mode 100644 board/ti/am64x/board-cfg.yaml
 create mode 100644 board/ti/am64x/pm-cfg.yaml
 create mode 100644 board/ti/am64x/rm-cfg.yaml
 create mode 100644 board/ti/am64x/sec-cfg.yaml
 create mode 100644 board/ti/am65x/board-cfg.yaml
 create mode 100644 board/ti/am65x/pm-cfg.yaml
 create mode 100644 board/ti/am65x/rm-cfg.yaml
 create mode 100644 board/ti/am65x/sec-cfg.yaml
 create mode 100644 board/ti/common/schema.yaml
 create mode 100644 board/ti/j721e/board-cfg.yaml
 create mode 100644 board/ti/j721e/board-cfg_j7200.yaml
 create mode 100644 board/ti/j721e/pm-cfg.yaml
 create mode 100644 board/ti/j721e/pm-cfg_j7200.yaml
 create mode 100644 board/ti/j721e/rm-cfg.yaml
 create mode 100644 board/ti/j721e/rm-cfg_j7200.yaml
 create mode 100644 board/ti/j721e/sec-cfg.yaml
 create mode 100644 board/ti/j721e/sec-cfg_j7200.yaml
 create mode 100644 board/ti/j721s2/board-cfg.yaml
 create mode 100644 board/ti/j721s2/pm-cfg.yaml
 create mode 100644 board/ti/j721s2/rm-cfg.yaml
 create mode 100644 board/ti/j721s2/sec-cfg.yaml
 create mode 100644 board/ti/keys/custMpk.pem
 create mode 100644 board/ti/keys/ti-degenerate-key.pem
 create mode 100644 tools/binman/etype/ti_board_config.py
 create mode 100644 tools/binman/etype/ti_secure.py
 create mode 100644 tools/binman/etype/ti_secure_rom.py
 create mode 100644 tools/binman/test/277_ti_board_cfg.dts
 create mode 100644 tools/binman/test/278_ti_board_cfg_combined.dts
 create mode 100644 tools/binman/test/279_ti_board_cfg_no_type.dts
 create mode 100644 tools/binman/test/279_ti_secure.dts
 create mode 100644 tools/binman/test/280_ti_secure_rom.dts
 create mode 100644 tools/binman/test/281_ti_secure_rom_combined.dts
 create mode 100644 tools/binman/test/288_ti_secure_rom_a.dts
 create mode 100644 tools/binman/test/289_ti_secure_rom_b.dts
 create mode 100644 tools/binman/test/yaml/config.yaml
 create mode 100644 tools/binman/test/yaml/schema.yaml
 create mode 100644 tools/binman/test/yaml/schema_notype.yaml
 create mode 100644 tools/buildman/requirements.txt
 delete mode 100755 tools/k3_fit_atf.sh
 delete mode 100755 tools/k3_gen_x509_cert.sh

-- 
2.34.1


^ permalink raw reply	[flat|nested] 42+ messages in thread

* [PATCH v5 01/23] binman: ti-board-config: Add support for TI board config binaries
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-11  4:51   ` Jan Kiszka
  2023-07-07 12:34 ` [PATCH v5 02/23] binman: ti-secure: Add support for TI signing Neha Malcom Francis
                   ` (21 subsequent siblings)
  22 siblings, 1 reply; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

The ti-board-config entry loads and validates a given YAML config file
against a given schema, and generates the board config binary. K3
devices require these binaries to be packed into the final system
firmware images.

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---
 tools/binman/entries.rst                      |  48 ++++
 tools/binman/etype/ti_board_config.py         | 259 ++++++++++++++++++
 tools/binman/ftest.py                         |  20 ++
 tools/binman/test/277_ti_board_cfg.dts        |  14 +
 .../binman/test/278_ti_board_cfg_combined.dts |  25 ++
 .../binman/test/279_ti_board_cfg_no_type.dts  |  11 +
 tools/binman/test/yaml/config.yaml            |  19 ++
 tools/binman/test/yaml/schema.yaml            |  51 ++++
 tools/binman/test/yaml/schema_notype.yaml     |  40 +++
 9 files changed, 487 insertions(+)
 create mode 100644 tools/binman/etype/ti_board_config.py
 create mode 100644 tools/binman/test/277_ti_board_cfg.dts
 create mode 100644 tools/binman/test/278_ti_board_cfg_combined.dts
 create mode 100644 tools/binman/test/279_ti_board_cfg_no_type.dts
 create mode 100644 tools/binman/test/yaml/config.yaml
 create mode 100644 tools/binman/test/yaml/schema.yaml
 create mode 100644 tools/binman/test/yaml/schema_notype.yaml

diff --git a/tools/binman/entries.rst b/tools/binman/entries.rst
index b71af801fd..14a2d03fad 100644
--- a/tools/binman/entries.rst
+++ b/tools/binman/entries.rst
@@ -1658,6 +1658,54 @@ by setting the size of the entry to something larger than the text.
 
 
 
+.. _etype_ti_board_config:
+
+Entry: ti-board-config: An entry containing a TI schema validated board config binary
+-------------------------------------------------------------------------------------
+
+This etype supports generation of two kinds of board configuration
+binaries: singular board config binary as well as combined board config
+binary.
+
+Properties / Entry arguments:
+    - config-file: File containing board configuration data in YAML
+    - schema-file: File containing board configuration YAML schema against
+      which the config file is validated
+
+Output files:
+    - board config binary: File containing board configuration binary
+
+These above parameters are used only when the generated binary is
+intended to be a single board configuration binary. Example::
+
+    my-ti-board-config {
+        ti-board-config {
+            config = "board-config.yaml";
+            schema = "schema.yaml";
+        };
+    };
+
+To generate a combined board configuration binary, we pack the
+needed individual binaries into a ti-board-config binary. In this case,
+the available supported subnode names are board-cfg, pm-cfg, sec-cfg and
+rm-cfg. The final binary is prepended with a header containing details about
+the included board config binaries. Example::
+
+    my-combined-ti-board-config {
+        ti-board-config {
+            board-cfg {
+                config = "board-cfg.yaml";
+                schema = "schema.yaml";
+            };
+            sec-cfg {
+                config = "sec-cfg.yaml";
+                schema = "schema.yaml";
+            };
+        }
+    }
+
+
+
 .. _etype_u_boot:
 
 Entry: u-boot: U-Boot flat binary
diff --git a/tools/binman/etype/ti_board_config.py b/tools/binman/etype/ti_board_config.py
new file mode 100644
index 0000000000..0799e5dc59
--- /dev/null
+++ b/tools/binman/etype/ti_board_config.py
@@ -0,0 +1,259 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (c) 2022 Texas Instruments Incorporated - https://www.ti.com/
+# Written by Neha Malcom Francis <n-francis@ti.com>
+#
+# Entry-type module for generating schema validated TI board
+# configuration binary
+#
+
+import os
+import struct
+import yaml
+
+from collections import OrderedDict
+from jsonschema import validate
+from shutil import copyfileobj
+
+from binman.entry import Entry
+from binman.etype.section import Entry_section
+from dtoc import fdt_util
+from u_boot_pylib import tools
+
+BOARDCFG = 0xB
+BOARDCFG_SEC = 0xD
+BOARDCFG_PM = 0xE
+BOARDCFG_RM = 0xC
+BOARDCFG_NUM_ELEMS = 4
+
+class Entry_ti_board_config(Entry_section):
+    """An entry containing a TI schema validated board config binary
+
+    This etype supports generation of two kinds of board configuration
+    binaries: singular board config binary as well as combined board config
+    binary.
+
+    Properties / Entry arguments:
+        - config-file: File containing board configuration data in YAML
+        - schema-file: File containing board configuration YAML schema against
+          which the config file is validated
+
+    Output files:
+        - board config binary: File containing board configuration binary
+
+    These above parameters are used only when the generated binary is
+    intended to be a single board configuration binary. Example::
+
+        my-ti-board-config {
+            ti-board-config {
+                config = "board-config.yaml";
+                schema = "schema.yaml";
+            };
+        };
+
+    To generate a combined board configuration binary, we pack the
+    needed individual binaries into a ti-board-config binary. In this case,
+    the available supported subnode names are board-cfg, pm-cfg, sec-cfg and
+    rm-cfg. The final binary is prepended with a header containing details about
+    the included board config binaries. Example::
+
+        my-combined-ti-board-config {
+            ti-board-config {
+                board-cfg {
+                    config = "board-cfg.yaml";
+                    schema = "schema.yaml";
+                };
+                sec-cfg {
+                    config = "sec-cfg.yaml";
+                    schema = "schema.yaml";
+                };
+            }
+        }
+    """
+    def __init__(self, section, etype, node):
+        super().__init__(section, etype, node)
+        self._config = None
+        self._schema = None
+        self._entries = OrderedDict()
+        self._num_elems = BOARDCFG_NUM_ELEMS
+        self._fmt = '<HHHBB'
+        self._index = 0
+        self._binary_offset = 0
+        self._sw_rev = 1
+        self._devgrp = 0
+
+    def ReadNode(self):
+        super().ReadNode()
+        self._config = fdt_util.GetString(self._node, 'config')
+        self._schema = fdt_util.GetString(self._node, 'schema')
+        # Depending on whether config file is present in node, we determine
+        # whether it is a combined board config binary or not
+        if self._config is None:
+            self.ReadEntries()
+        else:
+            self._config_file = tools.get_input_filename(self._config)
+            self._schema_file = tools.get_input_filename(self._schema)
+
+    def ReadEntries(self):
+        """Read the subnodes to find out what should go in this image
+        """
+        for node in self._node.subnodes:
+            if 'type' not in node.props:
+                entry = Entry.Create(self, node, 'ti-board-config')
+                entry.ReadNode()
+                cfg_data = entry.BuildSectionData(True)
+                entry._cfg_data = cfg_data
+                self._entries[entry.name] = entry
+        self._num_elems = len(self._node.subnodes)
+
+    def _convert_to_byte_chunk(self, val, data_type):
+        """Convert value into byte array
+
+        Args:
+            val: value to convert into byte array
+            data_type: data type used in schema, supported data types are u8,
+                u16 and u32
+
+        Returns:
+            array of bytes representing value
+        """
+        size = 0
+        if (data_type == '#/definitions/u8'):
+            size = 1
+        elif (data_type == '#/definitions/u16'):
+            size = 2
+        else:
+            size = 4
+        if type(val) == int:
+            br = val.to_bytes(size, byteorder='little')
+        return br
+
+    def _compile_yaml(self, schema_yaml, file_yaml):
+        """Convert YAML file into byte array based on YAML schema
+
+        Args:
+            schema_yaml: file containing YAML schema
+            file_yaml: file containing config to compile
+
+        Returns:
+            array of bytes repesenting YAML file against YAML schema
+        """
+        br = bytearray()
+        for key, node in file_yaml.items():
+            node_schema = schema_yaml['properties'][key]
+            node_type = node_schema.get('type')
+            if not 'type' in node_schema:
+                br += self._convert_to_byte_chunk(node,
+                                                node_schema.get('$ref'))
+            elif node_type == 'object':
+                br += self._compile_yaml(node_schema, node)
+            elif node_type == 'array':
+                for item in node:
+                    if not isinstance(item, dict):
+                        br += self._convert_to_byte_chunk(
+                            item, schema_yaml['properties'][key]['items']['$ref'])
+                    else:
+                        br += self._compile_yaml(node_schema.get('items'), item)
+        return br
+
+    def _generate_binaries(self):
+        """Generate config binary artifacts from the loaded YAML configuration file
+
+        Returns:
+            byte array containing config binary artifacts
+            or None if generation fails
+        """
+        cfg_binary = bytearray()
+        for key, node in self.file_yaml.items():
+            node_schema = self.schema_yaml['properties'][key]
+            br = self._compile_yaml(node_schema, node)
+            cfg_binary += br
+        return cfg_binary
+
+    def _add_boardcfg(self, bcfgtype, bcfgdata):
+        """Add board config to combined board config binary
+
+        Args:
+            bcfgtype (int): board config type
+            bcfgdata (byte array): board config data
+        """
+        size = len(bcfgdata)
+        desc = struct.pack(self._fmt, bcfgtype,
+                            self._binary_offset, size, self._devgrp, 0)
+        with open(self.descfile, 'ab+') as desc_fh:
+            desc_fh.write(desc)
+        with open(self.bcfgfile, 'ab+') as bcfg_fh:
+            bcfg_fh.write(bcfgdata)
+        self._binary_offset += size
+        self._index += 1
+
+    def _finalize(self):
+        """Generate final combined board config binary
+
+        Returns:
+            byte array containing combined board config data
+            or None if unable to generate
+        """
+        with open(self.descfile, 'rb') as desc_fh:
+            with open(self.bcfgfile, 'rb') as bcfg_fh:
+                with open(self.fh_file, 'ab+') as fh:
+                    copyfileobj(desc_fh, fh)
+                    copyfileobj(bcfg_fh, fh)
+        data = tools.read_file(self.fh_file)
+        return data
+
+    def BuildSectionData(self, required):
+        if self._config is None:
+            self._binary_offset = 0
+            uniq = self.GetUniqueName()
+            self.fh_file = tools.get_output_filename('fh.%s' % uniq)
+            self.descfile = tools.get_output_filename('desc.%s' % uniq)
+            self.bcfgfile = tools.get_output_filename('bcfg.%s' % uniq)
+
+            # when binman runs again make sure we start clean
+            if os.path.exists(self.fh_file):
+                os.remove(self.fh_file)
+            if os.path.exists(self.descfile):
+                os.remove(self.descfile)
+            if os.path.exists(self.bcfgfile):
+                os.remove(self.bcfgfile)
+
+            with open(self.fh_file, 'wb') as f:
+                t_bytes = f.write(struct.pack(
+                    '<BB', self._num_elems, self._sw_rev))
+            self._binary_offset += t_bytes
+            self._binary_offset += self._num_elems * struct.calcsize(self._fmt)
+
+            if 'board-cfg' in self._entries:
+                self._add_boardcfg(BOARDCFG, self._entries['board-cfg']._cfg_data)
+
+            if 'sec-cfg' in self._entries:
+                self._add_boardcfg(BOARDCFG_SEC, self._entries['sec-cfg']._cfg_data)
+
+            if 'pm-cfg' in self._entries:
+                self._add_boardcfg(BOARDCFG_PM, self._entries['pm-cfg']._cfg_data)
+
+            if 'rm-cfg' in self._entries:
+                self._add_boardcfg(BOARDCFG_RM, self._entries['rm-cfg']._cfg_data)
+
+            data = self._finalize()
+            return data
+
+        else:
+            with open(self._config_file, 'r') as f:
+                self.file_yaml = yaml.safe_load(f)
+            with open(self._schema_file, 'r') as sch:
+                self.schema_yaml = yaml.safe_load(sch)
+
+            try:
+                validate(self.file_yaml, self.schema_yaml)
+            except Exception as e:
+                self.Raise(f"Schema validation error: {e}")
+
+            data = self._generate_binaries()
+            return data
+
+    def SetImagePos(self, image_pos):
+        Entry.SetImagePos(self, image_pos)
+
+    def CheckEntries(self):
+        Entry.CheckEntries(self)
diff --git a/tools/binman/ftest.py b/tools/binman/ftest.py
index 43b4f850a6..b9a490a5bd 100644
--- a/tools/binman/ftest.py
+++ b/tools/binman/ftest.py
@@ -97,6 +97,7 @@ ENV_DATA              = b'var1=1\nvar2="2"'
 PRE_LOAD_MAGIC        = b'UBSH'
 PRE_LOAD_VERSION      = 0x11223344.to_bytes(4, 'big')
 PRE_LOAD_HDR_SIZE     = 0x00001000.to_bytes(4, 'big')
+TI_BOARD_CONFIG_DATA  = b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
 
 # Subdirectory of the input dir to use to put test FDTs
 TEST_FDT_SUBDIR       = 'fdts'
@@ -199,6 +200,9 @@ class TestFunctional(unittest.TestCase):
         shutil.copytree(cls.TestFile('files'),
                         os.path.join(cls._indir, 'files'))
 
+        shutil.copytree(cls.TestFile('yaml'),
+                        os.path.join(cls._indir, 'yaml'))
+
         TestFunctional._MakeInputFile('compress', COMPRESS_DATA)
         TestFunctional._MakeInputFile('compress_big', COMPRESS_DATA_BIG)
         TestFunctional._MakeInputFile('bl31.bin', ATF_BL31_DATA)
@@ -6676,6 +6680,22 @@ fdt         fdtmap                Extract the devicetree blob from the fdtmap
                                 ['fit'])
         self.assertIn("Node '/fit': Missing tool: 'mkimage'", str(e.exception))
 
+    def testTIBoardConfig(self):
+        """Test that a schema validated board config file can be generated"""
+        data = self._DoReadFile('277_ti_board_cfg.dts')
+        self.assertEqual(TI_BOARD_CONFIG_DATA, data)
+
+    def testTIBoardConfigCombined(self):
+        """Test that a schema validated combined board config file can be generated"""
+        data = self._DoReadFile('278_ti_board_cfg_combined.dts')
+        configlen_noheader = TI_BOARD_CONFIG_DATA * 4
+        self.assertGreater(data, configlen_noheader)
+
+    def testTIBoardConfigNoDataType(self):
+        """Test that error is thrown when data type is not supported"""
+        with self.assertRaises(ValueError) as e:
+            data = self._DoReadFile('279_ti_board_cfg_no_type.dts')
+        self.assertIn("Schema validation error", str(e.exception))
 
 if __name__ == "__main__":
     unittest.main()
diff --git a/tools/binman/test/277_ti_board_cfg.dts b/tools/binman/test/277_ti_board_cfg.dts
new file mode 100644
index 0000000000..cda024c1b8
--- /dev/null
+++ b/tools/binman/test/277_ti_board_cfg.dts
@@ -0,0 +1,14 @@
+// SPDX-License-Identifier: GPL-2.0+
+/dts-v1/;
+
+/ {
+	#address-cells = <1>;
+	#size-cells = <1>;
+
+	binman {
+		ti-board-config {
+			config = "yaml/config.yaml";
+			schema = "yaml/schema.yaml";
+		};
+	};
+};
diff --git a/tools/binman/test/278_ti_board_cfg_combined.dts b/tools/binman/test/278_ti_board_cfg_combined.dts
new file mode 100644
index 0000000000..95ef449cbf
--- /dev/null
+++ b/tools/binman/test/278_ti_board_cfg_combined.dts
@@ -0,0 +1,25 @@
+// SPDX-License-Identifier: GPL-2.0+
+/dts-v1/;
+
+/ {
+	binman {
+		ti-board-config {
+			board-cfg {
+				config = "yaml/config.yaml";
+				schema = "yaml/schema.yaml";
+			};
+			sec-cfg {
+				config = "yaml/config.yaml";
+				schema = "yaml/schema.yaml";
+			};
+			rm-cfg {
+				config = "yaml/config.yaml";
+				schema = "yaml/schema.yaml";
+			};
+			pm-cfg {
+				config = "yaml/config.yaml";
+				schema = "yaml/schema.yaml";
+			};
+		};
+	};
+};
diff --git a/tools/binman/test/279_ti_board_cfg_no_type.dts b/tools/binman/test/279_ti_board_cfg_no_type.dts
new file mode 100644
index 0000000000..584b7acc5a
--- /dev/null
+++ b/tools/binman/test/279_ti_board_cfg_no_type.dts
@@ -0,0 +1,11 @@
+// SPDX-License-Identifier: GPL-2.0+
+/dts-v1/;
+
+/ {
+	binman {
+		ti-board-config {
+			config = "yaml/config.yaml";
+			schema = "yaml/schema_notype.yaml";
+		};
+	};
+};
diff --git a/tools/binman/test/yaml/config.yaml b/tools/binman/test/yaml/config.yaml
new file mode 100644
index 0000000000..79fd67c7f4
--- /dev/null
+++ b/tools/binman/test/yaml/config.yaml
@@ -0,0 +1,19 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Test config
+#
+---
+
+main-branch:
+  obj:
+    a: 0x0
+    b: 0
+  arr: [0, 0, 0, 0]
+  another-arr:
+    - #1
+      c: 0
+      d: 0
+    - #2
+      c: 0
+      d: 0
diff --git a/tools/binman/test/yaml/schema.yaml b/tools/binman/test/yaml/schema.yaml
new file mode 100644
index 0000000000..60bf56f671
--- /dev/null
+++ b/tools/binman/test/yaml/schema.yaml
@@ -0,0 +1,51 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Test schema
+#
+---
+
+definitions:
+    u8:
+        type: integer
+        minimum: 0
+        maximum: 0xff
+    u16:
+        type: integer
+        minimum: 0
+        maximum: 0xffff
+    u32:
+        type: integer
+        minimum: 0
+        maximum: 0xffffffff
+
+type: object
+properties:
+    main-branch:
+        type: object
+        properties:
+            obj:
+                type: object
+                properties:
+                    a:
+                        $ref: "#/definitions/u32"
+                    b:
+                        $ref: "#/definitions/u16"
+            arr:
+                type: array
+                minItems: 4
+                maxItems: 4
+                items:
+                    $ref: "#/definitions/u8"
+            another-arr:
+                type: array
+                minItems: 2
+                maxItems: 2
+                items:
+                    type: object
+                    properties:
+                        c:
+                            $ref: "#/definitions/u8"
+                        d:
+                            $ref: "#/definitions/u8"
+
diff --git a/tools/binman/test/yaml/schema_notype.yaml b/tools/binman/test/yaml/schema_notype.yaml
new file mode 100644
index 0000000000..d45d6cdf7e
--- /dev/null
+++ b/tools/binman/test/yaml/schema_notype.yaml
@@ -0,0 +1,40 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Test schema
+#
+---
+
+definitions:
+    u8:
+        type: integer
+        minimum: 0
+        maximum: 0xff
+    u16:
+        type: integer
+        minimum: 0
+        maximum: 0xffff
+    u32:
+        type: integer
+        minimum: 0
+        maximum: 0xffffffff
+
+type: object
+properties:
+    main-branch:
+        type: object
+        properties:
+            obj:
+                type: object
+                properties:
+                    a:
+                        $ref: "#/definitions/u4"
+                    b:
+                        $ref: "#/definitions/u16"
+            arr:
+                type: array
+                minItems: 4
+                maxItems: 4
+                items:
+                    $ref: "#/definitions/u8"
+
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 02/23] binman: ti-secure: Add support for TI signing
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 01/23] binman: ti-board-config: Add support for TI board config binaries Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 03/23] arm: dts: k3: Add support for packaging sysfw.itb and tiboot3.bin Neha Malcom Francis
                   ` (20 subsequent siblings)
  22 siblings, 0 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

The ti-secure entry contains certificate for binaries that will be
loaded or booted by system firmware whereas the ti-secure-rom entry
contains certificate for binaries that will be booted by ROM. Support
for both these types of certificates is necessary for booting of K3
devices.

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
[vigneshr@ti.com: fixed inconsist cert generation by multiple packing]
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
---
 board/ti/keys/custMpk.pem                     |  51 ++++
 board/ti/keys/ti-degenerate-key.pem           |  10 +
 tools/binman/btool/openssl.py                 | 244 +++++++++++++++++
 tools/binman/entries.rst                      |  65 +++++
 tools/binman/etype/ti_secure.py               |  78 ++++++
 tools/binman/etype/ti_secure_rom.py           | 249 ++++++++++++++++++
 tools/binman/etype/x509_cert.py               |  87 +++++-
 tools/binman/ftest.py                         |  52 ++++
 tools/binman/test/279_ti_secure.dts           |  17 ++
 tools/binman/test/280_ti_secure_rom.dts       |  17 ++
 .../test/281_ti_secure_rom_combined.dts       |  25 ++
 tools/binman/test/288_ti_secure_rom_a.dts     |  19 ++
 tools/binman/test/289_ti_secure_rom_b.dts     |  18 ++
 13 files changed, 924 insertions(+), 8 deletions(-)
 create mode 100644 board/ti/keys/custMpk.pem
 create mode 100644 board/ti/keys/ti-degenerate-key.pem
 create mode 100644 tools/binman/etype/ti_secure.py
 create mode 100644 tools/binman/etype/ti_secure_rom.py
 create mode 100644 tools/binman/test/279_ti_secure.dts
 create mode 100644 tools/binman/test/280_ti_secure_rom.dts
 create mode 100644 tools/binman/test/281_ti_secure_rom_combined.dts
 create mode 100644 tools/binman/test/288_ti_secure_rom_a.dts
 create mode 100644 tools/binman/test/289_ti_secure_rom_b.dts

diff --git a/board/ti/keys/custMpk.pem b/board/ti/keys/custMpk.pem
new file mode 100644
index 0000000000..adba378c80
--- /dev/null
+++ b/board/ti/keys/custMpk.pem
@@ -0,0 +1,51 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIIJKQIBAAKCAgEAvxSuSdh/ctNrI83rSA5l3CJN8g5PgvbttfLd23yR+m5Z/9X3
+tt4EHYrM0pXZ0eDEwfhQv/9IDJEiUJpMe4vzlgooJrOk2eCpVUEa+z5bJ2y/ysBx
+ry9yIu5GASVirT7HBPaxGLYswBJuD+KbPuWmoKgGRQNBF04WH6l01oRO1nmnELgR
+qQ6SHyXdf7Hy0bnyaNgzWUuCfXfM0Zz6I7T7WIjyzerVFvIsdS36YsPBCW7gBnDg
+tQcJmWLZ1uTnbG3IggdQk/fi2O3RX+PQns+TVNlf3V3ON2DxqxSKBHtlp7p/30VF
+fEuhW65OxpQ9jE6H0pQ8pPOf2vzyNnznDa1aQjfxKoHQbqGnZwMeh+0Au3NKaCgx
+ooKaowTB6If/RX6qwZ/UOwXHg/0hcf69fzjJFhlSDuYDM40dHsk2HM1OnYIpiM2b
+Kr5sX3uysjp5AGp99a0anR7NWCrPXvROgKs7T9341N40osQg2VkZLYUCXh9osUyN
+uREG6S12tViMUKg3bmZ4b4MwRk00n7QYSrm7+nvFrtYyEISEbD+agDM1/E281W5g
+VFDPfm2AlwT6jwsg/b2YK6E3vVn9SuxFoQmLF8lyFDO3BV4SXeJaHc4hVPbh6tVV
+qifrTQnfGUCCLmaJF2XZbrPWOE6NYRbWdNTeFl9RGdVCuIPSyN5LqWmXto0CAwEA
+AQKCAgAzkAwcJ0z1GnId/lJQZno8NhGckRoJuEKbR8dwlCP8VUz6Ca5H7Y9kvXDa
+Hs/hn+rYgP6hYOz7XyrIX2rmJ/T6dxEwqGeC1+o59FConcIRWHpE5zuGT6JYJL5F
+TuZa48bm4v8VMQvQZOjIZpkIFwao8c6HTwKAnHTB5IN/48I2hCt+Cn3RhfoOZ7Rm
+4gkpaSkt+7GXlhXHb82YfujNO+hbktEamhUYlQ9EK70Wa8aqmf3gHxO0JgsEFjW8
+lJaSnultlTW8SDcx3LMUUjCYumECk4oX/VlJfmKYjPlVjkr3QQ+Cm3nNucb4K4hc
+c+JL+2ERhSj8RjXL7VgbNgdPnIjvQDJuTNqecTU8xWPYrkOLQpNibbLjnutLkhJz
+fMyRtmDtrsey8WiCDuCHkPJ8/f8RjL2zWI9fzTDDIzdlEKouUFGOovaHVnbua6pn
+hymcu9d9FV3p2rcbj0ivCs7e8j+vhSxFJEJoAbcQdXCTi/n2uR7pLtoMNiUzsejy
+d46Uz+KEU920NTwE2z6JJq8I2vegnxjc7PDDrV3/5rK04B93aXiqvwWseCpxelrI
+xaMkRHbXrIXRO6MXQ3N+zNq8Dg3hjGTTvaBKuwgvqLwlXY8+Aa3ooFzEOInIOSsI
+XcWqXxt/tgZgsj9RwpC42t8kbA+BkbNk9EIUa+P5kEr2P/fO7QKCAQEA4EtArnOX
+D6tQF8uTw8USOZC2P9s/ez1z4jRq3oKP0Kv4tJiuIObJ/dUvGVD7aM5v2xaCfhm8
+xpk09VPUgghfG5jR5qVvQr75kCNToJQudWi4ngk1HwKJzzTO11giFEdybvTUA+Pj
+fmxCM0dYYqRWZoj0hLqXlUCwxE74BFIhJVjeYbf+nTQrqpllTLoW7MTZHzGx5SXx
+4dNzyVAUH49Yt2D8mgXXCkf5sGLh762wj34b/rR10Kr4O5utGMZrfTRIbuQ1pNjU
+m66baPzq+mC0BzqZEW70TgEb7lOr8rcVXLOi3r36omfd9/MHx7iZD6o3K1axSO15
+grD4ZrN7Ac3QJwKCAQEA2heCoBdpvy6YUk8AO2k8qDygTdmPQRuwjjT+Z2fMslBt
+D7DkpKwZ6Bl9OclcpiiLHmH+hv65KqYg+tR0RRb7PcogB9El9x7yKkGTPZEYWGky
+n8P84rJpKwjnwWQvPQktI1cs3YGvZA9DQTFBavRrwuzgd1oSJq5aPQ2tme0kMvWp
+l1/B/cPK+PKCi/Wfisaze1TjijP9qIeUwkdNN6WLrLU3QgsGppcg2I7RQtAIikT6
+GkuiOQAvWMsrJVV6PNrVKz4fJDJ59Rz6jbDHZNi1MEYNxQoB/Pl7QIakbfjWpHLv
+8Ey7cB2JKxjQy8tmyl8WNQVbXbE6daPXcMTUmaRAKwKCAQBv1lYMJmq+T2eCVen6
+BbvOpE+bi5EdvEiaFBTtmiBnpjg+pJq+oRU60h/H+c9CNR0lGxY6Fk9An4f+g6xE
+ojP6KLsQzJCrsVny+wpp2TlJJcxYULMCIVvhy60PR0zG29E9biqBPhJjKUvhEcQK
+e3LxcXyq6fdHXphFajLUxLbuTl+kTgBRFoBnclFGbsubh5PTsA3J+p+fQLZNPPar
+veg4l82cZykQYU8pGkUaI3sUMYd3+zd7sqRP5JHs9pMGPRmY4YW2CsAIWIn5UZNB
+ARMDP76vKKn8cyUgMuxb+9pU/OVLN2NPs4bEaZQJjAwV+YPEwldny7F47xEM9JVz
+EtKlAoIBAQDUt62u3GdGE/p5/ZgqWoDRTyDEDfmN9aYFbmbdEP80xQE7FrxMaZhz
+K7laja6SWmUm40nQ/c45bQQp4uLtKHcxU15egX7YRBTLZl5o5IasZR79ebnEm2O8
+l9kEZeU1USf3mmWmP4GExOZCRfqaiYA6BbUCdJXTqKdXeWnkAssV8UrS3JFoJHpq
+yo7OWGqefyQ8nRW6jO9SW7uaqtUD+7H6aF5XSk3YWvusfdBZrHNH+fM/hpnZovaL
+Us7ogTDS/laA8PyK37jYfMVdQhmZoU1Iomt3zkUWK3gt/aWPpfAlQf4Jka4YspZB
+tNiijefaZ1hPqsPs5Joyd/YAhdsfaHc1AoIBAQCn/9j6RRjRaw0ip756oad4AXHz
+XBwVB2CrY96qT6Hj9Sq7tGgdskqGkOQkAivBLBizUdcWv0t1yenOsSgasQeMlvlh
+B8md9cLvpKXPB3HM3rTDH/xNXe0TpVKLf7SXC8HfDyIweHwMW3QgO2DWrvI4BV/T
+ckBatRNQ90HxkqGFhC/Mp529lQlyg3ifxPxJsvZOyPMUnrflAvsKQk5c2ZiQg3nZ
+h7I2pjSYgCl+Ib52l8p9bf1kcrVGgPM+auzm496i0RPobFeDBoBvSoznJktHJ7+3
+NnZH+jLiZCODiQPGtQUi+T6eIZUIJF0YASpsCCtUzXCxwW3lYIDNy7UlMivF
+-----END RSA PRIVATE KEY-----
diff --git a/board/ti/keys/ti-degenerate-key.pem b/board/ti/keys/ti-degenerate-key.pem
new file mode 100644
index 0000000000..bd7d3745ad
--- /dev/null
+++ b/board/ti/keys/ti-degenerate-key.pem
@@ -0,0 +1,10 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIIBWwIBAAKBgQDRfrnXQaP0k6vRK/gZ+bDflSU6y1JagGeQ/b+QYuiDz14japog
+8fRSu5WBsAxaSaySAUwS3L9Ppw+hGMecmyIJ494aMfZTtk1g49gU58joduiRnu7e
+QSZHMnehhuNlfD7A2tAAKnxIYuabs8zHYM/SS9Ne7t3kIQMbKfUSzNy6qQIBAQIB
+AQJBAOelUA376o6w3HkShXfN+shaOZYqFuTJ9exLMwsLp7DZKXB5F9I4JJ+Vkvho
+k6QWs7vkhleLSYUZknXHYm26ZE0CQQDnhTtd4PTBoZPjPXOeYMJFtEdMNy0XP6ey
+bcce389ugoY7BEkvASrd8PHgJQHziepgWOG4DGp33c64Hfq4zI3NAgEBAgEBAkA0
+RbK4uqoLciQluesTPU6lBy7Se3Dw0F9xBqlF5SR4KI6q+zQrHpBKyFOofMHZgizR
+iCrL55cxEM146zMw3AnF
+-----END RSA PRIVATE KEY-----
diff --git a/tools/binman/btool/openssl.py b/tools/binman/btool/openssl.py
index 3a4dbdd6d7..aad3b61ae2 100644
--- a/tools/binman/btool/openssl.py
+++ b/tools/binman/btool/openssl.py
@@ -15,6 +15,13 @@ import hashlib
 from binman import bintool
 from u_boot_pylib import tools
 
+
+VALID_SHAS = [256, 384, 512, 224]
+SHA_OIDS = {256:'2.16.840.1.101.3.4.2.1',
+            384:'2.16.840.1.101.3.4.2.2',
+            512:'2.16.840.1.101.3.4.2.3',
+            224:'2.16.840.1.101.3.4.2.4'}
+
 class Bintoolopenssl(bintool.Bintool):
     """openssl tool
 
@@ -74,6 +81,243 @@ imageSize              = INTEGER:{len(indata)}
                 '-sha512']
         return self.run_cmd(*args)
 
+    def x509_cert_sysfw(self, cert_fname, input_fname, key_fname, sw_rev,
+                  config_fname, req_dist_name_dict):
+        """Create a certificate to be booted by system firmware
+
+        Args:
+            cert_fname (str): Filename of certificate to create
+            input_fname (str): Filename containing data to sign
+            key_fname (str): Filename of .pem file
+            sw_rev (int): Software revision
+            config_fname (str): Filename to write fconfig into
+            req_dist_name_dict (dict): Dictionary containing key-value pairs of
+            req_distinguished_name section extensions, must contain extensions for
+            C, ST, L, O, OU, CN and emailAddress
+
+        Returns:
+            str: Tool output
+        """
+        indata = tools.read_file(input_fname)
+        hashval = hashlib.sha512(indata).hexdigest()
+        with open(config_fname, 'w', encoding='utf-8') as outf:
+            print(f'''[ req ]
+distinguished_name     = req_distinguished_name
+x509_extensions        = v3_ca
+prompt                 = no
+dirstring_type         = nobmp
+
+[ req_distinguished_name ]
+C                      = {req_dist_name_dict['C']}
+ST                     = {req_dist_name_dict['ST']}
+L                      = {req_dist_name_dict['L']}
+O                      = {req_dist_name_dict['O']}
+OU                     = {req_dist_name_dict['OU']}
+CN                     = {req_dist_name_dict['CN']}
+emailAddress           = {req_dist_name_dict['emailAddress']}
+
+[ v3_ca ]
+basicConstraints       = CA:true
+1.3.6.1.4.1.294.1.3    = ASN1:SEQUENCE:swrv
+1.3.6.1.4.1.294.1.34   = ASN1:SEQUENCE:sysfw_image_integrity
+1.3.6.1.4.1.294.1.35   = ASN1:SEQUENCE:sysfw_image_load
+
+[ swrv ]
+swrv = INTEGER:{sw_rev}
+
+[ sysfw_image_integrity ]
+shaType                = OID:2.16.840.1.101.3.4.2.3
+shaValue               = FORMAT:HEX,OCT:{hashval}
+imageSize              = INTEGER:{len(indata)}
+
+[ sysfw_image_load ]
+destAddr = FORMAT:HEX,OCT:00000000
+authInPlace = INTEGER:2
+''', file=outf)
+        args = ['req', '-new', '-x509', '-key', key_fname, '-nodes',
+                '-outform', 'DER', '-out', cert_fname, '-config', config_fname,
+                '-sha512']
+        return self.run_cmd(*args)
+
+    def x509_cert_rom(self, cert_fname, input_fname, key_fname, sw_rev,
+                  config_fname, req_dist_name_dict, cert_type, bootcore,
+                  bootcore_opts, load_addr, sha):
+        """Create a certificate
+
+        Args:
+            cert_fname (str): Filename of certificate to create
+            input_fname (str): Filename containing data to sign
+            key_fname (str): Filename of .pem file
+            sw_rev (int): Software revision
+            config_fname (str): Filename to write fconfig into
+            req_dist_name_dict (dict): Dictionary containing key-value pairs of
+            req_distinguished_name section extensions, must contain extensions for
+            C, ST, L, O, OU, CN and emailAddress
+            cert_type (int): Certification type
+            bootcore (int): Booting core
+            load_addr (int): Load address of image
+            sha (int): Hash function
+
+        Returns:
+            str: Tool output
+        """
+        indata = tools.read_file(input_fname)
+        hashval = hashlib.sha512(indata).hexdigest()
+        with open(config_fname, 'w', encoding='utf-8') as outf:
+            print(f'''
+[ req ]
+ distinguished_name     = req_distinguished_name
+ x509_extensions        = v3_ca
+ prompt                 = no
+ dirstring_type         = nobmp
+
+ [ req_distinguished_name ]
+C                      = {req_dist_name_dict['C']}
+ST                     = {req_dist_name_dict['ST']}
+L                      = {req_dist_name_dict['L']}
+O                      = {req_dist_name_dict['O']}
+OU                     = {req_dist_name_dict['OU']}
+CN                     = {req_dist_name_dict['CN']}
+emailAddress           = {req_dist_name_dict['emailAddress']}
+
+ [ v3_ca ]
+ basicConstraints = CA:true
+ 1.3.6.1.4.1.294.1.1 = ASN1:SEQUENCE:boot_seq
+ 1.3.6.1.4.1.294.1.2 = ASN1:SEQUENCE:image_integrity
+ 1.3.6.1.4.1.294.1.3 = ASN1:SEQUENCE:swrv
+# 1.3.6.1.4.1.294.1.4 = ASN1:SEQUENCE:encryption
+ 1.3.6.1.4.1.294.1.8 = ASN1:SEQUENCE:debug
+
+ [ boot_seq ]
+ certType = INTEGER:{cert_type}
+ bootCore = INTEGER:{bootcore}
+ bootCoreOpts = INTEGER:{bootcore_opts}
+ destAddr = FORMAT:HEX,OCT:{load_addr:08x}
+ imageSize = INTEGER:{len(indata)}
+
+ [ image_integrity ]
+ shaType = OID:{SHA_OIDS[sha]}
+ shaValue = FORMAT:HEX,OCT:{hashval}
+
+ [ swrv ]
+ swrv = INTEGER:{sw_rev}
+
+# [ encryption ]
+# initalVector = FORMAT:HEX,OCT:TEST_IMAGE_ENC_IV
+# randomString = FORMAT:HEX,OCT:TEST_IMAGE_ENC_RS
+# iterationCnt = INTEGER:TEST_IMAGE_KEY_DERIVE_INDEX
+# salt = FORMAT:HEX,OCT:TEST_IMAGE_KEY_DERIVE_SALT
+
+ [ debug ]
+ debugUID = FORMAT:HEX,OCT:0000000000000000000000000000000000000000000000000000000000000000
+ debugType = INTEGER:4
+ coreDbgEn = INTEGER:0
+ coreDbgSecEn = INTEGER:0
+''', file=outf)
+        args = ['req', '-new', '-x509', '-key', key_fname, '-nodes',
+                '-outform', 'DER', '-out', cert_fname, '-config', config_fname,
+                '-sha512']
+        return self.run_cmd(*args)
+
+    def x509_cert_rom_combined(self, cert_fname, input_fname, key_fname, sw_rev,
+                  config_fname, req_dist_name_dict, load_addr, sha, total_size, num_comps,
+                  sysfw_inner_cert_ext_boot_sequence_string, dm_data_ext_boot_sequence_string,
+                  imagesize_sbl, hashval_sbl, load_addr_sysfw, imagesize_sysfw,
+                  hashval_sysfw, load_addr_sysfw_data, imagesize_sysfw_data,
+                  hashval_sysfw_data, sysfw_inner_cert_ext_boot_block,
+                  dm_data_ext_boot_block):
+        """Create a certificate
+
+        Args:
+            cert_fname (str): Filename of certificate to create
+            input_fname (str): Filename containing data to sign
+            key_fname (str): Filename of .pem file
+            sw_rev (int): Software revision
+            config_fname (str): Filename to write fconfig into
+            req_dist_name_dict (dict): Dictionary containing key-value pairs of
+            req_distinguished_name section extensions, must contain extensions for
+            C, ST, L, O, OU, CN and emailAddress
+            cert_type (int): Certification type
+            bootcore (int): Booting core
+            load_addr (int): Load address of image
+            sha (int): Hash function
+
+        Returns:
+            str: Tool output
+        """
+        indata = tools.read_file(input_fname)
+        hashval = hashlib.sha512(indata).hexdigest()
+        sha_type = SHA_OIDS[sha]
+        with open(config_fname, 'w', encoding='utf-8') as outf:
+            print(f'''
+[ req ]
+distinguished_name     = req_distinguished_name
+x509_extensions        = v3_ca
+prompt                 = no
+dirstring_type         = nobmp
+
+[ req_distinguished_name ]
+C                      = {req_dist_name_dict['C']}
+ST                     = {req_dist_name_dict['ST']}
+L                      = {req_dist_name_dict['L']}
+O                      = {req_dist_name_dict['O']}
+OU                     = {req_dist_name_dict['OU']}
+CN                     = {req_dist_name_dict['CN']}
+emailAddress           = {req_dist_name_dict['emailAddress']}
+
+[ v3_ca ]
+basicConstraints = CA:true
+1.3.6.1.4.1.294.1.3=ASN1:SEQUENCE:swrv
+1.3.6.1.4.1.294.1.9=ASN1:SEQUENCE:ext_boot_info
+
+[swrv]
+swrv=INTEGER:{sw_rev}
+
+[ext_boot_info]
+extImgSize=INTEGER:{total_size}
+numComp=INTEGER:{num_comps}
+sbl=SEQUENCE:sbl
+sysfw=SEQUENCE:sysfw
+sysfw_data=SEQUENCE:sysfw_data
+{sysfw_inner_cert_ext_boot_sequence_string}
+{dm_data_ext_boot_sequence_string}
+
+[sbl]
+compType = INTEGER:1
+bootCore = INTEGER:16
+compOpts = INTEGER:0
+destAddr = FORMAT:HEX,OCT:{load_addr:08x}
+compSize = INTEGER:{imagesize_sbl}
+shaType  = OID:{sha_type}
+shaValue = FORMAT:HEX,OCT:{hashval_sbl}
+
+[sysfw]
+compType = INTEGER:2
+bootCore = INTEGER:0
+compOpts = INTEGER:0
+destAddr = FORMAT:HEX,OCT:{load_addr_sysfw:08x}
+compSize = INTEGER:{imagesize_sysfw}
+shaType  = OID:{sha_type}
+shaValue = FORMAT:HEX,OCT:{hashval_sysfw}
+
+[sysfw_data]
+compType = INTEGER:18
+bootCore = INTEGER:0
+compOpts = INTEGER:0
+destAddr = FORMAT:HEX,OCT:{load_addr_sysfw_data:08x}
+compSize = INTEGER:{imagesize_sysfw_data}
+shaType  = OID:{sha_type}
+shaValue = FORMAT:HEX,OCT:{hashval_sysfw_data}
+
+{sysfw_inner_cert_ext_boot_block}
+
+{dm_data_ext_boot_block}
+        ''', file=outf)
+        args = ['req', '-new', '-x509', '-key', key_fname, '-nodes',
+                '-outform', 'DER', '-out', cert_fname, '-config', config_fname,
+                '-sha512']
+        return self.run_cmd(*args)
+
     def fetch(self, method):
         """Fetch handler for openssl
 
diff --git a/tools/binman/entries.rst b/tools/binman/entries.rst
index 14a2d03fad..a4c0223c84 100644
--- a/tools/binman/entries.rst
+++ b/tools/binman/entries.rst
@@ -1706,6 +1706,71 @@ the included board config binaries. Example::
 
 
 
+.. _etype_ti_secure:
+
+Entry: ti-secure: Entry containing a TI x509 certificate binary
+---------------------------------------------------------------
+
+Properties / Entry arguments:
+    - content: List of phandles to entries to sign
+    - keyfile: Filename of file containing key to sign binary with
+    - sha: Hash function to be used for signing
+
+Output files:
+    - input.<unique_name> - input file passed to openssl
+    - config.<unique_name> - input file generated for openssl (which is
+      used as the config file)
+    - cert.<unique_name> - output file generated by openssl (which is
+      used as the entry contents)
+
+openssl signs the provided data, using the TI templated config file and
+writes the signature in this entry. This allows verification that the
+data is genuine.
+
+
+
+.. _etype_ti_secure_rom:
+
+Entry: ti-secure-rom: Entry containing a TI x509 certificate binary for images booted by ROM
+--------------------------------------------------------------------------------------------
+
+Properties / Entry arguments:
+    - keyfile: Filename of file containing key to sign binary with
+    - combined: boolean if device follows combined boot flow
+    - countersign: boolean if device contains countersigned system firmware
+    - load: load address of SPL
+    - sw-rev: software revision
+    - sha: Hash function to be used for signing
+    - core: core on which bootloader runs, valid cores are 'secure' and 'public'
+    - content: phandle of SPL in case of legacy bootflow or phandles of component binaries
+      in case of combined bootflow
+
+The following properties are only for generating a combined bootflow binary:
+    - sysfw-inner-cert: boolean if binary contains sysfw inner certificate
+    - dm-data: boolean if binary contains dm-data binary
+    - content-sbl: phandle of SPL binary
+    - content-sysfw: phandle of sysfw binary
+    - content-sysfw-data: phandle of sysfw-data or tifs-data binary
+    - content-sysfw-inner-cert (optional): phandle of sysfw inner certificate binary
+    - content-dm-data (optional): phandle of dm-data binary
+    - load-sysfw: load address of sysfw binary
+    - load-sysfw-data: load address of sysfw-data or tifs-data binary
+    - load-sysfw-inner-cert (optional): load address of sysfw inner certificate binary
+    - load-dm-data (optional): load address of dm-data binary
+
+Output files:
+    - input.<unique_name> - input file passed to openssl
+    - config.<unique_name> - input file generated for openssl (which is
+      used as the config file)
+    - cert.<unique_name> - output file generated by openssl (which is
+      used as the entry contents)
+
+openssl signs the provided data, using the TI templated config file and
+writes the signature in this entry. This allows verification that the
+data is genuine.
+
+
+
 .. _etype_u_boot:
 
 Entry: u-boot: U-Boot flat binary
diff --git a/tools/binman/etype/ti_secure.py b/tools/binman/etype/ti_secure.py
new file mode 100644
index 0000000000..f83bffc896
--- /dev/null
+++ b/tools/binman/etype/ti_secure.py
@@ -0,0 +1,78 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (c) 2022 Texas Instruments Incorporated - https://www.ti.com/
+# Written by Neha Malcom Francis <n-francis@ti.com>
+#
+
+# Support for generation of TI secured binary blobs
+
+from binman.entry import EntryArg
+from binman.etype.x509_cert import Entry_x509_cert
+
+from dtoc import fdt_util
+
+class Entry_ti_secure(Entry_x509_cert):
+    """Entry containing a TI x509 certificate binary
+
+    Properties / Entry arguments:
+        - content: List of phandles to entries to sign
+        - keyfile: Filename of file containing key to sign binary with
+        - sha: Hash function to be used for signing
+
+    Output files:
+        - input.<unique_name> - input file passed to openssl
+        - config.<unique_name> - input file generated for openssl (which is
+          used as the config file)
+        - cert.<unique_name> - output file generated by openssl (which is
+          used as the entry contents)
+
+    openssl signs the provided data, using the TI templated config file and
+    writes the signature in this entry. This allows verification that the
+    data is genuine.
+    """
+    def __init__(self, section, etype, node):
+        super().__init__(section, etype, node)
+        self.openssl = None
+
+    def ReadNode(self):
+        super().ReadNode()
+        self.key_fname = self.GetEntryArgsOrProps([
+            EntryArg('keyfile', str)], required=True)[0]
+        self.sha = fdt_util.GetInt(self._node, 'sha', 512)
+        self.req_dist_name = {'C': 'US',
+                'ST': 'TX',
+                'L': 'Dallas',
+                'O': 'Texas Instruments Incorporated',
+                'OU': 'Processors',
+                'CN': 'TI Support',
+                'emailAddress': 'support@ti.com'}
+
+    def GetCertificate(self, required):
+        """Get the contents of this entry
+
+        Args:
+            required: True if the data must be present, False if it is OK to
+                return None
+
+        Returns:
+            bytes content of the entry, which is the certificate binary for the
+                provided data
+        """
+        return super().GetCertificate(required=required, type='sysfw')
+
+    def ObtainContents(self):
+        data = self.data
+        if data is None:
+            data = self.GetCertificate(False)
+        if data is None:
+            return False
+        self.SetContents(data)
+        return True
+
+    def ProcessContents(self):
+        # The blob may have changed due to WriteSymbols()
+        data = self.data
+        return self.ProcessContentsUpdate(data)
+
+    def AddBintools(self, btools):
+        super().AddBintools(btools)
+        self.openssl = self.AddBintool(btools, 'openssl')
diff --git a/tools/binman/etype/ti_secure_rom.py b/tools/binman/etype/ti_secure_rom.py
new file mode 100644
index 0000000000..42456f3d18
--- /dev/null
+++ b/tools/binman/etype/ti_secure_rom.py
@@ -0,0 +1,249 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (c) 2022 Texas Instruments Incorporated - https://www.ti.com/
+# Written by Neha Malcom Francis <n-francis@ti.com>
+#
+
+# Support for generation of TI secured bootloaders booted by ROM
+
+from binman.entry import EntryArg
+from binman.etype.x509_cert import Entry_x509_cert
+
+import hashlib
+
+from dtoc import fdt_util
+from u_boot_pylib  import tools
+
+VALID_SHAS = [256, 384, 512, 224]
+SHA_OIDS = {256:'2.16.840.1.101.3.4.2.1',
+            384:'2.16.840.1.101.3.4.2.2',
+            512:'2.16.840.1.101.3.4.2.3',
+            224:'2.16.840.1.101.3.4.2.4'}
+
+class Entry_ti_secure_rom(Entry_x509_cert):
+    """Entry containing a TI x509 certificate binary for images booted by ROM
+
+    Properties / Entry arguments:
+        - keyfile: Filename of file containing key to sign binary with
+        - combined: boolean if device follows combined boot flow
+        - countersign: boolean if device contains countersigned system firmware
+        - load: load address of SPL
+        - sw-rev: software revision
+        - sha: Hash function to be used for signing
+        - core: core on which bootloader runs, valid cores are 'secure' and 'public'
+        - content: phandle of SPL in case of legacy bootflow or phandles of component binaries
+          in case of combined bootflow
+
+    The following properties are only for generating a combined bootflow binary:
+        - sysfw-inner-cert: boolean if binary contains sysfw inner certificate
+        - dm-data: boolean if binary contains dm-data binary
+        - content-sbl: phandle of SPL binary
+        - content-sysfw: phandle of sysfw binary
+        - content-sysfw-data: phandle of sysfw-data or tifs-data binary
+        - content-sysfw-inner-cert (optional): phandle of sysfw inner certificate binary
+        - content-dm-data (optional): phandle of dm-data binary
+        - load-sysfw: load address of sysfw binary
+        - load-sysfw-data: load address of sysfw-data or tifs-data binary
+        - load-sysfw-inner-cert (optional): load address of sysfw inner certificate binary
+        - load-dm-data (optional): load address of dm-data binary
+
+    Output files:
+        - input.<unique_name> - input file passed to openssl
+        - config.<unique_name> - input file generated for openssl (which is
+          used as the config file)
+        - cert.<unique_name> - output file generated by openssl (which is
+          used as the entry contents)
+
+    openssl signs the provided data, using the TI templated config file and
+    writes the signature in this entry. This allows verification that the
+    data is genuine.
+    """
+    def __init__(self, section, etype, node):
+        super().__init__(section, etype, node)
+        self.openssl = None
+
+    def ReadNode(self):
+        super().ReadNode()
+        self.combined = fdt_util.GetBool(self._node, 'combined', False)
+        self.countersign = fdt_util.GetBool(self._node, 'countersign', False)
+        self.load_addr = fdt_util.GetInt(self._node, 'load', 0x00000000)
+        self.sw_rev = fdt_util.GetInt(self._node, 'sw-rev', 1)
+        self.sha = fdt_util.GetInt(self._node, 'sha', 512)
+        self.core = fdt_util.GetString(self._node, 'core', 'secure')
+        self.key_fname = self.GetEntryArgsOrProps([
+            EntryArg('keyfile', str)], required=True)[0]
+        if self.combined:
+            self.sysfw_inner_cert = fdt_util.GetBool(self._node, 'sysfw-inner-cert', False)
+            self.load_addr_sysfw = fdt_util.GetInt(self._node, 'load-sysfw', 0x00000000)
+            self.load_addr_sysfw_data = fdt_util.GetInt(self._node, 'load-sysfw-data', 0x00000000)
+            self.dm_data = fdt_util.GetBool(self._node, 'dm-data', False)
+            if self.dm_data:
+                self.load_addr_dm_data = fdt_util.GetInt(self._node, 'load-dm-data', 0x00000000)
+        self.req_dist_name = {'C': 'US',
+                    'ST': 'TX',
+                    'L': 'Dallas',
+                    'O': 'Texas Instruments Incorporated',
+                    'OU': 'Processors',
+                    'CN': 'TI Support',
+                    'emailAddress': 'support@ti.com'}
+
+    def NonCombinedGetCertificate(self, required):
+        """Generate certificate for legacy boot flow
+
+        Args:
+            required: True if the data must be present, False if it is OK to
+                return None
+
+        Returns:
+            bytes content of the entry, which is the certificate binary for the
+                provided data
+        """
+        if self.core == 'secure':
+            if self.countersign:
+                self.cert_type = 3
+            else:
+                self.cert_type = 2
+            self.bootcore = 0
+            self.bootcore_opts = 32
+        else:
+            self.cert_type = 1
+            self.bootcore = 16
+            self.bootcore_opts = 0
+        return super().GetCertificate(required=required, type='rom')
+
+    def CombinedGetCertificate(self, required):
+        """Generate certificate for combined boot flow
+
+        Args:
+            required: True if the data must be present, False if it is OK to
+                return None
+
+        Returns:
+            bytes content of the entry, which is the certificate binary for the
+                provided data
+        """
+        uniq = self.GetUniqueName()
+
+        self.num_comps = 3
+        self.sha_type = SHA_OIDS[self.sha]
+
+        # sbl
+        self.content = fdt_util.GetPhandleList(self._node, 'content-sbl')
+        input_data_sbl = self.GetContents(required)
+        if input_data_sbl is None:
+            return None
+
+        input_fname_sbl = tools.get_output_filename('input.%s' % uniq)
+        tools.write_file(input_fname_sbl, input_data_sbl)
+
+        indata_sbl = tools.read_file(input_fname_sbl)
+        self.hashval_sbl = hashlib.sha512(indata_sbl).hexdigest()
+        self.imagesize_sbl = len(indata_sbl)
+
+        # sysfw
+        self.content = fdt_util.GetPhandleList(self._node, 'content-sysfw')
+        input_data_sysfw = self.GetContents(required)
+
+        input_fname_sysfw = tools.get_output_filename('input.%s' % uniq)
+        tools.write_file(input_fname_sysfw, input_data_sysfw)
+
+        indata_sysfw = tools.read_file(input_fname_sysfw)
+        self.hashval_sysfw = hashlib.sha512(indata_sysfw).hexdigest()
+        self.imagesize_sysfw = len(indata_sysfw)
+
+        # sysfw data
+        self.content = fdt_util.GetPhandleList(self._node, 'content-sysfw-data')
+        input_data_sysfw_data = self.GetContents(required)
+
+        input_fname_sysfw_data = tools.get_output_filename('input.%s' % uniq)
+        tools.write_file(input_fname_sysfw_data, input_data_sysfw_data)
+
+        indata_sysfw_data = tools.read_file(input_fname_sysfw_data)
+        self.hashval_sysfw_data = hashlib.sha512(indata_sysfw_data).hexdigest()
+        self.imagesize_sysfw_data = len(indata_sysfw_data)
+
+        # sysfw inner cert
+        self.sysfw_inner_cert_ext_boot_block = ""
+        self.sysfw_inner_cert_ext_boot_sequence_string = ""
+        imagesize_sysfw_inner_cert = 0
+        if self.sysfw_inner_cert:
+            self.content = fdt_util.GetPhandleList(self._node, 'content-sysfw-inner-cert')
+            input_data_sysfw_inner_cert = self.GetContents(required)
+
+            input_fname_sysfw_inner_cert = tools.get_output_filename('input.%s' % uniq)
+            tools.write_file(input_fname_sysfw_inner_cert, input_data_sysfw_inner_cert)
+
+            indata_sysfw_inner_cert = tools.read_file(input_fname_sysfw_inner_cert)
+            hashval_sysfw_inner_cert = hashlib.sha512(indata_sysfw_inner_cert).hexdigest()
+            imagesize_sysfw_inner_cert = len(indata_sysfw_inner_cert)
+            self.num_comps += 1
+            self.sysfw_inner_cert_ext_boot_sequence_string = "sysfw_inner_cert=SEQUENCE:sysfw_inner_cert"
+            self.sysfw_inner_cert_ext_boot_block = f"""[sysfw_inner_cert]
+compType = INTEGER:3
+bootCore = INTEGER:0
+compOpts = INTEGER:0
+destAddr = FORMAT:HEX,OCT:00000000
+compSize = INTEGER:{imagesize_sysfw_inner_cert}
+shaType  = OID:{self.sha_type}
+shaValue = FORMAT:HEX,OCT:{hashval_sysfw_inner_cert}"""
+
+        # dm data
+        self.dm_data_ext_boot_sequence_string = ""
+        self.dm_data_ext_boot_block = ""
+        imagesize_dm_data = 0
+        if self.dm_data:
+            self.content = fdt_util.GetPhandleList(self._node, 'content-dm-data')
+            input_data_dm_data = self.GetContents(required)
+
+            input_fname_dm_data = tools.get_output_filename('input.%s' % uniq)
+            tools.write_file(input_fname_dm_data, input_data_dm_data)
+
+            indata_dm_data = tools.read_file(input_fname_dm_data)
+            hashval_dm_data = hashlib.sha512(indata_dm_data).hexdigest()
+            imagesize_dm_data = len(indata_dm_data)
+            self.num_comps += 1
+            self.dm_data_ext_boot_sequence_string = "dm_data=SEQUENCE:dm_data"
+            self.dm_data_ext_boot_block = f"""[dm_data]
+compType = INTEGER:17
+bootCore = INTEGER:16
+compOpts = INTEGER:0
+destAddr = FORMAT:HEX,OCT:{self.load_addr_dm_data:08x}
+compSize = INTEGER:{imagesize_dm_data}
+shaType  = OID:{self.sha_type}
+shaValue = FORMAT:HEX,OCT:{hashval_dm_data}"""
+
+        self.total_size = self.imagesize_sbl +  self.imagesize_sysfw + self.imagesize_sysfw_data + imagesize_sysfw_inner_cert + imagesize_dm_data
+        return super().GetCertificate(required=required, type='rom-combined')
+
+    def GetCertificate(self, required):
+        """Get the contents of this entry
+
+        Args:
+            required: True if the data must be present, False if it is OK to
+                return None
+
+        Returns:
+            bytes content of the entry, which is the certificate binary for the
+                provided data
+        """
+        if self.combined:
+            return self.CombinedGetCertificate(required)
+        else:
+            return self.NonCombinedGetCertificate(required)
+
+    def ObtainContents(self):
+        data = self.data
+        if data is None:
+            data = self.GetCertificate(False)
+        if data is None:
+            return False
+        self.SetContents(data)
+        return True
+
+    def ProcessContents(self):
+        # The blob may have changed due to WriteSymbols()
+        data = self.data
+        return self.ProcessContentsUpdate(data)
+
+    def AddBintools(self, btools):
+        super().AddBintools(btools)
+        self.openssl = self.AddBintool(btools, 'openssl')
diff --git a/tools/binman/etype/x509_cert.py b/tools/binman/etype/x509_cert.py
index f80a6ec2d1..d028cfe38c 100644
--- a/tools/binman/etype/x509_cert.py
+++ b/tools/binman/etype/x509_cert.py
@@ -31,6 +31,26 @@ class Entry_x509_cert(Entry_collection):
     def __init__(self, section, etype, node):
         super().__init__(section, etype, node)
         self.openssl = None
+        self.req_dist_name =  None
+        self.cert_type = None
+        self.bootcore = None
+        self.bootcore_opts = None
+        self.load_addr = None
+        self.sha = None
+        self.total_size = None
+        self.num_comps = None
+        self.sysfw_inner_cert_ext_boot_sequence_string = None
+        self.dm_data_ext_boot_sequence_string = None
+        self.imagesize_sbl = None
+        self.hashval_sbl = None
+        self.load_addr_sysfw = None
+        self.imagesize_sysfw = None
+        self.hashval_sysfw = None
+        self.load_addr_sysfw_data = None
+        self.imagesize_sysfw_data = None
+        self.hashval_sysfw_data = None
+        self.sysfw_inner_cert_ext_boot_block = None
+        self.dm_data_ext_boot_block = None
 
     def ReadNode(self):
         super().ReadNode()
@@ -38,13 +58,16 @@ class Entry_x509_cert(Entry_collection):
         self._cert_rev = fdt_util.GetInt(self._node, 'cert-revision-int', 0)
         self.key_fname = self.GetEntryArgsOrProps([
             EntryArg('keyfile', str)], required=True)[0]
+        self.sw_rev = fdt_util.GetInt(self._node, 'sw-rev', 1)
 
-    def GetCertificate(self, required):
+    def GetCertificate(self, required, type='generic'):
         """Get the contents of this entry
 
         Args:
             required: True if the data must be present, False if it is OK to
                 return None
+            type: Type of x509 certificate to generate, current supported ones are
+            'generic', 'sysfw', 'rom'
 
         Returns:
             bytes content of the entry, which is the signed vblock for the
@@ -60,13 +83,61 @@ class Entry_x509_cert(Entry_collection):
         input_fname = tools.get_output_filename('input.%s' % uniq)
         config_fname = tools.get_output_filename('config.%s' % uniq)
         tools.write_file(input_fname, input_data)
-        stdout = self.openssl.x509_cert(
-            cert_fname=output_fname,
-            input_fname=input_fname,
-            key_fname=self.key_fname,
-            cn=self._cert_ca,
-            revision=self._cert_rev,
-            config_fname=config_fname)
+        if type == 'generic':
+            stdout = self.openssl.x509_cert(
+                cert_fname=output_fname,
+                input_fname=input_fname,
+                key_fname=self.key_fname,
+                cn=self._cert_ca,
+                revision=self._cert_rev,
+                config_fname=config_fname)
+        elif type == 'sysfw':
+            stdout = self.openssl.x509_cert_sysfw(
+                cert_fname=output_fname,
+                input_fname=input_fname,
+                key_fname=self.key_fname,
+                config_fname=config_fname,
+                sw_rev=self.sw_rev,
+                req_dist_name_dict=self.req_dist_name)
+        elif type == 'rom':
+            stdout = self.openssl.x509_cert_rom(
+                cert_fname=output_fname,
+                input_fname=input_fname,
+                key_fname=self.key_fname,
+                config_fname=config_fname,
+                sw_rev=self.sw_rev,
+                req_dist_name_dict=self.req_dist_name,
+                cert_type=self.cert_type,
+                bootcore=self.bootcore,
+                bootcore_opts=self.bootcore_opts,
+                load_addr=self.load_addr,
+                sha=self.sha
+            )
+        elif type == 'rom-combined':
+            stdout = self.openssl.x509_cert_rom_combined(
+                cert_fname=output_fname,
+                input_fname=input_fname,
+                key_fname=self.key_fname,
+                config_fname=config_fname,
+                sw_rev=self.sw_rev,
+                req_dist_name_dict=self.req_dist_name,
+                load_addr=self.load_addr,
+                sha=self.sha,
+                total_size=self.total_size,
+                num_comps=self.num_comps,
+                sysfw_inner_cert_ext_boot_sequence_string=self.sysfw_inner_cert_ext_boot_sequence_string,
+                dm_data_ext_boot_sequence_string=self.dm_data_ext_boot_sequence_string,
+                imagesize_sbl=self.imagesize_sbl,
+                hashval_sbl=self.hashval_sbl,
+                load_addr_sysfw=self.load_addr_sysfw,
+                imagesize_sysfw=self.imagesize_sysfw,
+                hashval_sysfw=self.hashval_sysfw,
+                load_addr_sysfw_data=self.load_addr_sysfw_data,
+                imagesize_sysfw_data=self.imagesize_sysfw_data,
+                hashval_sysfw_data=self.hashval_sysfw_data,
+                sysfw_inner_cert_ext_boot_block=self.sysfw_inner_cert_ext_boot_block,
+                dm_data_ext_boot_block=self.dm_data_ext_boot_block
+            )
         if stdout is not None:
             data = tools.read_file(output_fname)
         else:
diff --git a/tools/binman/ftest.py b/tools/binman/ftest.py
index b9a490a5bd..f4bff50aaf 100644
--- a/tools/binman/ftest.py
+++ b/tools/binman/ftest.py
@@ -98,6 +98,7 @@ PRE_LOAD_MAGIC        = b'UBSH'
 PRE_LOAD_VERSION      = 0x11223344.to_bytes(4, 'big')
 PRE_LOAD_HDR_SIZE     = 0x00001000.to_bytes(4, 'big')
 TI_BOARD_CONFIG_DATA  = b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
+TI_UNSECURE_DATA      = b'unsecuredata'
 
 # Subdirectory of the input dir to use to put test FDTs
 TEST_FDT_SUBDIR       = 'fdts'
@@ -211,6 +212,7 @@ class TestFunctional(unittest.TestCase):
         TestFunctional._MakeInputFile('fw_dynamic.bin', OPENSBI_DATA)
         TestFunctional._MakeInputFile('scp.bin', SCP_DATA)
         TestFunctional._MakeInputFile('rockchip-tpl.bin', ROCKCHIP_TPL_DATA)
+        TestFunctional._MakeInputFile('ti_unsecure.bin', TI_UNSECURE_DATA)
 
         # Add a few .dtb files for testing
         TestFunctional._MakeInputFile('%s/test-fdt1.dtb' % TEST_FDT_SUBDIR,
@@ -6697,5 +6699,55 @@ fdt         fdtmap                Extract the devicetree blob from the fdtmap
             data = self._DoReadFile('279_ti_board_cfg_no_type.dts')
         self.assertIn("Schema validation error", str(e.exception))
 
+    def testPackTiSecure(self):
+        """Test that an image with a TI secured binary can be created"""
+        keyfile = self.TestFile('key.key')
+        entry_args = {
+            'keyfile': keyfile,
+        }
+        data = self._DoReadFileDtb('279_ti_secure.dts',
+                                   entry_args=entry_args)[0]
+        self.assertGreater(len(data), len(TI_UNSECURE_DATA))
+
+    def testPackTiSecureMissingTool(self):
+        """Test that an image with a TI secured binary (non-functional) can be created
+        when openssl is missing"""
+        keyfile = self.TestFile('key.key')
+        entry_args = {
+            'keyfile': keyfile,
+        }
+        with test_util.capture_sys_output() as (_, stderr):
+            self._DoTestFile('279_ti_secure.dts',
+                             force_missing_bintools='openssl',
+                             entry_args=entry_args)
+        err = stderr.getvalue()
+        self.assertRegex(err, "Image 'image'.*missing bintools.*: openssl")
+
+    def testPackTiSecureROM(self):
+        """Test that a ROM image with a TI secured binary can be created"""
+        keyfile = self.TestFile('key.key')
+        entry_args = {
+            'keyfile': keyfile,
+        }
+        data = self._DoReadFileDtb('280_ti_secure_rom.dts',
+                                entry_args=entry_args)[0]
+        data_a = self._DoReadFileDtb('288_ti_secure_rom_a.dts',
+                                entry_args=entry_args)[0]
+        data_b = self._DoReadFileDtb('289_ti_secure_rom_b.dts',
+                                entry_args=entry_args)[0]
+        self.assertGreater(len(data), len(TI_UNSECURE_DATA))
+        self.assertGreater(len(data_a), len(TI_UNSECURE_DATA))
+        self.assertGreater(len(data_b), len(TI_UNSECURE_DATA))
+
+    def testPackTiSecureROMCombined(self):
+        """Test that a ROM image with a TI secured binary can be created"""
+        keyfile = self.TestFile('key.key')
+        entry_args = {
+            'keyfile': keyfile,
+        }
+        data = self._DoReadFileDtb('281_ti_secure_rom_combined.dts',
+                                entry_args=entry_args)[0]
+        self.assertGreater(len(data), len(TI_UNSECURE_DATA))
+
 if __name__ == "__main__":
     unittest.main()
diff --git a/tools/binman/test/279_ti_secure.dts b/tools/binman/test/279_ti_secure.dts
new file mode 100644
index 0000000000..941d0ab4ca
--- /dev/null
+++ b/tools/binman/test/279_ti_secure.dts
@@ -0,0 +1,17 @@
+// SPDX-License-Identifier: GPL-2.0+
+
+/dts-v1/;
+
+/ {
+	#address-cells = <1>;
+	#size-cells = <1>;
+
+	binman {
+		ti-secure {
+			content = <&unsecure_binary>;
+		};
+		unsecure_binary: blob-ext {
+			filename = "ti_unsecure.bin";
+		};
+	};
+};
diff --git a/tools/binman/test/280_ti_secure_rom.dts b/tools/binman/test/280_ti_secure_rom.dts
new file mode 100644
index 0000000000..d1313769f4
--- /dev/null
+++ b/tools/binman/test/280_ti_secure_rom.dts
@@ -0,0 +1,17 @@
+// SPDX-License-Identifier: GPL-2.0+
+
+/dts-v1/;
+
+/ {
+	#address-cells = <1>;
+	#size-cells = <1>;
+
+	binman {
+		ti-secure-rom {
+			content = <&unsecure_binary>;
+		};
+		unsecure_binary: blob-ext {
+			filename = "ti_unsecure.bin";
+		};
+	};
+};
diff --git a/tools/binman/test/281_ti_secure_rom_combined.dts b/tools/binman/test/281_ti_secure_rom_combined.dts
new file mode 100644
index 0000000000..bf872739bc
--- /dev/null
+++ b/tools/binman/test/281_ti_secure_rom_combined.dts
@@ -0,0 +1,25 @@
+// SPDX-License-Identifier: GPL-2.0+
+
+/dts-v1/;
+
+/ {
+	#address-cells = <1>;
+	#size-cells = <1>;
+
+	binman {
+		ti-secure-rom {
+			content = <&unsecure_binary>;
+			content-sbl = <&unsecure_binary>;
+			content-sysfw = <&unsecure_binary>;
+			content-sysfw-data = <&unsecure_binary>;
+			content-sysfw-inner-cert = <&unsecure_binary>;
+			content-dm-data = <&unsecure_binary>;
+			combined;
+			sysfw-inner-cert;
+			dm-data;
+		};
+		unsecure_binary: blob-ext {
+			filename = "ti_unsecure.bin";
+		};
+	};
+};
diff --git a/tools/binman/test/288_ti_secure_rom_a.dts b/tools/binman/test/288_ti_secure_rom_a.dts
new file mode 100644
index 0000000000..887138f0e4
--- /dev/null
+++ b/tools/binman/test/288_ti_secure_rom_a.dts
@@ -0,0 +1,19 @@
+// SPDX-License-Identifier: GPL-2.0+
+
+/dts-v1/;
+
+/ {
+	#address-cells = <1>;
+	#size-cells = <1>;
+
+	binman {
+		ti-secure-rom {
+			content = <&unsecure_binary>;
+			core = "secure";
+			countersign;
+		};
+		unsecure_binary: blob-ext {
+			filename = "ti_unsecure.bin";
+		};
+	};
+};
diff --git a/tools/binman/test/289_ti_secure_rom_b.dts b/tools/binman/test/289_ti_secure_rom_b.dts
new file mode 100644
index 0000000000..c6d6182158
--- /dev/null
+++ b/tools/binman/test/289_ti_secure_rom_b.dts
@@ -0,0 +1,18 @@
+// SPDX-License-Identifier: GPL-2.0+
+
+/dts-v1/;
+
+/ {
+	#address-cells = <1>;
+	#size-cells = <1>;
+
+	binman {
+		ti-secure-rom {
+			content = <&unsecure_binary>;
+			core = "public";
+		};
+		unsecure_binary: blob-ext {
+			filename = "ti_unsecure.bin";
+		};
+	};
+};
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 03/23] arm: dts: k3: Add support for packaging sysfw.itb and tiboot3.bin
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 01/23] binman: ti-board-config: Add support for TI board config binaries Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 02/23] binman: ti-secure: Add support for TI signing Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 17:35   ` Simon Glass
  2023-07-07 12:34 ` [PATCH v5 04/23] j721e: schema: yaml: Add general schema and J721E board config files Neha Malcom Francis
                   ` (19 subsequent siblings)
  22 siblings, 1 reply; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Board config binary artifacts must be generated to be used by binman to
package sysfw.itb and tiboot3.bin for all K3 devices.

For devices that follow combined flow, these board configuration
binaries must again be packaged into a combined board configuration
blobs to be used by binman to package tiboot3.bin.

Add common k3-binman.dtsi to generate all the board configuration
binaries needed.

Also add custMpk.pem and ti-degenerate-key.pem needed for signing GP and
HS bootloader images common to all K3 devices.

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
---
 arch/arm/dts/k3-binman.dtsi | 116 ++++++++++++++++++++++++++++++++++++
 1 file changed, 116 insertions(+)
 create mode 100644 arch/arm/dts/k3-binman.dtsi

diff --git a/arch/arm/dts/k3-binman.dtsi b/arch/arm/dts/k3-binman.dtsi
new file mode 100644
index 0000000000..97a3573bdb
--- /dev/null
+++ b/arch/arm/dts/k3-binman.dtsi
@@ -0,0 +1,116 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+ */
+
+/ {
+	binman: binman {
+		multiple-images;
+	};
+};
+
+&binman {
+	custMpk {
+		filename = "custMpk.pem";
+		blob-ext {
+			filename = "../keys/custMpk.pem";
+		};
+	};
+
+	ti-degenerate-key {
+		filename = "ti-degenerate-key.pem";
+		blob-ext {
+			filename = "../keys/ti-degenerate-key.pem";
+		};
+	};
+};
+
+#ifndef CONFIG_ARM64
+
+&binman {
+	board-cfg {
+		filename = "board-cfg.bin";
+		bcfg_yaml: ti-board-config {
+			config = "board-cfg.yaml";
+			schema = "../common/schema.yaml";
+		};
+	};
+	pm-cfg {
+		filename = "pm-cfg.bin";
+		rcfg_yaml: ti-board-config {
+			config = "pm-cfg.yaml";
+			schema = "../common/schema.yaml";
+		};
+	};
+	rm-cfg {
+		filename = "rm-cfg.bin";
+		pcfg_yaml: ti-board-config {
+			config = "rm-cfg.yaml";
+			schema = "../common/schema.yaml";
+		};
+	};
+	sec-cfg {
+		filename = "sec-cfg.bin";
+		scfg_yaml: ti-board-config {
+			config = "sec-cfg.yaml";
+			schema = "../common/schema.yaml";
+		};
+	};
+	combined-tifs-cfg {
+		filename = "combined-tifs-cfg.bin";
+		ti-board-config {
+			bcfg_yaml_tifs: board-cfg {
+				config = "board-cfg.yaml";
+				schema = "../common/schema.yaml";
+			};
+			scfg_yaml_tifs: sec-cfg {
+				config = "sec-cfg.yaml";
+				schema = "../common/schema.yaml";
+			};
+			pcfg_yaml_tifs: pm-cfg {
+				config = "pm-cfg.yaml";
+				schema = "../common/schema.yaml";
+			};
+			rcfg_yaml_tifs: rm-cfg {
+				config = "rm-cfg.yaml";
+				schema = "../common/schema.yaml";
+			};
+		};
+	};
+	combined-dm-cfg {
+		filename = "combined-dm-cfg.bin";
+		ti-board-config {
+			pcfg_yaml_dm: pm-cfg {
+				config = "pm-cfg.yaml";
+				schema = "../common/schema.yaml";
+			};
+			rcfg_yaml_dm: rm-cfg {
+				config = "rm-cfg.yaml";
+				schema = "../common/schema.yaml";
+			};
+		};
+	};
+	combined-sysfw-cfg {
+		filename = "combined-sysfw-cfg.bin";
+		ti-board-config {
+			board-cfg {
+				config = "board-cfg.yaml";
+				schema = "../common/schema.yaml";
+			};
+			sec-cfg {
+				config = "sec-cfg.yaml";
+				schema = "../common/schema.yaml";
+			};
+			pm-cfg {
+				config = "pm-cfg.yaml";
+				schema = "../common/schema.yaml";
+			};
+			rm-cfg {
+				config = "rm-cfg.yaml";
+				schema = "../common/schema.yaml";
+			};
+		};
+	};
+};
+
+#endif
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 04/23] j721e: schema: yaml: Add general schema and J721E board config files
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (2 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 03/23] arm: dts: k3: Add support for packaging sysfw.itb and tiboot3.bin Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-11  4:52   ` Jan Kiszka
  2023-07-07 12:34 ` [PATCH v5 05/23] j721e: dts: binman: Package tiboot3.bin, sysfw.itb, tispl.bin, u-boot.img Neha Malcom Francis
                   ` (18 subsequent siblings)
  22 siblings, 1 reply; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Schema file in YAML must be provided in board/ti/common for validating
input config files and packaging system firmware. The schema includes
entries for rm-cfg, board-cfg, pm-cfg and sec-cfg.

Board config files must be provided in board/ti/<devicename> in YAML.
These can then be consumed for generation of binaries to package system
firmware. Added YAML configs for J721E in particular.

Signed-off-by: Tarun Sahu <t-sahu@ti.com>
[n-francis@ti.com: prepared patch for upstreaming]
Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
---
 board/ti/common/schema.yaml   |  436 +++++
 board/ti/j721e/board-cfg.yaml |   37 +
 board/ti/j721e/pm-cfg.yaml    |   13 +
 board/ti/j721e/rm-cfg.yaml    | 3174 +++++++++++++++++++++++++++++++++
 board/ti/j721e/sec-cfg.yaml   |  381 ++++
 5 files changed, 4041 insertions(+)
 create mode 100644 board/ti/common/schema.yaml
 create mode 100644 board/ti/j721e/board-cfg.yaml
 create mode 100644 board/ti/j721e/pm-cfg.yaml
 create mode 100644 board/ti/j721e/rm-cfg.yaml
 create mode 100644 board/ti/j721e/sec-cfg.yaml

diff --git a/board/ti/common/schema.yaml b/board/ti/common/schema.yaml
new file mode 100644
index 0000000000..8023ecb0e0
--- /dev/null
+++ b/board/ti/common/schema.yaml
@@ -0,0 +1,436 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Config schema for TI K3 devices
+#
+
+---
+
+definitions:
+    u8:
+        type: integer
+        minimum: 0
+        maximum: 0xff
+    u16:
+        type: integer
+        minimum: 0
+        maximum: 0xffff
+    u32:
+        type: integer
+        minimum: 0
+        maximum: 0xffffffff
+
+
+
+type: object
+properties:
+    pm-cfg:
+        type: object
+        properties:
+            rev:
+                type: object
+                properties:
+                    boardcfg_abi_maj:
+                        $ref: "#/definitions/u8"
+                    boardcfg_abi_min:
+                        $ref: "#/definitions/u8"
+    board-cfg:
+        type: object
+        properties:
+            rev:
+                type: object
+                properties:
+                    boardcfg_abi_maj:
+                        $ref: "#/definitions/u8"
+                    boardcfg_abi_min:
+                        $ref: "#/definitions/u8"
+            control:
+                type: object
+                properties:
+                    subhdr:
+                        type: object
+                        properties:
+                            magic:
+                                $ref: "#/definitions/u16"
+                            size:
+                                $ref: "#/definitions/u16"
+                    main_isolation_enable:
+                        $ref: "#/definitions/u8"
+                    main_isolation_hostid:
+                        $ref: "#/definitions/u16"
+
+
+            secproxy:
+                type: object
+                properties:
+                    subhdr:
+                        type: object
+                        properties:
+                            magic:
+                                $ref: "#/definitions/u16"
+                            size:
+                                $ref: "#/definitions/u16"
+                    scaling_factor:
+                        $ref: "#/definitions/u8"
+                    scaling_profile:
+                        $ref: "#/definitions/u8"
+                    disable_main_nav_secure_proxy:
+                        $ref: "#/definitions/u8"
+
+            msmc:
+                type: object
+                properties:
+                    subhdr:
+                        type: object
+                        properties:
+                            magic:
+                                $ref: "#/definitions/u16"
+                            size:
+                                $ref: "#/definitions/u16"
+                    msmc_cache_size:
+                        $ref: "#/definitions/u8"
+            debug_cfg:
+                type: object
+                properties:
+                    subhdr:
+                        type: object
+                        properties:
+                            magic:
+                                $ref: "#/definitions/u16"
+                            size:
+                                $ref: "#/definitions/u16"
+                    trace_dst_enables:
+                        $ref: "#/definitions/u16"
+                    trace_src_enables:
+                        $ref: "#/definitions/u16"
+
+    sec-cfg:
+        type: object
+        properties:
+            rev:
+                type: object
+                properties:
+                    boardcfg_abi_maj:
+                        $ref: "#/definitions/u8"
+                    boardcfg_abi_min:
+                        $ref: "#/definitions/u8"
+
+            processor_acl_list:
+                type: object
+                properties:
+                    subhdr:
+                        type: object
+                        properties:
+                            magic:
+                                $ref: "#/definitions/u16"
+                            size:
+                                $ref: "#/definitions/u16"
+                    proc_acl_entries:
+                        type: array
+                        minItems: 32
+                        maxItems: 32
+                        items:
+                            type: object
+                            properties:
+                                processor_id:
+                                    $ref: "#/definitions/u8"
+                                proc_access_master:
+                                    $ref: "#/definitions/u8"
+                                proc_access_secondary:
+                                    type: array
+                                    minItems: 3
+                                    maxItems: 3
+                                    items:
+                                        $ref: "#/definitions/u8"
+            host_hierarchy:
+                type: object
+                properties:
+                    subhdr:
+                        type: object
+                        properties:
+                            magic:
+                                $ref: "#/definitions/u16"
+                            size:
+                                $ref: "#/definitions/u16"
+                    host_hierarchy_entries:
+                        type: array
+                        minItems: 32
+                        maxItems: 32
+                        items:
+                            type: object
+                            properties:
+                                host_id:
+                                    $ref: "#/definitions/u8"
+                                supervisor_host_id:
+                                    $ref: "#/definitions/u8"
+
+            otp_config:
+                type: object
+                properties:
+                    subhdr:
+                        type: object
+                        properties:
+                            magic:
+                                $ref: "#/definitions/u16"
+                            size:
+                                $ref: "#/definitions/u16"
+                    otp_entry:
+                        type: array
+                        minItems: 32
+                        maxItems: 32
+                        items:
+                            type: object
+                            properties:
+                                host_id:
+                                    $ref: "#/definitions/u8"
+                                host_perms:
+                                    $ref: "#/definitions/u8"
+                    write_host_id:
+                        $ref: "#/definitions/u8"
+
+            dkek_config:
+                type: object
+                properties:
+                    subhdr:
+                        type: object
+                        properties:
+                            magic:
+                                $ref: "#/definitions/u16"
+                            size:
+                                $ref: "#/definitions/u16"
+                    allowed_hosts:
+                        type: array
+                        minItems: 4
+                        maxItems: 4
+                        items:
+                            $ref: "#/definitions/u8"
+                    allow_dkek_export_tisci:
+                        $ref: "#/definitions/u8"
+                    rsvd:
+                        type: array
+                        minItems: 3
+                        maxItems: 3
+                        items:
+                            $ref: "#/definitions/u8"
+
+            sa2ul_cfg:
+                type: object
+                properties:
+                    subhdr:
+                        type: object
+                        properties:
+                            magic:
+                                $ref: "#/definitions/u16"
+                            size:
+                                $ref: "#/definitions/u16"
+                    rsvd:
+                        type: array
+                        minItems: 2
+                        maxItems: 4
+                        items:
+                            $ref: "#/definitions/u8"
+                    enable_saul_psil_global_config_writes:
+                        $ref: "#/definitions/u8"
+                    auth_resource_owner:
+                        $ref: "#/definitions/u8"
+
+            sec_dbg_config:
+                type: object
+                properties:
+                    subhdr:
+                        type: object
+                        properties:
+                            magic:
+                                $ref: "#/definitions/u16"
+                            size:
+                                $ref: "#/definitions/u16"
+                    allow_jtag_unlock:
+                        $ref: "#/definitions/u8"
+                    allow_wildcard_unlock:
+                        $ref: "#/definitions/u8"
+                    allowed_debug_level_rsvd:
+                        $ref: "#/definitions/u8"
+                    rsvd:
+                        $ref: "#/definitions/u8"
+                    min_cert_rev:
+                        $ref: "#/definitions/u32"
+                    jtag_unlock_hosts:
+                        type: array
+                        minItems: 4
+                        maxItems: 4
+                        items:
+                            $ref: "#/definitions/u8"
+
+
+            sec_handover_cfg:
+                type: object
+                properties:
+                    subhdr:
+                        type: object
+                        properties:
+                            magic:
+                                $ref: "#/definitions/u16"
+                            size:
+                                $ref: "#/definitions/u16"
+                    handover_msg_sender:
+                        $ref: "#/definitions/u8"
+                    handover_to_host_id:
+                        $ref: "#/definitions/u8"
+                    rsvd:
+                        type: array
+                        minItems: 4
+                        maxItems: 4
+                        items:
+                            $ref: "#/definitions/u8"
+
+    rm-cfg:
+        type: object
+        properties:
+            rm_boardcfg:
+                type: object
+                properties:
+                    rev:
+                        type: object
+                        properties:
+                            boardcfg_abi_maj:
+                                $ref: "#/definitions/u8"
+                            boardcfg_abi_min:
+                                $ref: "#/definitions/u8"
+
+                    host_cfg:
+                        type: object
+                        properties:
+                            subhdr:
+                                type: object
+                                properties:
+                                    magic:
+                                        $ref: "#/definitions/u16"
+                                    size:
+                                        $ref: "#/definitions/u16"
+                            host_cfg_entries:
+                                type: array
+                                minItems: 0
+                                maxItems: 32
+                                items:
+                                    type: object
+                                    properties:
+                                        host_id:
+                                            $ref: "#/definitions/u8"
+                                        allowed_atype:
+                                            $ref: "#/definitions/u8"
+                                        allowed_qos:
+                                            $ref: "#/definitions/u16"
+                                        allowed_orderid:
+                                            $ref: "#/definitions/u32"
+                                        allowed_priority:
+                                            $ref: "#/definitions/u16"
+                                        allowed_sched_priority:
+                                            $ref: "#/definitions/u8"
+                    resasg:
+                        type: object
+                        properties:
+                            subhdr:
+                                type: object
+                                properties:
+                                    magic:
+                                        $ref: "#/definitions/u16"
+                                    size:
+                                        $ref: "#/definitions/u16"
+                            resasg_entries_size:
+                                        $ref: "#/definitions/u16"
+                            reserved:
+                                        $ref: "#/definitions/u16"
+
+            resasg_entries:
+                type: array
+                minItems: 0
+                maxItems: 468
+                items:
+                    type: object
+                    properties:
+                        start_resource:
+                            $ref: "#/definitions/u16"
+                        num_resource:
+                            $ref: "#/definitions/u16"
+                        type:
+                            $ref: "#/definitions/u16"
+                        host_id:
+                            $ref: "#/definitions/u8"
+                        reserved:
+                            $ref: "#/definitions/u8"
+
+    tifs-rm-cfg:
+        type: object
+        properties:
+            rm_boardcfg:
+                type: object
+                properties:
+                    rev:
+                        type: object
+                        properties:
+                            boardcfg_abi_maj:
+                                $ref: "#/definitions/u8"
+                            boardcfg_abi_min:
+                                $ref: "#/definitions/u8"
+
+                    host_cfg:
+                        type: object
+                        properties:
+                            subhdr:
+                                type: object
+                                properties:
+                                    magic:
+                                        $ref: "#/definitions/u16"
+                                    size:
+                                        $ref: "#/definitions/u16"
+                            host_cfg_entries:
+                                type: array
+                                minItems: 0
+                                maxItems: 32
+                                items:
+                                    type: object
+                                    properties:
+                                        host_id:
+                                            $ref: "#/definitions/u8"
+                                        allowed_atype:
+                                            $ref: "#/definitions/u8"
+                                        allowed_qos:
+                                            $ref: "#/definitions/u16"
+                                        allowed_orderid:
+                                            $ref: "#/definitions/u32"
+                                        allowed_priority:
+                                            $ref: "#/definitions/u16"
+                                        allowed_sched_priority:
+                                            $ref: "#/definitions/u8"
+                    resasg:
+                        type: object
+                        properties:
+                            subhdr:
+                                type: object
+                                properties:
+                                    magic:
+                                        $ref: "#/definitions/u16"
+                                    size:
+                                        $ref: "#/definitions/u16"
+                            resasg_entries_size:
+                                        $ref: "#/definitions/u16"
+                            reserved:
+                                        $ref: "#/definitions/u16"
+
+            resasg_entries:
+                type: array
+                minItems: 0
+                maxItems: 468
+                items:
+                    type: object
+                    properties:
+                        start_resource:
+                            $ref: "#/definitions/u16"
+                        num_resource:
+                            $ref: "#/definitions/u16"
+                        type:
+                            $ref: "#/definitions/u16"
+                        host_id:
+                            $ref: "#/definitions/u8"
+                        reserved:
+                            $ref: "#/definitions/u8"
diff --git a/board/ti/j721e/board-cfg.yaml b/board/ti/j721e/board-cfg.yaml
new file mode 100644
index 0000000000..9f5e00b3dc
--- /dev/null
+++ b/board/ti/j721e/board-cfg.yaml
@@ -0,0 +1,37 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Board configuration for J721E
+#
+
+---
+
+board-cfg:
+        rev:
+                boardcfg_abi_maj: 0x0
+                boardcfg_abi_min: 0x1
+        control:
+                subhdr:
+                        magic: 0xC1D3
+                        size: 7
+                main_isolation_enable: 0x5A
+                main_isolation_hostid: 0x2
+        secproxy:
+                subhdr:
+                        magic: 0x1207
+                        size: 7
+                scaling_factor: 0x1
+                scaling_profile: 0x1
+                disable_main_nav_secure_proxy: 0
+        msmc:
+                subhdr:
+                        magic: 0xA5C3
+                        size: 5
+                msmc_cache_size: 0x0
+        debug_cfg:
+                subhdr:
+                        magic: 0x020C
+                        size: 8
+                trace_dst_enables: 0x00
+                trace_src_enables: 0x00
+
diff --git a/board/ti/j721e/pm-cfg.yaml b/board/ti/j721e/pm-cfg.yaml
new file mode 100644
index 0000000000..40a8dfb7af
--- /dev/null
+++ b/board/ti/j721e/pm-cfg.yaml
@@ -0,0 +1,13 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Power management configuration for J721E
+#
+
+---
+
+pm-cfg:
+        rev:
+                boardcfg_abi_maj: 0x0
+                boardcfg_abi_min: 0x1
+
diff --git a/board/ti/j721e/rm-cfg.yaml b/board/ti/j721e/rm-cfg.yaml
new file mode 100644
index 0000000000..39d276d9d5
--- /dev/null
+++ b/board/ti/j721e/rm-cfg.yaml
@@ -0,0 +1,3174 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Resource management configuration for J721E
+#
+
+---
+
+rm-cfg:
+        rm_boardcfg:
+                rev:
+                        boardcfg_abi_maj: 0x0
+                        boardcfg_abi_min: 0x1
+                host_cfg:
+                        subhdr:
+                                magic: 0x4C41
+                                size: 356
+                        host_cfg_entries:
+                                - #1
+                                        host_id: 3
+                                        allowed_atype: 0x2A
+                                        allowed_qos: 0xAAAA
+                                        allowed_orderid: 0xAAAAAAAA
+                                        allowed_priority: 0xAAAA
+                                        allowed_sched_priority: 0xAA
+                                - #2
+                                        host_id: 5
+                                        allowed_atype: 0x2A
+                                        allowed_qos: 0xAAAA
+                                        allowed_orderid: 0xAAAAAAAA
+                                        allowed_priority: 0xAAAA
+                                        allowed_sched_priority: 0xAA
+                                - #3
+                                        host_id: 12
+                                        allowed_atype: 0x2A
+                                        allowed_qos: 0xAAAA
+                                        allowed_orderid: 0xAAAAAAAA
+                                        allowed_priority: 0xAAAA
+                                        allowed_sched_priority: 0xAA
+                                - #4
+                                        host_id: 13
+                                        allowed_atype: 0x2A
+                                        allowed_qos: 0xAAAA
+                                        allowed_orderid: 0xAAAAAAAA
+                                        allowed_priority: 0xAAAA
+                                        allowed_sched_priority: 0xAA
+                                - #5
+                                        host_id: 21
+                                        allowed_atype: 0x2A
+                                        allowed_qos: 0xAAAA
+                                        allowed_orderid: 0xAAAAAAAA
+                                        allowed_priority: 0xAAAA
+                                        allowed_sched_priority: 0xAA
+                                - #6
+                                        host_id: 26
+                                        allowed_atype: 0x2A
+                                        allowed_qos: 0xAAAA
+                                        allowed_orderid: 0xAAAAAAAA
+                                        allowed_priority: 0xAAAA
+                                        allowed_sched_priority: 0xAA
+                                - #7
+                                        host_id: 28
+                                        allowed_atype: 0x2A
+                                        allowed_qos: 0xAAAA
+                                        allowed_orderid: 0xAAAAAAAA
+                                        allowed_priority: 0xAAAA
+                                        allowed_sched_priority: 0xAA
+                                - #8
+                                        host_id: 35
+                                        allowed_atype: 0x2A
+                                        allowed_qos: 0xAAAA
+                                        allowed_orderid: 0xAAAAAAAA
+                                        allowed_priority: 0xAAAA
+                                        allowed_sched_priority: 0xAA
+                                - #9
+                                        host_id: 37
+                                        allowed_atype: 0x2A
+                                        allowed_qos: 0xAAAA
+                                        allowed_orderid: 0xAAAAAAAA
+                                        allowed_priority: 0xAAAA
+                                        allowed_sched_priority: 0xAA
+                                - #10
+                                        host_id: 40
+                                        allowed_atype: 0x2A
+                                        allowed_qos: 0xAAAA
+                                        allowed_orderid: 0xAAAAAAAA
+                                        allowed_priority: 0xAAAA
+                                        allowed_sched_priority: 0xAA
+                                - #11
+                                        host_id: 42
+                                        allowed_atype: 0x2A
+                                        allowed_qos: 0xAAAA
+                                        allowed_orderid: 0xAAAAAAAA
+                                        allowed_priority: 0xAAAA
+                                        allowed_sched_priority: 0xAA
+                                - #12
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #13
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #14
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #15
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #16
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #17
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #18
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #19
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #20
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #21
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #22
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #23
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #24
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #25
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #26
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #27
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #28
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #29
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #30
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #31
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                                - #32
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                resasg:
+                        subhdr:
+                                magic: 0x7B25
+                                size: 8
+                        resasg_entries_size: 3344
+                        reserved: 0
+        resasg_entries:
+                -
+                        start_resource: 4
+                        num_resource: 93
+                        type: 7744
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 4
+                        num_resource: 93
+                        type: 7808
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 32
+                        type: 7872
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 32
+                        type: 8192
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 32
+                        num_resource: 32
+                        type: 8192
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 24
+                        type: 8320
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 24
+                        type: 8320
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 8
+                        type: 8384
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 8
+                        type: 8384
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 16
+                        num_resource: 4
+                        type: 8384
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 20
+                        num_resource: 4
+                        type: 8384
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 4
+                        type: 8384
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 28
+                        num_resource: 4
+                        type: 8384
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 32
+                        num_resource: 4
+                        type: 8384
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 36
+                        num_resource: 4
+                        type: 8384
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 40
+                        num_resource: 12
+                        type: 8384
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 52
+                        num_resource: 12
+                        type: 8384
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 128
+                        type: 8576
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 128
+                        num_resource: 128
+                        type: 8576
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 128
+                        type: 8640
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 128
+                        num_resource: 128
+                        type: 8640
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 48
+                        type: 8704
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 8
+                        type: 8768
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 8
+                        type: 8768
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 16
+                        num_resource: 6
+                        type: 8768
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 22
+                        num_resource: 6
+                        type: 8768
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 28
+                        num_resource: 2
+                        type: 8768
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 30
+                        num_resource: 2
+                        type: 8768
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 64
+                        type: 13258
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 20480
+                        num_resource: 1024
+                        type: 13261
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 64
+                        type: 13322
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 22528
+                        num_resource: 1024
+                        type: 13325
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 38
+                        num_resource: 86
+                        type: 13386
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 124
+                        num_resource: 32
+                        type: 13386
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 156
+                        num_resource: 12
+                        type: 13386
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 168
+                        num_resource: 12
+                        type: 13386
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 180
+                        num_resource: 12
+                        type: 13386
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 192
+                        num_resource: 12
+                        type: 13386
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 204
+                        num_resource: 12
+                        type: 13386
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 216
+                        num_resource: 28
+                        type: 13386
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 244
+                        num_resource: 8
+                        type: 13386
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 252
+                        num_resource: 4
+                        type: 13386
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 38
+                        num_resource: 1024
+                        type: 13389
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 1062
+                        num_resource: 512
+                        type: 13389
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 1574
+                        num_resource: 32
+                        type: 13389
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 1606
+                        num_resource: 32
+                        type: 13389
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 1638
+                        num_resource: 256
+                        type: 13389
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 1894
+                        num_resource: 256
+                        type: 13389
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 2150
+                        num_resource: 256
+                        type: 13389
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 2406
+                        num_resource: 256
+                        type: 13389
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 2662
+                        num_resource: 256
+                        type: 13389
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 2918
+                        num_resource: 512
+                        type: 13389
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 3430
+                        num_resource: 256
+                        type: 13389
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 3686
+                        num_resource: 922
+                        type: 13389
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 4
+                        type: 13440
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 4
+                        num_resource: 4
+                        type: 13440
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 4
+                        type: 13440
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 12
+                        num_resource: 4
+                        type: 13440
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 16
+                        num_resource: 4
+                        type: 13440
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 20
+                        num_resource: 4
+                        type: 13440
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 4
+                        type: 13440
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 28
+                        num_resource: 4
+                        type: 13440
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 32
+                        num_resource: 4
+                        type: 13440
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 36
+                        num_resource: 12
+                        type: 13440
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 48
+                        num_resource: 4
+                        type: 13440
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 52
+                        num_resource: 12
+                        type: 13440
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 1
+                        type: 13504
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 440
+                        num_resource: 150
+                        type: 13505
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 590
+                        num_resource: 40
+                        type: 13505
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 630
+                        num_resource: 6
+                        type: 13505
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 636
+                        num_resource: 6
+                        type: 13505
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 642
+                        num_resource: 10
+                        type: 13505
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 652
+                        num_resource: 10
+                        type: 13505
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 662
+                        num_resource: 32
+                        type: 13505
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 694
+                        num_resource: 38
+                        type: 13505
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 732
+                        num_resource: 12
+                        type: 13505
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 744
+                        num_resource: 182
+                        type: 13505
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 926
+                        num_resource: 40
+                        type: 13505
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 966
+                        num_resource: 8
+                        type: 13505
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 316
+                        num_resource: 8
+                        type: 13506
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 324
+                        num_resource: 2
+                        type: 13506
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 324
+                        num_resource: 0
+                        type: 13506
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 326
+                        num_resource: 2
+                        type: 13506
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 328
+                        num_resource: 2
+                        type: 13506
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 330
+                        num_resource: 2
+                        type: 13506
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 332
+                        num_resource: 2
+                        type: 13506
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 334
+                        num_resource: 8
+                        type: 13506
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 342
+                        num_resource: 2
+                        type: 13506
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 344
+                        num_resource: 4
+                        type: 13506
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 348
+                        num_resource: 1
+                        type: 13506
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 349
+                        num_resource: 47
+                        type: 13506
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 396
+                        num_resource: 1
+                        type: 13506
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 397
+                        num_resource: 4
+                        type: 13506
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 401
+                        num_resource: 4
+                        type: 13506
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 405
+                        num_resource: 4
+                        type: 13506
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 409
+                        num_resource: 8
+                        type: 13506
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 417
+                        num_resource: 6
+                        type: 13506
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 423
+                        num_resource: 16
+                        type: 13506
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 439
+                        num_resource: 1
+                        type: 13506
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 16
+                        num_resource: 8
+                        type: 13507
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 2
+                        type: 13507
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 0
+                        type: 13507
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 26
+                        num_resource: 2
+                        type: 13507
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 28
+                        num_resource: 2
+                        type: 13507
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 30
+                        num_resource: 2
+                        type: 13507
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 32
+                        num_resource: 2
+                        type: 13507
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 34
+                        num_resource: 8
+                        type: 13507
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 42
+                        num_resource: 2
+                        type: 13507
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 44
+                        num_resource: 4
+                        type: 13507
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 48
+                        num_resource: 1
+                        type: 13507
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 49
+                        num_resource: 47
+                        type: 13507
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 96
+                        num_resource: 1
+                        type: 13507
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 97
+                        num_resource: 4
+                        type: 13507
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 101
+                        num_resource: 4
+                        type: 13507
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 105
+                        num_resource: 4
+                        type: 13507
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 109
+                        num_resource: 8
+                        type: 13507
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 117
+                        num_resource: 6
+                        type: 13507
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 123
+                        num_resource: 10
+                        type: 13507
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 133
+                        num_resource: 6
+                        type: 13507
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 139
+                        num_resource: 1
+                        type: 13507
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 140
+                        num_resource: 16
+                        type: 13508
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 156
+                        num_resource: 6
+                        type: 13508
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 162
+                        num_resource: 6
+                        type: 13508
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 168
+                        num_resource: 2
+                        type: 13508
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 170
+                        num_resource: 2
+                        type: 13508
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 172
+                        num_resource: 96
+                        type: 13508
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 268
+                        num_resource: 32
+                        type: 13508
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 304
+                        num_resource: 0
+                        type: 13509
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 304
+                        num_resource: 4
+                        type: 13509
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 304
+                        num_resource: 0
+                        type: 13509
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 308
+                        num_resource: 6
+                        type: 13509
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 314
+                        num_resource: 2
+                        type: 13509
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 300
+                        num_resource: 0
+                        type: 13510
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 300
+                        num_resource: 2
+                        type: 13510
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 300
+                        num_resource: 0
+                        type: 13510
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 302
+                        num_resource: 2
+                        type: 13510
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 4
+                        num_resource: 0
+                        type: 13511
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 4
+                        num_resource: 4
+                        type: 13511
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 4
+                        num_resource: 0
+                        type: 13511
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 6
+                        type: 13511
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 14
+                        num_resource: 2
+                        type: 13511
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 13512
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 2
+                        type: 13512
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 13512
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 2
+                        type: 13512
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 5
+                        type: 13514
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 7
+                        num_resource: 1
+                        type: 13514
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 3
+                        type: 13515
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 3
+                        num_resource: 2
+                        type: 13515
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 5
+                        num_resource: 1
+                        type: 13515
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 6
+                        num_resource: 1
+                        type: 13515
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 7
+                        num_resource: 3
+                        type: 13515
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 10
+                        num_resource: 3
+                        type: 13515
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 13
+                        num_resource: 3
+                        type: 13515
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 16
+                        num_resource: 3
+                        type: 13515
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 19
+                        num_resource: 3
+                        type: 13515
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 22
+                        num_resource: 6
+                        type: 13515
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 28
+                        num_resource: 3
+                        type: 13515
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 31
+                        num_resource: 1
+                        type: 13515
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 140
+                        num_resource: 16
+                        type: 13568
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 156
+                        num_resource: 16
+                        type: 13568
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 172
+                        num_resource: 128
+                        type: 13568
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 1
+                        type: 13569
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 49152
+                        num_resource: 1024
+                        type: 13570
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 1
+                        type: 13571
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 16
+                        num_resource: 8
+                        type: 13578
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 2
+                        type: 13578
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 0
+                        type: 13578
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 26
+                        num_resource: 2
+                        type: 13578
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 28
+                        num_resource: 2
+                        type: 13578
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 30
+                        num_resource: 2
+                        type: 13578
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 32
+                        num_resource: 2
+                        type: 13578
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 34
+                        num_resource: 8
+                        type: 13578
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 42
+                        num_resource: 2
+                        type: 13578
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 44
+                        num_resource: 4
+                        type: 13578
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 48
+                        num_resource: 1
+                        type: 13578
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 49
+                        num_resource: 47
+                        type: 13578
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 96
+                        num_resource: 1
+                        type: 13578
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 97
+                        num_resource: 4
+                        type: 13578
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 101
+                        num_resource: 4
+                        type: 13578
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 105
+                        num_resource: 4
+                        type: 13578
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 109
+                        num_resource: 8
+                        type: 13578
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 117
+                        num_resource: 6
+                        type: 13578
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 123
+                        num_resource: 16
+                        type: 13578
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 139
+                        num_resource: 1
+                        type: 13578
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 4
+                        num_resource: 0
+                        type: 13579
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 4
+                        num_resource: 4
+                        type: 13579
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 4
+                        num_resource: 0
+                        type: 13579
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 6
+                        type: 13579
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 14
+                        num_resource: 2
+                        type: 13579
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 13580
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 2
+                        type: 13580
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 13580
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 2
+                        type: 13580
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 16
+                        num_resource: 8
+                        type: 13581
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 2
+                        type: 13581
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 0
+                        type: 13581
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 26
+                        num_resource: 2
+                        type: 13581
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 28
+                        num_resource: 2
+                        type: 13581
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 30
+                        num_resource: 2
+                        type: 13581
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 32
+                        num_resource: 2
+                        type: 13581
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 34
+                        num_resource: 8
+                        type: 13581
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 42
+                        num_resource: 2
+                        type: 13581
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 44
+                        num_resource: 4
+                        type: 13581
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 48
+                        num_resource: 1
+                        type: 13581
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 49
+                        num_resource: 47
+                        type: 13581
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 96
+                        num_resource: 1
+                        type: 13581
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 97
+                        num_resource: 4
+                        type: 13581
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 101
+                        num_resource: 4
+                        type: 13581
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 105
+                        num_resource: 4
+                        type: 13581
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 109
+                        num_resource: 8
+                        type: 13581
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 117
+                        num_resource: 6
+                        type: 13581
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 123
+                        num_resource: 10
+                        type: 13581
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 133
+                        num_resource: 6
+                        type: 13581
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 139
+                        num_resource: 1
+                        type: 13581
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 140
+                        num_resource: 16
+                        type: 13582
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 156
+                        num_resource: 6
+                        type: 13582
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 162
+                        num_resource: 6
+                        type: 13582
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 168
+                        num_resource: 2
+                        type: 13582
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 170
+                        num_resource: 2
+                        type: 13582
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 172
+                        num_resource: 96
+                        type: 13582
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 268
+                        num_resource: 32
+                        type: 13582
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 4
+                        num_resource: 0
+                        type: 13583
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 4
+                        num_resource: 4
+                        type: 13583
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 4
+                        num_resource: 0
+                        type: 13583
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 6
+                        type: 13583
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 14
+                        num_resource: 2
+                        type: 13583
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 13584
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 2
+                        type: 13584
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 13584
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 2
+                        type: 13584
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 10
+                        num_resource: 100
+                        type: 13632
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 110
+                        num_resource: 32
+                        type: 13632
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 142
+                        num_resource: 46
+                        type: 13632
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 196
+                        num_resource: 28
+                        type: 13632
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 228
+                        num_resource: 28
+                        type: 13632
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 260
+                        num_resource: 28
+                        type: 13632
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 292
+                        num_resource: 28
+                        type: 13632
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 320
+                        num_resource: 24
+                        type: 13632
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 352
+                        num_resource: 24
+                        type: 13632
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 400
+                        num_resource: 4
+                        type: 13632
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 404
+                        num_resource: 4
+                        type: 13632
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 16
+                        num_resource: 32
+                        type: 14922
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 48
+                        num_resource: 16
+                        type: 14922
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 64
+                        num_resource: 64
+                        type: 14922
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 128
+                        num_resource: 4
+                        type: 14922
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 132
+                        num_resource: 16
+                        type: 14922
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 148
+                        num_resource: 16
+                        type: 14922
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 164
+                        num_resource: 8
+                        type: 14922
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 172
+                        num_resource: 8
+                        type: 14922
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 180
+                        num_resource: 8
+                        type: 14922
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 188
+                        num_resource: 24
+                        type: 14922
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 212
+                        num_resource: 8
+                        type: 14922
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 220
+                        num_resource: 36
+                        type: 14922
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 16400
+                        num_resource: 128
+                        type: 14925
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 16528
+                        num_resource: 128
+                        type: 14925
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 16656
+                        num_resource: 256
+                        type: 14925
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 16912
+                        num_resource: 64
+                        type: 14925
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 16976
+                        num_resource: 128
+                        type: 14925
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 17104
+                        num_resource: 128
+                        type: 14925
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 17232
+                        num_resource: 64
+                        type: 14925
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 17296
+                        num_resource: 64
+                        type: 14925
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 17360
+                        num_resource: 64
+                        type: 14925
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 17424
+                        num_resource: 128
+                        type: 14925
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 17552
+                        num_resource: 128
+                        type: 14925
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 17680
+                        num_resource: 240
+                        type: 14925
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 1
+                        num_resource: 4
+                        type: 14976
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 5
+                        num_resource: 4
+                        type: 14976
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 9
+                        num_resource: 4
+                        type: 14976
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 13
+                        num_resource: 4
+                        type: 14976
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 17
+                        num_resource: 4
+                        type: 14976
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 21
+                        num_resource: 4
+                        type: 14976
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 25
+                        num_resource: 4
+                        type: 14976
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 29
+                        num_resource: 4
+                        type: 14976
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 33
+                        num_resource: 4
+                        type: 14976
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 37
+                        num_resource: 16
+                        type: 14976
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 53
+                        num_resource: 4
+                        type: 14976
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 57
+                        num_resource: 7
+                        type: 14976
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 1
+                        type: 15040
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 96
+                        num_resource: 20
+                        type: 15041
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 116
+                        num_resource: 8
+                        type: 15041
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 124
+                        num_resource: 32
+                        type: 15041
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 156
+                        num_resource: 12
+                        type: 15041
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 168
+                        num_resource: 8
+                        type: 15041
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 176
+                        num_resource: 8
+                        type: 15041
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 184
+                        num_resource: 8
+                        type: 15041
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 192
+                        num_resource: 8
+                        type: 15041
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 200
+                        num_resource: 8
+                        type: 15041
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 208
+                        num_resource: 16
+                        type: 15041
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 224
+                        num_resource: 8
+                        type: 15041
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 232
+                        num_resource: 20
+                        type: 15041
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 50
+                        num_resource: 4
+                        type: 15042
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 54
+                        num_resource: 2
+                        type: 15042
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 54
+                        num_resource: 0
+                        type: 15042
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 56
+                        num_resource: 0
+                        type: 15042
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 56
+                        num_resource: 1
+                        type: 15042
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 57
+                        num_resource: 1
+                        type: 15042
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 58
+                        num_resource: 1
+                        type: 15042
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 59
+                        num_resource: 1
+                        type: 15042
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 60
+                        num_resource: 1
+                        type: 15042
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 61
+                        num_resource: 1
+                        type: 15042
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 62
+                        num_resource: 1
+                        type: 15042
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 63
+                        num_resource: 9
+                        type: 15042
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 72
+                        num_resource: 6
+                        type: 15042
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 78
+                        num_resource: 3
+                        type: 15042
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 81
+                        num_resource: 2
+                        type: 15042
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 83
+                        num_resource: 1
+                        type: 15042
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 84
+                        num_resource: 1
+                        type: 15042
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 85
+                        num_resource: 1
+                        type: 15042
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 86
+                        num_resource: 1
+                        type: 15042
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 87
+                        num_resource: 1
+                        type: 15042
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 88
+                        num_resource: 2
+                        type: 15042
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 90
+                        num_resource: 1
+                        type: 15042
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 91
+                        num_resource: 2
+                        type: 15042
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 4
+                        type: 15043
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 6
+                        num_resource: 2
+                        type: 15043
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 6
+                        num_resource: 0
+                        type: 15043
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 0
+                        type: 15043
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 1
+                        type: 15043
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 9
+                        num_resource: 1
+                        type: 15043
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 10
+                        num_resource: 1
+                        type: 15043
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 11
+                        num_resource: 1
+                        type: 15043
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 12
+                        num_resource: 1
+                        type: 15043
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 13
+                        num_resource: 1
+                        type: 15043
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 14
+                        num_resource: 1
+                        type: 15043
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 15
+                        num_resource: 9
+                        type: 15043
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 6
+                        type: 15043
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 30
+                        num_resource: 3
+                        type: 15043
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 33
+                        num_resource: 2
+                        type: 15043
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 35
+                        num_resource: 1
+                        type: 15043
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 36
+                        num_resource: 1
+                        type: 15043
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 37
+                        num_resource: 1
+                        type: 15043
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 38
+                        num_resource: 1
+                        type: 15043
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 39
+                        num_resource: 1
+                        type: 15043
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 40
+                        num_resource: 2
+                        type: 15043
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 42
+                        num_resource: 1
+                        type: 15043
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 43
+                        num_resource: 3
+                        type: 15043
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 48
+                        num_resource: 0
+                        type: 15045
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 48
+                        num_resource: 2
+                        type: 15045
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 15047
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 2
+                        type: 15047
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 5
+                        type: 15050
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 7
+                        num_resource: 1
+                        type: 15050
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 3
+                        type: 15051
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 3
+                        num_resource: 2
+                        type: 15051
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 5
+                        num_resource: 3
+                        type: 15051
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 3
+                        type: 15051
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 11
+                        num_resource: 3
+                        type: 15051
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 14
+                        num_resource: 3
+                        type: 15051
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 17
+                        num_resource: 3
+                        type: 15051
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 20
+                        num_resource: 3
+                        type: 15051
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 23
+                        num_resource: 3
+                        type: 15051
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 26
+                        num_resource: 3
+                        type: 15051
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 29
+                        num_resource: 3
+                        type: 15051
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 48
+                        num_resource: 8
+                        type: 15104
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 56
+                        num_resource: 4
+                        type: 15104
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 60
+                        num_resource: 8
+                        type: 15104
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 68
+                        num_resource: 4
+                        type: 15104
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 72
+                        num_resource: 4
+                        type: 15104
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 76
+                        num_resource: 4
+                        type: 15104
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 80
+                        num_resource: 8
+                        type: 15104
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 88
+                        num_resource: 4
+                        type: 15104
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 92
+                        num_resource: 4
+                        type: 15104
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 1
+                        type: 15105
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 56320
+                        num_resource: 256
+                        type: 15106
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 1
+                        type: 15107
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 4
+                        type: 15114
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 6
+                        num_resource: 2
+                        type: 15114
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 6
+                        num_resource: 0
+                        type: 15114
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 0
+                        type: 15114
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 1
+                        type: 15114
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 9
+                        num_resource: 1
+                        type: 15114
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 10
+                        num_resource: 1
+                        type: 15114
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 11
+                        num_resource: 1
+                        type: 15114
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 12
+                        num_resource: 1
+                        type: 15114
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 13
+                        num_resource: 1
+                        type: 15114
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 14
+                        num_resource: 1
+                        type: 15114
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 15
+                        num_resource: 9
+                        type: 15114
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 6
+                        type: 15114
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 30
+                        num_resource: 3
+                        type: 15114
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 33
+                        num_resource: 2
+                        type: 15114
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 35
+                        num_resource: 1
+                        type: 15114
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 36
+                        num_resource: 1
+                        type: 15114
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 37
+                        num_resource: 1
+                        type: 15114
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 38
+                        num_resource: 1
+                        type: 15114
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 39
+                        num_resource: 1
+                        type: 15114
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 40
+                        num_resource: 2
+                        type: 15114
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 42
+                        num_resource: 1
+                        type: 15114
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 43
+                        num_resource: 2
+                        type: 15114
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 15115
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 2
+                        type: 15115
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 4
+                        type: 15117
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 6
+                        num_resource: 2
+                        type: 15117
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 6
+                        num_resource: 0
+                        type: 15117
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 0
+                        type: 15117
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 1
+                        type: 15117
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 9
+                        num_resource: 1
+                        type: 15117
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 10
+                        num_resource: 1
+                        type: 15117
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 11
+                        num_resource: 1
+                        type: 15117
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 12
+                        num_resource: 1
+                        type: 15117
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 13
+                        num_resource: 1
+                        type: 15117
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 14
+                        num_resource: 1
+                        type: 15117
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 15
+                        num_resource: 9
+                        type: 15117
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 6
+                        type: 15117
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 30
+                        num_resource: 3
+                        type: 15117
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 33
+                        num_resource: 2
+                        type: 15117
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 35
+                        num_resource: 1
+                        type: 15117
+                        host_id: 40
+                        reserved: 0
+
+                -
+                        start_resource: 36
+                        num_resource: 1
+                        type: 15117
+                        host_id: 42
+                        reserved: 0
+
+                -
+                        start_resource: 37
+                        num_resource: 1
+                        type: 15117
+                        host_id: 21
+                        reserved: 0
+
+                -
+                        start_resource: 38
+                        num_resource: 1
+                        type: 15117
+                        host_id: 26
+                        reserved: 0
+
+                -
+                        start_resource: 39
+                        num_resource: 1
+                        type: 15117
+                        host_id: 28
+                        reserved: 0
+
+                -
+                        start_resource: 40
+                        num_resource: 2
+                        type: 15117
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 42
+                        num_resource: 1
+                        type: 15117
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 43
+                        num_resource: 3
+                        type: 15117
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 15119
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 2
+                        type: 15119
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 12
+                        num_resource: 20
+                        type: 15168
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 36
+                        num_resource: 28
+                        type: 15168
+                        host_id: 5
+                        reserved: 0
diff --git a/board/ti/j721e/sec-cfg.yaml b/board/ti/j721e/sec-cfg.yaml
new file mode 100644
index 0000000000..dbaae99033
--- /dev/null
+++ b/board/ti/j721e/sec-cfg.yaml
@@ -0,0 +1,381 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Security configuration for J721E
+#
+
+---
+
+sec-cfg:
+        rev:
+                boardcfg_abi_maj: 0x0
+                boardcfg_abi_min: 0x1
+        processor_acl_list:
+                subhdr:
+                        magic: 0xF1EA
+                        size: 164
+                proc_acl_entries:
+                        - #1
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #2
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #3
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #4
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #5
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #6
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #7
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #8
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #9
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #10
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #11
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #12
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #13
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #14
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #15
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #16
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #17
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #18
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #19
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #20
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #21
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #22
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #23
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #24
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #25
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #26
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #27
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #28
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #29
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #30
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #31
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #32
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+
+        host_hierarchy:
+                subhdr:
+                        magic: 0x8D27
+                        size: 68
+                host_hierarchy_entries:
+                        - #1
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #2
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #3
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #4
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #5
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #6
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #7
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #8
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #9
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #10
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #11
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #12
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #13
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #14
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #15
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #16
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #17
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #18
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #19
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #20
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #21
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #22
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #23
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #24
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #25
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #26
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #27
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #28
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #29
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #30
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #31
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #32
+                                host_id: 0
+                                supervisor_host_id: 0
+        otp_config:
+                subhdr:
+                        magic: 0x4081
+                        size: 69
+                otp_entry:
+                        - #1
+                                host_id: 0
+                                host_perms: 0
+                        - #2
+                                host_id: 0
+                                host_perms: 0
+                        - #3
+                                host_id: 0
+                                host_perms: 0
+                        - #4
+                                host_id: 0
+                                host_perms: 0
+                        - #5
+                                host_id: 0
+                                host_perms: 0
+                        - #6
+                                host_id: 0
+                                host_perms: 0
+                        - #7
+                                host_id: 0
+                                host_perms: 0
+                        - #8
+                                host_id: 0
+                                host_perms: 0
+                        - #9
+                                host_id: 0
+                                host_perms: 0
+                        - #10
+                                host_id: 0
+                                host_perms: 0
+                        - #11
+                                host_id: 0
+                                host_perms: 0
+                        - #12
+                                host_id: 0
+                                host_perms: 0
+                        - #13
+                                host_id: 0
+                                host_perms: 0
+                        - #14
+                                host_id: 0
+                                host_perms: 0
+                        - #15
+                                host_id: 0
+                                host_perms: 0
+                        - #16
+                                host_id: 0
+                                host_perms: 0
+                        - #17
+                                host_id: 0
+                                host_perms: 0
+                        - #18
+                                host_id: 0
+                                host_perms: 0
+                        - #19
+                                host_id: 0
+                                host_perms: 0
+                        - #20
+                                host_id: 0
+                                host_perms: 0
+                        - #21
+                                host_id: 0
+                                host_perms: 0
+                        - #22
+                                host_id: 0
+                                host_perms: 0
+                        - #23
+                                host_id: 0
+                                host_perms: 0
+                        - #24
+                                host_id: 0
+                                host_perms: 0
+                        - #25
+                                host_id: 0
+                                host_perms: 0
+                        - #26
+                                host_id: 0
+                                host_perms: 0
+                        - #27
+                                host_id: 0
+                                host_perms: 0
+                        - #28
+                                host_id: 0
+                                host_perms: 0
+                        - #29
+                                host_id: 0
+                                host_perms: 0
+                        - #30
+                                host_id: 0
+                                host_perms: 0
+                        - #31
+                                host_id: 0
+                                host_perms: 0
+                        - #32
+                                host_id: 0
+                                host_perms: 0
+                write_host_id: 0
+        dkek_config:
+                subhdr:
+                        magic: 0x5170
+                        size: 12
+                allowed_hosts: [128, 0, 0, 0]
+                allow_dkek_export_tisci: 0x5A
+                rsvd: [0, 0, 0]
+        sa2ul_cfg:
+                subhdr:
+                        magic: 0x23BE
+                        size: 0
+                auth_resource_owner: 0
+                enable_saul_psil_global_config_writes: 0
+                rsvd: [0, 0]
+        sec_dbg_config:
+                subhdr:
+                        magic: 0x42AF
+                        size: 16
+                allow_jtag_unlock: 0x5A
+                allow_wildcard_unlock: 0x5A
+                allowed_debug_level_rsvd: 0
+                rsvd: 0
+                min_cert_rev: 0x0
+                jtag_unlock_hosts: [0, 0, 0, 0]
+        sec_handover_cfg:
+                subhdr:
+                        magic: 0x608F
+                        size: 10
+                handover_msg_sender: 0
+                handover_to_host_id: 0
+                rsvd: [0, 0, 0, 0]
+
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 05/23] j721e: dts: binman: Package tiboot3.bin, sysfw.itb, tispl.bin, u-boot.img
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (3 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 04/23] j721e: schema: yaml: Add general schema and J721E board config files Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 06/23] j7200: yaml: Add J7200 board config files Neha Malcom Francis
                   ` (17 subsequent siblings)
  22 siblings, 0 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

By providing entries in the binman node of the device tree, binman will
be able to find and package board config artifacts generated by
TIBoardConfig with sysfw.bin and generate the final image sysfw.itb.
It will also pick out the R5 SPL and sign it with the help of TI signing
entry and generate the final tiboot3.bin.

Entries for A72 build have been added to k3-j721e-binman.dtsi to
generate tispl.bin and u-boot.img.

Support has been added for both HS-SE(SR 1.1), HS-FS(SR 2.0) and GP images
In HS-SE, the encrypted system firmware binary must be signed along with
the signed certificate binary.

HS-SE:
	* tiboot3-j721e_sr1_1-hs-evm.bin
	* sysfw-j721e_sr1_1-hs-evm.itb
	* tispl.bin
	* u-boot.img

HS-FS:
	* tiboot3-j721e_sr2-hs-fs-evm.bin
	* sysfw-j721e_sr2-hs-fs-evm.itb
	* tispl.bin
	* u-boot.img

GP:
	* tiboot3.bin -->tiboot3-j721e-gp-evm.bin
	* sysfw.itb --> sysfw-j721e-gp-evm.itb
	* tispl.bin_unsigned
	* u-boot.img_unsigned

It is to be noted that the bootflow followed by J721E requires:

tiboot3.bin:
	* R5 SPL
	* R5 SPL dtbs

sysfw.itb:
	* TIFS
	* board-cfg
	* pm-cfg
	* sec-cfg
	* rm-cfg

tispl.bin:
	* DM
	* ATF
	* OPTEE
	* A72 SPL
	* A72 SPL dtbs

u-boot.img:
	* A72 U-Boot
	* A72 U-Boot dtbs

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
[afd@ti.com: changed output binary names appropriately]
Signed-off-by: Andrew Davis <afd@ti.com>
---
 arch/arm/dts/k3-j721e-binman.dtsi             | 701 ++++++++++++++++++
 .../k3-j721e-common-proc-board-u-boot.dtsi    |   1 +
 .../arm/dts/k3-j721e-r5-common-proc-board.dts |   1 +
 arch/arm/dts/k3-j721e-sk-u-boot.dtsi          |   1 +
 board/ti/j721e/Kconfig                        |   2 +
 5 files changed, 706 insertions(+)
 create mode 100644 arch/arm/dts/k3-j721e-binman.dtsi

diff --git a/arch/arm/dts/k3-j721e-binman.dtsi b/arch/arm/dts/k3-j721e-binman.dtsi
new file mode 100644
index 0000000000..0455deb6ca
--- /dev/null
+++ b/arch/arm/dts/k3-j721e-binman.dtsi
@@ -0,0 +1,701 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+ */
+
+#include "k3-binman.dtsi"
+
+#ifdef CONFIG_TARGET_J721E_R5_EVM
+
+&binman {
+	tiboot3-j721e_sr1_1-hs-evm.bin {
+		filename = "tiboot3-j721e_sr1_1-hs-evm.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl>;
+			core = "public";
+			load = <CONFIG_SPL_TEXT_BASE>;
+			keyfile = "custMpk.pem";
+		};
+		u_boot_spl: u-boot-spl {
+			no-expanded;
+		};
+	};
+	sysfw {
+		filename = "sysfw.bin";
+		ti-secure-rom {
+			content = <&ti_fs_cert>;
+			core = "secure";
+			load = <0x40000>;
+			keyfile = "custMpk.pem";
+			countersign;
+		};
+		ti_fs_cert: ti-fs-cert.bin {
+			filename = "ti-sysfw/ti-fs-firmware-j721e_sr1_1-hs-cert.bin";
+			type = "blob-ext";
+			optional;
+		};
+		ti-fs-firmware-j721e_sr1_1-hs-enc.bin {
+			filename = "ti-sysfw/ti-fs-firmware-j721e_sr1_1-hs-enc.bin";
+			type = "blob-ext";
+			optional;
+		};
+	};
+	itb {
+		filename = "sysfw-j721e_sr1_1-hs-evm.itb";
+		fit {
+			description = "SYSFW and Config fragments";
+			#address-cells = <1>;
+			images {
+				sysfw.bin {
+					description = "sysfw";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					blob-ext {
+					    filename = "sysfw.bin";
+					};
+				};
+				board-cfg.bin {
+					description = "board-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&board_cfg>;
+						keyfile = "custMpk.pem";
+					};
+					board_cfg: board-cfg {
+						filename = "board-cfg.bin";
+						type = "blob-ext";
+					};
+
+				};
+				pm-cfg.bin {
+					description = "pm-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&pm_cfg>;
+						keyfile = "custMpk.pem";
+					};
+					pm_cfg: pm-cfg {
+						filename = "pm-cfg.bin";
+						type = "blob-ext";
+					};
+				};
+				rm-cfg.bin {
+					description = "rm-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&rm_cfg>;
+						keyfile = "custMpk.pem";
+					};
+					rm_cfg: rm-cfg {
+						filename = "rm-cfg.bin";
+						type = "blob-ext";
+					};
+				};
+				sec-cfg.bin {
+					description = "sec-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&sec_cfg>;
+						keyfile = "custMpk.pem";
+					};
+					sec_cfg: sec-cfg {
+						filename = "sec-cfg.bin";
+						type = "blob-ext";
+					};
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	tiboot3-j721e_sr2-hs-fs-evm.bin {
+		filename = "tiboot3-j721e_sr2-hs-fs-evm.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl_fs>;
+			core = "public";
+			load = <CONFIG_SPL_TEXT_BASE>;
+			keyfile = "custMpk.pem";
+		};
+		u_boot_spl_fs: u-boot-spl {
+			no-expanded;
+		};
+	};
+	sysfw_fs {
+		filename = "sysfw.bin_fs";
+		ti-fs-cert-fs.bin {
+			filename = "ti-sysfw/ti-fs-firmware-j721e_sr2-hs-fs-cert.bin";
+			type = "blob-ext";
+			optional;
+		};
+		ti-fs-firmware-j721e-hs-fs-enc.bin {
+			filename = "ti-sysfw/ti-fs-firmware-j721e_sr2-hs-fs-enc.bin";
+			type = "blob-ext";
+			optional;
+		};
+	};
+	itb_fs {
+		filename = "sysfw-j721e_sr2-hs-fs-evm.itb";
+		fit {
+			description = "SYSFW and Config fragments";
+			#address-cells = <1>;
+			images {
+				sysfw.bin {
+					description = "sysfw";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					blob-ext {
+					    filename = "sysfw.bin_fs";
+					};
+				};
+				board-cfg.bin {
+					description = "board-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					board-cfg {
+						filename = "board-cfg.bin";
+						type = "blob-ext";
+					};
+
+				};
+				pm-cfg.bin {
+					description = "pm-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					pm-cfg {
+						filename = "pm-cfg.bin";
+						type = "blob-ext";
+					};
+				};
+				rm-cfg.bin {
+					description = "rm-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					rm-cfg {
+						filename = "rm-cfg.bin";
+						type = "blob-ext";
+					};
+				};
+				sec-cfg.bin {
+					description = "sec-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					sec-cfg {
+						filename = "sec-cfg.bin";
+						type = "blob-ext";
+					};
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	tiboot3-j721e-gp-evm.bin {
+		filename = "tiboot3-j721e-gp-evm.bin";
+		symlink = "tiboot3.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl_unsigned>;
+			core = "public";
+			load = <CONFIG_SPL_TEXT_BASE>;
+			sw-rev = <CONFIG_K3_X509_SWRV>;
+			keyfile = "ti-degenerate-key.pem";
+		};
+		u_boot_spl_unsigned: u-boot-spl {
+			no-expanded;
+		};
+	};
+	sysfw_gp {
+		filename = "sysfw.bin_gp";
+		ti-secure-rom {
+			content = <&ti_fs>;
+			core = "secure";
+			load = <0x40000>;
+			sw-rev = <CONFIG_K3_X509_SWRV>;
+			keyfile = "ti-degenerate-key.pem";
+		};
+		ti_fs: ti-fs.bin {
+			filename = "ti-sysfw/ti-fs-firmware-j721e-gp.bin";
+			type = "blob-ext";
+			optional;
+		};
+	};
+	itb_gp {
+		filename = "sysfw-j721e-gp-evm.itb";
+		symlink = "sysfw.itb";
+		fit {
+			description = "SYSFW and Config fragments";
+			#address-cells = <1>;
+			images {
+				sysfw.bin {
+					description = "sysfw";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					blob-ext {
+					    filename = "sysfw.bin_gp";
+					};
+				};
+				board-cfg.bin {
+					description = "board-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					blob-ext {
+						filename = "board-cfg.bin";
+					};
+				};
+				pm-cfg.bin {
+					description = "pm-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					blob-ext {
+						filename = "pm-cfg.bin";
+					};
+				};
+				rm-cfg.bin {
+					description = "rm-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					blob-ext {
+						filename = "rm-cfg.bin";
+					};
+				};
+				sec-cfg.bin {
+					description = "sec-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					blob-ext {
+						filename = "sec-cfg.bin";
+					};
+				};
+			};
+		};
+	};
+};
+#endif
+
+#ifdef CONFIG_TARGET_J721E_A72_EVM
+
+#define SPL_NODTB "spl/u-boot-spl-nodtb.bin"
+#define SPL_J721E_EVM_DTB "spl/dts/k3-j721e-common-proc-board.dtb"
+#define SPL_J721E_SK_DTB "spl/dts/k3-j721e-sk.dtb"
+
+#define UBOOT_NODTB "u-boot-nodtb.bin"
+#define J721E_EVM_DTB "arch/arm/dts/k3-j721e-common-proc-board.dtb"
+#define J721E_SK_DTB "arch/arm/dts/k3-j721e-sk.dtb"
+
+&binman {
+	ti-dm {
+		filename = "ti-dm.bin";
+		blob-ext {
+			filename = "ti-dm/j721e/ipc_echo_testb_mcu1_0_release_strip.xer5f";
+		};
+	};
+	ti-spl {
+		filename = "tispl.bin";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "Configuration to load ATF and SPL";
+			#address-cells = <1>;
+
+			images {
+
+				atf {
+					description = "ARM Trusted Firmware";
+					type = "firmware";
+					arch = "arm64";
+					compression = "none";
+					os = "arm-trusted-firmware";
+					load = <CONFIG_K3_ATF_LOAD_ADDR>;
+					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
+					ti-secure {
+						content = <&atf>;
+						keyfile = "custMpk.pem";
+					};
+					atf: atf-bl31 {
+					};
+				};
+
+				tee {
+					description = "OPTEE";
+					type = "tee";
+					arch = "arm64";
+					compression = "none";
+					os = "tee";
+					load = <0x9e800000>;
+					entry = <0x9e800000>;
+					ti-secure {
+						content = <&tee>;
+						keyfile = "custMpk.pem";
+					};
+					tee: tee-os {
+					};
+				};
+
+				dm {
+					description = "DM binary";
+					type = "firmware";
+					arch = "arm32";
+					compression = "none";
+					os = "DM";
+					load = <0x89000000>;
+					entry = <0x89000000>;
+					ti-secure {
+						content = <&dm>;
+						keyfile = "custMpk.pem";
+					};
+					dm: blob-ext {
+						filename = "ti-dm.bin";
+					};
+				};
+
+				spl {
+					description = "SPL (64-bit)";
+					type = "standalone";
+					os = "U-Boot";
+					arch = "arm64";
+					compression = "none";
+					load = <CONFIG_SPL_TEXT_BASE>;
+					entry = <CONFIG_SPL_TEXT_BASE>;
+					ti-secure {
+						content = <&u_boot_spl_nodtb>;
+						keyfile = "custMpk.pem";
+
+					};
+					u_boot_spl_nodtb: blob-ext {
+						filename = SPL_NODTB;
+					};
+				};
+
+				fdt-0 {
+					description = "k3-j721e-common-proc-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&spl_j721e_evm_dtb>;
+						keyfile = "custMpk.pem";
+					};
+					spl_j721e_evm_dtb: blob-ext {
+						filename = SPL_J721E_EVM_DTB;
+					};
+				};
+
+				fdt-1 {
+					description = "k3-j721e-sk";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&spl_j721e_sk_dtb>;
+						keyfile = "custMpk.pem";
+
+					};
+					spl_j721e_sk_dtb: blob-ext {
+						filename = SPL_J721E_SK_DTB;
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-j721e-common-proc-board";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-0";
+				};
+
+				conf-1 {
+					description = "k3-j721e-sk";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-1";
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	u-boot {
+		filename = "u-boot.img";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "FIT image with multiple configurations";
+
+			images {
+				uboot {
+					description = "U-Boot for j721e board";
+					type = "firmware";
+					os = "u-boot";
+					arch = "arm";
+					compression = "none";
+					load = <CONFIG_TEXT_BASE>;
+					ti-secure {
+						content = <&u_boot_nodtb>;
+						keyfile = "custMpk.pem";
+					};
+					u_boot_nodtb: u-boot-nodtb {
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-j721e-common-proc-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&j721e_evm_dtb>;
+						keyfile = "custMpk.pem";
+
+					};
+					j721e_evm_dtb: blob-ext {
+						filename = J721E_EVM_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-1 {
+					description = "k3-j721e-sk";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&j721e_sk_dtb>;
+						keyfile = "custMpk.pem";
+
+					};
+					j721e_sk_dtb: blob-ext {
+						filename = J721E_SK_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-j721e-common-proc-board";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-0";
+				};
+
+				conf-1 {
+					description = "k3-j721e-sk";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-1";
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	ti-spl_unsigned {
+		filename = "tispl.bin_unsigned";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "Configuration to load ATF and SPL";
+			#address-cells = <1>;
+
+			images {
+
+				atf {
+					description = "ARM Trusted Firmware";
+					type = "firmware";
+					arch = "arm64";
+					compression = "none";
+					os = "arm-trusted-firmware";
+					load = <CONFIG_K3_ATF_LOAD_ADDR>;
+					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
+					atf-bl31 {
+						filename = "bl31.bin";
+					};
+				};
+
+				tee {
+					description = "OPTEE";
+					type = "tee";
+					arch = "arm64";
+					compression = "none";
+					os = "tee";
+					load = <0x9e800000>;
+					entry = <0x9e800000>;
+					tee-os {
+						filename = "tee-pager_v2.bin";
+					};
+				};
+
+				dm {
+					description = "DM binary";
+					type = "firmware";
+					arch = "arm32";
+					compression = "none";
+					os = "DM";
+					load = <0x89000000>;
+					entry = <0x89000000>;
+					blob-ext {
+						filename = "ti-dm.bin";
+					};
+				};
+
+				spl {
+					description = "SPL (64-bit)";
+					type = "standalone";
+					os = "U-Boot";
+					arch = "arm64";
+					compression = "none";
+					load = <CONFIG_SPL_TEXT_BASE>;
+					entry = <CONFIG_SPL_TEXT_BASE>;
+					blob-ext {
+						filename = SPL_NODTB;
+					};
+				};
+
+				fdt-0 {
+					description = "k3-j721e-common-proc-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = SPL_J721E_EVM_DTB;
+					};
+				};
+
+				fdt-1 {
+					description = "k3-j721e-sk";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = SPL_J721E_SK_DTB;
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-j721e-common-proc-board";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-0";
+				};
+
+				conf-1 {
+					description = "k3-j721e-sk";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-1";
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	u-boot_unsigned {
+		filename = "u-boot.img_unsigned";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "FIT image with multiple configurations";
+
+			images {
+				uboot {
+					description = "U-Boot for j721e board";
+					type = "firmware";
+					os = "u-boot";
+					arch = "arm";
+					compression = "none";
+					load = <CONFIG_TEXT_BASE>;
+					blob {
+						filename = UBOOT_NODTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-j721e-common-proc-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = J721E_EVM_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-1 {
+					description = "k3-j721e-sk";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = J721E_SK_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-j721e-common-proc-board";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-0";
+				};
+
+				conf-1 {
+					description = "k3-j721e-sk";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-1";
+				};
+			};
+		};
+	};
+};
+#endif
diff --git a/arch/arm/dts/k3-j721e-common-proc-board-u-boot.dtsi b/arch/arm/dts/k3-j721e-common-proc-board-u-boot.dtsi
index 867ec2bb1a..540c847eb3 100644
--- a/arch/arm/dts/k3-j721e-common-proc-board-u-boot.dtsi
+++ b/arch/arm/dts/k3-j721e-common-proc-board-u-boot.dtsi
@@ -4,6 +4,7 @@
  */
 
 #include <dt-bindings/net/ti-dp83867.h>
+#include "k3-j721e-binman.dtsi"
 
 / {
 	chosen {
diff --git a/arch/arm/dts/k3-j721e-r5-common-proc-board.dts b/arch/arm/dts/k3-j721e-r5-common-proc-board.dts
index 1b40cf2580..32f71e9b6a 100644
--- a/arch/arm/dts/k3-j721e-r5-common-proc-board.dts
+++ b/arch/arm/dts/k3-j721e-r5-common-proc-board.dts
@@ -8,6 +8,7 @@
 #include "k3-j721e-som-p0.dtsi"
 #include "k3-j721e-ddr-evm-lp4-4266.dtsi"
 #include "k3-j721e-ddr.dtsi"
+#include "k3-j721e-binman.dtsi"
 #include <dt-bindings/phy/phy-cadence.h>
 
 / {
diff --git a/arch/arm/dts/k3-j721e-sk-u-boot.dtsi b/arch/arm/dts/k3-j721e-sk-u-boot.dtsi
index 31f979f3bb..205dacff4d 100644
--- a/arch/arm/dts/k3-j721e-sk-u-boot.dtsi
+++ b/arch/arm/dts/k3-j721e-sk-u-boot.dtsi
@@ -4,6 +4,7 @@
  */
 
 #include <dt-bindings/net/ti-dp83867.h>
+#include "k3-j721e-binman.dtsi"
 
 / {
 	chosen {
diff --git a/board/ti/j721e/Kconfig b/board/ti/j721e/Kconfig
index 84bca32712..4a127c4a10 100644
--- a/board/ti/j721e/Kconfig
+++ b/board/ti/j721e/Kconfig
@@ -13,6 +13,7 @@ config TARGET_J721E_A72_EVM
 	select BOARD_LATE_INIT
 	imply TI_I2C_BOARD_DETECT
 	select SYS_DISABLE_DCACHE_OPS
+	select BINMAN
 
 config TARGET_J721E_R5_EVM
 	bool "TI K3 based J721E EVM running on R5"
@@ -22,6 +23,7 @@ config TARGET_J721E_R5_EVM
 	select RAM
 	select SPL_RAM
 	select K3_DDRSS
+	select BINMAN
 	imply SYS_K3_SPL_ATF
 	imply TI_I2C_BOARD_DETECT
 
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 06/23] j7200: yaml: Add J7200 board config files
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (4 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 05/23] j721e: dts: binman: Package tiboot3.bin, sysfw.itb, tispl.bin, u-boot.img Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 07/23] j7200: dts: binman: Package tiboot3.bin, tispl.bin, u-boot.img Neha Malcom Francis
                   ` (16 subsequent siblings)
  22 siblings, 0 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Added YAML configs for J7200

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
---
 board/ti/j721e/board-cfg_j7200.yaml |   36 +
 board/ti/j721e/pm-cfg_j7200.yaml    |   12 +
 board/ti/j721e/rm-cfg_j7200.yaml    | 2065 +++++++++++++++++++++++++++
 board/ti/j721e/sec-cfg_j7200.yaml   |  380 +++++
 4 files changed, 2493 insertions(+)
 create mode 100644 board/ti/j721e/board-cfg_j7200.yaml
 create mode 100644 board/ti/j721e/pm-cfg_j7200.yaml
 create mode 100644 board/ti/j721e/rm-cfg_j7200.yaml
 create mode 100644 board/ti/j721e/sec-cfg_j7200.yaml

diff --git a/board/ti/j721e/board-cfg_j7200.yaml b/board/ti/j721e/board-cfg_j7200.yaml
new file mode 100644
index 0000000000..1453317ecb
--- /dev/null
+++ b/board/ti/j721e/board-cfg_j7200.yaml
@@ -0,0 +1,36 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Board configuration for J7200
+#
+
+---
+
+board-cfg:
+        rev:
+                boardcfg_abi_maj : 0x0
+                boardcfg_abi_min : 0x1
+        control:
+                subhdr:
+                        magic: 0xC1D3
+                        size: 7
+                main_isolation_enable : 0x5A
+                main_isolation_hostid : 0x2
+        secproxy:
+                subhdr:
+                        magic: 0x1207
+                        size: 7
+                scaling_factor : 0x1
+                scaling_profile : 0x1
+                disable_main_nav_secure_proxy : 0
+        msmc:
+                subhdr:
+                        magic: 0xA5C3
+                        size: 5
+                msmc_cache_size : 0x10
+        debug_cfg:
+                subhdr:
+                        magic: 0x020C
+                        size: 8
+                trace_dst_enables : 0x00
+                trace_src_enables : 0x00
diff --git a/board/ti/j721e/pm-cfg_j7200.yaml b/board/ti/j721e/pm-cfg_j7200.yaml
new file mode 100644
index 0000000000..588a1d530d
--- /dev/null
+++ b/board/ti/j721e/pm-cfg_j7200.yaml
@@ -0,0 +1,12 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Power management configuration for J7200
+#
+
+---
+
+pm-cfg:
+        rev:
+                boardcfg_abi_maj : 0x0
+                boardcfg_abi_min : 0x1
diff --git a/board/ti/j721e/rm-cfg_j7200.yaml b/board/ti/j721e/rm-cfg_j7200.yaml
new file mode 100644
index 0000000000..66b589f370
--- /dev/null
+++ b/board/ti/j721e/rm-cfg_j7200.yaml
@@ -0,0 +1,2065 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Resource management configuration for J7200
+#
+
+---
+
+rm-cfg:
+        rm_boardcfg:
+                rev:
+                        boardcfg_abi_maj : 0x0
+                        boardcfg_abi_min : 0x1
+                host_cfg:
+                        subhdr:
+                                magic: 0x4C41
+                                size : 356
+                        host_cfg_entries:
+                                - #1
+                                        host_id: 3
+                                        allowed_atype : 0b101010
+                                        allowed_qos : 0xAAAA
+                                        allowed_orderid : 0xAAAAAAAA
+                                        allowed_priority : 0xAAAA
+                                        allowed_sched_priority : 0xAA
+                                - #2
+                                        host_id: 5
+                                        allowed_atype : 0b101010
+                                        allowed_qos : 0xAAAA
+                                        allowed_orderid : 0xAAAAAAAA
+                                        allowed_priority : 0xAAAA
+                                        allowed_sched_priority : 0xAA
+                                - #3
+                                        host_id: 12
+                                        allowed_atype : 0b101010
+                                        allowed_qos : 0xAAAA
+                                        allowed_orderid : 0xAAAAAAAA
+                                        allowed_priority : 0xAAAA
+                                        allowed_sched_priority : 0xAA
+                                - #4
+                                        host_id: 13
+                                        allowed_atype : 0b101010
+                                        allowed_qos : 0xAAAA
+                                        allowed_orderid : 0xAAAAAAAA
+                                        allowed_priority : 0xAAAA
+                                        allowed_sched_priority : 0xAA
+                                - #5
+                                        host_id: 35
+                                        allowed_atype : 0b101010
+                                        allowed_qos : 0xAAAA
+                                        allowed_orderid : 0xAAAAAAAA
+                                        allowed_priority : 0xAAAA
+                                        allowed_sched_priority : 0xAA
+                                - #6
+                                        host_id: 37
+                                        allowed_atype : 0b101010
+                                        allowed_qos : 0xAAAA
+                                        allowed_orderid : 0xAAAAAAAA
+                                        allowed_priority : 0xAAAA
+                                        allowed_sched_priority : 0xAA
+                                - #7
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #8
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #9
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #10
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #11
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #12
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #13
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #14
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #15
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #16
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #17
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #18
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #19
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #20
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #21
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #22
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #23
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #24
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #25
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #26
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #27
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #28
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #29
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #30
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #31
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #32
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                resasg:
+                        subhdr:
+                                magic: 0x7B25
+                                size : 8
+                        resasg_entries_size: 2048
+                        reserved : 0
+        resasg_entries:
+                -
+                        start_resource: 0
+                        num_resource: 32
+                        type: 8192
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 32
+                        num_resource: 32
+                        type: 8192
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 24
+                        type: 8320
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 24
+                        type: 8320
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 8
+                        type: 8384
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 8
+                        type: 8384
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 16
+                        num_resource: 8
+                        type: 8384
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 8
+                        type: 8384
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 32
+                        num_resource: 16
+                        type: 8384
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 48
+                        num_resource: 16
+                        type: 8384
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 48
+                        type: 8704
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 8
+                        type: 8768
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 8
+                        type: 8768
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 16
+                        num_resource: 8
+                        type: 8768
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 8
+                        type: 8768
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 64
+                        type: 13258
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 20480
+                        num_resource: 1024
+                        type: 13261
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 64
+                        type: 13322
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 22528
+                        num_resource: 1024
+                        type: 13325
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 18
+                        num_resource: 86
+                        type: 13386
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 104
+                        num_resource: 32
+                        type: 13386
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 136
+                        num_resource: 16
+                        type: 13386
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 152
+                        num_resource: 16
+                        type: 13386
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 168
+                        num_resource: 32
+                        type: 13386
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 200
+                        num_resource: 24
+                        type: 13386
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 224
+                        num_resource: 32
+                        type: 13386
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 18
+                        num_resource: 1024
+                        type: 13389
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 1042
+                        num_resource: 512
+                        type: 13389
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 1554
+                        num_resource: 128
+                        type: 13389
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 1682
+                        num_resource: 128
+                        type: 13389
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 1810
+                        num_resource: 256
+                        type: 13389
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 2066
+                        num_resource: 512
+                        type: 13389
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 2578
+                        num_resource: 2030
+                        type: 13389
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 4
+                        type: 13440
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 4
+                        num_resource: 4
+                        type: 13440
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 4
+                        type: 13440
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 12
+                        num_resource: 4
+                        type: 13440
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 16
+                        num_resource: 16
+                        type: 13440
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 32
+                        num_resource: 16
+                        type: 13440
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 48
+                        num_resource: 16
+                        type: 13440
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 1
+                        type: 13504
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 120
+                        num_resource: 200
+                        type: 13505
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 320
+                        num_resource: 40
+                        type: 13505
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 360
+                        num_resource: 32
+                        type: 13505
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 392
+                        num_resource: 32
+                        type: 13505
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 424
+                        num_resource: 256
+                        type: 13505
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 680
+                        num_resource: 256
+                        type: 13505
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 936
+                        num_resource: 38
+                        type: 13505
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 64
+                        num_resource: 4
+                        type: 13506
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 68
+                        num_resource: 2
+                        type: 13506
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 70
+                        num_resource: 2
+                        type: 13506
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 72
+                        num_resource: 2
+                        type: 13506
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 74
+                        num_resource: 2
+                        type: 13506
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 76
+                        num_resource: 2
+                        type: 13506
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 78
+                        num_resource: 20
+                        type: 13506
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 98
+                        num_resource: 4
+                        type: 13506
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 102
+                        num_resource: 8
+                        type: 13506
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 110
+                        num_resource: 8
+                        type: 13506
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 118
+                        num_resource: 2
+                        type: 13506
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 4
+                        num_resource: 4
+                        type: 13507
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 2
+                        type: 13507
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 10
+                        num_resource: 2
+                        type: 13507
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 12
+                        num_resource: 2
+                        type: 13507
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 14
+                        num_resource: 2
+                        type: 13507
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 16
+                        num_resource: 2
+                        type: 13507
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 18
+                        num_resource: 20
+                        type: 13507
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 38
+                        num_resource: 4
+                        type: 13507
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 42
+                        num_resource: 8
+                        type: 13507
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 50
+                        num_resource: 8
+                        type: 13507
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 58
+                        num_resource: 2
+                        type: 13507
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 62
+                        num_resource: 0
+                        type: 13509
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 62
+                        num_resource: 1
+                        type: 13509
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 62
+                        num_resource: 0
+                        type: 13509
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 63
+                        num_resource: 1
+                        type: 13509
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 60
+                        num_resource: 0
+                        type: 13510
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 60
+                        num_resource: 2
+                        type: 13510
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 0
+                        type: 13511
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 1
+                        type: 13511
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 0
+                        type: 13511
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 3
+                        num_resource: 1
+                        type: 13511
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 13512
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 2
+                        type: 13512
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 1
+                        type: 13514
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 3
+                        num_resource: 1
+                        type: 13514
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 3
+                        type: 13515
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 3
+                        num_resource: 2
+                        type: 13515
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 5
+                        num_resource: 1
+                        type: 13515
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 6
+                        num_resource: 1
+                        type: 13515
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 7
+                        num_resource: 16
+                        type: 13515
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 23
+                        num_resource: 8
+                        type: 13515
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 31
+                        num_resource: 1
+                        type: 13515
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 60
+                        num_resource: 8
+                        type: 13568
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 68
+                        num_resource: 8
+                        type: 13568
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 76
+                        num_resource: 8
+                        type: 13568
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 84
+                        num_resource: 66
+                        type: 13568
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 1
+                        type: 13569
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 49152
+                        num_resource: 1024
+                        type: 13570
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 1
+                        type: 13571
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 4
+                        num_resource: 4
+                        type: 13578
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 2
+                        type: 13578
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 10
+                        num_resource: 2
+                        type: 13578
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 12
+                        num_resource: 2
+                        type: 13578
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 14
+                        num_resource: 2
+                        type: 13578
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 16
+                        num_resource: 2
+                        type: 13578
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 18
+                        num_resource: 20
+                        type: 13578
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 38
+                        num_resource: 4
+                        type: 13578
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 42
+                        num_resource: 8
+                        type: 13578
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 50
+                        num_resource: 8
+                        type: 13578
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 58
+                        num_resource: 2
+                        type: 13578
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 0
+                        type: 13579
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 1
+                        type: 13579
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 0
+                        type: 13579
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 3
+                        num_resource: 1
+                        type: 13579
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 13580
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 2
+                        type: 13580
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 4
+                        num_resource: 4
+                        type: 13581
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 8
+                        num_resource: 2
+                        type: 13581
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 10
+                        num_resource: 2
+                        type: 13581
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 12
+                        num_resource: 2
+                        type: 13581
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 14
+                        num_resource: 2
+                        type: 13581
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 16
+                        num_resource: 2
+                        type: 13581
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 18
+                        num_resource: 20
+                        type: 13581
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 38
+                        num_resource: 4
+                        type: 13581
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 42
+                        num_resource: 8
+                        type: 13581
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 50
+                        num_resource: 8
+                        type: 13581
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 58
+                        num_resource: 2
+                        type: 13581
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 0
+                        type: 13583
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 1
+                        type: 13583
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 0
+                        type: 13583
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 3
+                        num_resource: 1
+                        type: 13583
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 13584
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 2
+                        type: 13584
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 10
+                        num_resource: 128
+                        type: 13632
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 138
+                        num_resource: 54
+                        type: 13632
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 196
+                        num_resource: 28
+                        type: 13632
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 228
+                        num_resource: 28
+                        type: 13632
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 400
+                        num_resource: 4
+                        type: 13632
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 404
+                        num_resource: 4
+                        type: 13632
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 15
+                        num_resource: 32
+                        type: 14922
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 47
+                        num_resource: 16
+                        type: 14922
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 63
+                        num_resource: 64
+                        type: 14922
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 127
+                        num_resource: 32
+                        type: 14922
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 159
+                        num_resource: 16
+                        type: 14922
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 175
+                        num_resource: 16
+                        type: 14922
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 191
+                        num_resource: 65
+                        type: 14922
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 16399
+                        num_resource: 128
+                        type: 14925
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 16527
+                        num_resource: 128
+                        type: 14925
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 16655
+                        num_resource: 256
+                        type: 14925
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 16911
+                        num_resource: 128
+                        type: 14925
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 17039
+                        num_resource: 128
+                        type: 14925
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 17167
+                        num_resource: 128
+                        type: 14925
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 17295
+                        num_resource: 625
+                        type: 14925
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 1
+                        num_resource: 8
+                        type: 14976
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 9
+                        num_resource: 4
+                        type: 14976
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 13
+                        num_resource: 16
+                        type: 14976
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 29
+                        num_resource: 16
+                        type: 14976
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 45
+                        num_resource: 8
+                        type: 14976
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 53
+                        num_resource: 8
+                        type: 14976
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 61
+                        num_resource: 3
+                        type: 14976
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 1
+                        type: 15040
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 96
+                        num_resource: 32
+                        type: 15041
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 128
+                        num_resource: 16
+                        type: 15041
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 144
+                        num_resource: 32
+                        type: 15041
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 176
+                        num_resource: 32
+                        type: 15041
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 208
+                        num_resource: 16
+                        type: 15041
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 224
+                        num_resource: 16
+                        type: 15041
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 240
+                        num_resource: 12
+                        type: 15041
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 50
+                        num_resource: 3
+                        type: 15042
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 53
+                        num_resource: 2
+                        type: 15042
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 55
+                        num_resource: 2
+                        type: 15042
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 57
+                        num_resource: 2
+                        type: 15042
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 59
+                        num_resource: 2
+                        type: 15042
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 61
+                        num_resource: 2
+                        type: 15042
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 63
+                        num_resource: 9
+                        type: 15042
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 72
+                        num_resource: 4
+                        type: 15042
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 76
+                        num_resource: 4
+                        type: 15042
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 80
+                        num_resource: 4
+                        type: 15042
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 84
+                        num_resource: 4
+                        type: 15042
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 88
+                        num_resource: 4
+                        type: 15042
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 92
+                        num_resource: 1
+                        type: 15042
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 3
+                        type: 15043
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 5
+                        num_resource: 2
+                        type: 15043
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 7
+                        num_resource: 2
+                        type: 15043
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 9
+                        num_resource: 2
+                        type: 15043
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 11
+                        num_resource: 2
+                        type: 15043
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 13
+                        num_resource: 2
+                        type: 15043
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 15
+                        num_resource: 9
+                        type: 15043
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 4
+                        type: 15043
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 28
+                        num_resource: 4
+                        type: 15043
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 32
+                        num_resource: 4
+                        type: 15043
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 36
+                        num_resource: 4
+                        type: 15043
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 40
+                        num_resource: 4
+                        type: 15043
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 44
+                        num_resource: 2
+                        type: 15043
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 48
+                        num_resource: 0
+                        type: 15045
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 48
+                        num_resource: 0
+                        type: 15045
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 48
+                        num_resource: 1
+                        type: 15045
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 49
+                        num_resource: 1
+                        type: 15045
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 15047
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 15047
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 1
+                        type: 15047
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 1
+                        num_resource: 1
+                        type: 15047
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 1
+                        type: 15050
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 3
+                        num_resource: 1
+                        type: 15050
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 3
+                        type: 15051
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 3
+                        num_resource: 2
+                        type: 15051
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 5
+                        num_resource: 6
+                        type: 15051
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 11
+                        num_resource: 6
+                        type: 15051
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 17
+                        num_resource: 5
+                        type: 15051
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 22
+                        num_resource: 5
+                        type: 15051
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 27
+                        num_resource: 5
+                        type: 15051
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 48
+                        num_resource: 8
+                        type: 15104
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 56
+                        num_resource: 4
+                        type: 15104
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 60
+                        num_resource: 8
+                        type: 15104
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 68
+                        num_resource: 4
+                        type: 15104
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 72
+                        num_resource: 8
+                        type: 15104
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 80
+                        num_resource: 4
+                        type: 15104
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 84
+                        num_resource: 12
+                        type: 15104
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 1
+                        type: 15105
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 56320
+                        num_resource: 256
+                        type: 15106
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 1
+                        type: 15107
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 3
+                        type: 15114
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 5
+                        num_resource: 2
+                        type: 15114
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 7
+                        num_resource: 2
+                        type: 15114
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 9
+                        num_resource: 2
+                        type: 15114
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 11
+                        num_resource: 2
+                        type: 15114
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 13
+                        num_resource: 2
+                        type: 15114
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 15
+                        num_resource: 9
+                        type: 15114
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 4
+                        type: 15114
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 28
+                        num_resource: 4
+                        type: 15114
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 32
+                        num_resource: 4
+                        type: 15114
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 36
+                        num_resource: 4
+                        type: 15114
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 40
+                        num_resource: 4
+                        type: 15114
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 44
+                        num_resource: 1
+                        type: 15114
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 15115
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 15115
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 1
+                        type: 15115
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 1
+                        num_resource: 1
+                        type: 15115
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 2
+                        num_resource: 3
+                        type: 15117
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 5
+                        num_resource: 2
+                        type: 15117
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 7
+                        num_resource: 2
+                        type: 15117
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 9
+                        num_resource: 2
+                        type: 15117
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 11
+                        num_resource: 2
+                        type: 15117
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 13
+                        num_resource: 2
+                        type: 15117
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 15
+                        num_resource: 9
+                        type: 15117
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 24
+                        num_resource: 4
+                        type: 15117
+                        host_id: 13
+                        reserved: 0
+
+                -
+                        start_resource: 28
+                        num_resource: 4
+                        type: 15117
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 32
+                        num_resource: 4
+                        type: 15117
+                        host_id: 5
+                        reserved: 0
+
+                -
+                        start_resource: 36
+                        num_resource: 4
+                        type: 15117
+                        host_id: 35
+                        reserved: 0
+
+                -
+                        start_resource: 40
+                        num_resource: 4
+                        type: 15117
+                        host_id: 37
+                        reserved: 0
+
+                -
+                        start_resource: 44
+                        num_resource: 2
+                        type: 15117
+                        host_id: 128
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 15119
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 0
+                        type: 15119
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 0
+                        num_resource: 1
+                        type: 15119
+                        host_id: 12
+                        reserved: 0
+
+                -
+                        start_resource: 1
+                        num_resource: 1
+                        type: 15119
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 11
+                        num_resource: 20
+                        type: 15168
+                        host_id: 3
+                        reserved: 0
+
+                -
+                        start_resource: 36
+                        num_resource: 28
+                        type: 15168
+                        host_id: 5
+                        reserved: 0
diff --git a/board/ti/j721e/sec-cfg_j7200.yaml b/board/ti/j721e/sec-cfg_j7200.yaml
new file mode 100644
index 0000000000..69038834c0
--- /dev/null
+++ b/board/ti/j721e/sec-cfg_j7200.yaml
@@ -0,0 +1,380 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Security management configuration for J7200
+#
+
+---
+
+sec-cfg:
+        rev:
+                boardcfg_abi_maj : 0x0
+                boardcfg_abi_min : 0x1
+        processor_acl_list:
+                subhdr:
+                        magic: 0xF1EA
+                        size: 164
+                proc_acl_entries:
+                        - #1
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #2
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #3
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #4
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #5
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #6
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #7
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #8
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #9
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #10
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #11
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #12
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #13
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #14
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #15
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #16
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #17
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #18
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #19
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #20
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #21
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #22
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #23
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #24
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #25
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #26
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #27
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #28
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #29
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #30
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #31
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #32
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+
+        host_hierarchy:
+                subhdr:
+                        magic: 0x8D27
+                        size: 68
+                host_hierarchy_entries:
+                        - #1
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #2
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #3
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #4
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #5
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #6
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #7
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #8
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #9
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #10
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #11
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #12
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #13
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #14
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #15
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #16
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #17
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #18
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #19
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #20
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #21
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #22
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #23
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #24
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #25
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #26
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #27
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #28
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #29
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #30
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #31
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #32
+                                host_id: 0
+                                supervisor_host_id: 0
+        otp_config:
+                subhdr:
+                        magic: 0x4081
+                        size: 69
+                write_host_id : 0
+                otp_entry:
+                        - #1
+                                host_id: 0
+                                host_perms: 0
+                        - #2
+                                host_id: 0
+                                host_perms: 0
+                        - #3
+                                host_id: 0
+                                host_perms: 0
+                        - #4
+                                host_id: 0
+                                host_perms: 0
+                        - #5
+                                host_id: 0
+                                host_perms: 0
+                        - #6
+                                host_id: 0
+                                host_perms: 0
+                        - #7
+                                host_id: 0
+                                host_perms: 0
+                        - #8
+                                host_id: 0
+                                host_perms: 0
+                        - #9
+                                host_id: 0
+                                host_perms: 0
+                        - #10
+                                host_id: 0
+                                host_perms: 0
+                        - #11
+                                host_id: 0
+                                host_perms: 0
+                        - #12
+                                host_id: 0
+                                host_perms: 0
+                        - #13
+                                host_id: 0
+                                host_perms: 0
+                        - #14
+                                host_id: 0
+                                host_perms: 0
+                        - #15
+                                host_id: 0
+                                host_perms: 0
+                        - #16
+                                host_id: 0
+                                host_perms: 0
+                        - #17
+                                host_id: 0
+                                host_perms: 0
+                        - #18
+                                host_id: 0
+                                host_perms: 0
+                        - #19
+                                host_id: 0
+                                host_perms: 0
+                        - #20
+                                host_id: 0
+                                host_perms: 0
+                        - #21
+                                host_id: 0
+                                host_perms: 0
+                        - #22
+                                host_id: 0
+                                host_perms: 0
+                        - #23
+                                host_id: 0
+                                host_perms: 0
+                        - #24
+                                host_id: 0
+                                host_perms: 0
+                        - #25
+                                host_id: 0
+                                host_perms: 0
+                        - #26
+                                host_id: 0
+                                host_perms: 0
+                        - #27
+                                host_id: 0
+                                host_perms: 0
+                        - #28
+                                host_id: 0
+                                host_perms: 0
+                        - #29
+                                host_id: 0
+                                host_perms: 0
+                        - #30
+                                host_id: 0
+                                host_perms: 0
+                        - #31
+                                host_id: 0
+                                host_perms: 0
+                        - #32
+                                host_id: 0
+                                host_perms: 0
+        dkek_config:
+                subhdr:
+                        magic: 0x5170
+                        size: 12
+                allowed_hosts: [128, 0, 0, 0]
+                allow_dkek_export_tisci : 0x5A
+                rsvd: [0, 0, 0]
+        sa2ul_cfg:
+                subhdr:
+                        magic: 0x23BE
+                        size : 0
+                auth_resource_owner: 0
+                enable_saul_psil_global_config_writes: 0
+                rsvd: [0, 0]
+        sec_dbg_config:
+                subhdr:
+                        magic: 0x42AF
+                        size: 16
+                allow_jtag_unlock : 0x5A
+                allow_wildcard_unlock : 0x5A
+                allowed_debug_level_rsvd : 0
+                rsvd : 0
+                min_cert_rev : 0x0
+                jtag_unlock_hosts: [0, 0, 0, 0]
+        sec_handover_cfg:
+                subhdr:
+                        magic: 0x608F
+                        size: 10
+                handover_msg_sender : 0
+                handover_to_host_id : 0
+                rsvd: [0, 0, 0, 0]
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 07/23] j7200: dts: binman: Package tiboot3.bin, tispl.bin, u-boot.img
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (5 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 06/23] j7200: yaml: Add J7200 board config files Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 08/23] am65x: yaml: Add AM65x board config files Neha Malcom Francis
                   ` (15 subsequent siblings)
  22 siblings, 0 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Support has been added for both HS-SE(SR 2.0), HS-FS(SR 2.0) and GP
images.

HS-SE:
	* tiboot3-j7200_sr2-hs-evm.bin
	* tispl.bin
	* u-boot.img

HS-FS:
	* tiboot3-j7200_sr2-hs-fs-evm.bin
	* tispl.bin
	* u-boot.img

GP:
	* tiboot3.bin --> tiboot3-j7200-gp-evm.bin
	* tispl.bin_unsigned
	* u-boot.img_unsigned

It is to be noted that the bootflow followed by J7200 requires:

tiboot3.bin:
	* R5 SPL
	* R5 SPL dtbs
	* TIFS
	* board-cfg
	* pm-cfg
	* sec-cfg
	* rm-cfg

tispl.bin:
	* DM
	* ATF
	* OPTEE
	* A72 SPL
	* A72 SPL dtbs

u-boot.img:
	* A72 U-Boot
	* A72 U-Boot dtbs

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
[afd@ti.com: changed output binary names appropriately]
Signed-off-by: Andrew Davis <afd@ti.com>
---
 arch/arm/dts/k3-j7200-binman.dtsi             | 502 ++++++++++++++++++
 .../k3-j7200-common-proc-board-u-boot.dtsi    |   2 +
 board/ti/j721e/Kconfig                        |   2 +
 3 files changed, 506 insertions(+)
 create mode 100644 arch/arm/dts/k3-j7200-binman.dtsi

diff --git a/arch/arm/dts/k3-j7200-binman.dtsi b/arch/arm/dts/k3-j7200-binman.dtsi
new file mode 100644
index 0000000000..61bf576970
--- /dev/null
+++ b/arch/arm/dts/k3-j7200-binman.dtsi
@@ -0,0 +1,502 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+ */
+
+#include "k3-binman.dtsi"
+
+#ifdef CONFIG_TARGET_J7200_R5_EVM
+
+&bcfg_yaml {
+	config = "board-cfg_j7200.yaml";
+};
+
+&rcfg_yaml {
+	config = "rm-cfg_j7200.yaml";
+};
+
+&pcfg_yaml {
+	config = "pm-cfg_j7200.yaml";
+};
+
+&scfg_yaml {
+	config = "sec-cfg_j7200.yaml";
+};
+
+&bcfg_yaml_tifs {
+	config = "board-cfg_j7200.yaml";
+};
+
+&rcfg_yaml_tifs {
+	config = "rm-cfg_j7200.yaml";
+};
+
+&pcfg_yaml_tifs {
+	config = "pm-cfg_j7200.yaml";
+};
+
+&scfg_yaml_tifs {
+	config = "sec-cfg_j7200.yaml";
+};
+
+&rcfg_yaml_dm {
+	config = "rm-cfg_j7200.yaml";
+};
+
+&pcfg_yaml_dm {
+	config = "pm-cfg_j7200.yaml";
+};
+
+&binman {
+	tiboot3-j7200_sr2-hs-evm.bin {
+		filename = "tiboot3-j7200_sr2-hs-evm.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl>, <&ti_fs_enc>, <&combined_tifs_cfg>,
+				<&combined_dm_cfg>, <&sysfw_inner_cert>;
+			combined;
+			dm-data;
+			sysfw-inner-cert;
+			keyfile = "custMpk.pem";
+			sw-rev = <1>;
+			content-sbl = <&u_boot_spl>;
+			content-sysfw = <&ti_fs_enc>;
+			content-sysfw-data = <&combined_tifs_cfg>;
+			content-sysfw-inner-cert = <&sysfw_inner_cert>;
+			content-dm-data = <&combined_dm_cfg>;
+			load = <0x41c00000>;
+			load-sysfw = <0x40000>;
+			load-sysfw-data = <0x7f000>;
+			load-dm-data = <0x41c80000>;
+		};
+		u_boot_spl: u-boot-spl {
+			no-expanded;
+		};
+		ti_fs_enc: ti-fs-enc.bin {
+			filename = "ti-sysfw/ti-fs-firmware-j7200_sr2-hs-enc.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_tifs_cfg: combined-tifs-cfg.bin {
+			filename = "combined-tifs-cfg.bin";
+			type = "blob-ext";
+		};
+		sysfw_inner_cert: sysfw-inner-cert {
+			filename = "ti-sysfw/ti-fs-firmware-j7200_sr2-hs-cert.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_dm_cfg: combined-dm-cfg.bin {
+			filename = "combined-dm-cfg.bin";
+			type = "blob-ext";
+		};
+	};
+};
+
+&binman {
+	tiboot3-j7200_sr2-hs-fs-evm.bin {
+		filename = "tiboot3-j7200_sr2-hs-fs-evm.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl_fs>, <&ti_fs_enc_fs>, <&combined_tifs_cfg_fs>,
+				<&combined_dm_cfg_fs>, <&sysfw_inner_cert_fs>;
+			combined;
+			dm-data;
+			sysfw-inner-cert;
+			keyfile = "custMpk.pem";
+			sw-rev = <1>;
+			content-sbl = <&u_boot_spl_fs>;
+			content-sysfw = <&ti_fs_enc_fs>;
+			content-sysfw-data = <&combined_tifs_cfg_fs>;
+			content-sysfw-inner-cert = <&sysfw_inner_cert_fs>;
+			content-dm-data = <&combined_dm_cfg_fs>;
+			load = <0x41c00000>;
+			load-sysfw = <0x40000>;
+			load-sysfw-data = <0x7f000>;
+			load-dm-data = <0x41c80000>;
+		};
+		u_boot_spl_fs: u-boot-spl {
+			no-expanded;
+		};
+		ti_fs_enc_fs: ti-fs-enc.bin {
+			filename = "ti-sysfw/ti-fs-firmware-j7200_sr2-hs-fs-enc.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_tifs_cfg_fs: combined-tifs-cfg.bin {
+			filename = "combined-tifs-cfg.bin";
+			type = "blob-ext";
+		};
+		sysfw_inner_cert_fs: sysfw-inner-cert {
+			filename = "ti-sysfw/ti-fs-firmware-j7200_sr2-hs-fs-cert.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_dm_cfg_fs: combined-dm-cfg.bin {
+			filename = "combined-dm-cfg.bin";
+			type = "blob-ext";
+		};
+	};
+};
+
+&binman {
+	tiboot3-j7200-gp-evm.bin {
+		filename = "tiboot3-j7200-gp-evm.bin";
+		symlink = "tiboot3.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl_unsigned>, <&ti_fs_gp>,
+				<&combined_tifs_cfg_gp>, <&combined_dm_cfg_gp>;
+			combined;
+			dm-data;
+			content-sbl = <&u_boot_spl_unsigned>;
+			load = <0x41c00000>;
+			content-sysfw = <&ti_fs_gp>;
+			load-sysfw = <0x40000>;
+			content-sysfw-data = <&combined_tifs_cfg_gp>;
+			load-sysfw-data = <0x7f000>;
+			content-dm-data = <&combined_dm_cfg_gp>;
+			load-dm-data = <0x41c80000>;
+			sw-rev = <1>;
+			keyfile = "ti-degenerate-key.pem";
+		};
+		u_boot_spl_unsigned: u-boot-spl {
+			no-expanded;
+		};
+		ti_fs_gp: ti-fs-gp.bin {
+			filename = "ti-sysfw/ti-fs-firmware-j7200-gp.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_tifs_cfg_gp: combined-tifs-cfg-gp.bin {
+			filename = "combined-tifs-cfg.bin";
+			type = "blob-ext";
+		};
+		combined_dm_cfg_gp: combined-dm-cfg-gp.bin {
+			filename = "combined-dm-cfg.bin";
+			type = "blob-ext";
+		};
+	};
+};
+
+#endif
+
+#ifdef CONFIG_TARGET_J7200_A72_EVM
+
+#define SPL_NODTB "spl/u-boot-spl-nodtb.bin"
+#define SPL_J7200_EVM_DTB "spl/dts/k3-j7200-common-proc-board.dtb"
+
+#define UBOOT_NODTB "u-boot-nodtb.bin"
+#define J7200_EVM_DTB "arch/arm/dts/k3-j7200-common-proc-board.dtb"
+
+&binman {
+	ti-dm {
+		filename = "ti-dm.bin";
+		blob-ext {
+			filename = "ti-dm/j7200/ipc_echo_testb_mcu1_0_release_strip.xer5f";
+		};
+	};
+	ti-spl {
+		filename = "tispl.bin";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "Configuration to load ATF and SPL";
+			#address-cells = <1>;
+
+			images {
+
+				atf {
+					description = "ARM Trusted Firmware";
+					type = "firmware";
+					arch = "arm64";
+					compression = "none";
+					os = "arm-trusted-firmware";
+					load = <CONFIG_K3_ATF_LOAD_ADDR>;
+					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
+					ti-secure {
+						content = <&atf>;
+						keyfile = "custMpk.pem";
+					};
+					atf: atf-bl31 {
+					};
+				};
+
+				tee {
+					description = "OPTEE";
+					type = "tee";
+					arch = "arm64";
+					compression = "none";
+					os = "tee";
+					load = <0x9e800000>;
+					entry = <0x9e800000>;
+					ti-secure {
+						content = <&tee>;
+						keyfile = "custMpk.pem";
+					};
+					tee: tee-os {
+					};
+				};
+
+				dm {
+					description = "DM binary";
+					type = "firmware";
+					arch = "arm32";
+					compression = "none";
+					os = "DM";
+					load = <0x89000000>;
+					entry = <0x89000000>;
+					ti-secure {
+						content = <&dm>;
+						keyfile = "custMpk.pem";
+					};
+
+					dm: blob-ext {
+						filename = "ti-dm.bin";
+					};
+				};
+
+				spl {
+					description = "SPL (64-bit)";
+					type = "standalone";
+					os = "U-Boot";
+					arch = "arm64";
+					compression = "none";
+					load = <CONFIG_SPL_TEXT_BASE>;
+					entry = <CONFIG_SPL_TEXT_BASE>;
+					ti-secure {
+						content = <&u_boot_spl_nodtb>;
+						keyfile = "custMpk.pem";
+					};
+					u_boot_spl_nodtb: blob-ext {
+						filename = SPL_NODTB;
+					};
+				};
+
+				fdt-0 {
+					description = "k3-j7200-common-proc-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&spl_j7200_evm_dtb>;
+						keyfile = "custMpk.pem";
+					};
+					spl_j7200_evm_dtb: blob-ext {
+						filename = SPL_J7200_EVM_DTB;
+					};
+				};
+
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-j7200-common-proc-board";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-0";
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	u-boot {
+		filename = "u-boot.img";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "FIT image with multiple configurations";
+
+			images {
+				uboot {
+					description = "U-Boot for J7200 board";
+					type = "firmware";
+					os = "u-boot";
+					arch = "arm";
+					compression = "none";
+					load = <CONFIG_TEXT_BASE>;
+					ti-secure {
+						content = <&u_boot_nodtb>;
+						keyfile = "custMpk.pem";
+					};
+					u_boot_nodtb: u-boot-nodtb {
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-j7200-common-proc-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&j7200_evm_dtb>;
+						keyfile = "custMpk.pem";
+					};
+					j7200_evm_dtb: blob-ext {
+						filename = J7200_EVM_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-j7200-common-proc-board";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-0";
+				};
+
+			};
+		};
+	};
+};
+
+&binman {
+	ti-spl_unsigned {
+		filename = "tispl.bin_unsigned";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "Configuration to load ATF and SPL";
+			#address-cells = <1>;
+
+			images {
+
+				atf {
+					description = "ARM Trusted Firmware";
+					type = "firmware";
+					arch = "arm64";
+					compression = "none";
+					os = "arm-trusted-firmware";
+					load = <CONFIG_K3_ATF_LOAD_ADDR>;
+					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
+					atf-bl31 {
+						filename = "bl31.bin";
+					};
+				};
+
+				tee {
+					description = "OPTEE";
+					type = "tee";
+					arch = "arm64";
+					compression = "none";
+					os = "tee";
+					load = <0x9e800000>;
+					entry = <0x9e800000>;
+					tee-os {
+						filename = "tee-pager_v2.bin";
+					};
+				};
+
+				dm {
+					description = "DM binary";
+					type = "firmware";
+					arch = "arm32";
+					compression = "none";
+					os = "DM";
+					load = <0x89000000>;
+					entry = <0x89000000>;
+					blob-ext {
+						filename = "ti-dm.bin";
+					};
+				};
+
+				spl {
+					description = "SPL (64-bit)";
+					type = "standalone";
+					os = "U-Boot";
+					arch = "arm64";
+					compression = "none";
+					load = <CONFIG_SPL_TEXT_BASE>;
+					entry = <CONFIG_SPL_TEXT_BASE>;
+					blob {
+						filename = SPL_NODTB;
+					};
+				};
+
+				fdt-1 {
+					description = "k3-j7200-common-proc-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = SPL_J7200_EVM_DTB;
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-1";
+
+				conf-1 {
+					description = "k3-j7200-common-proc-board";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-1";
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	u-boot_unsigned {
+		filename = "u-boot.img_unsigned";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "FIT image with multiple configurations";
+
+			images {
+				uboot {
+					description = "U-Boot for J7200 board";
+					type = "firmware";
+					os = "u-boot";
+					arch = "arm";
+					compression = "none";
+					load = <CONFIG_TEXT_BASE>;
+					blob {
+						filename = UBOOT_NODTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-1 {
+					description = "k3-j7200-common-proc-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = J7200_EVM_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-1";
+
+				conf-1 {
+					description = "k3-j7200-common-proc-board";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-1";
+				};
+			};
+		};
+	};
+};
+#endif
diff --git a/arch/arm/dts/k3-j7200-common-proc-board-u-boot.dtsi b/arch/arm/dts/k3-j7200-common-proc-board-u-boot.dtsi
index f57c2306ba..f25c7136c9 100644
--- a/arch/arm/dts/k3-j7200-common-proc-board-u-boot.dtsi
+++ b/arch/arm/dts/k3-j7200-common-proc-board-u-boot.dtsi
@@ -3,6 +3,8 @@
  * Copyright (C) 2020 Texas Instruments Incorporated - https://www.ti.com/
  */
 
+#include "k3-j7200-binman.dtsi"
+
 / {
 	chosen {
 		stdout-path = "serial2:115200n8";
diff --git a/board/ti/j721e/Kconfig b/board/ti/j721e/Kconfig
index 4a127c4a10..e6cb21f77b 100644
--- a/board/ti/j721e/Kconfig
+++ b/board/ti/j721e/Kconfig
@@ -33,6 +33,7 @@ config TARGET_J7200_A72_EVM
 	select BOARD_LATE_INIT
 	imply TI_I2C_BOARD_DETECT
 	select SYS_DISABLE_DCACHE_OPS
+	select BINMAN
 
 config TARGET_J7200_R5_EVM
 	bool "TI K3 based J7200 EVM running on R5"
@@ -42,6 +43,7 @@ config TARGET_J7200_R5_EVM
 	select RAM
 	select SPL_RAM
 	select K3_DDRSS
+	select BINMAN
 	imply SYS_K3_SPL_ATF
 	imply TI_I2C_BOARD_DETECT
 
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 08/23] am65x: yaml: Add AM65x board config files
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (6 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 07/23] j7200: dts: binman: Package tiboot3.bin, tispl.bin, u-boot.img Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 09/23] am65: dts: binman: Package tiboot3.bin, sysfw.itb, tispl.bin, u-boot.img Neha Malcom Francis
                   ` (14 subsequent siblings)
  22 siblings, 0 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Added YAML configs for AM65x

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
---
 board/ti/am65x/board-cfg.yaml |   36 +
 board/ti/am65x/pm-cfg.yaml    |   12 +
 board/ti/am65x/rm-cfg.yaml    | 2068 +++++++++++++++++++++++++++++++++
 board/ti/am65x/sec-cfg.yaml   |  379 ++++++
 4 files changed, 2495 insertions(+)
 create mode 100644 board/ti/am65x/board-cfg.yaml
 create mode 100644 board/ti/am65x/pm-cfg.yaml
 create mode 100644 board/ti/am65x/rm-cfg.yaml
 create mode 100644 board/ti/am65x/sec-cfg.yaml

diff --git a/board/ti/am65x/board-cfg.yaml b/board/ti/am65x/board-cfg.yaml
new file mode 100644
index 0000000000..133720ec3e
--- /dev/null
+++ b/board/ti/am65x/board-cfg.yaml
@@ -0,0 +1,36 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Board configuration for AM65x
+#
+
+---
+
+board-cfg:
+    rev:
+        boardcfg_abi_maj : 0x0
+        boardcfg_abi_min : 0x1
+    control:
+        subhdr:
+            magic: 0xC1D3
+            size: 7
+        main_isolation_enable : 0x5A
+        main_isolation_hostid : 0x2
+    secproxy:
+        subhdr:
+            magic: 0x1207
+            size: 7
+        scaling_factor : 0x1
+        scaling_profile : 0x1
+        disable_main_nav_secure_proxy : 0
+    msmc:
+        subhdr:
+            magic: 0xA5C3
+            size: 5
+        msmc_cache_size : 0x10
+    debug_cfg:
+        subhdr:
+            magic: 0x020C
+            size: 8
+        trace_dst_enables : 0x00
+        trace_src_enables : 0x00
diff --git a/board/ti/am65x/pm-cfg.yaml b/board/ti/am65x/pm-cfg.yaml
new file mode 100644
index 0000000000..4b1ce475cd
--- /dev/null
+++ b/board/ti/am65x/pm-cfg.yaml
@@ -0,0 +1,12 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Power management configuration for AM65x
+#
+
+---
+
+pm-cfg:
+    rev:
+        boardcfg_abi_maj : 0x0
+        boardcfg_abi_min : 0x1
diff --git a/board/ti/am65x/rm-cfg.yaml b/board/ti/am65x/rm-cfg.yaml
new file mode 100644
index 0000000000..61acd0aa60
--- /dev/null
+++ b/board/ti/am65x/rm-cfg.yaml
@@ -0,0 +1,2068 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Resource management configuration for AM65x
+#
+
+---
+
+rm-cfg:
+    rm_boardcfg:
+        rev:
+            boardcfg_abi_maj : 0x0
+            boardcfg_abi_min : 0x1
+        host_cfg:
+            subhdr:
+                magic: 0x4C41
+                size : 356
+            host_cfg_entries:
+                - #1
+                    host_id: 3
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #2
+                    host_id: 5
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #3
+                    host_id: 12
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #4
+                    host_id: 13
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #5
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #6
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #7
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #8
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #9
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #10
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #11
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #12
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #13
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #14
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #15
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #16
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #17
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #18
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #19
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #20
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #21
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #22
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #23
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #24
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #25
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #26
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #27
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #28
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #29
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #30
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #31
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #32
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+        resasg:
+            subhdr:
+                magic: 0x7B25
+                size : 8
+            resasg_entries_size: 2080
+            reserved : 0
+    resasg_entries:
+        -
+                start_resource: 0
+                num_resource: 12
+                type: 192
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 4
+                type: 192
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 8
+                type: 192
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 8
+                type: 192
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 8
+                type: 192
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 32
+                type: 6208
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 32
+                type: 6208
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 32
+                num_resource: 32
+                type: 6208
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 24
+                type: 6272
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 24
+                type: 6272
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 24
+                type: 6272
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 20
+                type: 6400
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 4
+                type: 6400
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 4
+                type: 6400
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 4
+                type: 6400
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 28
+                num_resource: 4
+                type: 6400
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 16
+                type: 9280
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 16
+                type: 9280
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 16
+                type: 9280
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 32
+                num_resource: 8
+                type: 9280
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 4
+                type: 9984
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 4
+                type: 9984
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 4
+                type: 9984
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 4
+                type: 9984
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 4
+                type: 9984
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 80
+                type: 11466
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 96
+                num_resource: 30
+                type: 11466
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 126
+                num_resource: 50
+                type: 11466
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 126
+                num_resource: 50
+                type: 11466
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 176
+                num_resource: 50
+                type: 11466
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 226
+                num_resource: 30
+                type: 11466
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 1024
+                type: 11469
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 1040
+                num_resource: 512
+                type: 11469
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 1552
+                num_resource: 512
+                type: 11469
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 1552
+                num_resource: 512
+                type: 11469
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 2064
+                num_resource: 512
+                type: 11469
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 2576
+                num_resource: 2032
+                type: 11469
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 64
+                type: 11530
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 20480
+                num_resource: 1024
+                type: 11533
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 64
+                type: 11594
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 22528
+                num_resource: 1024
+                type: 11597
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 64
+                type: 11648
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 80
+                num_resource: 40
+                type: 11648
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 120
+                num_resource: 4
+                type: 11648
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 120
+                num_resource: 4
+                type: 11648
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 124
+                num_resource: 4
+                type: 11648
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 128
+                num_resource: 24
+                type: 11648
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 1
+                num_resource: 12
+                type: 11840
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 4
+                type: 11840
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 17
+                num_resource: 16
+                type: 11840
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 17
+                num_resource: 16
+                type: 11840
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 33
+                num_resource: 16
+                type: 11840
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 49
+                num_resource: 15
+                type: 11840
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 11968
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 304
+                num_resource: 100
+                type: 11969
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 404
+                num_resource: 50
+                type: 11969
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 454
+                num_resource: 256
+                type: 11969
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 454
+                num_resource: 256
+                type: 11969
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 710
+                num_resource: 32
+                type: 11969
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 742
+                num_resource: 26
+                type: 11969
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 160
+                num_resource: 12
+                type: 11970
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 172
+                num_resource: 4
+                type: 11970
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 172
+                num_resource: 4
+                type: 11970
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 172
+                num_resource: 0
+                type: 11970
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 176
+                num_resource: 2
+                type: 11970
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 178
+                num_resource: 52
+                type: 11970
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 230
+                num_resource: 8
+                type: 11970
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 238
+                num_resource: 32
+                type: 11970
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 238
+                num_resource: 32
+                type: 11970
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 270
+                num_resource: 14
+                type: 11970
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 284
+                num_resource: 18
+                type: 11970
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 12
+                type: 11971
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 4
+                type: 11971
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 4
+                type: 11971
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 0
+                type: 11971
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 2
+                type: 11971
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 38
+                type: 11971
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 64
+                num_resource: 8
+                type: 11971
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 72
+                num_resource: 32
+                type: 11971
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 72
+                num_resource: 32
+                type: 11971
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 104
+                num_resource: 14
+                type: 11971
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 118
+                num_resource: 2
+                type: 11971
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 120
+                num_resource: 4
+                type: 11972
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 124
+                num_resource: 4
+                type: 11972
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 128
+                num_resource: 12
+                type: 11972
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 128
+                num_resource: 12
+                type: 11972
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 140
+                num_resource: 12
+                type: 11972
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 154
+                num_resource: 0
+                type: 11973
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 154
+                num_resource: 0
+                type: 11973
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 154
+                num_resource: 0
+                type: 11973
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 154
+                num_resource: 0
+                type: 11973
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 154
+                num_resource: 2
+                type: 11973
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 156
+                num_resource: 2
+                type: 11973
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 156
+                num_resource: 2
+                type: 11973
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 158
+                num_resource: 2
+                type: 11973
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 1
+                num_resource: 0
+                type: 11975
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 1
+                num_resource: 0
+                type: 11975
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 1
+                num_resource: 0
+                type: 11975
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 1
+                num_resource: 0
+                type: 11975
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 1
+                num_resource: 3
+                type: 11975
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 2
+                type: 11975
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 2
+                type: 11975
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 6
+                num_resource: 2
+                type: 11975
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 1
+                type: 11978
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 3
+                num_resource: 1
+                type: 11978
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 8
+                type: 11979
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 8
+                type: 11979
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 8
+                type: 11979
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 8
+                type: 11979
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 8
+                type: 11979
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 150
+                num_resource: 64
+                type: 12032
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 214
+                num_resource: 8
+                type: 12032
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 222
+                num_resource: 64
+                type: 12032
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 222
+                num_resource: 64
+                type: 12032
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 286
+                num_resource: 8
+                type: 12032
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 294
+                num_resource: 6
+                type: 12032
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 12033
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 49152
+                num_resource: 1024
+                type: 12034
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 12035
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 12
+                type: 12042
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 4
+                type: 12042
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 4
+                type: 12042
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 0
+                type: 12042
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 2
+                type: 12042
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 52
+                type: 12042
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 78
+                num_resource: 8
+                type: 12042
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 86
+                num_resource: 32
+                type: 12042
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 86
+                num_resource: 32
+                type: 12042
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 118
+                num_resource: 14
+                type: 12042
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 132
+                num_resource: 18
+                type: 12042
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 0
+                type: 12043
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 0
+                type: 12043
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 0
+                type: 12043
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 0
+                type: 12043
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 2
+                type: 12043
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 2
+                type: 12043
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 2
+                type: 12043
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 6
+                num_resource: 2
+                type: 12043
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 12
+                type: 12045
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 4
+                type: 12045
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 4
+                type: 12045
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 0
+                type: 12045
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 2
+                type: 12045
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 38
+                type: 12045
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 64
+                num_resource: 8
+                type: 12045
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 72
+                num_resource: 32
+                type: 12045
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 72
+                num_resource: 32
+                type: 12045
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 104
+                num_resource: 14
+                type: 12045
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 118
+                num_resource: 2
+                type: 12045
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 120
+                num_resource: 4
+                type: 12046
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 124
+                num_resource: 4
+                type: 12046
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 128
+                num_resource: 12
+                type: 12046
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 128
+                num_resource: 12
+                type: 12046
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 140
+                num_resource: 12
+                type: 12046
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 1
+                num_resource: 0
+                type: 12047
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 1
+                num_resource: 0
+                type: 12047
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 1
+                num_resource: 0
+                type: 12047
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 1
+                num_resource: 0
+                type: 12047
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 1
+                num_resource: 3
+                type: 12047
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 2
+                type: 12047
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 2
+                type: 12047
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 6
+                num_resource: 2
+                type: 12047
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 80
+                type: 12106
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 88
+                num_resource: 30
+                type: 12106
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 118
+                num_resource: 50
+                type: 12106
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 118
+                num_resource: 50
+                type: 12106
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 168
+                num_resource: 50
+                type: 12106
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 218
+                num_resource: 38
+                type: 12106
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 16392
+                num_resource: 512
+                type: 12109
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 16904
+                num_resource: 128
+                type: 12109
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 17032
+                num_resource: 256
+                type: 12109
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 17032
+                num_resource: 256
+                type: 12109
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 17288
+                num_resource: 256
+                type: 12109
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 17544
+                num_resource: 376
+                type: 12109
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 28
+                type: 12160
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 28
+                type: 12160
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 36
+                num_resource: 28
+                type: 12160
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 12
+                type: 12224
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 4
+                type: 12224
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 24
+                type: 12224
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 24
+                type: 12224
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 40
+                num_resource: 24
+                type: 12224
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 48
+                num_resource: 16
+                type: 12416
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 64
+                num_resource: 4
+                type: 12416
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 68
+                num_resource: 16
+                type: 12416
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 68
+                num_resource: 16
+                type: 12416
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 84
+                num_resource: 8
+                type: 12416
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 92
+                num_resource: 4
+                type: 12416
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 12417
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 56320
+                num_resource: 256
+                type: 12418
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 12419
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 2
+                type: 12426
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 4
+                type: 12426
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 4
+                type: 12426
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 0
+                type: 12426
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 2
+                type: 12426
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 12
+                type: 12426
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 22
+                num_resource: 4
+                type: 12426
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 10
+                type: 12426
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 10
+                type: 12426
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 36
+                num_resource: 12
+                type: 12426
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 0
+                type: 12427
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 2
+                type: 12427
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 0
+                type: 12427
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 2
+                type: 12427
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 2
+                type: 12429
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 4
+                type: 12429
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 4
+                type: 12429
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 0
+                type: 12429
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 2
+                type: 12429
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 12
+                type: 12429
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 22
+                num_resource: 4
+                type: 12429
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 10
+                type: 12429
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 10
+                type: 12429
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 36
+                num_resource: 12
+                type: 12429
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 0
+                type: 12431
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 2
+                type: 12431
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 0
+                type: 12431
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 2
+                type: 12431
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 12480
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 96
+                num_resource: 32
+                type: 12481
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 128
+                num_resource: 8
+                type: 12481
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 136
+                num_resource: 60
+                type: 12481
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 136
+                num_resource: 60
+                type: 12481
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 196
+                num_resource: 60
+                type: 12481
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 50
+                num_resource: 2
+                type: 12482
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 52
+                num_resource: 4
+                type: 12482
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 52
+                num_resource: 4
+                type: 12482
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 52
+                num_resource: 0
+                type: 12482
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 56
+                num_resource: 2
+                type: 12482
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 58
+                num_resource: 12
+                type: 12482
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 70
+                num_resource: 4
+                type: 12482
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 74
+                num_resource: 10
+                type: 12482
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 74
+                num_resource: 10
+                type: 12482
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 84
+                num_resource: 12
+                type: 12482
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 2
+                type: 12483
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 4
+                type: 12483
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 4
+                type: 12483
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 0
+                type: 12483
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 2
+                type: 12483
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 12
+                type: 12483
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 22
+                num_resource: 4
+                type: 12483
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 10
+                type: 12483
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 10
+                type: 12483
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 36
+                num_resource: 12
+                type: 12483
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 48
+                num_resource: 0
+                type: 12485
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 48
+                num_resource: 2
+                type: 12485
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 48
+                num_resource: 0
+                type: 12485
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 48
+                num_resource: 2
+                type: 12485
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 0
+                type: 12487
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 2
+                type: 12487
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 0
+                type: 12487
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 2
+                type: 12487
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 1
+                type: 12490
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 3
+                num_resource: 1
+                type: 12490
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 8
+                type: 12491
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 8
+                type: 12491
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 8
+                type: 12491
+                host_id: 4
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 8
+                type: 12491
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 8
+                type: 12491
+                host_id: 128
+                reserved: 0
diff --git a/board/ti/am65x/sec-cfg.yaml b/board/ti/am65x/sec-cfg.yaml
new file mode 100644
index 0000000000..ebf1b8b134
--- /dev/null
+++ b/board/ti/am65x/sec-cfg.yaml
@@ -0,0 +1,379 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Security management configuration for AM65x
+#
+
+---
+
+sec-cfg:
+    rev:
+        boardcfg_abi_maj : 0x0
+        boardcfg_abi_min : 0x1
+    processor_acl_list:
+        subhdr:
+            magic: 0xF1EA
+            size: 164
+        proc_acl_entries:
+            - #1
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #2
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #3
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #4
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #5
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #6
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #7
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #8
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #9
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #10
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #11
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #12
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #13
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #14
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #15
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #16
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #17
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #18
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #19
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #20
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #21
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #22
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #23
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #24
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #25
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #26
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #27
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #28
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #29
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #30
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #31
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #32
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+    host_hierarchy:
+        subhdr:
+            magic: 0x8D27
+            size: 68
+        host_hierarchy_entries:
+            - #1
+                host_id: 0
+                supervisor_host_id: 0
+            - #2
+                host_id: 0
+                supervisor_host_id: 0
+            - #3
+                host_id: 0
+                supervisor_host_id: 0
+            - #4
+                host_id: 0
+                supervisor_host_id: 0
+            - #5
+                host_id: 0
+                supervisor_host_id: 0
+            - #6
+                host_id: 0
+                supervisor_host_id: 0
+            - #7
+                host_id: 0
+                supervisor_host_id: 0
+            - #8
+                host_id: 0
+                supervisor_host_id: 0
+            - #9
+                host_id: 0
+                supervisor_host_id: 0
+            - #10
+                host_id: 0
+                supervisor_host_id: 0
+            - #11
+                host_id: 0
+                supervisor_host_id: 0
+            - #12
+                host_id: 0
+                supervisor_host_id: 0
+            - #13
+                host_id: 0
+                supervisor_host_id: 0
+            - #14
+                host_id: 0
+                supervisor_host_id: 0
+            - #15
+                host_id: 0
+                supervisor_host_id: 0
+            - #16
+                host_id: 0
+                supervisor_host_id: 0
+            - #17
+                host_id: 0
+                supervisor_host_id: 0
+            - #18
+                host_id: 0
+                supervisor_host_id: 0
+            - #19
+                host_id: 0
+                supervisor_host_id: 0
+            - #20
+                host_id: 0
+                supervisor_host_id: 0
+            - #21
+                host_id: 0
+                supervisor_host_id: 0
+            - #22
+                host_id: 0
+                supervisor_host_id: 0
+            - #23
+                host_id: 0
+                supervisor_host_id: 0
+            - #24
+                host_id: 0
+                supervisor_host_id: 0
+            - #25
+                host_id: 0
+                supervisor_host_id: 0
+            - #26
+                host_id: 0
+                supervisor_host_id: 0
+            - #27
+                host_id: 0
+                supervisor_host_id: 0
+            - #28
+                host_id: 0
+                supervisor_host_id: 0
+            - #29
+                host_id: 0
+                supervisor_host_id: 0
+            - #30
+                host_id: 0
+                supervisor_host_id: 0
+            - #31
+                host_id: 0
+                supervisor_host_id: 0
+            - #32
+                host_id: 0
+                supervisor_host_id: 0
+    otp_config:
+        subhdr:
+            magic: 0x4081
+            size: 69
+        write_host_id : 0
+        otp_entry:
+            - #1
+                host_id: 0
+                host_perms: 0
+            - #2
+                host_id: 0
+                host_perms: 0
+            - #3
+                host_id: 0
+                host_perms: 0
+            - #4
+                host_id: 0
+                host_perms: 0
+            - #5
+                host_id: 0
+                host_perms: 0
+            - #6
+                host_id: 0
+                host_perms: 0
+            - #7
+                host_id: 0
+                host_perms: 0
+            - #8
+                host_id: 0
+                host_perms: 0
+            - #9
+                host_id: 0
+                host_perms: 0
+            - #10
+                host_id: 0
+                host_perms: 0
+            - #11
+                host_id: 0
+                host_perms: 0
+            - #12
+                host_id: 0
+                host_perms: 0
+            - #13
+                host_id: 0
+                host_perms: 0
+            - #14
+                host_id: 0
+                host_perms: 0
+            - #15
+                host_id: 0
+                host_perms: 0
+            - #16
+                host_id: 0
+                host_perms: 0
+            - #17
+                host_id: 0
+                host_perms: 0
+            - #18
+                host_id: 0
+                host_perms: 0
+            - #19
+                host_id: 0
+                host_perms: 0
+            - #20
+                host_id: 0
+                host_perms: 0
+            - #21
+                host_id: 0
+                host_perms: 0
+            - #22
+                host_id: 0
+                host_perms: 0
+            - #23
+                host_id: 0
+                host_perms: 0
+            - #24
+                host_id: 0
+                host_perms: 0
+            - #25
+                host_id: 0
+                host_perms: 0
+            - #26
+                host_id: 0
+                host_perms: 0
+            - #27
+                host_id: 0
+                host_perms: 0
+            - #28
+                host_id: 0
+                host_perms: 0
+            - #29
+                host_id: 0
+                host_perms: 0
+            - #30
+                host_id: 0
+                host_perms: 0
+            - #31
+                host_id: 0
+                host_perms: 0
+            - #32
+                host_id: 0
+                host_perms: 0
+    dkek_config:
+        subhdr:
+            magic: 0x5170
+            size: 12
+        allowed_hosts: [128, 0, 0, 0]
+        allow_dkek_export_tisci : 0x5A
+        rsvd: [0, 0, 0]
+    sa2ul_cfg:
+        subhdr:
+            magic: 0x23BE
+            size : 0
+        auth_resource_owner: 0
+        enable_saul_psil_global_config_writes: 0
+        rsvd: [0, 0]
+    sec_dbg_config:
+        subhdr:
+            magic: 0x42AF
+            size: 16
+        allow_jtag_unlock : 0x5A
+        allow_wildcard_unlock : 0x5A
+        allowed_debug_level_rsvd: 0
+        rsvd: 0
+        min_cert_rev : 0x0
+        jtag_unlock_hosts: [0, 0, 0, 0]
+    sec_handover_cfg:
+        subhdr:
+            magic: 0x608F
+            size: 10
+        handover_msg_sender : 0
+        handover_to_host_id : 0
+        rsvd: [0, 0, 0, 0]
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 09/23] am65: dts: binman: Package tiboot3.bin, sysfw.itb, tispl.bin, u-boot.img
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (7 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 08/23] am65x: yaml: Add AM65x board config files Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 10/23] am64x: yaml: Add board configs for AM64x Neha Malcom Francis
                   ` (13 subsequent siblings)
  22 siblings, 0 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Support has been added for both HS-SE(SR 2.0) and GP(SR 2.0) images.

HS-SE:
	* tiboot3-am65x_sr2-hs-evm.bin
	* sysfw-am65x_sr2-hs-evm.itb
	* tispl.bin
	* u-boot.img

GP:
	* tiboot3.bin --> tiboot3-am65x_sr2-gp-evm.bin
	* sysfw.itb --> sysfw-am65x_sr2-gp-evm.itb
	* tispl.bin_unsigned
	* u-boot.img_unsigned

Note that the bootflow followed by AM65x requires:

tiboot3.bin:
	* R5 SPL
	* R5 SPL dtbs
sysfw.itb:
	* sysfw
	* board-cfg
	* pm-cfg
	* sec-cfg
	* rm-cfg

tispl.bin:
	* ATF
	* OPTEE
	* A53 SPL
	* A53 SPL dtbs

u-boot.img:
	* A53 U-Boot
	* A53 U-Boot dtbs

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
[afd@ti.com: changed output binary names appropriately]
Signed-off-by: Andrew Davis <afd@ti.com>
---
 arch/arm/dts/k3-am654-base-board-u-boot.dtsi  |   1 +
 .../dts/k3-am654-r5-base-board-u-boot.dtsi    |   1 +
 arch/arm/dts/k3-am65x-binman.dtsi             | 518 ++++++++++++++++++
 board/ti/am65x/Kconfig                        |   2 +
 4 files changed, 522 insertions(+)
 create mode 100644 arch/arm/dts/k3-am65x-binman.dtsi

diff --git a/arch/arm/dts/k3-am654-base-board-u-boot.dtsi b/arch/arm/dts/k3-am654-base-board-u-boot.dtsi
index 0c1305df7e..e4cbc47c2a 100644
--- a/arch/arm/dts/k3-am654-base-board-u-boot.dtsi
+++ b/arch/arm/dts/k3-am654-base-board-u-boot.dtsi
@@ -4,6 +4,7 @@
  */
 
 #include "k3-am654-r5-base-board-u-boot.dtsi"
+#include "k3-am65x-binman.dtsi"
 
 &pru0_0 {
 	remoteproc-name = "pru0_0";
diff --git a/arch/arm/dts/k3-am654-r5-base-board-u-boot.dtsi b/arch/arm/dts/k3-am654-r5-base-board-u-boot.dtsi
index 4516ab1437..949320c91d 100644
--- a/arch/arm/dts/k3-am654-r5-base-board-u-boot.dtsi
+++ b/arch/arm/dts/k3-am654-r5-base-board-u-boot.dtsi
@@ -5,6 +5,7 @@
 
 #include <dt-bindings/pinctrl/k3.h>
 #include <dt-bindings/net/ti-dp83867.h>
+#include "k3-am65x-binman.dtsi"
 
 / {
 	chosen {
diff --git a/arch/arm/dts/k3-am65x-binman.dtsi b/arch/arm/dts/k3-am65x-binman.dtsi
new file mode 100644
index 0000000000..6535b9fec2
--- /dev/null
+++ b/arch/arm/dts/k3-am65x-binman.dtsi
@@ -0,0 +1,518 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+ */
+
+#include "k3-binman.dtsi"
+
+#ifdef CONFIG_TARGET_AM654_R5_EVM
+
+&binman {
+	tiboot3-am65x_sr2-hs-evm.bin {
+		filename = "tiboot3-am65x_sr2-hs-evm.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl>;
+			core = "public";
+			load = <CONFIG_SPL_TEXT_BASE>;
+			keyfile = "custMpk.pem";
+		};
+		u_boot_spl: u-boot-spl {
+			no-expanded;
+		};
+	};
+	sysfw {
+		filename = "sysfw.bin";
+		ti-secure-rom {
+			content = <&ti_sci_cert>;
+			core = "secure";
+			load = <0x40000>;
+			keyfile = "custMpk.pem";
+			countersign;
+		};
+		ti_sci_cert: ti-sci-cert.bin {
+			filename = "ti-sysfw/ti-sci-firmware-am65x_sr2-hs-cert.bin";
+			type = "blob-ext";
+			optional;
+		};
+		ti-sci-firmware-am65x-hs-enc.bin {
+			filename = "ti-sysfw/ti-sci-firmware-am65x_sr2-hs-enc.bin";
+			type = "blob-ext";
+			optional;
+		};
+	};
+	itb {
+		filename = "sysfw-am65x_sr2-hs-evm.itb";
+		fit {
+			description = "SYSFW and Config fragments";
+			#address-cells = <1>;
+			images {
+				sysfw.bin {
+					description = "sysfw";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					blob-ext {
+					    filename = "sysfw.bin";
+					};
+				};
+				board-cfg.bin {
+					description = "board-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&board_cfg>;
+						keyfile = "custMpk.pem";
+					};
+					board_cfg: board-cfg {
+						filename = "board-cfg.bin";
+						type = "blob-ext";
+					};
+				};
+				pm-cfg.bin {
+					description = "pm-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&pm_cfg>;
+						keyfile = "custMpk.pem";
+					};
+					pm_cfg: pm-cfg {
+						filename = "pm-cfg.bin";
+						type = "blob-ext";
+					};
+				};
+				rm-cfg.bin {
+					description = "rm-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&rm_cfg>;
+						keyfile = "custMpk.pem";\
+					};
+					rm_cfg: rm-cfg {
+						filename = "rm-cfg.bin";
+						type = "blob-ext";
+					};
+				};
+				sec-cfg.bin {
+					description = "sec-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&sec_cfg>;
+						keyfile = "custMpk.pem";
+					};
+					sec_cfg: sec-cfg {
+						filename = "sec-cfg.bin";
+						type = "blob-ext";
+					};
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	tiboot3-am65x_sr2-gp-evm.bin {
+		filename = "tiboot3-am65x_sr2-gp-evm.bin";
+		symlink = "tiboot3.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl_unsigned>;
+			core = "public";
+			load = <CONFIG_SPL_TEXT_BASE>;
+			sw-rev = <CONFIG_K3_X509_SWRV>;
+			keyfile = "ti-degenerate-key.pem";
+		};
+		u_boot_spl_unsigned: u-boot-spl {
+			no-expanded;
+		};
+	};
+	sysfw_gp {
+		filename = "sysfw.bin_gp";
+		ti-secure-rom {
+			content = <&ti_sci>;
+			core = "secure";
+			load = <0x40000>;
+			sw-rev = <CONFIG_K3_X509_SWRV>;
+			keyfile = "ti-degenerate-key.pem";
+		};
+		ti_sci: ti-sci.bin {
+			filename = "ti-sysfw/ti-sci-firmware-am65x_sr2-gp.bin";
+			type = "blob-ext";
+			optional;
+		};
+	};
+	itb_gp {
+		filename = "sysfw-am65x_sr2-gp-evm.itb";
+		symlink = "sysfw.itb";
+		fit {
+			description = "SYSFW and Config fragments";
+			#address-cells = <1>;
+			images {
+				sysfw.bin {
+					description = "sysfw";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					blob-ext {
+					    filename = "sysfw.bin_gp";
+					};
+				};
+				board-cfg.bin {
+					description = "board-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					blob-ext {
+						filename = "board-cfg.bin";
+					};
+				};
+				pm-cfg.bin {
+					description = "pm-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					blob-ext {
+						filename = "pm-cfg.bin";
+					};
+				};
+				rm-cfg.bin {
+					description = "rm-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					blob-ext {
+						filename = "rm-cfg.bin";
+					};
+				};
+				sec-cfg.bin {
+					description = "sec-cfg";
+					type = "firmware";
+					arch = "arm";
+					compression = "none";
+					blob-ext {
+						filename = "sec-cfg.bin";
+					};
+				};
+			};
+		};
+	};
+};
+#endif
+
+#ifdef CONFIG_TARGET_AM654_A53_EVM
+
+#define SPL_NODTB "spl/u-boot-spl-nodtb.bin"
+#define SPL_AM654_EVM_DTB "spl/dts/k3-am654-base-board.dtb"
+
+#define UBOOT_NODTB "u-boot-nodtb.bin"
+#define AM654_EVM_DTB "arch/arm/dts/k3-am654-base-board.dtb"
+
+&binman {
+	ti-spl {
+		filename = "tispl.bin";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "Configuration to load ATF and SPL";
+			#address-cells = <1>;
+
+			images {
+
+				atf {
+					description = "ARM Trusted Firmware";
+					type = "firmware";
+					arch = "arm64";
+					compression = "none";
+					os = "arm-trusted-firmware";
+					load = <CONFIG_K3_ATF_LOAD_ADDR>;
+					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
+					ti-secure {
+						content = <&atf>;
+						keyfile = "custMpk.pem";
+					};
+					atf: atf-bl31 {
+					};
+				};
+
+				tee {
+					description = "OPTEE";
+					type = "tee";
+					arch = "arm64";
+					compression = "none";
+					os = "tee";
+					load = <0x9e800000>;
+					entry = <0x9e800000>;
+					ti-secure {
+						content = <&tee>;
+						keyfile = "custMpk.pem";
+					};
+					tee: tee-os {
+					};
+				};
+
+				dm {
+					description = "DM binary";
+					type = "firmware";
+					arch = "arm32";
+					compression = "none";
+					os = "DM";
+					load = <0x89000000>;
+					entry = <0x89000000>;
+					blob-ext {
+						filename = "/dev/null";
+					};
+				};
+
+				spl {
+					description = "SPL (64-bit)";
+					type = "standalone";
+					os = "U-Boot";
+					arch = "arm64";
+					compression = "none";
+					load = <CONFIG_SPL_TEXT_BASE>;
+					entry = <CONFIG_SPL_TEXT_BASE>;
+					ti-secure {
+						content = <&u_boot_spl_nodtb>;
+						keyfile = "custMpk.pem";
+
+					};
+					u_boot_spl_nodtb: blob-ext {
+						filename = SPL_NODTB;
+					};
+				};
+
+				fdt-0 {
+					description = "k3-am654-base-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&spl_am65x_evm_dtb>;
+						keyfile = "custMpk.pem";
+					};
+					spl_am65x_evm_dtb: blob-ext {
+						filename = SPL_AM654_EVM_DTB;
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-am654-base-board";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-0";
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	u-boot {
+		filename = "u-boot.img";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "FIT image with multiple configurations";
+
+			images {
+				uboot {
+					description = "U-Boot for AM65 board";
+					type = "firmware";
+					os = "u-boot";
+					arch = "arm";
+					compression = "none";
+					load = <CONFIG_TEXT_BASE>;
+					ti-secure {
+						content = <&u_boot_nodtb>;
+						keyfile = "custMpk.pem";
+					};
+					u_boot_nodtb: u-boot-nodtb {
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-am654-base-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&am65x_evm_dtb>;
+						keyfile = "custMpk.pem";
+
+					};
+					am65x_evm_dtb: blob-ext {
+						filename = AM654_EVM_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-am654-base-board";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-0";
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	ti-spl_unsigned {
+		filename = "tispl.bin_unsigned";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "Configuration to load ATF and SPL";
+			#address-cells = <1>;
+
+			images {
+
+				atf {
+					description = "ARM Trusted Firmware";
+					type = "firmware";
+					arch = "arm64";
+					compression = "none";
+					os = "arm-trusted-firmware";
+					load = <CONFIG_K3_ATF_LOAD_ADDR>;
+					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
+					atf-bl31 {
+						filename = "bl31.bin";
+					};
+				};
+
+				tee {
+					description = "OPTEE";
+					type = "tee";
+					arch = "arm64";
+					compression = "none";
+					os = "tee";
+					load = <0x9e800000>;
+					entry = <0x9e800000>;
+					tee-os {
+						filename = "tee-pager_v2.bin";
+					};
+				};
+
+				dm {
+					description = "DM binary";
+					type = "firmware";
+					arch = "arm32";
+					compression = "none";
+					os = "DM";
+					load = <0x89000000>;
+					entry = <0x89000000>;
+					blob-ext {
+						filename = "/dev/null";
+					};
+				};
+
+				spl {
+					description = "SPL (64-bit)";
+					type = "standalone";
+					os = "U-Boot";
+					arch = "arm64";
+					compression = "none";
+					load = <CONFIG_SPL_TEXT_BASE>;
+					entry = <CONFIG_SPL_TEXT_BASE>;
+					blob-ext {
+						filename = SPL_NODTB;
+					};
+				};
+
+				fdt-0 {
+					description = "k3-j721e-common-proc-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = SPL_AM654_EVM_DTB;
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-am654-base-board";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-0";
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	u-boot_unsigned {
+		filename = "u-boot.img_unsigned";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "FIT image with multiple configurations";
+
+			images {
+				uboot {
+					description = "U-Boot for AM65 board";
+					type = "firmware";
+					os = "u-boot";
+					arch = "arm";
+					compression = "none";
+					load = <CONFIG_TEXT_BASE>;
+					blob {
+						filename = UBOOT_NODTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-am654-base-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = AM654_EVM_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-am654-base-board";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-0";
+				};
+			};
+		};
+	};
+};
+#endif
diff --git a/board/ti/am65x/Kconfig b/board/ti/am65x/Kconfig
index 220dd0234c..5fd19d652a 100644
--- a/board/ti/am65x/Kconfig
+++ b/board/ti/am65x/Kconfig
@@ -12,6 +12,7 @@ config TARGET_AM654_A53_EVM
 	select ARM64
 	select SYS_DISABLE_DCACHE_OPS
 	select BOARD_LATE_INIT
+	select BINMAN
 	imply TI_I2C_BOARD_DETECT
 
 config TARGET_AM654_R5_EVM
@@ -20,6 +21,7 @@ config TARGET_AM654_R5_EVM
 	select SYS_THUMB_BUILD
 	select K3_LOAD_SYSFW
 	select K3_AM654_DDRSS
+	select BINMAN
 	imply SYS_K3_SPL_ATF
 	imply TI_I2C_BOARD_DETECT
 
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 10/23] am64x: yaml: Add board configs for AM64x
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (8 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 09/23] am65: dts: binman: Package tiboot3.bin, sysfw.itb, tispl.bin, u-boot.img Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-11  4:53   ` Jan Kiszka
  2023-07-07 12:34 ` [PATCH v5 11/23] am64x: dts: binman: Package tiboot3.bin, tispl.bin u-boot.img Neha Malcom Francis
                   ` (12 subsequent siblings)
  22 siblings, 1 reply; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Added YAML configs for AM64xx

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
---
 board/ti/am64x/board-cfg.yaml |   37 +
 board/ti/am64x/pm-cfg.yaml    |   12 +
 board/ti/am64x/rm-cfg.yaml    | 1400 +++++++++++++++++++++++++++++++++
 board/ti/am64x/sec-cfg.yaml   |  380 +++++++++
 4 files changed, 1829 insertions(+)
 create mode 100644 board/ti/am64x/board-cfg.yaml
 create mode 100644 board/ti/am64x/pm-cfg.yaml
 create mode 100644 board/ti/am64x/rm-cfg.yaml
 create mode 100644 board/ti/am64x/sec-cfg.yaml

diff --git a/board/ti/am64x/board-cfg.yaml b/board/ti/am64x/board-cfg.yaml
new file mode 100644
index 0000000000..f1f7c68d50
--- /dev/null
+++ b/board/ti/am64x/board-cfg.yaml
@@ -0,0 +1,37 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Board configuration for AM64x
+#
+
+---
+
+board-cfg:
+        rev:
+                boardcfg_abi_maj : 0x0
+                boardcfg_abi_min : 0x1
+        control:
+                subhdr:
+                        magic: 0xC1D3
+                        size: 7
+                main_isolation_enable : 0x5A
+                main_isolation_hostid : 0x2
+        secproxy:
+                subhdr:
+                        magic: 0x1207
+                        size: 7
+                scaling_factor : 0x1
+                scaling_profile : 0x1
+                disable_main_nav_secure_proxy : 0
+        msmc:
+                subhdr:
+                        magic: 0xA5C3
+                        size: 5
+                msmc_cache_size : 0x0
+        debug_cfg:
+                subhdr:
+                        magic: 0x020C
+                        size: 8
+                trace_dst_enables : 0x00
+                trace_src_enables : 0x00
+
diff --git a/board/ti/am64x/pm-cfg.yaml b/board/ti/am64x/pm-cfg.yaml
new file mode 100644
index 0000000000..c97495f482
--- /dev/null
+++ b/board/ti/am64x/pm-cfg.yaml
@@ -0,0 +1,12 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Power management configuration for AM64x
+#
+
+---
+
+pm-cfg:
+        rev:
+                boardcfg_abi_maj : 0x0
+                boardcfg_abi_min : 0x1
diff --git a/board/ti/am64x/rm-cfg.yaml b/board/ti/am64x/rm-cfg.yaml
new file mode 100644
index 0000000000..1e6b07aef6
--- /dev/null
+++ b/board/ti/am64x/rm-cfg.yaml
@@ -0,0 +1,1400 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Resource management configuration for AM64x
+#
+
+---
+
+rm-cfg:
+        rm_boardcfg:
+                rev:
+                        boardcfg_abi_maj : 0x0
+                        boardcfg_abi_min : 0x1
+                host_cfg:
+                        subhdr:
+                                magic: 0x4C41
+                                size : 356
+                        host_cfg_entries:
+                                - #1
+                                        host_id: 12
+                                        allowed_atype : 0x2A
+                                        allowed_qos : 0xAAAA
+                                        allowed_orderid : 0xAAAAAAAA
+                                        allowed_priority : 0xAAAA
+                                        allowed_sched_priority : 0xAA
+                                - #2
+                                        host_id: 30
+                                        allowed_atype : 0x2A
+                                        allowed_qos : 0xAAAA
+                                        allowed_orderid : 0xAAAAAAAA
+                                        allowed_priority : 0xAAAA
+                                        allowed_sched_priority : 0xAA
+                                - #3
+                                        host_id: 36
+                                        allowed_atype : 0x2A
+                                        allowed_qos : 0xAAAA
+                                        allowed_orderid : 0xAAAAAAAA
+                                        allowed_priority : 0xAAAA
+                                        allowed_sched_priority : 0xAA
+                                - #4
+                                        host_id: 38
+                                        allowed_atype : 0x2A
+                                        allowed_qos : 0xAAAA
+                                        allowed_orderid : 0xAAAAAAAA
+                                        allowed_priority : 0xAAAA
+                                        allowed_sched_priority : 0xAA
+                                - #5
+                                        host_id: 41
+                                        allowed_atype : 0x2A
+                                        allowed_qos : 0xAAAA
+                                        allowed_orderid : 0xAAAAAAAA
+                                        allowed_priority : 0xAAAA
+                                        allowed_sched_priority : 0xAA
+                                - #6
+                                        host_id: 43
+                                        allowed_atype : 0x2A
+                                        allowed_qos : 0xAAAA
+                                        allowed_orderid : 0xAAAAAAAA
+                                        allowed_priority : 0xAAAA
+                                        allowed_sched_priority : 0xAA
+                                - #7
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #8
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #9
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #10
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #11
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #12
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #13
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #14
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #15
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #16
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #17
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #18
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #19
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #20
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #21
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #22
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #23
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #24
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #25
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #26
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #27
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #28
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #29
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #30
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #31
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+
+                                - #32
+                                        host_id: 0
+                                        allowed_atype: 0
+                                        allowed_qos: 0
+                                        allowed_orderid: 0
+                                        allowed_priority: 0
+                                        allowed_sched_priority: 0
+                resasg:
+                        subhdr:
+                                magic: 0x7B25
+                                size : 8
+                        resasg_entries_size: 1288
+                        reserved : 0
+        resasg_entries:
+        -
+                start_resource: 0
+                num_resource: 16
+                type: 64
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 4
+                type: 64
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 4
+                type: 64
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 4
+                type: 64
+                host_id: 38
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 4
+                type: 64
+                host_id: 41
+                reserved: 0
+
+        -
+                start_resource: 28
+                num_resource: 4
+                type: 64
+                host_id: 43
+                reserved: 0
+
+        -
+                start_resource: 32
+                num_resource: 8
+                type: 64
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 12
+                type: 192
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 2
+                type: 192
+                host_id: 41
+                reserved: 0
+
+        -
+                start_resource: 14
+                num_resource: 2
+                type: 192
+                host_id: 43
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 4
+                type: 320
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 4
+                type: 320
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 41
+                type: 384
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 50176
+                num_resource: 136
+                type: 1666
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 1667
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 12
+                type: 1677
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 6
+                type: 1677
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 6
+                type: 1677
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 2
+                type: 1677
+                host_id: 38
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 4
+                type: 1677
+                host_id: 41
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 2
+                type: 1677
+                host_id: 43
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 1
+                type: 1677
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 27
+                num_resource: 1
+                type: 1677
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 48
+                num_resource: 6
+                type: 1678
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 54
+                num_resource: 6
+                type: 1678
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 54
+                num_resource: 6
+                type: 1678
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 60
+                num_resource: 2
+                type: 1678
+                host_id: 38
+                reserved: 0
+
+        -
+                start_resource: 62
+                num_resource: 4
+                type: 1678
+                host_id: 41
+                reserved: 0
+
+        -
+                start_resource: 66
+                num_resource: 2
+                type: 1678
+                host_id: 43
+                reserved: 0
+
+        -
+                start_resource: 28
+                num_resource: 6
+                type: 1679
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 34
+                num_resource: 6
+                type: 1679
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 34
+                num_resource: 6
+                type: 1679
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 40
+                num_resource: 2
+                type: 1679
+                host_id: 38
+                reserved: 0
+
+        -
+                start_resource: 42
+                num_resource: 4
+                type: 1679
+                host_id: 41
+                reserved: 0
+
+        -
+                start_resource: 46
+                num_resource: 2
+                type: 1679
+                host_id: 43
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 12
+                type: 1696
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 6
+                type: 1696
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 6
+                type: 1696
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 2
+                type: 1696
+                host_id: 38
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 4
+                type: 1696
+                host_id: 41
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 2
+                type: 1696
+                host_id: 43
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 1
+                type: 1696
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 27
+                num_resource: 1
+                type: 1696
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 6
+                type: 1697
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 6
+                num_resource: 6
+                type: 1697
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 6
+                num_resource: 6
+                type: 1697
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 2
+                type: 1697
+                host_id: 38
+                reserved: 0
+
+        -
+                start_resource: 14
+                num_resource: 4
+                type: 1697
+                host_id: 41
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 2
+                type: 1697
+                host_id: 43
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 6
+                type: 1698
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 6
+                num_resource: 6
+                type: 1698
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 6
+                num_resource: 6
+                type: 1698
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 2
+                type: 1698
+                host_id: 38
+                reserved: 0
+
+        -
+                start_resource: 14
+                num_resource: 4
+                type: 1698
+                host_id: 41
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 2
+                type: 1698
+                host_id: 43
+                reserved: 0
+
+        -
+                start_resource: 5
+                num_resource: 35
+                type: 1802
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 44
+                num_resource: 14
+                type: 1802
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 44
+                num_resource: 14
+                type: 1802
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 58
+                num_resource: 14
+                type: 1802
+                host_id: 38
+                reserved: 0
+
+        -
+                start_resource: 92
+                num_resource: 14
+                type: 1802
+                host_id: 41
+                reserved: 0
+
+        -
+                start_resource: 106
+                num_resource: 14
+                type: 1802
+                host_id: 43
+                reserved: 0
+
+        -
+                start_resource: 168
+                num_resource: 16
+                type: 1802
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 512
+                type: 1805
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 528
+                num_resource: 256
+                type: 1805
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 528
+                num_resource: 256
+                type: 1805
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 784
+                num_resource: 192
+                type: 1805
+                host_id: 38
+                reserved: 0
+
+        -
+                start_resource: 976
+                num_resource: 256
+                type: 1805
+                host_id: 41
+                reserved: 0
+
+        -
+                start_resource: 1232
+                num_resource: 192
+                type: 1805
+                host_id: 43
+                reserved: 0
+
+        -
+                start_resource: 1424
+                num_resource: 96
+                type: 1805
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 1520
+                num_resource: 16
+                type: 1805
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1024
+                type: 1807
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 4096
+                num_resource: 42
+                type: 1808
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 4608
+                num_resource: 112
+                type: 1809
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 5120
+                num_resource: 29
+                type: 1810
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 5632
+                num_resource: 176
+                type: 1811
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 6144
+                num_resource: 176
+                type: 1812
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 6656
+                num_resource: 176
+                type: 1813
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 8192
+                num_resource: 28
+                type: 1814
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 8704
+                num_resource: 28
+                type: 1815
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 9216
+                num_resource: 28
+                type: 1816
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 9728
+                num_resource: 20
+                type: 1817
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 10240
+                num_resource: 20
+                type: 1818
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 10752
+                num_resource: 20
+                type: 1819
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 11264
+                num_resource: 20
+                type: 1820
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 11776
+                num_resource: 20
+                type: 1821
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 12288
+                num_resource: 20
+                type: 1822
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 1923
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 4
+                type: 1936
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 3
+                type: 1936
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 3
+                type: 1936
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 7
+                num_resource: 2
+                type: 1936
+                host_id: 38
+                reserved: 0
+
+        -
+                start_resource: 9
+                num_resource: 4
+                type: 1936
+                host_id: 41
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 2
+                type: 1936
+                host_id: 43
+                reserved: 0
+
+        -
+                start_resource: 15
+                num_resource: 1
+                type: 1936
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 64
+                type: 1937
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 64
+                type: 1937
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 88
+                num_resource: 8
+                type: 1939
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 96
+                num_resource: 8
+                type: 1940
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 104
+                num_resource: 8
+                type: 1941
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 112
+                num_resource: 4
+                type: 1942
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 116
+                num_resource: 3
+                type: 1942
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 116
+                num_resource: 3
+                type: 1942
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 119
+                num_resource: 2
+                type: 1942
+                host_id: 38
+                reserved: 0
+
+        -
+                start_resource: 121
+                num_resource: 4
+                type: 1942
+                host_id: 41
+                reserved: 0
+
+        -
+                start_resource: 125
+                num_resource: 2
+                type: 1942
+                host_id: 43
+                reserved: 0
+
+        -
+                start_resource: 127
+                num_resource: 1
+                type: 1942
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 128
+                num_resource: 16
+                type: 1943
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 128
+                num_resource: 16
+                type: 1943
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 144
+                num_resource: 8
+                type: 1945
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 152
+                num_resource: 8
+                type: 1946
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 152
+                num_resource: 8
+                type: 1947
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 160
+                num_resource: 64
+                type: 1948
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 224
+                num_resource: 64
+                type: 1949
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 4
+                type: 1955
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 3
+                type: 1955
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 3
+                type: 1955
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 7
+                num_resource: 2
+                type: 1955
+                host_id: 38
+                reserved: 0
+
+        -
+                start_resource: 9
+                num_resource: 4
+                type: 1955
+                host_id: 41
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 2
+                type: 1955
+                host_id: 43
+                reserved: 0
+
+        -
+                start_resource: 15
+                num_resource: 1
+                type: 1955
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 8
+                type: 1956
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 8
+                type: 1956
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 25
+                num_resource: 1
+                type: 1958
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 8
+                type: 1959
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 34
+                num_resource: 8
+                type: 1960
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 4
+                type: 1961
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 3
+                type: 1961
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 3
+                type: 1961
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 7
+                num_resource: 2
+                type: 1961
+                host_id: 38
+                reserved: 0
+
+        -
+                start_resource: 9
+                num_resource: 4
+                type: 1961
+                host_id: 41
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 2
+                type: 1961
+                host_id: 43
+                reserved: 0
+
+        -
+                start_resource: 15
+                num_resource: 1
+                type: 1961
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 4
+                type: 1962
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 3
+                type: 1962
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 3
+                type: 1962
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 7
+                num_resource: 2
+                type: 1962
+                host_id: 38
+                reserved: 0
+
+        -
+                start_resource: 9
+                num_resource: 4
+                type: 1962
+                host_id: 41
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 2
+                type: 1962
+                host_id: 43
+                reserved: 0
+
+        -
+                start_resource: 15
+                num_resource: 1
+                type: 1962
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 1
+                type: 1963
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 1
+                type: 1963
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 16
+                type: 1964
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 16
+                type: 1964
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 32
+                num_resource: 8
+                type: 1966
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 32
+                num_resource: 8
+                type: 1968
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 1
+                type: 1969
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 40
+                num_resource: 8
+                type: 1970
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 1
+                type: 1971
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 40
+                num_resource: 8
+                type: 1972
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 21
+                num_resource: 4
+                type: 1973
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 48
+                num_resource: 64
+                type: 1974
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 25
+                num_resource: 4
+                type: 1975
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 112
+                num_resource: 64
+                type: 1976
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 2112
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 2
+                type: 2122
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 2
+                type: 2124
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 2
+                type: 2124
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 22
+                num_resource: 2
+                type: 2124
+                host_id: 38
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 2
+                type: 2124
+                host_id: 41
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 2
+                type: 2124
+                host_id: 43
+                reserved: 0
+
+        -
+                start_resource: 28
+                num_resource: 4
+                type: 2124
+                host_id: 128
+                reserved: 0
diff --git a/board/ti/am64x/sec-cfg.yaml b/board/ti/am64x/sec-cfg.yaml
new file mode 100644
index 0000000000..2779f2943d
--- /dev/null
+++ b/board/ti/am64x/sec-cfg.yaml
@@ -0,0 +1,380 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Security configuration for AM64x
+#
+
+---
+
+sec-cfg:
+        rev:
+                boardcfg_abi_maj : 0x0
+                boardcfg_abi_min : 0x1
+        processor_acl_list:
+                subhdr:
+                        magic: 0xF1EA
+                        size: 164
+                proc_acl_entries:
+                        - #1
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #2
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #3
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #4
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #5
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #6
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #7
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #8
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #9
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #10
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #11
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #12
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #13
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #14
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #15
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #16
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #17
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #18
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #19
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #20
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #21
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #22
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #23
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #24
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #25
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #26
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #27
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #28
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #29
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #30
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #31
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+                        - #32
+                                processor_id: 0
+                                proc_access_master: 0
+                                proc_access_secondary: [0, 0, 0]
+
+        host_hierarchy:
+                subhdr:
+                        magic: 0x8D27
+                        size: 68
+                host_hierarchy_entries:
+                        - #1
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #2
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #3
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #4
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #5
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #6
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #7
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #8
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #9
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #10
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #11
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #12
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #13
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #14
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #15
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #16
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #17
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #18
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #19
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #20
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #21
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #22
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #23
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #24
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #25
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #26
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #27
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #28
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #29
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #30
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #31
+                                host_id: 0
+                                supervisor_host_id: 0
+                        - #32
+                                host_id: 0
+                                supervisor_host_id: 0
+        otp_config:
+                subhdr:
+                        magic: 0x4081
+                        size: 69
+                write_host_id : 0
+                otp_entry:
+                        - #1
+                                host_id: 0
+                                host_perms: 0
+                        - #2
+                                host_id: 0
+                                host_perms: 0
+                        - #3
+                                host_id: 0
+                                host_perms: 0
+                        - #4
+                                host_id: 0
+                                host_perms: 0
+                        - #5
+                                host_id: 0
+                                host_perms: 0
+                        - #6
+                                host_id: 0
+                                host_perms: 0
+                        - #7
+                                host_id: 0
+                                host_perms: 0
+                        - #8
+                                host_id: 0
+                                host_perms: 0
+                        - #9
+                                host_id: 0
+                                host_perms: 0
+                        - #10
+                                host_id: 0
+                                host_perms: 0
+                        - #11
+                                host_id: 0
+                                host_perms: 0
+                        - #12
+                                host_id: 0
+                                host_perms: 0
+                        - #13
+                                host_id: 0
+                                host_perms: 0
+                        - #14
+                                host_id: 0
+                                host_perms: 0
+                        - #15
+                                host_id: 0
+                                host_perms: 0
+                        - #16
+                                host_id: 0
+                                host_perms: 0
+                        - #17
+                                host_id: 0
+                                host_perms: 0
+                        - #18
+                                host_id: 0
+                                host_perms: 0
+                        - #19
+                                host_id: 0
+                                host_perms: 0
+                        - #20
+                                host_id: 0
+                                host_perms: 0
+                        - #21
+                                host_id: 0
+                                host_perms: 0
+                        - #22
+                                host_id: 0
+                                host_perms: 0
+                        - #23
+                                host_id: 0
+                                host_perms: 0
+                        - #24
+                                host_id: 0
+                                host_perms: 0
+                        - #25
+                                host_id: 0
+                                host_perms: 0
+                        - #26
+                                host_id: 0
+                                host_perms: 0
+                        - #27
+                                host_id: 0
+                                host_perms: 0
+                        - #28
+                                host_id: 0
+                                host_perms: 0
+                        - #29
+                                host_id: 0
+                                host_perms: 0
+                        - #30
+                                host_id: 0
+                                host_perms: 0
+                        - #31
+                                host_id: 0
+                                host_perms: 0
+                        - #32
+                                host_id: 0
+                                host_perms: 0
+        dkek_config:
+                subhdr:
+                        magic: 0x5170
+                        size: 12
+                allowed_hosts: [128, 0, 0, 0]
+                allow_dkek_export_tisci : 0x5A
+                rsvd: [0, 0, 0]
+        sa2ul_cfg:
+                subhdr:
+                        magic: 0x23BE
+                        size : 0
+                auth_resource_owner: 0
+                enable_saul_psil_global_config_writes: 0
+                rsvd: [0, 0]
+        sec_dbg_config:
+                subhdr:
+                        magic: 0x42AF
+                        size: 16
+                allow_jtag_unlock : 0x5A
+                allow_wildcard_unlock : 0x5A
+                allowed_debug_level_rsvd : 0
+                rsvd : 0
+                min_cert_rev : 0x0
+                jtag_unlock_hosts: [0, 0, 0, 0]
+        sec_handover_cfg:
+                subhdr:
+                        magic: 0x608F
+                        size: 10
+                handover_msg_sender : 0
+                handover_to_host_id : 0
+                rsvd: [0, 0, 0, 0]
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 11/23] am64x: dts: binman: Package tiboot3.bin, tispl.bin u-boot.img
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (9 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 10/23] am64x: yaml: Add board configs for AM64x Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 17:35   ` Simon Glass
  2023-07-07 12:34 ` [PATCH v5 12/23] j721s2: yaml: Add board configs for J721S2 Neha Malcom Francis
                   ` (11 subsequent siblings)
  22 siblings, 1 reply; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Support added for HS and GP boot binaries for AM64x.

HS-SE:
    * tiboot3-am64x_sr2-hs-evm.bin
    * tispl.bin
    * u-boot.img

HS-FS:
    * tiboot3-am64x_sr2-hs-fs-evm.bin
    * tispl.bin
    * u-boot.img

GP:
    * tiboot3.bin --> tiboot3-am64x-gp-evm.bin
    * tispl.bin_unsigned
    * u-boot.img_unsigned

Note that the bootflow followed by AM64x requires:

tiboot3.bin:
	* R5 SPL
	* R5 SPL dtbs
	* sysfw
	* board-cfg
	* pm-cfg
	* sec-cfg
	* rm-cfg

tispl.bin:
	* ATF
	* OPTEE
	* A53 SPL
	* A53 SPL dtbs

u-boot.img:
	* A53 U-Boot
	* A53 U-Boot dtbs

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
[afd@ti.com: changed output binary names appropriately]
Signed-off-by: Andrew Davis <afd@ti.com>
---
 arch/arm/dts/k3-am642-evm-u-boot.dtsi |   2 +
 arch/arm/dts/k3-am642-r5-evm.dts      |   1 +
 arch/arm/dts/k3-am642-sk-u-boot.dtsi  |   2 +
 arch/arm/dts/k3-am64x-binman.dtsi     | 515 ++++++++++++++++++++++++++
 board/ti/am64x/Kconfig                |   2 +
 5 files changed, 522 insertions(+)
 create mode 100644 arch/arm/dts/k3-am64x-binman.dtsi

diff --git a/arch/arm/dts/k3-am642-evm-u-boot.dtsi b/arch/arm/dts/k3-am642-evm-u-boot.dtsi
index 64857b0909..73577e8cfd 100644
--- a/arch/arm/dts/k3-am642-evm-u-boot.dtsi
+++ b/arch/arm/dts/k3-am642-evm-u-boot.dtsi
@@ -3,6 +3,8 @@
  * Copyright (C) 2020-2021 Texas Instruments Incorporated - https://www.ti.com/
  */
 
+#include "k3-am64x-binman.dtsi"
+
 / {
 	chosen {
 		stdout-path = "serial2:115200n8";
diff --git a/arch/arm/dts/k3-am642-r5-evm.dts b/arch/arm/dts/k3-am642-r5-evm.dts
index e870492a69..b49064181a 100644
--- a/arch/arm/dts/k3-am642-r5-evm.dts
+++ b/arch/arm/dts/k3-am642-r5-evm.dts
@@ -8,6 +8,7 @@
 #include "k3-am642.dtsi"
 #include "k3-am64-evm-ddr4-1600MTs.dtsi"
 #include "k3-am64-ddr.dtsi"
+#include "k3-am64x-binman.dtsi"
 
 / {
 	chosen {
diff --git a/arch/arm/dts/k3-am642-sk-u-boot.dtsi b/arch/arm/dts/k3-am642-sk-u-boot.dtsi
index 69dbe943bd..3d6be025bd 100644
--- a/arch/arm/dts/k3-am642-sk-u-boot.dtsi
+++ b/arch/arm/dts/k3-am642-sk-u-boot.dtsi
@@ -3,6 +3,8 @@
  * Copyright (C) 2021 Texas Instruments Incorporated - https://www.ti.com/
  */
 
+#include "k3-am64x-binman.dtsi"
+
 / {
 	chosen {
 		stdout-path = "serial2:115200n8";
diff --git a/arch/arm/dts/k3-am64x-binman.dtsi b/arch/arm/dts/k3-am64x-binman.dtsi
new file mode 100644
index 0000000000..e6ca2457b4
--- /dev/null
+++ b/arch/arm/dts/k3-am64x-binman.dtsi
@@ -0,0 +1,515 @@
+// SPDX-License-Identifier: GPL-2.0+
+// Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+
+#include "k3-binman.dtsi"
+
+#ifdef CONFIG_TARGET_AM642_R5_EVM
+
+&binman {
+	tiboot3-am64x_sr2-hs-evm.bin {
+		filename = "tiboot3-am64x_sr2-hs-evm.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl>, <&ti_sci_enc>,
+				<&combined_sysfw_cfg>, <&sysfw_inner_cert>;
+			combined;
+			sysfw-inner-cert;
+			keyfile = "custMpk.pem";
+			sw-rev = <1>;
+			content-sbl = <&u_boot_spl>;
+			content-sysfw = <&ti_sci_enc>;
+			content-sysfw-data = <&combined_sysfw_cfg>;
+			content-sysfw-inner-cert = <&sysfw_inner_cert>;
+			load = <0x70000000>;
+			load-sysfw = <0x44000>;
+			load-sysfw-data = <0x7b000>;
+		};
+		u_boot_spl: u-boot-spl {
+			no-expanded;
+		};
+		ti_sci_enc: ti-fs-enc.bin {
+			filename = "ti-sysfw/ti-sci-firmware-am64x_sr2-hs-enc.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_sysfw_cfg: combined-sysfw-cfg.bin {
+			filename = "combined-sysfw-cfg.bin";
+			type = "blob-ext";
+		};
+		sysfw_inner_cert: sysfw-inner-cert {
+			filename = "ti-sysfw/ti-sci-firmware-am64x_sr2-hs-cert.bin";
+			type = "blob-ext";
+			optional;
+		};
+
+	};
+};
+
+&binman {
+	tiboot3-am64x_sr2-hs-fs-evm.bin {
+		filename = "tiboot3-am64x_sr2-hs-fs-evm.bin";
+		symlink = "tiboot3.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl_fs>, <&ti_sci_enc_fs>,
+				<&combined_sysfw_cfg_fs>, <&sysfw_inner_cert_fs>;
+			combined;
+			sysfw-inner-cert;
+			keyfile = "custMpk.pem";
+			sw-rev = <1>;
+			content-sbl = <&u_boot_spl_fs>;
+			content-sysfw = <&ti_sci_enc_fs>;
+			content-sysfw-data = <&combined_sysfw_cfg_fs>;
+			content-sysfw-inner-cert = <&sysfw_inner_cert_fs>;
+			load = <0x70000000>;
+			load-sysfw = <0x44000>;
+			load-sysfw-data = <0x7b000>;
+		};
+		u_boot_spl_fs: u-boot-spl {
+			no-expanded;
+		};
+		ti_sci_enc_fs: ti-fs-enc.bin {
+			filename = "ti-sysfw/ti-sci-firmware-am64x_sr2-hs-fs-enc.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_sysfw_cfg_fs: combined-sysfw-cfg.bin {
+			filename = "combined-sysfw-cfg.bin";
+			type = "blob-ext";
+		};
+		sysfw_inner_cert_fs: sysfw-inner-cert {
+			filename = "ti-sysfw/ti-sci-firmware-am64x_sr2-hs-fs-cert.bin";
+			type = "blob-ext";
+			optional;
+		};
+
+	};
+};
+
+&binman {
+	tiboot3-am64x-gp-evm.bin {
+		filename = "tiboot3-am64x-gp-evm.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl_unsigned>, <&ti_sci_gp>, <&combined_sysfw_cfg_gp>;
+			combined;
+			content-sbl = <&u_boot_spl_unsigned>;
+			load = <0x70000000>;
+			content-sysfw = <&ti_sci_gp>;
+			load-sysfw = <0x44000>;
+			content-sysfw-data = <&combined_sysfw_cfg_gp>;
+			load-sysfw-data = <0x7b000>;
+			sw-rev = <1>;
+			keyfile = "ti-degenerate-key.pem";
+		};
+		u_boot_spl_unsigned: u-boot-spl {
+			no-expanded;
+		};
+		ti_sci_gp: ti-sci-gp.bin {
+			filename = "ti-sysfw/ti-sci-firmware-am64x-gp.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_sysfw_cfg_gp: combined-sysfw-cfg-gp.bin {
+			filename = "combined-sysfw-cfg.bin";
+			type = "blob-ext";
+		};
+	};
+};
+
+#endif
+
+#ifdef CONFIG_TARGET_AM642_A53_EVM
+
+#define SPL_NODTB "spl/u-boot-spl-nodtb.bin"
+#define SPL_AM642_EVM_DTB "spl/dts/k3-am642-evm.dtb"
+#define SPL_AM642_SK_DTB "spl/dts/k3-am642-sk.dtb"
+
+#define UBOOT_NODTB "u-boot-nodtb.bin"
+#define AM642_EVM_DTB "arch/arm/dts/k3-am642-evm.dtb"
+#define AM642_SK_DTB "arch/arm/dts/k3-am642-sk.dtb"
+
+&binman {
+	ti-spl {
+		filename = "tispl.bin";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "Configuration to load ATF and SPL";
+			#address-cells = <1>;
+
+			images {
+
+				atf {
+					description = "ARM Trusted Firmware";
+					type = "firmware";
+					arch = "arm64";
+					compression = "none";
+					os = "arm-trusted-firmware";
+					load = <CONFIG_K3_ATF_LOAD_ADDR>;
+					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
+					ti-secure {
+						content = <&atf>;
+						keyfile = "custMpk.pem";
+					};
+					atf: atf-bl31 {
+					};
+				};
+
+				tee {
+					description = "OPTEE";
+					type = "tee";
+					arch = "arm64";
+					compression = "none";
+					os = "tee";
+					load = <0x9e800000>;
+					entry = <0x9e800000>;
+					ti-secure {
+						content = <&tee>;
+						keyfile = "custMpk.pem";
+					};
+					tee: tee-os {
+					};
+				};
+
+				dm {
+					description = "DM binary";
+					type = "firmware";
+					arch = "arm32";
+					compression = "none";
+					os = "DM";
+					load = <0x89000000>;
+					entry = <0x89000000>;
+					blob-ext {
+						filename = "/dev/null";
+					};
+				};
+
+				spl {
+					description = "SPL (64-bit)";
+					type = "standalone";
+					os = "U-Boot";
+					arch = "arm64";
+					compression = "none";
+					load = <CONFIG_SPL_TEXT_BASE>;
+					entry = <CONFIG_SPL_TEXT_BASE>;
+					ti-secure {
+						content = <&u_boot_spl_nodtb>;
+						keyfile = "custMpk.pem";
+
+					};
+					u_boot_spl_nodtb: blob-ext {
+						filename = SPL_NODTB;
+					};
+				};
+
+				fdt-0 {
+					description = "k3-am642-evm";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&spl_am64x_evm_dtb>;
+						keyfile = "custMpk.pem";
+					};
+					spl_am64x_evm_dtb: blob-ext {
+						filename = SPL_AM642_EVM_DTB;
+					};
+
+				};
+
+				fdt-1 {
+					description = "k3-am642-sk";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&spl_am64x_sk_dtb>;
+						keyfile = "custMpk.pem";
+					};
+					spl_am64x_sk_dtb: blob-ext {
+						filename = SPL_AM642_SK_DTB;
+					};
+
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-am642-evm";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-0";
+				};
+
+				conf-1 {
+					description = "k3-am642-sk";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-1";
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	u-boot {
+		filename = "u-boot.img";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "FIT image with multiple configurations";
+
+			images {
+				uboot {
+					description = "U-Boot for AM64 board";
+					type = "firmware";
+					os = "u-boot";
+					arch = "arm";
+					compression = "none";
+					load = <CONFIG_TEXT_BASE>;
+					ti-secure {
+						content = <&u_boot_nodtb>;
+						keyfile = "custMpk.pem";
+					};
+					u_boot_nodtb: u-boot-nodtb {
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-am642-evm";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&am64x_evm_dtb>;
+						keyfile = "custMpk.pem";
+
+					};
+					am64x_evm_dtb: blob-ext {
+						filename = AM642_EVM_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-1 {
+					description = "k3-am642-sk";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&am64x_sk_dtb>;
+						keyfile = "custMpk.pem";
+
+					};
+					am64x_sk_dtb: blob-ext {
+						filename = AM642_SK_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-am642-evm";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-0";
+				};
+
+				conf-1 {
+					description = "k3-am642-sk";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-1";
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	ti-spl_unsigned {
+		filename = "tispl.bin_unsigned";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "Configuration to load ATF and SPL";
+			#address-cells = <1>;
+
+			images {
+
+				atf {
+					description = "ARM Trusted Firmware";
+					type = "firmware";
+					arch = "arm64";
+					compression = "none";
+					os = "arm-trusted-firmware";
+					load = <CONFIG_K3_ATF_LOAD_ADDR>;
+					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
+					atf-bl31 {
+					};
+				};
+
+				tee {
+					description = "OPTEE";
+					type = "tee";
+					arch = "arm64";
+					compression = "none";
+					os = "tee";
+					load = <0x9e800000>;
+					entry = <0x9e800000>;
+					tee-os {
+					};
+				};
+
+				dm {
+					description = "DM binary";
+					type = "firmware";
+					arch = "arm32";
+					compression = "none";
+					os = "DM";
+					load = <0x89000000>;
+					entry = <0x89000000>;
+					blob-ext {
+						filename = "/dev/null";
+					};
+				};
+
+				spl {
+					description = "SPL (64-bit)";
+					type = "standalone";
+					os = "U-Boot";
+					arch = "arm64";
+					compression = "none";
+					load = <CONFIG_SPL_TEXT_BASE>;
+					entry = <CONFIG_SPL_TEXT_BASE>;
+					blob {
+						filename = "spl/u-boot-spl-nodtb.bin";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-am642-evm";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = SPL_AM642_EVM_DTB;
+					};
+				};
+
+				fdt-1 {
+					description = "k3-am642-sk";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = SPL_AM642_SK_DTB;
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-am642-evm";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-0";
+				};
+
+				conf-1 {
+					description = "k3-am642-sk";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-1";
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	u-boot_unsigned {
+		filename = "u-boot.img_unsigned";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "FIT image with multiple configurations";
+
+			images {
+				uboot {
+					description = "U-Boot for AM64 board";
+					type = "firmware";
+					os = "u-boot";
+					arch = "arm";
+					compression = "none";
+					load = <CONFIG_TEXT_BASE>;
+					blob {
+						filename = UBOOT_NODTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-am642-evm";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = AM642_EVM_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-1 {
+					description = "k3-am642-sk";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = AM642_SK_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-am642-evm";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-0";
+				};
+
+				conf-1 {
+					description = "k3-am642-sk";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-1";
+				};
+			};
+		};
+	};
+};
+#endif
diff --git a/board/ti/am64x/Kconfig b/board/ti/am64x/Kconfig
index afb54f8cda..fb596e4adf 100644
--- a/board/ti/am64x/Kconfig
+++ b/board/ti/am64x/Kconfig
@@ -9,6 +9,7 @@ choice
 config TARGET_AM642_A53_EVM
 	bool "TI K3 based AM642 EVM running on A53"
 	select ARM64
+	select BINMAN
 	imply BOARD
 	imply SPL_BOARD
 	imply TI_I2C_BOARD_DETECT
@@ -21,6 +22,7 @@ config TARGET_AM642_R5_EVM
 	select RAM
 	select SPL_RAM
 	select K3_DDRSS
+	select BINMAN
 	imply SYS_K3_SPL_ATF
 	imply TI_I2C_BOARD_DETECT
 
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 12/23] j721s2: yaml: Add board configs for J721S2
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (10 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 11/23] am64x: dts: binman: Package tiboot3.bin, tispl.bin u-boot.img Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-11  4:54   ` Jan Kiszka
  2023-07-07 12:34 ` [PATCH v5 13/23] j721s2: dts: binman: Package tiboot3.bin, tispl.bin and u-boot.img Neha Malcom Francis
                   ` (10 subsequent siblings)
  22 siblings, 1 reply; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Added YAML configs for J721S2

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
---
 board/ti/j721s2/board-cfg.yaml |   37 +
 board/ti/j721s2/pm-cfg.yaml    |   12 +
 board/ti/j721s2/rm-cfg.yaml    | 2901 ++++++++++++++++++++++++++++++++
 board/ti/j721s2/sec-cfg.yaml   |  379 +++++
 4 files changed, 3329 insertions(+)
 create mode 100644 board/ti/j721s2/board-cfg.yaml
 create mode 100644 board/ti/j721s2/pm-cfg.yaml
 create mode 100644 board/ti/j721s2/rm-cfg.yaml
 create mode 100644 board/ti/j721s2/sec-cfg.yaml

diff --git a/board/ti/j721s2/board-cfg.yaml b/board/ti/j721s2/board-cfg.yaml
new file mode 100644
index 0000000000..d80f308ca6
--- /dev/null
+++ b/board/ti/j721s2/board-cfg.yaml
@@ -0,0 +1,37 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Board configuration for J721S2
+#
+
+---
+
+board-cfg:
+    rev:
+        boardcfg_abi_maj : 0x0
+        boardcfg_abi_min : 0x1
+    control:
+        subhdr:
+            magic: 0xC1D3
+            size: 7
+        main_isolation_enable : 0x5A
+        main_isolation_hostid : 0x2
+    secproxy:
+        subhdr:
+            magic: 0x1207
+            size: 7
+        scaling_factor : 0x1
+        scaling_profile : 0x1
+        disable_main_nav_secure_proxy : 0
+    msmc:
+        subhdr:
+            magic: 0xA5C3
+            size: 5
+        msmc_cache_size : 0x0
+    debug_cfg:
+        subhdr:
+            magic: 0x020C
+            size: 8
+        trace_dst_enables : 0x00
+        trace_src_enables : 0x00
+
diff --git a/board/ti/j721s2/pm-cfg.yaml b/board/ti/j721s2/pm-cfg.yaml
new file mode 100644
index 0000000000..45994e23cc
--- /dev/null
+++ b/board/ti/j721s2/pm-cfg.yaml
@@ -0,0 +1,12 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Power management configuration for J721S2
+#
+
+---
+
+pm-cfg:
+    rev:
+        boardcfg_abi_maj : 0x0
+        boardcfg_abi_min : 0x1
diff --git a/board/ti/j721s2/rm-cfg.yaml b/board/ti/j721s2/rm-cfg.yaml
new file mode 100644
index 0000000000..6058f3b35c
--- /dev/null
+++ b/board/ti/j721s2/rm-cfg.yaml
@@ -0,0 +1,2901 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Resource management configuration for J721S2
+#
+
+---
+
+rm-cfg:
+    rm_boardcfg:
+        rev:
+            boardcfg_abi_maj : 0x0
+            boardcfg_abi_min : 0x1
+        host_cfg:
+            subhdr:
+                magic: 0x4C41
+                size : 356
+            host_cfg_entries:
+                - #1
+                    host_id: 3
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #2
+                    host_id: 5
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #3
+                    host_id: 12
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #4
+                    host_id: 13
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #5
+                    host_id: 21
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #6
+                    host_id: 23
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #7
+                    host_id: 35
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #8
+                    host_id: 37
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #9
+                    host_id: 40
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #10
+                    host_id: 42
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #11
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #12
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #13
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #14
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #15
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #16
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #17
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #18
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #19
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #20
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #21
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #22
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #23
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #24
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #25
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #26
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #27
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #28
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #29
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #30
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #31
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #32
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+        resasg:
+            subhdr:
+                magic: 0x7B25
+                size : 8
+            resasg_entries_size: 3032
+            reserved : 0
+    resasg_entries:
+        -
+                start_resource: 0
+                num_resource: 32
+                type: 7744
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 32
+                num_resource: 24
+                type: 7744
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 24
+                type: 7808
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 16
+                type: 7808
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 48
+                type: 7936
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 8
+                type: 8000
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 8
+                type: 8000
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 6
+                type: 8000
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 22
+                num_resource: 6
+                type: 8000
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 28
+                num_resource: 2
+                type: 8000
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 30
+                num_resource: 2
+                type: 8000
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 4
+                type: 9472
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 4
+                type: 9472
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 4
+                type: 9472
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 4
+                type: 9472
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 8
+                type: 9472
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 8
+                type: 9472
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 32
+                num_resource: 12
+                type: 9472
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 44
+                num_resource: 12
+                type: 9472
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 16
+                type: 9600
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 50176
+                num_resource: 96
+                type: 14402
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 14403
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 16
+                type: 14414
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 32
+                num_resource: 16
+                type: 14414
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 8
+                type: 14415
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 8
+                type: 14415
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 16
+                type: 14433
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 16
+                type: 14433
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 8
+                type: 14434
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 8
+                type: 14434
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 100
+                type: 14528
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 110
+                num_resource: 32
+                type: 14528
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 142
+                num_resource: 21
+                type: 14528
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 163
+                num_resource: 21
+                type: 14528
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 196
+                num_resource: 28
+                type: 14528
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 228
+                num_resource: 28
+                type: 14528
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 260
+                num_resource: 28
+                type: 14528
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 292
+                num_resource: 28
+                type: 14528
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 400
+                num_resource: 4
+                type: 14528
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 404
+                num_resource: 4
+                type: 14528
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 64
+                type: 16266
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 20480
+                num_resource: 1024
+                type: 16269
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 64
+                type: 16330
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 22528
+                num_resource: 1024
+                type: 16333
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 4
+                type: 16384
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 4
+                type: 16384
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 4
+                type: 16384
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 4
+                type: 16384
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 12
+                type: 16384
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 28
+                num_resource: 4
+                type: 16384
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 32
+                num_resource: 4
+                type: 16384
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 36
+                num_resource: 4
+                type: 16384
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 40
+                num_resource: 4
+                type: 16384
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 44
+                num_resource: 4
+                type: 16384
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 48
+                num_resource: 16
+                type: 16384
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 16576
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 423
+                num_resource: 32
+                type: 16577
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 455
+                num_resource: 32
+                type: 16577
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 487
+                num_resource: 182
+                type: 16577
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 669
+                num_resource: 40
+                type: 16577
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 709
+                num_resource: 10
+                type: 16577
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 719
+                num_resource: 10
+                type: 16577
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 729
+                num_resource: 6
+                type: 16577
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 735
+                num_resource: 6
+                type: 16577
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 878
+                num_resource: 128
+                type: 16577
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 1006
+                num_resource: 10
+                type: 16577
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 345
+                num_resource: 6
+                type: 16578
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 351
+                num_resource: 0
+                type: 16578
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 351
+                num_resource: 2
+                type: 16578
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 353
+                num_resource: 2
+                type: 16578
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 355
+                num_resource: 6
+                type: 16578
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 361
+                num_resource: 1
+                type: 16578
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 362
+                num_resource: 1
+                type: 16578
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 363
+                num_resource: 1
+                type: 16578
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 364
+                num_resource: 2
+                type: 16578
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 366
+                num_resource: 2
+                type: 16578
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 368
+                num_resource: 22
+                type: 16578
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 390
+                num_resource: 6
+                type: 16578
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 396
+                num_resource: 4
+                type: 16578
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 400
+                num_resource: 4
+                type: 16578
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 404
+                num_resource: 12
+                type: 16578
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 416
+                num_resource: 1
+                type: 16578
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 417
+                num_resource: 2
+                type: 16578
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 419
+                num_resource: 2
+                type: 16578
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 421
+                num_resource: 2
+                type: 16578
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 6
+                type: 16579
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 0
+                type: 16579
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 2
+                type: 16579
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 2
+                type: 16579
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 14
+                num_resource: 6
+                type: 16579
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 1
+                type: 16579
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 21
+                num_resource: 1
+                type: 16579
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 22
+                num_resource: 1
+                type: 16579
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 23
+                num_resource: 2
+                type: 16579
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 25
+                num_resource: 2
+                type: 16579
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 27
+                num_resource: 22
+                type: 16579
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 49
+                num_resource: 6
+                type: 16579
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 55
+                num_resource: 4
+                type: 16579
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 59
+                num_resource: 4
+                type: 16579
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 63
+                num_resource: 12
+                type: 16579
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 75
+                num_resource: 4
+                type: 16579
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 79
+                num_resource: 2
+                type: 16579
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 81
+                num_resource: 2
+                type: 16579
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 83
+                num_resource: 2
+                type: 16579
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 85
+                num_resource: 16
+                type: 16580
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 101
+                num_resource: 12
+                type: 16580
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 113
+                num_resource: 2
+                type: 16580
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 115
+                num_resource: 2
+                type: 16580
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 117
+                num_resource: 96
+                type: 16580
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 309
+                num_resource: 32
+                type: 16580
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 343
+                num_resource: 1
+                type: 16581
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 344
+                num_resource: 1
+                type: 16581
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 341
+                num_resource: 1
+                type: 16582
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 342
+                num_resource: 1
+                type: 16582
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 1
+                type: 16583
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 3
+                num_resource: 1
+                type: 16583
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 16584
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 1
+                num_resource: 1
+                type: 16584
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 5
+                type: 16586
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 7
+                num_resource: 1
+                type: 16586
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 3
+                type: 16587
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 3
+                num_resource: 2
+                type: 16587
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 5
+                num_resource: 3
+                type: 16587
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 3
+                type: 16587
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 11
+                num_resource: 6
+                type: 16587
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 17
+                num_resource: 3
+                type: 16587
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 3
+                type: 16587
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 23
+                num_resource: 3
+                type: 16587
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 1
+                type: 16587
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 27
+                num_resource: 1
+                type: 16587
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 28
+                num_resource: 4
+                type: 16587
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 82
+                num_resource: 16
+                type: 16832
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 98
+                num_resource: 16
+                type: 16832
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 114
+                num_resource: 110
+                type: 16832
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 16833
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 49152
+                num_resource: 1024
+                type: 16834
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 16835
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 6
+                type: 16842
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 0
+                type: 16842
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 2
+                type: 16842
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 2
+                type: 16842
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 14
+                num_resource: 6
+                type: 16842
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 1
+                type: 16842
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 21
+                num_resource: 1
+                type: 16842
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 22
+                num_resource: 1
+                type: 16842
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 23
+                num_resource: 2
+                type: 16842
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 25
+                num_resource: 2
+                type: 16842
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 27
+                num_resource: 22
+                type: 16842
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 49
+                num_resource: 6
+                type: 16842
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 55
+                num_resource: 4
+                type: 16842
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 59
+                num_resource: 4
+                type: 16842
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 63
+                num_resource: 12
+                type: 16842
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 75
+                num_resource: 1
+                type: 16842
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 76
+                num_resource: 2
+                type: 16842
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 78
+                num_resource: 2
+                type: 16842
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 80
+                num_resource: 2
+                type: 16842
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 1
+                type: 16843
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 3
+                num_resource: 1
+                type: 16843
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 16844
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 1
+                num_resource: 1
+                type: 16844
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 6
+                type: 16845
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 0
+                type: 16845
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 2
+                type: 16845
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 2
+                type: 16845
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 14
+                num_resource: 6
+                type: 16845
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 1
+                type: 16845
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 21
+                num_resource: 1
+                type: 16845
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 22
+                num_resource: 1
+                type: 16845
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 23
+                num_resource: 2
+                type: 16845
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 25
+                num_resource: 2
+                type: 16845
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 27
+                num_resource: 22
+                type: 16845
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 49
+                num_resource: 6
+                type: 16845
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 55
+                num_resource: 4
+                type: 16845
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 59
+                num_resource: 4
+                type: 16845
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 63
+                num_resource: 12
+                type: 16845
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 75
+                num_resource: 4
+                type: 16845
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 79
+                num_resource: 2
+                type: 16845
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 81
+                num_resource: 2
+                type: 16845
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 83
+                num_resource: 2
+                type: 16845
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 85
+                num_resource: 16
+                type: 16846
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 101
+                num_resource: 12
+                type: 16846
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 113
+                num_resource: 2
+                type: 16846
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 115
+                num_resource: 2
+                type: 16846
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 117
+                num_resource: 96
+                type: 16846
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 309
+                num_resource: 32
+                type: 16846
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 1
+                type: 16847
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 3
+                num_resource: 1
+                type: 16847
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 16848
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 1
+                num_resource: 1
+                type: 16848
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 34
+                num_resource: 86
+                type: 16970
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 120
+                num_resource: 32
+                type: 16970
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 152
+                num_resource: 12
+                type: 16970
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 164
+                num_resource: 12
+                type: 16970
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 176
+                num_resource: 28
+                type: 16970
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 204
+                num_resource: 8
+                type: 16970
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 212
+                num_resource: 12
+                type: 16970
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 224
+                num_resource: 12
+                type: 16970
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 236
+                num_resource: 20
+                type: 16970
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 34
+                num_resource: 1024
+                type: 16973
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 1058
+                num_resource: 512
+                type: 16973
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 1570
+                num_resource: 256
+                type: 16973
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 1826
+                num_resource: 256
+                type: 16973
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 2082
+                num_resource: 512
+                type: 16973
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 2594
+                num_resource: 256
+                type: 16973
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 2850
+                num_resource: 256
+                type: 16973
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 3106
+                num_resource: 256
+                type: 16973
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 3362
+                num_resource: 32
+                type: 16973
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 3394
+                num_resource: 32
+                type: 16973
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 3426
+                num_resource: 1182
+                type: 16973
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 1536
+                num_resource: 16
+                type: 16975
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 2048
+                num_resource: 16
+                type: 16976
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 2560
+                num_resource: 16
+                type: 16977
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 3072
+                num_resource: 32
+                type: 16978
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 3584
+                num_resource: 32
+                type: 16979
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 4096
+                num_resource: 32
+                type: 16980
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 12
+                type: 17152
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 36
+                num_resource: 20
+                type: 17152
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 1
+                num_resource: 4
+                type: 17344
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 5
+                num_resource: 4
+                type: 17344
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 9
+                num_resource: 4
+                type: 17344
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 4
+                type: 17344
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 17
+                num_resource: 16
+                type: 17344
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 33
+                num_resource: 4
+                type: 17344
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 37
+                num_resource: 4
+                type: 17344
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 41
+                num_resource: 4
+                type: 17344
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 45
+                num_resource: 4
+                type: 17344
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 49
+                num_resource: 4
+                type: 17344
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 53
+                num_resource: 11
+                type: 17344
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 17408
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 96
+                num_resource: 20
+                type: 17409
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 116
+                num_resource: 8
+                type: 17409
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 124
+                num_resource: 8
+                type: 17409
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 132
+                num_resource: 8
+                type: 17409
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 140
+                num_resource: 16
+                type: 17409
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 156
+                num_resource: 8
+                type: 17409
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 164
+                num_resource: 8
+                type: 17409
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 172
+                num_resource: 8
+                type: 17409
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 180
+                num_resource: 32
+                type: 17409
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 212
+                num_resource: 12
+                type: 17409
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 224
+                num_resource: 28
+                type: 17409
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 50
+                num_resource: 4
+                type: 17410
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 54
+                num_resource: 0
+                type: 17410
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 54
+                num_resource: 1
+                type: 17410
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 55
+                num_resource: 1
+                type: 17410
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 56
+                num_resource: 1
+                type: 17410
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 57
+                num_resource: 1
+                type: 17410
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 58
+                num_resource: 1
+                type: 17410
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 59
+                num_resource: 1
+                type: 17410
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 60
+                num_resource: 2
+                type: 17410
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 62
+                num_resource: 0
+                type: 17410
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 62
+                num_resource: 9
+                type: 17410
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 71
+                num_resource: 6
+                type: 17410
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 77
+                num_resource: 1
+                type: 17410
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 78
+                num_resource: 1
+                type: 17410
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 79
+                num_resource: 2
+                type: 17410
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 81
+                num_resource: 1
+                type: 17410
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 82
+                num_resource: 1
+                type: 17410
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 83
+                num_resource: 1
+                type: 17410
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 84
+                num_resource: 3
+                type: 17410
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 87
+                num_resource: 2
+                type: 17410
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 89
+                num_resource: 4
+                type: 17410
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 4
+                type: 17411
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 6
+                num_resource: 0
+                type: 17411
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 6
+                num_resource: 1
+                type: 17411
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 7
+                num_resource: 1
+                type: 17411
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 1
+                type: 17411
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 9
+                num_resource: 1
+                type: 17411
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 1
+                type: 17411
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 11
+                num_resource: 1
+                type: 17411
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 2
+                type: 17411
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 14
+                num_resource: 0
+                type: 17411
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 14
+                num_resource: 9
+                type: 17411
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 23
+                num_resource: 6
+                type: 17411
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 29
+                num_resource: 1
+                type: 17411
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 30
+                num_resource: 1
+                type: 17411
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 31
+                num_resource: 2
+                type: 17411
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 33
+                num_resource: 1
+                type: 17411
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 34
+                num_resource: 1
+                type: 17411
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 35
+                num_resource: 1
+                type: 17411
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 36
+                num_resource: 3
+                type: 17411
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 39
+                num_resource: 2
+                type: 17411
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 41
+                num_resource: 5
+                type: 17411
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 48
+                num_resource: 0
+                type: 17413
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 48
+                num_resource: 2
+                type: 17413
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 0
+                type: 17415
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 2
+                type: 17415
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 5
+                type: 17418
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 7
+                num_resource: 1
+                type: 17418
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 3
+                type: 17419
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 3
+                num_resource: 2
+                type: 17419
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 5
+                num_resource: 3
+                type: 17419
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 3
+                type: 17419
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 11
+                num_resource: 3
+                type: 17419
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 14
+                num_resource: 3
+                type: 17419
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 17
+                num_resource: 3
+                type: 17419
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 3
+                type: 17419
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 23
+                num_resource: 3
+                type: 17419
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 3
+                type: 17419
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 29
+                num_resource: 3
+                type: 17419
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 48
+                num_resource: 8
+                type: 17472
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 56
+                num_resource: 4
+                type: 17472
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 60
+                num_resource: 8
+                type: 17472
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 68
+                num_resource: 4
+                type: 17472
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 72
+                num_resource: 4
+                type: 17472
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 76
+                num_resource: 4
+                type: 17472
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 80
+                num_resource: 8
+                type: 17472
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 88
+                num_resource: 4
+                type: 17472
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 92
+                num_resource: 4
+                type: 17472
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 17473
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 56320
+                num_resource: 256
+                type: 17474
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 17475
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 4
+                type: 17482
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 6
+                num_resource: 0
+                type: 17482
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 6
+                num_resource: 1
+                type: 17482
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 7
+                num_resource: 1
+                type: 17482
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 1
+                type: 17482
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 9
+                num_resource: 1
+                type: 17482
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 1
+                type: 17482
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 11
+                num_resource: 1
+                type: 17482
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 2
+                type: 17482
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 14
+                num_resource: 0
+                type: 17482
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 14
+                num_resource: 9
+                type: 17482
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 23
+                num_resource: 6
+                type: 17482
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 29
+                num_resource: 1
+                type: 17482
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 30
+                num_resource: 1
+                type: 17482
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 31
+                num_resource: 2
+                type: 17482
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 33
+                num_resource: 1
+                type: 17482
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 34
+                num_resource: 1
+                type: 17482
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 35
+                num_resource: 1
+                type: 17482
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 36
+                num_resource: 3
+                type: 17482
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 39
+                num_resource: 2
+                type: 17482
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 41
+                num_resource: 4
+                type: 17482
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 0
+                type: 17483
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 2
+                type: 17483
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 4
+                type: 17485
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 6
+                num_resource: 0
+                type: 17485
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 6
+                num_resource: 1
+                type: 17485
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 7
+                num_resource: 1
+                type: 17485
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 8
+                num_resource: 1
+                type: 17485
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 9
+                num_resource: 1
+                type: 17485
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 1
+                type: 17485
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 11
+                num_resource: 1
+                type: 17485
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 2
+                type: 17485
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 14
+                num_resource: 0
+                type: 17485
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 14
+                num_resource: 9
+                type: 17485
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 23
+                num_resource: 6
+                type: 17485
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 29
+                num_resource: 1
+                type: 17485
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 30
+                num_resource: 1
+                type: 17485
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 31
+                num_resource: 2
+                type: 17485
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 33
+                num_resource: 1
+                type: 17485
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 34
+                num_resource: 1
+                type: 17485
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 35
+                num_resource: 1
+                type: 17485
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 36
+                num_resource: 3
+                type: 17485
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 39
+                num_resource: 2
+                type: 17485
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 41
+                num_resource: 5
+                type: 17485
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 0
+                type: 17487
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 2
+                type: 17487
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 22
+                num_resource: 32
+                type: 17610
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 54
+                num_resource: 16
+                type: 17610
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 70
+                num_resource: 8
+                type: 17610
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 78
+                num_resource: 8
+                type: 17610
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 86
+                num_resource: 24
+                type: 17610
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 110
+                num_resource: 8
+                type: 17610
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 118
+                num_resource: 16
+                type: 17610
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 134
+                num_resource: 16
+                type: 17610
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 150
+                num_resource: 64
+                type: 17610
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 214
+                num_resource: 4
+                type: 17610
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 218
+                num_resource: 38
+                type: 17610
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 16406
+                num_resource: 128
+                type: 17613
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 16534
+                num_resource: 128
+                type: 17613
+                host_id: 13
+                reserved: 0
+
+        -
+                start_resource: 16662
+                num_resource: 64
+                type: 17613
+                host_id: 21
+                reserved: 0
+
+        -
+                start_resource: 16726
+                num_resource: 64
+                type: 17613
+                host_id: 23
+                reserved: 0
+
+        -
+                start_resource: 16790
+                num_resource: 128
+                type: 17613
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 16918
+                num_resource: 128
+                type: 17613
+                host_id: 37
+                reserved: 0
+
+        -
+                start_resource: 17046
+                num_resource: 128
+                type: 17613
+                host_id: 40
+                reserved: 0
+
+        -
+                start_resource: 17174
+                num_resource: 128
+                type: 17613
+                host_id: 42
+                reserved: 0
+
+        -
+                start_resource: 17302
+                num_resource: 256
+                type: 17613
+                host_id: 3
+                reserved: 0
+
+        -
+                start_resource: 17558
+                num_resource: 64
+                type: 17613
+                host_id: 5
+                reserved: 0
+
+        -
+                start_resource: 17622
+                num_resource: 298
+                type: 17613
+                host_id: 128
+                reserved: 0
diff --git a/board/ti/j721s2/sec-cfg.yaml b/board/ti/j721s2/sec-cfg.yaml
new file mode 100644
index 0000000000..7484a1b58e
--- /dev/null
+++ b/board/ti/j721s2/sec-cfg.yaml
@@ -0,0 +1,379 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Security management configuration for J721S2
+#
+
+---
+
+sec-cfg:
+    rev:
+        boardcfg_abi_maj : 0x0
+        boardcfg_abi_min : 0x1
+    processor_acl_list:
+        subhdr:
+            magic: 0xF1EA
+            size: 164
+        proc_acl_entries:
+            - #1
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #2
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #3
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #4
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #5
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #6
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #7
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #8
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #9
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #10
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #11
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #12
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #13
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #14
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #15
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #16
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #17
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #18
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #19
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #20
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #21
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #22
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #23
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #24
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #25
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #26
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #27
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #28
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #29
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #30
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #31
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #32
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+    host_hierarchy:
+        subhdr:
+            magic: 0x8D27
+            size: 68
+        host_hierarchy_entries:
+            - #1
+                host_id: 0
+                supervisor_host_id: 0
+            - #2
+                host_id: 0
+                supervisor_host_id: 0
+            - #3
+                host_id: 0
+                supervisor_host_id: 0
+            - #4
+                host_id: 0
+                supervisor_host_id: 0
+            - #5
+                host_id: 0
+                supervisor_host_id: 0
+            - #6
+                host_id: 0
+                supervisor_host_id: 0
+            - #7
+                host_id: 0
+                supervisor_host_id: 0
+            - #8
+                host_id: 0
+                supervisor_host_id: 0
+            - #9
+                host_id: 0
+                supervisor_host_id: 0
+            - #10
+                host_id: 0
+                supervisor_host_id: 0
+            - #11
+                host_id: 0
+                supervisor_host_id: 0
+            - #12
+                host_id: 0
+                supervisor_host_id: 0
+            - #13
+                host_id: 0
+                supervisor_host_id: 0
+            - #14
+                host_id: 0
+                supervisor_host_id: 0
+            - #15
+                host_id: 0
+                supervisor_host_id: 0
+            - #16
+                host_id: 0
+                supervisor_host_id: 0
+            - #17
+                host_id: 0
+                supervisor_host_id: 0
+            - #18
+                host_id: 0
+                supervisor_host_id: 0
+            - #19
+                host_id: 0
+                supervisor_host_id: 0
+            - #20
+                host_id: 0
+                supervisor_host_id: 0
+            - #21
+                host_id: 0
+                supervisor_host_id: 0
+            - #22
+                host_id: 0
+                supervisor_host_id: 0
+            - #23
+                host_id: 0
+                supervisor_host_id: 0
+            - #24
+                host_id: 0
+                supervisor_host_id: 0
+            - #25
+                host_id: 0
+                supervisor_host_id: 0
+            - #26
+                host_id: 0
+                supervisor_host_id: 0
+            - #27
+                host_id: 0
+                supervisor_host_id: 0
+            - #28
+                host_id: 0
+                supervisor_host_id: 0
+            - #29
+                host_id: 0
+                supervisor_host_id: 0
+            - #30
+                host_id: 0
+                supervisor_host_id: 0
+            - #31
+                host_id: 0
+                supervisor_host_id: 0
+            - #32
+                host_id: 0
+                supervisor_host_id: 0
+    otp_config:
+        subhdr:
+            magic: 0x4081
+            size: 69
+        write_host_id : 0
+        otp_entry:
+            - #1
+                host_id: 0
+                host_perms: 0
+            - #2
+                host_id: 0
+                host_perms: 0
+            - #3
+                host_id: 0
+                host_perms: 0
+            - #4
+                host_id: 0
+                host_perms: 0
+            - #5
+                host_id: 0
+                host_perms: 0
+            - #6
+                host_id: 0
+                host_perms: 0
+            - #7
+                host_id: 0
+                host_perms: 0
+            - #8
+                host_id: 0
+                host_perms: 0
+            - #9
+                host_id: 0
+                host_perms: 0
+            - #10
+                host_id: 0
+                host_perms: 0
+            - #11
+                host_id: 0
+                host_perms: 0
+            - #12
+                host_id: 0
+                host_perms: 0
+            - #13
+                host_id: 0
+                host_perms: 0
+            - #14
+                host_id: 0
+                host_perms: 0
+            - #15
+                host_id: 0
+                host_perms: 0
+            - #16
+                host_id: 0
+                host_perms: 0
+            - #17
+                host_id: 0
+                host_perms: 0
+            - #18
+                host_id: 0
+                host_perms: 0
+            - #19
+                host_id: 0
+                host_perms: 0
+            - #20
+                host_id: 0
+                host_perms: 0
+            - #21
+                host_id: 0
+                host_perms: 0
+            - #22
+                host_id: 0
+                host_perms: 0
+            - #23
+                host_id: 0
+                host_perms: 0
+            - #24
+                host_id: 0
+                host_perms: 0
+            - #25
+                host_id: 0
+                host_perms: 0
+            - #26
+                host_id: 0
+                host_perms: 0
+            - #27
+                host_id: 0
+                host_perms: 0
+            - #28
+                host_id: 0
+                host_perms: 0
+            - #29
+                host_id: 0
+                host_perms: 0
+            - #30
+                host_id: 0
+                host_perms: 0
+            - #31
+                host_id: 0
+                host_perms: 0
+            - #32
+                host_id: 0
+                host_perms: 0
+    dkek_config:
+        subhdr:
+            magic: 0x5170
+            size: 12
+        allowed_hosts: [128, 0, 0, 0]
+        allow_dkek_export_tisci : 0x5A
+        rsvd: [0, 0, 0]
+    sa2ul_cfg:
+        subhdr:
+            magic: 0x23BE
+            size : 0
+        auth_resource_owner: 0
+        enable_saul_psil_global_config_writes: 0
+        rsvd: [0, 0]
+    sec_dbg_config:
+        subhdr:
+            magic: 0x42AF
+            size: 16
+        allow_jtag_unlock : 0x0
+        allow_wildcard_unlock : 0x0
+        allowed_debug_level_rsvd: 0
+        rsvd: 0
+        min_cert_rev : 0x0
+        jtag_unlock_hosts: [0, 0, 0, 0]
+    sec_handover_cfg:
+        subhdr:
+            magic: 0x608F
+            size: 10
+        handover_msg_sender : 0
+        handover_to_host_id : 0
+        rsvd: [0, 0, 0, 0]
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 13/23] j721s2: dts: binman: Package tiboot3.bin, tispl.bin and u-boot.img
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (11 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 12/23] j721s2: yaml: Add board configs for J721S2 Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 14/23] am62: yaml: Add board configs for AM62 Neha Malcom Francis
                   ` (9 subsequent siblings)
  22 siblings, 0 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Support has been added for both HS-SE, HS-FS  and GP images.

HS-SE:
    * tiboot3-j721s2-hs-evm.bin
    * tispl.bin
    * u-boot.img

HS-FS:
    * tiboot3-j721s2-hs-fs-evm.bin
    * tispl.bin
    * u-boot.img

GP:
    * tiboot3.bin --> tiboot3-j721s2-gp-evm.bin
    * tispl.bin_unsigned
    * u-boot.img_unsigned

It is to be noted that the bootflow followed by J721S2 requires:

tiboot3.bin:
	* R5 SPL
	* R5 SPL dtbs
	* TIFS
	* board-cfg
	* pm-cfg
	* sec-cfg
	* rm-cfg

tispl.bin:
	* DM
	* ATF
	* OPTEE
	* A72 SPL
	* A72 SPL dtbs

u-boot.img:
	* A72 U-Boot
	* A72 U-Boot dtbs

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
[afd@ti.com: changed output binary names appropriately]
Signed-off-by: Andrew Davis <afd@ti.com>
---
 .../arm/dts/k3-am68-sk-base-board-u-boot.dtsi |   2 +
 arch/arm/dts/k3-j721s2-binman.dtsi            | 546 ++++++++++++++++++
 .../k3-j721s2-common-proc-board-u-boot.dtsi   |   2 +
 .../dts/k3-j721s2-r5-common-proc-board.dts    |   1 +
 board/ti/j721s2/Kconfig                       |   2 +
 5 files changed, 553 insertions(+)
 create mode 100644 arch/arm/dts/k3-j721s2-binman.dtsi

diff --git a/arch/arm/dts/k3-am68-sk-base-board-u-boot.dtsi b/arch/arm/dts/k3-am68-sk-base-board-u-boot.dtsi
index ee31b1ebe7..79faa1b573 100644
--- a/arch/arm/dts/k3-am68-sk-base-board-u-boot.dtsi
+++ b/arch/arm/dts/k3-am68-sk-base-board-u-boot.dtsi
@@ -3,6 +3,8 @@
  * Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
  */
 
+#include "k3-j721s2-binman.dtsi"
+
 / {
 	chosen {
 		stdout-path = "serial2:115200n8";
diff --git a/arch/arm/dts/k3-j721s2-binman.dtsi b/arch/arm/dts/k3-j721s2-binman.dtsi
new file mode 100644
index 0000000000..7fd7ba8e5d
--- /dev/null
+++ b/arch/arm/dts/k3-j721s2-binman.dtsi
@@ -0,0 +1,546 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+ */
+
+#include "k3-binman.dtsi"
+
+#ifdef CONFIG_TARGET_J721S2_R5_EVM
+
+&binman {
+	tiboot3-j721s2-hs-evm.bin {
+		filename = "tiboot3-j721s2-hs-evm.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl>, <&ti_fs_enc>, <&combined_tifs_cfg>,
+				<&combined_dm_cfg>, <&sysfw_inner_cert>;
+			combined;
+			dm-data;
+			sysfw-inner-cert;
+			keyfile = "custMpk.pem";
+			sw-rev = <1>;
+			content-sbl = <&u_boot_spl>;
+			content-sysfw = <&ti_fs_enc>;
+			content-sysfw-data = <&combined_tifs_cfg>;
+			content-sysfw-inner-cert = <&sysfw_inner_cert>;
+			content-dm-data = <&combined_dm_cfg>;
+			load = <0x41c00000>;
+			load-sysfw = <0x40000>;
+			load-sysfw-data = <0x67000>;
+			load-dm-data = <0x41c80000>;
+		};
+		u_boot_spl: u-boot-spl {
+			no-expanded;
+		};
+		ti_fs_enc: ti-fs-enc.bin {
+			filename = "ti-sysfw/ti-fs-firmware-j721s2-hs-enc.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_tifs_cfg: combined-tifs-cfg.bin {
+			filename = "combined-tifs-cfg.bin";
+			type = "blob-ext";
+		};
+		sysfw_inner_cert: sysfw-inner-cert {
+			filename = "ti-sysfw/ti-fs-firmware-j721s2-hs-cert.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_dm_cfg: combined-dm-cfg.bin {
+			filename = "combined-dm-cfg.bin";
+			type = "blob-ext";
+		};
+	};
+};
+
+&binman {
+	tiboot3-j721s2-hs-fs-evm.bin {
+		filename = "tiboot3-j721s2-hs-fs-evm.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl_fs>, <&ti_fs_enc_fs>, <&combined_tifs_cfg_fs>,
+				<&combined_dm_cfg_fs>, <&sysfw_inner_cert_fs>;
+			combined;
+			dm-data;
+			sysfw-inner-cert;
+			keyfile = "custMpk.pem";
+			sw-rev = <1>;
+			content-sbl = <&u_boot_spl_fs>;
+			content-sysfw = <&ti_fs_enc_fs>;
+			content-sysfw-data = <&combined_tifs_cfg_fs>;
+			content-sysfw-inner-cert = <&sysfw_inner_cert_fs>;
+			content-dm-data = <&combined_dm_cfg_fs>;
+			load = <0x41c00000>;
+			load-sysfw = <0x40000>;
+			load-sysfw-data = <0x67000>;
+			load-dm-data = <0x41c80000>;
+		};
+		u_boot_spl_fs: u-boot-spl {
+			no-expanded;
+		};
+		ti_fs_enc_fs: ti-fs-enc.bin {
+			filename = "ti-sysfw/ti-fs-firmware-j721s2-hs-fs-enc.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_tifs_cfg_fs: combined-tifs-cfg.bin {
+			filename = "combined-tifs-cfg.bin";
+			type = "blob-ext";
+		};
+		sysfw_inner_cert_fs: sysfw-inner-cert {
+			filename = "ti-sysfw/ti-fs-firmware-j721s2-hs-fs-cert.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_dm_cfg_fs: combined-dm-cfg.bin {
+			filename = "combined-dm-cfg.bin";
+			type = "blob-ext";
+		};
+	};
+};
+
+&binman {
+	tiboot3-j721s2-gp-evm.bin {
+		filename = "tiboot3-j721s2-gp-evm.bin";
+		symlink = "tiboot3.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl_unsigned>, <&ti_fs_gp>,
+				<&combined_tifs_cfg_gp>, <&combined_dm_cfg_gp>;
+			combined;
+			dm-data;
+			content-sbl = <&u_boot_spl_unsigned>;
+			load = <0x41c00000>;
+			content-sysfw = <&ti_fs_gp>;
+			load-sysfw = <0x40000>;
+			content-sysfw-data = <&combined_tifs_cfg_gp>;
+			load-sysfw-data = <0x67000>;
+			content-dm-data = <&combined_dm_cfg_gp>;
+			load-dm-data = <0x41c80000>;
+			sw-rev = <1>;
+			keyfile = "ti-degenerate-key.pem";
+		};
+		u_boot_spl_unsigned: u-boot-spl {
+			no-expanded;
+		};
+		ti_fs_gp: ti-fs-gp.bin {
+			filename = "ti-sysfw/ti-fs-firmware-j721s2-gp.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_tifs_cfg_gp: combined-tifs-cfg-gp.bin {
+			filename = "combined-tifs-cfg.bin";
+			type = "blob-ext";
+		};
+		combined_dm_cfg_gp: combined-dm-cfg-gp.bin {
+			filename = "combined-dm-cfg.bin";
+			type = "blob-ext";
+		};
+
+	};
+};
+
+#endif
+
+#ifdef CONFIG_TARGET_J721S2_A72_EVM
+
+#define SPL_NODTB "spl/u-boot-spl-nodtb.bin"
+#define SPL_J721S2_EVM_DTB "spl/dts/k3-j721s2-common-proc-board.dtb"
+#define SPL_AM68_SK_DTB "spl/dts/k3-am68-sk-base-board.dtb"
+
+#define UBOOT_NODTB "u-boot-nodtb.bin"
+#define J721S2_EVM_DTB "arch/arm/dts/k3-j721s2-common-proc-board.dtb"
+#define AM68_SK_DTB "arch/arm/dts/k3-am68-sk-base-board.dtb"
+
+&binman {
+	ti-dm {
+		filename = "ti-dm.bin";
+		blob-ext {
+			filename = "ti-dm/j721s2/ipc_echo_testb_mcu1_0_release_strip.xer5f";
+		};
+	};
+	ti-spl {
+		filename = "tispl.bin";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "Configuration to load ATF and SPL";
+			#address-cells = <1>;
+
+			images {
+
+				atf {
+					description = "ARM Trusted Firmware";
+					type = "firmware";
+					arch = "arm64";
+					compression = "none";
+					os = "arm-trusted-firmware";
+					load = <CONFIG_K3_ATF_LOAD_ADDR>;
+					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
+					ti-secure {
+						content = <&atf>;
+						keyfile = "custMpk.pem";
+					};
+					atf: atf-bl31 {
+					};
+				};
+
+				tee {
+					description = "OPTEE";
+					type = "tee";
+					arch = "arm64";
+					compression = "none";
+					os = "tee";
+					load = <0x9e800000>;
+					entry = <0x9e800000>;
+					ti-secure {
+						content = <&tee>;
+						keyfile = "custMpk.pem";
+					};
+					tee: tee-os {
+					};
+				};
+
+				dm {
+					description = "DM binary";
+					type = "firmware";
+					arch = "arm32";
+					compression = "none";
+					os = "DM";
+					load = <0x89000000>;
+					entry = <0x89000000>;
+					ti-secure {
+						content = <&dm>;
+						keyfile = "custMpk.pem";
+					};
+					dm: blob-ext {
+						filename = "ti-dm.bin";
+					};
+				};
+
+				spl {
+					description = "SPL (64-bit)";
+					type = "standalone";
+					os = "U-Boot";
+					arch = "arm64";
+					compression = "none";
+					load = <CONFIG_SPL_TEXT_BASE>;
+					entry = <CONFIG_SPL_TEXT_BASE>;
+					ti-secure {
+						content = <&u_boot_spl_nodtb>;
+						keyfile = "custMpk.pem";
+					};
+					u_boot_spl_nodtb: blob-ext {
+						filename = SPL_NODTB;
+					};
+				};
+
+				fdt-0 {
+					description = "k3-j721s2-common-proc-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&spl_j721s2_evm_dtb>;
+						keyfile = "custMpk.pem";
+					};
+					spl_j721s2_evm_dtb: blob-ext {
+						filename = SPL_J721S2_EVM_DTB;
+					};
+
+				};
+
+				fdt-1 {
+					description = "k3-am68-sk-base-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&spl_am68_sk_dtb>;
+						keyfile = "custMpk.pem";
+					};
+					spl_am68_sk_dtb: blob-ext {
+						filename = SPL_AM68_SK_DTB;
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-j721s2-common-proc-board";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-0";
+				};
+
+				conf-1 {
+					description = "k3-am68-sk-base-board";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-1";
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	u-boot {
+		filename = "u-boot.img";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "FIT image with multiple configurations";
+
+			images {
+				uboot {
+					description = "U-Boot for J721S2 board";
+					type = "firmware";
+					os = "u-boot";
+					arch = "arm";
+					compression = "none";
+					load = <CONFIG_TEXT_BASE>;
+					ti-secure {
+						content = <&u_boot_nodtb>;
+						keyfile = "custMpk.pem";
+					};
+					u_boot_nodtb: u-boot-nodtb {
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-j721s2-common-proc-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&j721s2_evm_dtb>;
+						keyfile = "custMpk.pem";
+					};
+					j721s2_evm_dtb: blob-ext {
+						filename = J721S2_EVM_DTB;
+					};
+
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-1 {
+					description = "k3-am68-sk-base-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&am68_sk_dtb>;
+						keyfile = "custMpk.pem";
+					};
+					am68_sk_dtb: blob-ext {
+						filename = AM68_SK_DTB;
+					};
+
+					hash {
+						algo = "crc32";
+					};
+				};
+
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-j721s2-common-proc-board";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-0";
+				};
+				conf-1 {
+					description = "k3-am68-sk-base-board";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-1";
+				};
+
+			};
+		};
+	};
+};
+
+&binman {
+	ti-spl_unsigned {
+		filename = "tispl.bin_unsigned";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "Configuration to load ATF and SPL";
+			#address-cells = <1>;
+
+			images {
+
+				atf {
+					description = "ARM Trusted Firmware";
+					type = "firmware";
+					arch = "arm64";
+					compression = "none";
+					os = "arm-trusted-firmware";
+					load = <CONFIG_K3_ATF_LOAD_ADDR>;
+					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
+					atf-bl31 {
+						filename = "bl31.bin";
+					};
+				};
+
+				tee {
+					description = "OPTEE";
+					type = "tee";
+					arch = "arm64";
+					compression = "none";
+					os = "tee";
+					load = <0x9e800000>;
+					entry = <0x9e800000>;
+					tee-os {
+						filename = "tee-pager_v2.bin";
+					};
+				};
+
+				dm {
+					description = "DM binary";
+					type = "firmware";
+					arch = "arm32";
+					compression = "none";
+					os = "DM";
+					load = <0x89000000>;
+					entry = <0x89000000>;
+					blob-ext {
+						filename = "ti-dm.bin";
+					};
+				};
+
+				spl {
+					description = "SPL (64-bit)";
+					type = "standalone";
+					os = "U-Boot";
+					arch = "arm64";
+					compression = "none";
+					load = <CONFIG_SPL_TEXT_BASE>;
+					entry = <CONFIG_SPL_TEXT_BASE>;
+					blob {
+						filename = "spl/u-boot-spl-nodtb.bin";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-j721s2-common-proc-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = SPL_J721S2_EVM_DTB;
+					};
+				};
+				fdt-1 {
+					description = "k3-am68-sk-base-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = SPL_AM68_SK_DTB;
+					};
+				};
+
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-j721s2-common-proc-board";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-0";
+				};
+				conf-1 {
+					description = "k3-am68-sk-base-board";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-1";
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	u-boot_unsigned {
+		filename = "u-boot.img_unsigned";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "FIT image with multiple configurations";
+
+			images {
+				uboot {
+					description = "U-Boot for J721S2 board";
+					type = "firmware";
+					os = "u-boot";
+					arch = "arm";
+					compression = "none";
+					load = <CONFIG_TEXT_BASE>;
+					blob {
+						filename = UBOOT_NODTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-j721s2-common-proc-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = J721S2_EVM_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+				fdt-1 {
+					description = "k3-am68-sk-base-board";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = AM68_SK_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-j721s2-common-proc-board";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-0";
+				};
+				conf-1 {
+					description = "k3-am68-sk-base-board";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-1";
+				};
+			};
+		};
+	};
+};
+#endif
diff --git a/arch/arm/dts/k3-j721s2-common-proc-board-u-boot.dtsi b/arch/arm/dts/k3-j721s2-common-proc-board-u-boot.dtsi
index 4fd6d36417..f940ffee87 100644
--- a/arch/arm/dts/k3-j721s2-common-proc-board-u-boot.dtsi
+++ b/arch/arm/dts/k3-j721s2-common-proc-board-u-boot.dtsi
@@ -3,6 +3,8 @@
  * Copyright (C) 2021 Texas Instruments Incorporated - https://www.ti.com/
  */
 
+#include "k3-j721s2-binman.dtsi"
+
 / {
 	chosen {
 		stdout-path = "serial2:115200n8";
diff --git a/arch/arm/dts/k3-j721s2-r5-common-proc-board.dts b/arch/arm/dts/k3-j721s2-r5-common-proc-board.dts
index e02b334d10..c74e8e58ae 100644
--- a/arch/arm/dts/k3-j721s2-r5-common-proc-board.dts
+++ b/arch/arm/dts/k3-j721s2-r5-common-proc-board.dts
@@ -8,6 +8,7 @@
 #include "k3-j721s2-som-p0.dtsi"
 #include "k3-j721s2-ddr-evm-lp4-4266.dtsi"
 #include "k3-j721s2-ddr.dtsi"
+#include "k3-j721s2-binman.dtsi"
 
 / {
 	chosen {
diff --git a/board/ti/j721s2/Kconfig b/board/ti/j721s2/Kconfig
index a24641f8cf..f6d1cb5765 100644
--- a/board/ti/j721s2/Kconfig
+++ b/board/ti/j721s2/Kconfig
@@ -13,6 +13,7 @@ config TARGET_J721S2_A72_EVM
 	select BOARD_LATE_INIT
 	imply TI_I2C_BOARD_DETECT
 	select SYS_DISABLE_DCACHE_OPS
+	select BINMAN
 
 config TARGET_J721S2_R5_EVM
 	bool "TI K3 based J721S2 EVM running on R5"
@@ -22,6 +23,7 @@ config TARGET_J721S2_R5_EVM
 	select RAM
 	select SPL_RAM
 	select K3_DDRSS
+	select BINMAN
 	imply SYS_K3_SPL_ATF
 	imply TI_I2C_BOARD_DETECT
 
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 14/23] am62: yaml: Add board configs for AM62
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (12 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 13/23] j721s2: dts: binman: Package tiboot3.bin, tispl.bin and u-boot.img Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 15/23] am625: dts: binman: Package tiboot3.bin, tispl.bin and u-boot.img Neha Malcom Francis
                   ` (8 subsequent siblings)
  22 siblings, 0 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Added YAML configs for AM62

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
---
 board/ti/am62x/board-cfg.yaml |   36 ++
 board/ti/am62x/pm-cfg.yaml    |   12 +
 board/ti/am62x/rm-cfg.yaml    | 1088 +++++++++++++++++++++++++++++++++
 board/ti/am62x/sec-cfg.yaml   |  379 ++++++++++++
 4 files changed, 1515 insertions(+)
 create mode 100644 board/ti/am62x/board-cfg.yaml
 create mode 100644 board/ti/am62x/pm-cfg.yaml
 create mode 100644 board/ti/am62x/rm-cfg.yaml
 create mode 100644 board/ti/am62x/sec-cfg.yaml

diff --git a/board/ti/am62x/board-cfg.yaml b/board/ti/am62x/board-cfg.yaml
new file mode 100644
index 0000000000..a26ef55bd4
--- /dev/null
+++ b/board/ti/am62x/board-cfg.yaml
@@ -0,0 +1,36 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Board configuration for AM62
+#
+
+---
+
+board-cfg:
+    rev:
+        boardcfg_abi_maj : 0x0
+        boardcfg_abi_min : 0x1
+    control:
+        subhdr:
+            magic: 0xC1D3
+            size: 7
+        main_isolation_enable : 0x5A
+        main_isolation_hostid : 0x2
+    secproxy:
+        subhdr:
+            magic: 0x1207
+            size: 7
+        scaling_factor : 0x1
+        scaling_profile : 0x1
+        disable_main_nav_secure_proxy : 0
+    msmc:
+        subhdr:
+            magic: 0xA5C3
+            size: 5
+        msmc_cache_size : 0x0
+    debug_cfg:
+        subhdr:
+            magic: 0x020C
+            size: 8
+        trace_dst_enables : 0x00
+        trace_src_enables : 0x00
diff --git a/board/ti/am62x/pm-cfg.yaml b/board/ti/am62x/pm-cfg.yaml
new file mode 100644
index 0000000000..aa94097e97
--- /dev/null
+++ b/board/ti/am62x/pm-cfg.yaml
@@ -0,0 +1,12 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Power management configuration for AM62
+#
+
+---
+
+pm-cfg:
+    rev:
+        boardcfg_abi_maj : 0x0
+        boardcfg_abi_min : 0x1
diff --git a/board/ti/am62x/rm-cfg.yaml b/board/ti/am62x/rm-cfg.yaml
new file mode 100644
index 0000000000..1e8678c30b
--- /dev/null
+++ b/board/ti/am62x/rm-cfg.yaml
@@ -0,0 +1,1088 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Resource management configuration for AM62
+#
+
+---
+
+rm-cfg:
+    rm_boardcfg:
+        rev:
+            boardcfg_abi_maj : 0x0
+            boardcfg_abi_min : 0x1
+        host_cfg:
+            subhdr:
+                magic: 0x4C41
+                size : 356
+            host_cfg_entries:
+                - #1
+                    host_id: 12
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #2
+                    host_id: 30
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #3
+                    host_id: 36
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #4
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #5
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #6
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #7
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #8
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #9
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #10
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #11
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #12
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #13
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #14
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #15
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #16
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #17
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #18
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #19
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #20
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #21
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #22
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #23
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #24
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #25
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #26
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #27
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #28
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #29
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #30
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #31
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #32
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+        resasg:
+            subhdr:
+                magic: 0x7B25
+                size : 8
+            resasg_entries_size: 960
+            reserved : 0
+    resasg_entries:
+        -
+                start_resource: 0
+                num_resource: 16
+                type: 64
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 4
+                type: 64
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 4
+                type: 64
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 22
+                type: 64
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 16
+                type: 192
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 34
+                num_resource: 2
+                type: 192
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 4
+                type: 320
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 4
+                type: 320
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 26
+                type: 384
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 50176
+                num_resource: 164
+                type: 1666
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 1667
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 18
+                type: 1677
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1677
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1677
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 2
+                type: 1677
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 6
+                type: 1677
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 54
+                num_resource: 18
+                type: 1678
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 72
+                num_resource: 6
+                type: 1678
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 72
+                num_resource: 6
+                type: 1678
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 78
+                num_resource: 2
+                type: 1678
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 80
+                num_resource: 2
+                type: 1678
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 32
+                num_resource: 12
+                type: 1679
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 44
+                num_resource: 6
+                type: 1679
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 44
+                num_resource: 6
+                type: 1679
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 50
+                num_resource: 2
+                type: 1679
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 52
+                num_resource: 2
+                type: 1679
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 18
+                type: 1696
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1696
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1696
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 2
+                type: 1696
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 6
+                type: 1696
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 18
+                type: 1697
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1697
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1697
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 2
+                type: 1697
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 2
+                type: 1697
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 12
+                type: 1698
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 6
+                type: 1698
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 6
+                type: 1698
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 2
+                type: 1698
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 2
+                type: 1698
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 5
+                num_resource: 35
+                type: 1802
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 44
+                num_resource: 36
+                type: 1802
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 44
+                num_resource: 36
+                type: 1802
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 168
+                num_resource: 8
+                type: 1802
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 512
+                type: 1805
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 525
+                num_resource: 256
+                type: 1805
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 525
+                num_resource: 256
+                type: 1805
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 781
+                num_resource: 128
+                type: 1805
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 909
+                num_resource: 627
+                type: 1805
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1024
+                type: 1807
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 4096
+                num_resource: 29
+                type: 1808
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 4608
+                num_resource: 99
+                type: 1809
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 5120
+                num_resource: 24
+                type: 1810
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 5632
+                num_resource: 51
+                type: 1811
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 6144
+                num_resource: 51
+                type: 1812
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 6656
+                num_resource: 51
+                type: 1813
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 8192
+                num_resource: 32
+                type: 1814
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 8704
+                num_resource: 32
+                type: 1815
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 9216
+                num_resource: 32
+                type: 1816
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 9728
+                num_resource: 22
+                type: 1817
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 10240
+                num_resource: 22
+                type: 1818
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 10752
+                num_resource: 22
+                type: 1819
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 11264
+                num_resource: 28
+                type: 1820
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 11776
+                num_resource: 28
+                type: 1821
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 12288
+                num_resource: 28
+                type: 1822
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 1923
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 10
+                type: 1936
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1936
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1936
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 3
+                type: 1936
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 3
+                type: 1936
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 64
+                type: 1937
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 64
+                type: 1937
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 83
+                num_resource: 8
+                type: 1938
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 91
+                num_resource: 8
+                type: 1939
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 99
+                num_resource: 10
+                type: 1942
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 109
+                num_resource: 3
+                type: 1942
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 109
+                num_resource: 3
+                type: 1942
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 112
+                num_resource: 3
+                type: 1942
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 115
+                num_resource: 3
+                type: 1942
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 118
+                num_resource: 16
+                type: 1943
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 118
+                num_resource: 16
+                type: 1943
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 134
+                num_resource: 8
+                type: 1944
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 134
+                num_resource: 8
+                type: 1945
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 142
+                num_resource: 8
+                type: 1946
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 142
+                num_resource: 8
+                type: 1947
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 10
+                type: 1955
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1955
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1955
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 3
+                type: 1955
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 3
+                type: 1955
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 8
+                type: 1956
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 8
+                type: 1956
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 27
+                num_resource: 1
+                type: 1957
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 28
+                num_resource: 1
+                type: 1958
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 10
+                type: 1961
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1961
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1961
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 3
+                type: 1961
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 3
+                type: 1961
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 10
+                type: 1962
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1962
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1962
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 3
+                type: 1962
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 3
+                type: 1962
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 1
+                type: 1963
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 1
+                type: 1963
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 16
+                type: 1964
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 16
+                type: 1964
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 1
+                type: 1965
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 35
+                num_resource: 8
+                type: 1966
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 21
+                num_resource: 1
+                type: 1967
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 35
+                num_resource: 8
+                type: 1968
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 22
+                num_resource: 1
+                type: 1969
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 43
+                num_resource: 8
+                type: 1970
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 23
+                num_resource: 1
+                type: 1971
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 43
+                num_resource: 8
+                type: 1972
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 2112
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 2
+                type: 2122
+                host_id: 12
+                reserved: 0
diff --git a/board/ti/am62x/sec-cfg.yaml b/board/ti/am62x/sec-cfg.yaml
new file mode 100644
index 0000000000..bd5ed418e8
--- /dev/null
+++ b/board/ti/am62x/sec-cfg.yaml
@@ -0,0 +1,379 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Security management configuration for AM62
+#
+
+---
+
+sec-cfg:
+    rev:
+        boardcfg_abi_maj : 0x0
+        boardcfg_abi_min : 0x1
+    processor_acl_list:
+        subhdr:
+            magic: 0xF1EA
+            size: 164
+        proc_acl_entries:
+            - #1
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #2
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #3
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #4
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #5
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #6
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #7
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #8
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #9
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #10
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #11
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #12
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #13
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #14
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #15
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #16
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #17
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #18
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #19
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #20
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #21
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #22
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #23
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #24
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #25
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #26
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #27
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #28
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #29
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #30
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #31
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #32
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+    host_hierarchy:
+        subhdr:
+            magic: 0x8D27
+            size: 68
+        host_hierarchy_entries:
+            - #1
+                host_id: 0
+                supervisor_host_id: 0
+            - #2
+                host_id: 0
+                supervisor_host_id: 0
+            - #3
+                host_id: 0
+                supervisor_host_id: 0
+            - #4
+                host_id: 0
+                supervisor_host_id: 0
+            - #5
+                host_id: 0
+                supervisor_host_id: 0
+            - #6
+                host_id: 0
+                supervisor_host_id: 0
+            - #7
+                host_id: 0
+                supervisor_host_id: 0
+            - #8
+                host_id: 0
+                supervisor_host_id: 0
+            - #9
+                host_id: 0
+                supervisor_host_id: 0
+            - #10
+                host_id: 0
+                supervisor_host_id: 0
+            - #11
+                host_id: 0
+                supervisor_host_id: 0
+            - #12
+                host_id: 0
+                supervisor_host_id: 0
+            - #13
+                host_id: 0
+                supervisor_host_id: 0
+            - #14
+                host_id: 0
+                supervisor_host_id: 0
+            - #15
+                host_id: 0
+                supervisor_host_id: 0
+            - #16
+                host_id: 0
+                supervisor_host_id: 0
+            - #17
+                host_id: 0
+                supervisor_host_id: 0
+            - #18
+                host_id: 0
+                supervisor_host_id: 0
+            - #19
+                host_id: 0
+                supervisor_host_id: 0
+            - #20
+                host_id: 0
+                supervisor_host_id: 0
+            - #21
+                host_id: 0
+                supervisor_host_id: 0
+            - #22
+                host_id: 0
+                supervisor_host_id: 0
+            - #23
+                host_id: 0
+                supervisor_host_id: 0
+            - #24
+                host_id: 0
+                supervisor_host_id: 0
+            - #25
+                host_id: 0
+                supervisor_host_id: 0
+            - #26
+                host_id: 0
+                supervisor_host_id: 0
+            - #27
+                host_id: 0
+                supervisor_host_id: 0
+            - #28
+                host_id: 0
+                supervisor_host_id: 0
+            - #29
+                host_id: 0
+                supervisor_host_id: 0
+            - #30
+                host_id: 0
+                supervisor_host_id: 0
+            - #31
+                host_id: 0
+                supervisor_host_id: 0
+            - #32
+                host_id: 0
+                supervisor_host_id: 0
+    otp_config:
+        subhdr:
+            magic: 0x4081
+            size: 69
+        write_host_id : 0
+        otp_entry:
+            - #1
+                host_id: 0
+                host_perms: 0
+            - #2
+                host_id: 0
+                host_perms: 0
+            - #3
+                host_id: 0
+                host_perms: 0
+            - #4
+                host_id: 0
+                host_perms: 0
+            - #5
+                host_id: 0
+                host_perms: 0
+            - #6
+                host_id: 0
+                host_perms: 0
+            - #7
+                host_id: 0
+                host_perms: 0
+            - #8
+                host_id: 0
+                host_perms: 0
+            - #9
+                host_id: 0
+                host_perms: 0
+            - #10
+                host_id: 0
+                host_perms: 0
+            - #11
+                host_id: 0
+                host_perms: 0
+            - #12
+                host_id: 0
+                host_perms: 0
+            - #13
+                host_id: 0
+                host_perms: 0
+            - #14
+                host_id: 0
+                host_perms: 0
+            - #15
+                host_id: 0
+                host_perms: 0
+            - #16
+                host_id: 0
+                host_perms: 0
+            - #17
+                host_id: 0
+                host_perms: 0
+            - #18
+                host_id: 0
+                host_perms: 0
+            - #19
+                host_id: 0
+                host_perms: 0
+            - #20
+                host_id: 0
+                host_perms: 0
+            - #21
+                host_id: 0
+                host_perms: 0
+            - #22
+                host_id: 0
+                host_perms: 0
+            - #23
+                host_id: 0
+                host_perms: 0
+            - #24
+                host_id: 0
+                host_perms: 0
+            - #25
+                host_id: 0
+                host_perms: 0
+            - #26
+                host_id: 0
+                host_perms: 0
+            - #27
+                host_id: 0
+                host_perms: 0
+            - #28
+                host_id: 0
+                host_perms: 0
+            - #29
+                host_id: 0
+                host_perms: 0
+            - #30
+                host_id: 0
+                host_perms: 0
+            - #31
+                host_id: 0
+                host_perms: 0
+            - #32
+                host_id: 0
+                host_perms: 0
+    dkek_config:
+        subhdr:
+            magic: 0x5170
+            size: 12
+        allowed_hosts: [128, 0, 0, 0]
+        allow_dkek_export_tisci : 0x5A
+        rsvd: [0, 0, 0]
+    sa2ul_cfg:
+        subhdr:
+            magic: 0x23BE
+            size : 0
+        auth_resource_owner: 0
+        enable_saul_psil_global_config_writes: 0x5A
+        rsvd: [0, 0]
+    sec_dbg_config:
+        subhdr:
+            magic: 0x42AF
+            size: 16
+        allow_jtag_unlock : 0x5A
+        allow_wildcard_unlock : 0x5A
+        allowed_debug_level_rsvd: 0
+        rsvd: 0
+        min_cert_rev : 0x0
+        jtag_unlock_hosts: [0, 0, 0, 0]
+    sec_handover_cfg:
+        subhdr:
+            magic: 0x608F
+            size: 10
+        handover_msg_sender : 0
+        handover_to_host_id : 0
+        rsvd: [0, 0, 0, 0]
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 15/23] am625: dts: binman: Package tiboot3.bin, tispl.bin and u-boot.img
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (13 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 14/23] am62: yaml: Add board configs for AM62 Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 16/23] am62a: yaml: Add board configs for AM62ax Neha Malcom Francis
                   ` (7 subsequent siblings)
  22 siblings, 0 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Support added for HS-SE, HS-FS and GP boot binaries for AM62.

HS-SE:
    * tiboot3-am62x-hs-evm.bin
    * tispl.bin
    * u-boot.img

HS-FS:
    * tiboot3-am62x-hs-fs-evm.bin
    * tispl.bin
    * u-boot.img

GP:
    * tiboot3.bin --> tiboot3-am62x-gp-evm.bin
    * tispl.bin_unsigned
    * u-boot.img_unsigned

It is to be noted that the bootflow followed by AM62 requires:

tiboot3.bin:
	* R5 SPL
	* R5 SPL dtbs
	* TIFS
	* board-cfg
	* pm-cfg
	* sec-cfg
	* rm-cfg

tispl.bin:
	* DM
	* ATF
	* OPTEE
	* A72 SPL
	* A72 SPL dtbs

u-boot.img:
	* A72 U-Boot
	* A72 U-Boot dtbs

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
[afd@ti.com: changed output binary names appropriately]
Signed-off-by: Andrew Davis <afd@ti.com>
---
 arch/arm/dts/k3-am625-r5-sk.dts      |   1 +
 arch/arm/dts/k3-am625-sk-binman.dtsi | 463 +++++++++++++++++++++++++++
 arch/arm/dts/k3-am625-sk-u-boot.dtsi |   2 +
 board/ti/am62x/Kconfig               |   2 +
 4 files changed, 468 insertions(+)
 create mode 100644 arch/arm/dts/k3-am625-sk-binman.dtsi

diff --git a/arch/arm/dts/k3-am625-r5-sk.dts b/arch/arm/dts/k3-am625-r5-sk.dts
index 78df7cec3f..3ec5bad735 100644
--- a/arch/arm/dts/k3-am625-r5-sk.dts
+++ b/arch/arm/dts/k3-am625-r5-sk.dts
@@ -9,6 +9,7 @@
 #include "k3-am62-ddr.dtsi"
 
 #include "k3-am625-sk-u-boot.dtsi"
+#include "k3-am625-sk-binman.dtsi"
 
 / {
 	aliases {
diff --git a/arch/arm/dts/k3-am625-sk-binman.dtsi b/arch/arm/dts/k3-am625-sk-binman.dtsi
new file mode 100644
index 0000000000..c5bd9e48d0
--- /dev/null
+++ b/arch/arm/dts/k3-am625-sk-binman.dtsi
@@ -0,0 +1,463 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+ */
+
+#include "k3-binman.dtsi"
+
+#ifdef CONFIG_TARGET_AM625_R5_EVM
+
+&binman {
+	tiboot3-am62x-hs-evm.bin {
+		filename = "tiboot3-am62x-hs-evm.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl>, <&ti_fs_enc>, <&combined_tifs_cfg>,
+				<&combined_dm_cfg>, <&sysfw_inner_cert>;
+			combined;
+			dm-data;
+			sysfw-inner-cert;
+			keyfile = "custMpk.pem";
+			sw-rev = <1>;
+			content-sbl = <&u_boot_spl>;
+			content-sysfw = <&ti_fs_enc>;
+			content-sysfw-data = <&combined_tifs_cfg>;
+			content-sysfw-inner-cert = <&sysfw_inner_cert>;
+			content-dm-data = <&combined_dm_cfg>;
+			load = <0x43c00000>;
+			load-sysfw = <0x40000>;
+			load-sysfw-data = <0x67000>;
+			load-dm-data = <0x43c3a800>;
+		};
+		u_boot_spl: u-boot-spl {
+			no-expanded;
+		};
+		ti_fs_enc: ti-fs-enc.bin {
+			filename = "ti-sysfw/ti-fs-firmware-am62x-hs-enc.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_tifs_cfg: combined-tifs-cfg.bin {
+			filename = "combined-tifs-cfg.bin";
+			type = "blob-ext";
+		};
+		sysfw_inner_cert: sysfw-inner-cert {
+			filename = "ti-sysfw/ti-fs-firmware-am62x-hs-cert.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_dm_cfg: combined-dm-cfg.bin {
+			filename = "combined-dm-cfg.bin";
+			type = "blob-ext";
+		};
+	};
+};
+
+&binman {
+	tiboot3-am62x-hs-fs-evm.bin {
+		filename = "tiboot3-am62x-hs-fs-evm.bin";
+		symlink = "tiboot3.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl_fs>, <&ti_fs_enc_fs>, <&combined_tifs_cfg_fs>,
+				<&combined_dm_cfg_fs>, <&sysfw_inner_cert_fs>;
+			combined;
+			dm-data;
+			sysfw-inner-cert;
+			keyfile = "custMpk.pem";
+			sw-rev = <1>;
+			content-sbl = <&u_boot_spl_fs>;
+			content-sysfw = <&ti_fs_enc_fs>;
+			content-sysfw-data = <&combined_tifs_cfg_fs>;
+			content-sysfw-inner-cert = <&sysfw_inner_cert_fs>;
+			content-dm-data = <&combined_dm_cfg_fs>;
+			load = <0x43c00000>;
+			load-sysfw = <0x40000>;
+			load-sysfw-data = <0x67000>;
+			load-dm-data = <0x43c3a800>;
+		};
+		u_boot_spl_fs: u-boot-spl {
+			no-expanded;
+		};
+		ti_fs_enc_fs: ti-fs-enc.bin {
+			filename = "ti-sysfw/ti-fs-firmware-am62x-hs-fs-enc.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_tifs_cfg_fs: combined-tifs-cfg.bin {
+			filename = "combined-tifs-cfg.bin";
+			type = "blob-ext";
+		};
+		sysfw_inner_cert_fs: sysfw-inner-cert {
+			filename = "ti-sysfw/ti-fs-firmware-am62x-hs-fs-cert.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_dm_cfg_fs: combined-dm-cfg.bin {
+			filename = "combined-dm-cfg.bin";
+			type = "blob-ext";
+		};
+	};
+};
+
+&binman {
+	tiboot3-am62x-gp-evm.bin {
+		filename = "tiboot3-am62x-gp-evm.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl_unsigned>, <&ti_fs_gp>,
+				<&combined_tifs_cfg_gp>, <&combined_dm_cfg_gp>;
+			combined;
+			dm-data;
+			content-sbl = <&u_boot_spl_unsigned>;
+			load = <0x43c00000>;
+			content-sysfw = <&ti_fs_gp>;
+			load-sysfw = <0x40000>;
+			content-sysfw-data = <&combined_tifs_cfg_gp>;
+			load-sysfw-data = <0x67000>;
+			content-dm-data = <&combined_dm_cfg_gp>;
+			load-dm-data = <0x43c3a800>;
+			sw-rev = <1>;
+			keyfile = "ti-degenerate-key.pem";
+		};
+		u_boot_spl_unsigned: u-boot-spl {
+			no-expanded;
+		};
+		ti_fs_gp: ti-fs-gp.bin {
+			filename = "ti-sysfw/ti-fs-firmware-am62x-gp.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_tifs_cfg_gp: combined-tifs-cfg-gp.bin {
+			filename = "combined-tifs-cfg.bin";
+			type = "blob-ext";
+		};
+		combined_dm_cfg_gp: combined-dm-cfg-gp.bin {
+			filename = "combined-dm-cfg.bin";
+			type = "blob-ext";
+		};
+
+	};
+};
+
+#endif
+
+#ifdef CONFIG_TARGET_AM625_A53_EVM
+
+#define SPL_NODTB "spl/u-boot-spl-nodtb.bin"
+#define SPL_AM625_SK_DTB "spl/dts/k3-am625-sk.dtb"
+
+#define UBOOT_NODTB "u-boot-nodtb.bin"
+#define AM625_SK_DTB "arch/arm/dts/k3-am625-sk.dtb"
+
+&binman {
+	ti-dm {
+		filename = "ti-dm.bin";
+		blob-ext {
+			filename = "ti-dm/am62xx/ipc_echo_testb_mcu1_0_release_strip.xer5f";
+		};
+	};
+	ti-spl {
+		filename = "tispl.bin";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "Configuration to load ATF and SPL";
+			#address-cells = <1>;
+
+			images {
+
+				atf {
+					description = "ARM Trusted Firmware";
+					type = "firmware";
+					arch = "arm64";
+					compression = "none";
+					os = "arm-trusted-firmware";
+					load = <CONFIG_K3_ATF_LOAD_ADDR>;
+					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
+					ti-secure {
+						content = <&atf>;
+						keyfile = "custMpk.pem";
+					};
+					atf: atf-bl31 {
+					};
+				};
+
+				tee {
+					description = "OPTEE";
+					type = "tee";
+					arch = "arm64";
+					compression = "none";
+					os = "tee";
+					load = <0x9e800000>;
+					entry = <0x9e800000>;
+					ti-secure {
+						content = <&tee>;
+						keyfile = "custMpk.pem";
+					};
+					tee: tee-os {
+					};
+				};
+
+				dm {
+					description = "DM binary";
+					type = "firmware";
+					arch = "arm32";
+					compression = "none";
+					os = "DM";
+					load = <0x89000000>;
+					entry = <0x89000000>;
+					ti-secure {
+						content = <&dm>;
+						keyfile = "custMpk.pem";
+					};
+					dm: blob-ext {
+						filename = "ti-dm.bin";
+					};
+				};
+
+				spl {
+					description = "SPL (64-bit)";
+					type = "standalone";
+					os = "U-Boot";
+					arch = "arm64";
+					compression = "none";
+					load = <CONFIG_SPL_TEXT_BASE>;
+					entry = <CONFIG_SPL_TEXT_BASE>;
+					ti-secure {
+						content = <&u_boot_spl_nodtb>;
+						keyfile = "custMpk.pem";
+					};
+					u_boot_spl_nodtb: blob-ext {
+						filename = SPL_NODTB;
+					};
+				};
+
+				fdt-0 {
+					description = "k3-am625-sk";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&spl_am625_sk_dtb>;
+						keyfile = "custMpk.pem";
+					};
+					spl_am625_sk_dtb: blob-ext {
+						filename = SPL_AM625_SK_DTB;
+					};
+
+				};
+
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-am625-sk";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-0";
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	u-boot {
+		filename = "u-boot.img";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "FIT image with multiple configurations";
+
+			images {
+				uboot {
+					description = "U-Boot for AM625 board";
+					type = "firmware";
+					os = "u-boot";
+					arch = "arm";
+					compression = "none";
+					load = <CONFIG_TEXT_BASE>;
+					ti-secure {
+						content = <&u_boot_nodtb>;
+						keyfile = "custMpk.pem";
+					};
+					u_boot_nodtb: u-boot-nodtb {
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-am625-sk";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&am625_sk_dtb>;
+						keyfile = "custMpk.pem";
+					};
+					am625_sk_dtb: blob-ext {
+						filename = AM625_SK_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-am625-sk";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-0";
+				};
+
+			};
+		};
+	};
+};
+
+&binman {
+	ti-spl_unsigned {
+		filename = "tispl.bin_unsigned";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "Configuration to load ATF and SPL";
+			#address-cells = <1>;
+
+			images {
+
+				atf {
+					description = "ARM Trusted Firmware";
+					type = "firmware";
+					arch = "arm64";
+					compression = "none";
+					os = "arm-trusted-firmware";
+					load = <CONFIG_K3_ATF_LOAD_ADDR>;
+					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
+					atf-bl31 {
+						filename = "bl31.bin";
+					};
+				};
+
+				tee {
+					description = "OPTEE";
+					type = "tee";
+					arch = "arm64";
+					compression = "none";
+					os = "tee";
+					load = <0x9e800000>;
+					entry = <0x9e800000>;
+					tee-os {
+						filename = "tee-pager_v2.bin";
+					};
+				};
+
+				dm {
+					description = "DM binary";
+					type = "firmware";
+					arch = "arm32";
+					compression = "none";
+					os = "DM";
+					load = <0x89000000>;
+					entry = <0x89000000>;
+					blob-ext {
+						filename = "ti-dm.bin";
+					};
+				};
+
+				spl {
+					description = "SPL (64-bit)";
+					type = "standalone";
+					os = "U-Boot";
+					arch = "arm64";
+					compression = "none";
+					load = <CONFIG_SPL_TEXT_BASE>;
+					entry = <CONFIG_SPL_TEXT_BASE>;
+					blob {
+						filename = "spl/u-boot-spl-nodtb.bin";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-am625-sk";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = SPL_AM625_SK_DTB;
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-am625-sk";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-0";
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	u-boot_unsigned {
+		filename = "u-boot.img_unsigned";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "FIT image with multiple configurations";
+
+			images {
+				uboot {
+					description = "U-Boot for AM625 board";
+					type = "firmware";
+					os = "u-boot";
+					arch = "arm";
+					compression = "none";
+					load = <CONFIG_TEXT_BASE>;
+					blob {
+						filename = UBOOT_NODTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-am625-sk";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = AM625_SK_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-am625-sk";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-0";
+				};
+			};
+		};
+	};
+};
+#endif
diff --git a/arch/arm/dts/k3-am625-sk-u-boot.dtsi b/arch/arm/dts/k3-am625-sk-u-boot.dtsi
index 249155733a..a60c37f1db 100644
--- a/arch/arm/dts/k3-am625-sk-u-boot.dtsi
+++ b/arch/arm/dts/k3-am625-sk-u-boot.dtsi
@@ -4,6 +4,8 @@
  * Copyright (C) 2021-2022 Texas Instruments Incorporated - https://www.ti.com/
  */
 
+#include "k3-am625-sk-binman.dtsi"
+
 / {
 	chosen {
 		stdout-path = "serial2:115200n8";
diff --git a/board/ti/am62x/Kconfig b/board/ti/am62x/Kconfig
index 5e8dfa3cc4..cd17e939e5 100644
--- a/board/ti/am62x/Kconfig
+++ b/board/ti/am62x/Kconfig
@@ -10,6 +10,7 @@ choice
 config TARGET_AM625_A53_EVM
 	bool "TI K3 based AM625 EVM running on A53"
 	select ARM64
+	select BINMAN
 
 config TARGET_AM625_R5_EVM
 	bool "TI K3 based AM625 EVM running on R5"
@@ -19,6 +20,7 @@ config TARGET_AM625_R5_EVM
 	select RAM
 	select SPL_RAM
 	select K3_DDRSS
+	select BINMAN
 	imply SYS_K3_SPL_ATF
 
 endchoice
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 16/23] am62a: yaml: Add board configs for AM62ax
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (14 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 15/23] am625: dts: binman: Package tiboot3.bin, tispl.bin and u-boot.img Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 17/23] am62a: dts: binman: Package tiboot3.bin, tispl.bin, u-boot.img Neha Malcom Francis
                   ` (6 subsequent siblings)
  22 siblings, 0 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Added YAML configs for AM62ax

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
---
 board/ti/am62ax/board-cfg.yaml   |   36 +
 board/ti/am62ax/pm-cfg.yaml      |   12 +
 board/ti/am62ax/rm-cfg.yaml      | 1151 ++++++++++++++++++++++++++++++
 board/ti/am62ax/sec-cfg.yaml     |  379 ++++++++++
 board/ti/am62ax/tifs-rm-cfg.yaml | 1011 ++++++++++++++++++++++++++
 5 files changed, 2589 insertions(+)
 create mode 100644 board/ti/am62ax/board-cfg.yaml
 create mode 100644 board/ti/am62ax/pm-cfg.yaml
 create mode 100644 board/ti/am62ax/rm-cfg.yaml
 create mode 100644 board/ti/am62ax/sec-cfg.yaml
 create mode 100644 board/ti/am62ax/tifs-rm-cfg.yaml

diff --git a/board/ti/am62ax/board-cfg.yaml b/board/ti/am62ax/board-cfg.yaml
new file mode 100644
index 0000000000..6e45b494e0
--- /dev/null
+++ b/board/ti/am62ax/board-cfg.yaml
@@ -0,0 +1,36 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Board configuration for AM62ax
+#
+
+---
+
+board-cfg:
+    rev:
+        boardcfg_abi_maj : 0x0
+        boardcfg_abi_min : 0x1
+    control:
+        subhdr:
+            magic: 0xC1D3
+            size: 7
+        main_isolation_enable : 0x5A
+        main_isolation_hostid : 0x2
+    secproxy:
+        subhdr:
+            magic: 0x1207
+            size: 7
+        scaling_factor : 0x1
+        scaling_profile : 0x1
+        disable_main_nav_secure_proxy : 0
+    msmc:
+        subhdr:
+            magic: 0xA5C3
+            size: 5
+        msmc_cache_size : 0x10
+    debug_cfg:
+        subhdr:
+            magic: 0x020C
+            size: 8
+        trace_dst_enables : 0x00
+        trace_src_enables : 0x00
diff --git a/board/ti/am62ax/pm-cfg.yaml b/board/ti/am62ax/pm-cfg.yaml
new file mode 100644
index 0000000000..a491f11260
--- /dev/null
+++ b/board/ti/am62ax/pm-cfg.yaml
@@ -0,0 +1,12 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Power management configuration for AM62ax
+#
+
+---
+
+pm-cfg:
+    rev:
+        boardcfg_abi_maj : 0x0
+        boardcfg_abi_min : 0x1
diff --git a/board/ti/am62ax/rm-cfg.yaml b/board/ti/am62ax/rm-cfg.yaml
new file mode 100644
index 0000000000..0e11bd3e3c
--- /dev/null
+++ b/board/ti/am62ax/rm-cfg.yaml
@@ -0,0 +1,1151 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Resource management configuration for AM62ax
+#
+
+---
+
+rm-cfg:
+    rm_boardcfg:
+        rev:
+            boardcfg_abi_maj : 0x0
+            boardcfg_abi_min : 0x1
+        host_cfg:
+            subhdr:
+                magic: 0x4C41
+                size : 356
+            host_cfg_entries:
+                - #1
+                    host_id: 12
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #2
+                    host_id: 30
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #3
+                    host_id: 36
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #4
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #5
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #6
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #7
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #8
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #9
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #10
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #11
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #12
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #13
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #14
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #15
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #16
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #17
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #18
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #19
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #20
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #21
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #22
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #23
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #24
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #25
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #26
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #27
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #28
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #29
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #30
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #31
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #32
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+        resasg:
+            subhdr:
+                magic: 0x7B25
+                size : 8
+            resasg_entries_size: 1032
+            reserved : 0
+    resasg_entries:
+        -
+                start_resource: 0
+                num_resource: 16
+                type: 64
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 4
+                type: 64
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 4
+                type: 64
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 22
+                type: 64
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 16
+                type: 192
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 34
+                num_resource: 2
+                type: 192
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 4
+                type: 320
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 4
+                num_resource: 4
+                type: 320
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 26
+                type: 384
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 50176
+                num_resource: 164
+                type: 1666
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 1667
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 18
+                type: 1677
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1677
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1677
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 2
+                type: 1677
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 6
+                type: 1677
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 54
+                num_resource: 18
+                type: 1678
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 72
+                num_resource: 6
+                type: 1678
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 72
+                num_resource: 6
+                type: 1678
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 78
+                num_resource: 2
+                type: 1678
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 80
+                num_resource: 2
+                type: 1678
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 32
+                num_resource: 12
+                type: 1679
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 44
+                num_resource: 6
+                type: 1679
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 44
+                num_resource: 6
+                type: 1679
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 50
+                num_resource: 2
+                type: 1679
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 52
+                num_resource: 2
+                type: 1679
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 18
+                type: 1696
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1696
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1696
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 2
+                type: 1696
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 6
+                type: 1696
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 18
+                type: 1697
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1697
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1697
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 2
+                type: 1697
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 2
+                type: 1697
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 12
+                type: 1698
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 6
+                type: 1698
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 6
+                type: 1698
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 2
+                type: 1698
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 2
+                type: 1698
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 6
+                num_resource: 34
+                type: 1802
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 44
+                num_resource: 36
+                type: 1802
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 44
+                num_resource: 36
+                type: 1802
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 168
+                num_resource: 8
+                type: 1802
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 14
+                num_resource: 512
+                type: 1805
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 526
+                num_resource: 256
+                type: 1805
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 526
+                num_resource: 256
+                type: 1805
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 782
+                num_resource: 128
+                type: 1805
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 910
+                num_resource: 626
+                type: 1805
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1024
+                type: 1807
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 4096
+                num_resource: 29
+                type: 1808
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 4608
+                num_resource: 99
+                type: 1809
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 5120
+                num_resource: 24
+                type: 1810
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 5632
+                num_resource: 51
+                type: 1811
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 6144
+                num_resource: 51
+                type: 1812
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 6656
+                num_resource: 51
+                type: 1813
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 8192
+                num_resource: 32
+                type: 1814
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 8704
+                num_resource: 32
+                type: 1815
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 9216
+                num_resource: 32
+                type: 1816
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 9728
+                num_resource: 22
+                type: 1817
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 10240
+                num_resource: 22
+                type: 1818
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 10752
+                num_resource: 22
+                type: 1819
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 11264
+                num_resource: 28
+                type: 1820
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 11776
+                num_resource: 28
+                type: 1821
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 12288
+                num_resource: 28
+                type: 1822
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 1923
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 10
+                type: 1936
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1936
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1936
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 3
+                type: 1936
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 3
+                type: 1936
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 64
+                type: 1937
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 64
+                type: 1937
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 83
+                num_resource: 8
+                type: 1938
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 91
+                num_resource: 8
+                type: 1939
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 99
+                num_resource: 10
+                type: 1942
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 109
+                num_resource: 3
+                type: 1942
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 109
+                num_resource: 3
+                type: 1942
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 112
+                num_resource: 3
+                type: 1942
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 115
+                num_resource: 3
+                type: 1942
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 118
+                num_resource: 16
+                type: 1943
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 118
+                num_resource: 16
+                type: 1943
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 134
+                num_resource: 8
+                type: 1944
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 134
+                num_resource: 8
+                type: 1945
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 142
+                num_resource: 8
+                type: 1946
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 142
+                num_resource: 8
+                type: 1947
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 10
+                type: 1955
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1955
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1955
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 3
+                type: 1955
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 3
+                type: 1955
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 8
+                type: 1956
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 8
+                type: 1956
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 27
+                num_resource: 1
+                type: 1957
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 28
+                num_resource: 1
+                type: 1958
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 10
+                type: 1961
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1961
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1961
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 3
+                type: 1961
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 3
+                type: 1961
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 10
+                type: 1962
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1962
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1962
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 3
+                type: 1962
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 3
+                type: 1962
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 1
+                type: 1963
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 1
+                type: 1963
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 16
+                type: 1964
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 16
+                type: 1964
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 1
+                type: 1965
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 35
+                num_resource: 8
+                type: 1966
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 21
+                num_resource: 1
+                type: 1967
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 35
+                num_resource: 8
+                type: 1968
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 22
+                num_resource: 1
+                type: 1969
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 43
+                num_resource: 8
+                type: 1970
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 23
+                num_resource: 1
+                type: 1971
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 43
+                num_resource: 8
+                type: 1972
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 2112
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 2
+                type: 2122
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 51200
+                num_resource: 12
+                type: 12738
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 12739
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 6
+                type: 12750
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 6
+                type: 12769
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 8
+                type: 12810
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 12288
+                num_resource: 128
+                type: 12813
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 3072
+                num_resource: 6
+                type: 12828
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 3584
+                num_resource: 6
+                type: 12829
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 4096
+                num_resource: 6
+                type: 12830
+                host_id: 128
+                reserved: 0
diff --git a/board/ti/am62ax/sec-cfg.yaml b/board/ti/am62ax/sec-cfg.yaml
new file mode 100644
index 0000000000..f01f19cbdc
--- /dev/null
+++ b/board/ti/am62ax/sec-cfg.yaml
@@ -0,0 +1,379 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Security configuration for AM62ax
+#
+
+---
+
+sec-cfg:
+    rev:
+        boardcfg_abi_maj : 0x0
+        boardcfg_abi_min : 0x1
+    processor_acl_list:
+        subhdr:
+            magic: 0xF1EA
+            size: 164
+        proc_acl_entries:
+            - #1
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #2
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #3
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #4
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #5
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #6
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #7
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #8
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #9
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #10
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #11
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #12
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #13
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #14
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #15
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #16
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #17
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #18
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #19
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #20
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #21
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #22
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #23
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #24
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #25
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #26
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #27
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #28
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #29
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #30
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #31
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+            - #32
+                processor_id: 0
+                proc_access_master: 0
+                proc_access_secondary: [0, 0, 0]
+    host_hierarchy:
+        subhdr:
+            magic: 0x8D27
+            size: 68
+        host_hierarchy_entries:
+            - #1
+                host_id: 0
+                supervisor_host_id: 0
+            - #2
+                host_id: 0
+                supervisor_host_id: 0
+            - #3
+                host_id: 0
+                supervisor_host_id: 0
+            - #4
+                host_id: 0
+                supervisor_host_id: 0
+            - #5
+                host_id: 0
+                supervisor_host_id: 0
+            - #6
+                host_id: 0
+                supervisor_host_id: 0
+            - #7
+                host_id: 0
+                supervisor_host_id: 0
+            - #8
+                host_id: 0
+                supervisor_host_id: 0
+            - #9
+                host_id: 0
+                supervisor_host_id: 0
+            - #10
+                host_id: 0
+                supervisor_host_id: 0
+            - #11
+                host_id: 0
+                supervisor_host_id: 0
+            - #12
+                host_id: 0
+                supervisor_host_id: 0
+            - #13
+                host_id: 0
+                supervisor_host_id: 0
+            - #14
+                host_id: 0
+                supervisor_host_id: 0
+            - #15
+                host_id: 0
+                supervisor_host_id: 0
+            - #16
+                host_id: 0
+                supervisor_host_id: 0
+            - #17
+                host_id: 0
+                supervisor_host_id: 0
+            - #18
+                host_id: 0
+                supervisor_host_id: 0
+            - #19
+                host_id: 0
+                supervisor_host_id: 0
+            - #20
+                host_id: 0
+                supervisor_host_id: 0
+            - #21
+                host_id: 0
+                supervisor_host_id: 0
+            - #22
+                host_id: 0
+                supervisor_host_id: 0
+            - #23
+                host_id: 0
+                supervisor_host_id: 0
+            - #24
+                host_id: 0
+                supervisor_host_id: 0
+            - #25
+                host_id: 0
+                supervisor_host_id: 0
+            - #26
+                host_id: 0
+                supervisor_host_id: 0
+            - #27
+                host_id: 0
+                supervisor_host_id: 0
+            - #28
+                host_id: 0
+                supervisor_host_id: 0
+            - #29
+                host_id: 0
+                supervisor_host_id: 0
+            - #30
+                host_id: 0
+                supervisor_host_id: 0
+            - #31
+                host_id: 0
+                supervisor_host_id: 0
+            - #32
+                host_id: 0
+                supervisor_host_id: 0
+    otp_config:
+        subhdr:
+            magic: 0x4081
+            size: 69
+        write_host_id : 0
+        otp_entry:
+            - #1
+                host_id: 0
+                host_perms: 0
+            - #2
+                host_id: 0
+                host_perms: 0
+            - #3
+                host_id: 0
+                host_perms: 0
+            - #4
+                host_id: 0
+                host_perms: 0
+            - #5
+                host_id: 0
+                host_perms: 0
+            - #6
+                host_id: 0
+                host_perms: 0
+            - #7
+                host_id: 0
+                host_perms: 0
+            - #8
+                host_id: 0
+                host_perms: 0
+            - #9
+                host_id: 0
+                host_perms: 0
+            - #10
+                host_id: 0
+                host_perms: 0
+            - #11
+                host_id: 0
+                host_perms: 0
+            - #12
+                host_id: 0
+                host_perms: 0
+            - #13
+                host_id: 0
+                host_perms: 0
+            - #14
+                host_id: 0
+                host_perms: 0
+            - #15
+                host_id: 0
+                host_perms: 0
+            - #16
+                host_id: 0
+                host_perms: 0
+            - #17
+                host_id: 0
+                host_perms: 0
+            - #18
+                host_id: 0
+                host_perms: 0
+            - #19
+                host_id: 0
+                host_perms: 0
+            - #20
+                host_id: 0
+                host_perms: 0
+            - #21
+                host_id: 0
+                host_perms: 0
+            - #22
+                host_id: 0
+                host_perms: 0
+            - #23
+                host_id: 0
+                host_perms: 0
+            - #24
+                host_id: 0
+                host_perms: 0
+            - #25
+                host_id: 0
+                host_perms: 0
+            - #26
+                host_id: 0
+                host_perms: 0
+            - #27
+                host_id: 0
+                host_perms: 0
+            - #28
+                host_id: 0
+                host_perms: 0
+            - #29
+                host_id: 0
+                host_perms: 0
+            - #30
+                host_id: 0
+                host_perms: 0
+            - #31
+                host_id: 0
+                host_perms: 0
+            - #32
+                host_id: 0
+                host_perms: 0
+    dkek_config:
+        subhdr:
+            magic: 0x5170
+            size: 12
+        allowed_hosts: [128, 0, 0, 0]
+        allow_dkek_export_tisci : 0x5A
+        rsvd: [0, 0, 0]
+    sa2ul_cfg:
+        subhdr:
+            magic: 0x23BE
+            size : 0
+        auth_resource_owner: 0
+        enable_saul_psil_global_config_writes: 0x5A
+        rsvd: [0, 0]
+    sec_dbg_config:
+        subhdr:
+            magic: 0x42AF
+            size: 16
+        allow_jtag_unlock : 0x5A
+        allow_wildcard_unlock : 0x5A
+        allowed_debug_level_rsvd: 0
+        rsvd: 0
+        min_cert_rev : 0x0
+        jtag_unlock_hosts: [0, 0, 0, 0]
+    sec_handover_cfg:
+        subhdr:
+            magic: 0x608F
+            size: 10
+        handover_msg_sender : 0
+        handover_to_host_id : 0
+        rsvd: [0, 0, 0, 0]
diff --git a/board/ti/am62ax/tifs-rm-cfg.yaml b/board/ti/am62ax/tifs-rm-cfg.yaml
new file mode 100644
index 0000000000..8e002e6304
--- /dev/null
+++ b/board/ti/am62ax/tifs-rm-cfg.yaml
@@ -0,0 +1,1011 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Resource management configuration for AM62AX
+#
+
+---
+
+tifs-rm-cfg:
+    rm_boardcfg:
+        rev:
+            boardcfg_abi_maj : 0x0
+            boardcfg_abi_min : 0x1
+        host_cfg:
+            subhdr:
+                magic: 0x4C41
+                size : 356
+            host_cfg_entries:
+                - #1
+                    host_id: 12
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #2
+                    host_id: 30
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #3
+                    host_id: 36
+                    allowed_atype : 0x2A
+                    allowed_qos : 0xAAAA
+                    allowed_orderid : 0xAAAAAAAA
+                    allowed_priority : 0xAAAA
+                    allowed_sched_priority : 0xAA
+                - #4
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #5
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #6
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #7
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #8
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #9
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #10
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #11
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #12
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #13
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #14
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #15
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #16
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #17
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #18
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #19
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #20
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #21
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #22
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #23
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #24
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #25
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #26
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #27
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #28
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #29
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #30
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #31
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+                - #32
+                    host_id: 0
+                    allowed_atype : 0
+                    allowed_qos : 0
+                    allowed_orderid : 0
+                    allowed_priority : 0
+                    allowed_sched_priority : 0
+        resasg:
+            subhdr:
+                magic: 0x7B25
+                size : 8
+            resasg_entries_size: 872
+            reserved : 0
+    resasg_entries:
+        -
+                start_resource: 0
+                num_resource: 18
+                type: 1677
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1677
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1677
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 2
+                type: 1677
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 6
+                type: 1677
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 54
+                num_resource: 18
+                type: 1678
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 72
+                num_resource: 6
+                type: 1678
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 72
+                num_resource: 6
+                type: 1678
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 78
+                num_resource: 2
+                type: 1678
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 80
+                num_resource: 2
+                type: 1678
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 32
+                num_resource: 12
+                type: 1679
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 44
+                num_resource: 6
+                type: 1679
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 44
+                num_resource: 6
+                type: 1679
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 50
+                num_resource: 2
+                type: 1679
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 52
+                num_resource: 2
+                type: 1679
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 18
+                type: 1696
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1696
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1696
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 2
+                type: 1696
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 6
+                type: 1696
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 18
+                type: 1697
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1697
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 6
+                type: 1697
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 24
+                num_resource: 2
+                type: 1697
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 26
+                num_resource: 2
+                type: 1697
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 12
+                type: 1698
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 6
+                type: 1698
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 12
+                num_resource: 6
+                type: 1698
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 18
+                num_resource: 2
+                type: 1698
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 2
+                type: 1698
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 6
+                num_resource: 34
+                type: 1802
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 44
+                num_resource: 36
+                type: 1802
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 44
+                num_resource: 36
+                type: 1802
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 168
+                num_resource: 8
+                type: 1802
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1024
+                type: 1807
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 4096
+                num_resource: 29
+                type: 1808
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 4608
+                num_resource: 99
+                type: 1809
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 5120
+                num_resource: 24
+                type: 1810
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 5632
+                num_resource: 51
+                type: 1811
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 6144
+                num_resource: 51
+                type: 1812
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 6656
+                num_resource: 51
+                type: 1813
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 8192
+                num_resource: 32
+                type: 1814
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 8704
+                num_resource: 32
+                type: 1815
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 9216
+                num_resource: 32
+                type: 1816
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 9728
+                num_resource: 22
+                type: 1817
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 10240
+                num_resource: 22
+                type: 1818
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 10752
+                num_resource: 22
+                type: 1819
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 11264
+                num_resource: 28
+                type: 1820
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 11776
+                num_resource: 28
+                type: 1821
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 12288
+                num_resource: 28
+                type: 1822
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 10
+                type: 1936
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1936
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1936
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 3
+                type: 1936
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 3
+                type: 1936
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 64
+                type: 1937
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 64
+                type: 1937
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 83
+                num_resource: 8
+                type: 1938
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 91
+                num_resource: 8
+                type: 1939
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 99
+                num_resource: 10
+                type: 1942
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 109
+                num_resource: 3
+                type: 1942
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 109
+                num_resource: 3
+                type: 1942
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 112
+                num_resource: 3
+                type: 1942
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 115
+                num_resource: 3
+                type: 1942
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 118
+                num_resource: 16
+                type: 1943
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 118
+                num_resource: 16
+                type: 1943
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 134
+                num_resource: 8
+                type: 1944
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 134
+                num_resource: 8
+                type: 1945
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 142
+                num_resource: 8
+                type: 1946
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 142
+                num_resource: 8
+                type: 1947
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 10
+                type: 1955
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1955
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1955
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 3
+                type: 1955
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 3
+                type: 1955
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 8
+                type: 1956
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 8
+                type: 1956
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 27
+                num_resource: 1
+                type: 1957
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 28
+                num_resource: 1
+                type: 1958
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 10
+                type: 1961
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1961
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1961
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 3
+                type: 1961
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 3
+                type: 1961
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 10
+                type: 1962
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1962
+                host_id: 35
+                reserved: 0
+
+        -
+                start_resource: 10
+                num_resource: 3
+                type: 1962
+                host_id: 36
+                reserved: 0
+
+        -
+                start_resource: 13
+                num_resource: 3
+                type: 1962
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 16
+                num_resource: 3
+                type: 1962
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 1
+                type: 1963
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 1
+                type: 1963
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 16
+                type: 1964
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 19
+                num_resource: 16
+                type: 1964
+                host_id: 30
+                reserved: 0
+
+        -
+                start_resource: 20
+                num_resource: 1
+                type: 1965
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 35
+                num_resource: 8
+                type: 1966
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 21
+                num_resource: 1
+                type: 1967
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 35
+                num_resource: 8
+                type: 1968
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 22
+                num_resource: 1
+                type: 1969
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 43
+                num_resource: 8
+                type: 1970
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 23
+                num_resource: 1
+                type: 1971
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 43
+                num_resource: 8
+                type: 1972
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 1
+                type: 2112
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 2
+                num_resource: 2
+                type: 2122
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 6
+                type: 12750
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 6
+                type: 12769
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 0
+                num_resource: 8
+                type: 12810
+                host_id: 12
+                reserved: 0
+
+        -
+                start_resource: 3072
+                num_resource: 6
+                type: 12828
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 3584
+                num_resource: 6
+                type: 12829
+                host_id: 128
+                reserved: 0
+
+        -
+                start_resource: 4096
+                num_resource: 6
+                type: 12830
+                host_id: 128
+                reserved: 0
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 17/23] am62a: dts: binman: Package tiboot3.bin, tispl.bin, u-boot.img
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (15 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 16/23] am62a: yaml: Add board configs for AM62ax Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 18/23] arm: k3-am65x-iot2050: Use binman for tispl.bin for iot2050 Neha Malcom Francis
                   ` (5 subsequent siblings)
  22 siblings, 0 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Support added for HS-SE, HS-FS and GP boot binaries for AM62ax.

HS-SE:
    * tiboot3-am62ax-hs-evm.bin
    * tispl.bin
    * u-boot.img

HS-FS:
    * tiboot3-am62ax-hs-fs-evm.bin
    * tispl.bin
    * u-boot.img

GP:
    * tiboot3.bin --> tiboot3-am62ax-gp-evm.bin
    * tispl.bin_unsigned
    * u-boot.img_unsigned

It is to be noted that the bootflow followed by AM62ax requires:

tiboot3.bin:
	* R5 SPL
	* R5 SPL dtbs
	* TIFS
	* board-cfg
	* pm-cfg
	* sec-cfg
	* rm-cfg

tispl.bin:
	* DM
	* ATF
	* OPTEE
	* A72 SPL
	* A72 SPL dtbs

u-boot.img:
	* A72 U-Boot
	* A72 U-Boot dtbs

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
[afd@ti.com: changed output binary names appropriately]
Signed-off-by: Andrew Davis <afd@ti.com>
---
 arch/arm/dts/k3-am62a-sk-binman.dtsi | 466 +++++++++++++++++++++++++++
 arch/arm/dts/k3-am62a7-r5-sk.dts     |   1 +
 arch/arm/dts/k3-am62a7-sk.dts        |   1 +
 board/ti/am62ax/Kconfig              |   2 +
 4 files changed, 470 insertions(+)
 create mode 100644 arch/arm/dts/k3-am62a-sk-binman.dtsi

diff --git a/arch/arm/dts/k3-am62a-sk-binman.dtsi b/arch/arm/dts/k3-am62a-sk-binman.dtsi
new file mode 100644
index 0000000000..abbac8f084
--- /dev/null
+++ b/arch/arm/dts/k3-am62a-sk-binman.dtsi
@@ -0,0 +1,466 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+ */
+
+#include "k3-binman.dtsi"
+
+#ifdef CONFIG_TARGET_AM62A7_R5_EVM
+
+&rcfg_yaml_tifs {
+	config = "tifs-rm-cfg.yaml";
+};
+
+&binman {
+	tiboot3-am62ax-hs-evm.bin {
+		filename = "tiboot3-am62ax-hs-evm.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl>, <&ti_fs_enc>, <&combined_tifs_cfg>,
+				<&combined_dm_cfg>, <&sysfw_inner_cert>;
+			combined;
+			dm-data;
+			sysfw-inner-cert;
+			keyfile = "custMpk.pem";
+			sw-rev = <1>;
+			content-sbl = <&u_boot_spl>;
+			content-sysfw = <&ti_fs_enc>;
+			content-sysfw-data = <&combined_tifs_cfg>;
+			content-sysfw-inner-cert = <&sysfw_inner_cert>;
+			content-dm-data = <&combined_dm_cfg>;
+			load = <0x43c00000>;
+			load-sysfw = <0x40000>;
+			load-sysfw-data = <0x67000>;
+			load-dm-data = <0x43c3a800>;
+		};
+		u_boot_spl: u-boot-spl {
+			no-expanded;
+		};
+		ti_fs_enc: ti-fs-enc.bin {
+			filename = "ti-sysfw/ti-fs-firmware-am62ax-hs-enc.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_tifs_cfg: combined-tifs-cfg.bin {
+			filename = "combined-tifs-cfg.bin";
+			type = "blob-ext";
+		};
+		sysfw_inner_cert: sysfw-inner-cert {
+			filename = "ti-sysfw/ti-fs-firmware-am62ax-hs-cert.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_dm_cfg: combined-dm-cfg.bin {
+			filename = "combined-dm-cfg.bin";
+			type = "blob-ext";
+		};
+	};
+};
+
+&binman {
+	tiboot3-am62ax-hs-fs-evm.bin {
+		filename = "tiboot3-am62ax-hs-fs-evm.bin";
+		symlink = "tiboot3.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl_fs>, <&ti_fs_enc_fs>, <&combined_tifs_cfg_fs>,
+				<&combined_dm_cfg_fs>, <&sysfw_inner_cert_fs>;
+			combined;
+			dm-data;
+			sysfw-inner-cert;
+			keyfile = "custMpk.pem";
+			sw-rev = <1>;
+			content-sbl = <&u_boot_spl_fs>;
+			content-sysfw = <&ti_fs_enc_fs>;
+			content-sysfw-data = <&combined_tifs_cfg_fs>;
+			content-sysfw-inner-cert = <&sysfw_inner_cert_fs>;
+			content-dm-data = <&combined_dm_cfg_fs>;
+			load = <0x43c00000>;
+			load-sysfw = <0x40000>;
+			load-sysfw-data = <0x67000>;
+			load-dm-data = <0x43c3a800>;
+		};
+		u_boot_spl_fs: u-boot-spl {
+			no-expanded;
+		};
+		ti_fs_enc_fs: ti-fs-enc.bin {
+			filename = "ti-sysfw/ti-fs-firmware-am62ax-hs-fs-enc.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_tifs_cfg_fs: combined-tifs-cfg.bin {
+			filename = "combined-tifs-cfg.bin";
+			type = "blob-ext";
+		};
+		sysfw_inner_cert_fs: sysfw-inner-cert {
+			filename = "ti-sysfw/ti-fs-firmware-am62ax-hs-fs-cert.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_dm_cfg_fs: combined-dm-cfg.bin {
+			filename = "combined-dm-cfg.bin";
+			type = "blob-ext";
+		};
+	};
+};
+
+&binman {
+	tiboot3-am62ax-gp-evm.bin {
+		filename = "tiboot3-am62ax-gp-evm.bin";
+		ti-secure-rom {
+			content = <&u_boot_spl_unsigned>, <&ti_fs_gp>,
+				<&combined_tifs_cfg_gp>, <&combined_dm_cfg_gp>;
+			combined;
+			dm-data;
+			content-sbl = <&u_boot_spl_unsigned>;
+			load = <0x43c00000>;
+			content-sysfw = <&ti_fs_gp>;
+			load-sysfw = <0x40000>;
+			content-sysfw-data = <&combined_tifs_cfg_gp>;
+			load-sysfw-data = <0x67000>;
+			content-dm-data = <&combined_dm_cfg_gp>;
+			load-dm-data = <0x43c3a800>;
+			sw-rev = <1>;
+			keyfile = "ti-degenerate-key.pem";
+		};
+		u_boot_spl_unsigned: u-boot-spl {
+			no-expanded;
+		};
+		ti_fs_gp: ti-fs-gp.bin {
+			filename = "ti-sysfw/ti-fs-firmware-am62ax-gp.bin";
+			type = "blob-ext";
+			optional;
+		};
+		combined_tifs_cfg_gp: combined-tifs-cfg-gp.bin {
+			filename = "combined-tifs-cfg.bin";
+			type = "blob-ext";
+		};
+		combined_dm_cfg_gp: combined-dm-cfg-gp.bin {
+			filename = "combined-dm-cfg.bin";
+			type = "blob-ext";
+		};
+	};
+};
+
+#endif
+
+#ifdef CONFIG_TARGET_AM62A7_A53_EVM
+
+#define SPL_NODTB "spl/u-boot-spl-nodtb.bin"
+#define SPL_AM62A7_SK_DTB "spl/dts/k3-am62a7-sk.dtb"
+
+#define UBOOT_NODTB "u-boot-nodtb.bin"
+#define AM62A7_SK_DTB "arch/arm/dts/k3-am62a7-sk.dtb"
+
+&binman {
+	ti-dm {
+		filename = "ti-dm.bin";
+		blob-ext {
+			filename = "ti-dm/am62axx/ipc_echo_testb_mcu1_0_release_strip.xer5f";
+		};
+	};
+	ti-spl {
+		filename = "tispl.bin";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "Configuration to load ATF and SPL";
+			#address-cells = <1>;
+
+			images {
+
+				atf {
+					description = "ARM Trusted Firmware";
+					type = "firmware";
+					arch = "arm64";
+					compression = "none";
+					os = "arm-trusted-firmware";
+					load = <CONFIG_K3_ATF_LOAD_ADDR>;
+					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
+					ti-secure {
+						content = <&atf>;
+						keyfile = "custMpk.pem";
+					};
+					atf: atf-bl31 {
+					};
+				};
+
+				tee {
+					description = "OPTEE";
+					type = "tee";
+					arch = "arm64";
+					compression = "none";
+					os = "tee";
+					load = <0x9e800000>;
+					entry = <0x9e800000>;
+					ti-secure {
+						content = <&tee>;
+						keyfile = "custMpk.pem";
+					};
+					tee: tee-os {
+					};
+				};
+
+				dm {
+					description = "DM binary";
+					type = "firmware";
+					arch = "arm32";
+					compression = "none";
+					os = "DM";
+					load = <0x89000000>;
+					entry = <0x89000000>;
+					ti-secure {
+						content = <&dm>;
+						keyfile = "custMpk.pem";
+					};
+					dm: blob-ext {
+						filename = "ti-dm.bin";
+					};
+				};
+
+				spl {
+					description = "SPL (64-bit)";
+					type = "standalone";
+					os = "U-Boot";
+					arch = "arm64";
+					compression = "none";
+					load = <CONFIG_SPL_TEXT_BASE>;
+					entry = <CONFIG_SPL_TEXT_BASE>;
+					ti-secure {
+						content = <&u_boot_spl_nodtb>;
+						keyfile = "custMpk.pem";
+					};
+					u_boot_spl_nodtb: blob-ext {
+						filename = SPL_NODTB;
+					};
+				};
+
+				fdt-0 {
+					description = "k3-am62a7-sk";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&spl_am62a7_sk_dtb>;
+						keyfile = "custMpk.pem";
+					};
+					spl_am62a7_sk_dtb: blob-ext {
+						filename = SPL_AM62A7_SK_DTB;
+					};
+
+				};
+
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-am62a7-sk";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-0";
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	u-boot {
+		filename = "u-boot.img";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "FIT image with multiple configurations";
+
+			images {
+				uboot {
+					description = "U-Boot for AM62Ax board";
+					type = "firmware";
+					os = "u-boot";
+					arch = "arm";
+					compression = "none";
+					load = <CONFIG_TEXT_BASE>;
+					ti-secure {
+						content = <&u_boot_nodtb>;
+						keyfile = "custMpk.pem";
+					};
+					u_boot_nodtb: u-boot-nodtb {
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-am62a7-sk";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					ti-secure {
+						content = <&am62a7_sk_dtb>;
+						keyfile = "custMpk.pem";
+					};
+					am62a7_sk_dtb: blob-ext {
+						filename = AM62A7_SK_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-am62a7-sk";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-0";
+				};
+
+			};
+		};
+	};
+};
+
+&binman {
+	ti-spl_unsigned {
+		filename = "tispl.bin_unsigned";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "Configuration to load ATF and SPL";
+			#address-cells = <1>;
+
+			images {
+
+				atf {
+					description = "ARM Trusted Firmware";
+					type = "firmware";
+					arch = "arm64";
+					compression = "none";
+					os = "arm-trusted-firmware";
+					load = <CONFIG_K3_ATF_LOAD_ADDR>;
+					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
+					atf-bl31 {
+						filename = "bl31.bin";
+					};
+				};
+
+				tee {
+					description = "OPTEE";
+					type = "tee";
+					arch = "arm64";
+					compression = "none";
+					os = "tee";
+					load = <0x9e800000>;
+					entry = <0x9e800000>;
+					tee-os {
+						filename = "tee-pager_v2.bin";
+					};
+				};
+
+				dm {
+					description = "DM binary";
+					type = "firmware";
+					arch = "arm32";
+					compression = "none";
+					os = "DM";
+					load = <0x89000000>;
+					entry = <0x89000000>;
+					blob-ext {
+						filename = "ti-dm.bin";
+					};
+				};
+
+				spl {
+					description = "SPL (64-bit)";
+					type = "standalone";
+					os = "U-Boot";
+					arch = "arm64";
+					compression = "none";
+					load = <CONFIG_SPL_TEXT_BASE>;
+					entry = <CONFIG_SPL_TEXT_BASE>;
+					blob {
+						filename = "spl/u-boot-spl-nodtb.bin";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-am62a7-sk";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = SPL_AM62A7_SK_DTB;
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-am62a7-sk";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+					fdt = "fdt-0";
+				};
+			};
+		};
+	};
+};
+
+&binman {
+	u-boot_unsigned {
+		filename = "u-boot.img_unsigned";
+		pad-byte = <0xff>;
+
+		fit {
+			description = "FIT image with multiple configurations";
+
+			images {
+				uboot {
+					description = "U-Boot for AM62Ax board";
+					type = "firmware";
+					os = "u-boot";
+					arch = "arm";
+					compression = "none";
+					load = <CONFIG_TEXT_BASE>;
+					blob {
+						filename = UBOOT_NODTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-am62a7-sk";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					blob {
+						filename = AM62A7_SK_DTB;
+					};
+					hash {
+						algo = "crc32";
+					};
+				};
+			};
+
+			configurations {
+				default = "conf-0";
+
+				conf-0 {
+					description = "k3-am62a7-sk";
+					firmware = "uboot";
+					loadables = "uboot";
+					fdt = "fdt-0";
+				};
+			};
+		};
+	};
+};
+#endif
diff --git a/arch/arm/dts/k3-am62a7-r5-sk.dts b/arch/arm/dts/k3-am62a7-r5-sk.dts
index cc4b179e27..bbbd9e51d6 100644
--- a/arch/arm/dts/k3-am62a7-r5-sk.dts
+++ b/arch/arm/dts/k3-am62a7-r5-sk.dts
@@ -7,6 +7,7 @@
 #include "k3-am62a7-sk.dts"
 #include "k3-am62a-ddr-1866mhz-32bit.dtsi"
 #include "k3-am62a-ddr.dtsi"
+#include "k3-am62a-sk-binman.dtsi"
 
 #include "k3-am62a7-sk-u-boot.dtsi"
 
diff --git a/arch/arm/dts/k3-am62a7-sk.dts b/arch/arm/dts/k3-am62a7-sk.dts
index b08a083d72..270e669f65 100644
--- a/arch/arm/dts/k3-am62a7-sk.dts
+++ b/arch/arm/dts/k3-am62a7-sk.dts
@@ -10,6 +10,7 @@
 #include <dt-bindings/leds/common.h>
 #include <dt-bindings/gpio/gpio.h>
 #include "k3-am62a7.dtsi"
+#include "k3-am62a-sk-binman.dtsi"
 
 / {
 	compatible =  "ti,am62a7-sk", "ti,am62a7";
diff --git a/board/ti/am62ax/Kconfig b/board/ti/am62ax/Kconfig
index 9b868e4553..61f289facc 100644
--- a/board/ti/am62ax/Kconfig
+++ b/board/ti/am62ax/Kconfig
@@ -10,6 +10,7 @@ choice
 config TARGET_AM62A7_A53_EVM
 	bool "TI K3 based AM62A7 EVM running on A53"
 	select ARM64
+	select BINMAN
 	imply BOARD
 	imply SPL_BOARD
 	imply TI_I2C_BOARD_DETECT
@@ -22,6 +23,7 @@ config TARGET_AM62A7_R5_EVM
 	select RAM
 	select SPL_RAM
 	select K3_DDRSS
+	select BINMAN
 	imply SYS_K3_SPL_ATF
 	imply TI_I2C_BOARD_DETECT
 
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 18/23] arm: k3-am65x-iot2050: Use binman for tispl.bin for iot2050
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (16 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 17/23] am62a: dts: binman: Package tiboot3.bin, tispl.bin, u-boot.img Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 13:38   ` Jan Kiszka
  2023-07-07 17:35   ` Simon Glass
  2023-07-07 12:34 ` [PATCH v5 19/23] k3: tools: config.mk: Update makefile and remove scripts Neha Malcom Francis
                   ` (4 subsequent siblings)
  22 siblings, 2 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Move to using binman to generate tispl.bin which is used to generate the
final flash.bin bootloader for iot2050 boards.

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Cc: Jan Kiszka <jan.kiszka@siemens.com>
---
 arch/arm/dts/k3-am65-iot2050-boot-image.dtsi | 76 +++++++++++++++++++-
 1 file changed, 74 insertions(+), 2 deletions(-)

diff --git a/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi b/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
index 03ccc54329..9d83898d33 100644
--- a/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
+++ b/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
@@ -26,9 +26,81 @@
 			missing-msg = "iot2050-seboot";
 		};
 
-		blob@0x180000 {
+		fit@0x180000 {
 			offset = <0x180000>;
-			filename = "tispl.bin";
+			pad-byte = <0xff>;
+			description = "Configuration to load ATF and SPL";
+
+			images {
+				atf {
+					description = "ARM Trusted Firmware";
+					type = "firmware";
+					arch = "arm64";
+					compression = "none";
+					os = "arm-trusted-firmware";
+					load = <CONFIG_K3_ATF_LOAD_ADDR>;
+					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
+					atf: atf-bl31 {
+					};
+				};
+
+				tee {
+					description = "OPTEE";
+					type = "tee";
+					arch = "arm64";
+					compression = "none";
+					os = "tee";
+					load = <0x9e800000>;
+					entry = <0x9e800000>;
+					tee: tee-os {
+					};
+				};
+
+				dm {
+					description = "DM binary";
+					type = "firmware";
+					arch = "arm32";
+					compression = "none";
+					os = "DM";
+					load = <0x89000000>;
+					entry = <0x89000000>;
+					blob-ext {
+						filename = "/dev/null";
+					};
+				};
+
+				spl {
+					description = "SPL (64-bit)";
+					type = "standalone";
+					os = "U-Boot";
+					arch = "arm64";
+					compression = "none";
+					load = <CONFIG_SPL_TEXT_BASE>;
+					entry = <CONFIG_SPL_TEXT_BASE>;
+					u_boot_spl_nodtb: blob-ext {
+						filename = "spl/u-boot-spl-nodtb.bin";
+					};
+				};
+
+				fdt-0 {
+					description = "k3-am65-iot2050-spl.dtb";
+					type = "flat_dt";
+					arch = "arm";
+					compression = "none";
+					spl_am65x_evm_dtb: blob-ext {
+						filename = "spl/dts/k3-am65-iot2050-spl.dtb";
+					};
+				};
+			};
+
+			configurations {
+				default = "spl";
+				spl {
+					fdt = "fdt-0";
+					firmware = "atf";
+					loadables = "tee", "dm", "spl";
+				};
+			};
 		};
 
 		fit@0x380000 {
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 19/23] k3: tools: config.mk: Update makefile and remove scripts
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (17 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 18/23] arm: k3-am65x-iot2050: Use binman for tispl.bin for iot2050 Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 20/23] doc: board: ti: Update documentation for binman flow Neha Malcom Francis
                   ` (3 subsequent siblings)
  22 siblings, 0 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Since binman is used to package bootloader images for all K3 devices, we
do not have to rely on the earlier methods to package them.

Scripts that were used to generate x509 certificate for tiboot3.bin and
generate tispl.bin, u-boot.img have been removed.

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---
 arch/arm/mach-k3/config.mk | 103 ---------------
 tools/k3_fit_atf.sh        | 123 -----------------
 tools/k3_gen_x509_cert.sh  | 262 -------------------------------------
 3 files changed, 488 deletions(-)
 delete mode 100644 arch/arm/mach-k3/config.mk
 delete mode 100755 tools/k3_fit_atf.sh
 delete mode 100755 tools/k3_gen_x509_cert.sh

diff --git a/arch/arm/mach-k3/config.mk b/arch/arm/mach-k3/config.mk
deleted file mode 100644
index cbf9c10210..0000000000
--- a/arch/arm/mach-k3/config.mk
+++ /dev/null
@@ -1,103 +0,0 @@
-# SPDX-License-Identifier:	GPL-2.0+
-#
-# Copyright (C) 2017-2018 Texas Instruments Incorporated - http://www.ti.com/
-#	Lokesh Vutla <lokeshvutla@ti.com>
-
-ifdef CONFIG_SPL_BUILD
-
-# Openssl is required to generate x509 certificate.
-# Error out if openssl is not available.
-ifeq ($(shell which openssl),)
-$(error "No openssl in $(PATH), consider installing openssl")
-endif
-
-IMAGE_SIZE= $(shell cat $(obj)/u-boot-spl.bin | wc -c)
-MAX_SIZE= $(shell printf "%d" $(CONFIG_SYS_K3_MAX_DOWNLODABLE_IMAGE_SIZE))
-
-ifeq ($(CONFIG_SYS_K3_KEY), "")
-KEY=""
-# On HS use real key or warn if not available
-ifeq ($(CONFIG_TI_SECURE_DEVICE),y)
-ifneq ($(wildcard $(TI_SECURE_DEV_PKG)/keys/custMpk.pem),)
-KEY=$(TI_SECURE_DEV_PKG)/keys/custMpk.pem
-else
-$(warning "WARNING: signing key not found. Random key will NOT work on HS hardware!")
-endif
-endif
-else
-KEY=$(patsubst "%",$(srctree)/%,$(CONFIG_SYS_K3_KEY))
-endif
-
-# X509 SWRV default
-SWRV = $(CONFIG_K3_X509_SWRV)
-# On HS use SECDEV provided software revision or warn if not available
-ifeq ($(CONFIG_TI_SECURE_DEVICE),y)
-ifneq ($(wildcard $(TI_SECURE_DEV_PKG)/keys/swrv.txt),)
-SWRV= $(shell cat $(TI_SECURE_DEV_PKG)/keys/swrv.txt)
-else
-$(warning "WARNING: Software revision file not found. Default may not work on HS hardware.")
-endif
-endif
-
-# tiboot3.bin is mandated by ROM and ROM only supports R5 boot.
-# So restrict tiboot3.bin creation for CPU_V7R.
-ifdef CONFIG_CPU_V7R
-image_check: $(obj)/u-boot-spl.bin FORCE
-	@if [ $(IMAGE_SIZE) -gt $(MAX_SIZE) ]; then			    \
-		echo "===============================================" >&2; \
-		echo "ERROR: Final Image too big. " >&2;		    \
-		echo "$< size = $(IMAGE_SIZE), max size = $(MAX_SIZE)" >&2; \
-		echo "===============================================" >&2; \
-		exit 1;							    \
-	fi
-
-tiboot3.bin: image_check FORCE
-	$(srctree)/tools/k3_gen_x509_cert.sh -c 16 -b $(obj)/u-boot-spl.bin \
-				-o $@ -l $(CONFIG_SPL_TEXT_BASE) -r $(SWRV) -k $(KEY)
-
-INPUTS-y	+= tiboot3.bin
-endif
-
-ifdef CONFIG_ARM64
-
-ifeq ($(CONFIG_SOC_K3_J721E),)
-export DM := /dev/null
-endif
-
-ifeq ($(CONFIG_TI_SECURE_DEVICE),y)
-SPL_ITS := u-boot-spl-k3_HS.its
-$(SPL_ITS): export IS_HS=1
-INPUTS-y	+= tispl.bin_HS
-INPUTS-y	+= tispl.bin
-tispl.bin: $(obj)/u-boot-spl-nodtb.bin_HS $(patsubst %,$(obj)/dts/%.dtb_HS,$(subst ",,$(CONFIG_SPL_OF_LIST)))
-else
-SPL_ITS := u-boot-spl-k3.its
-INPUTS-y	+= tispl.bin
-endif
-
-ifeq ($(CONFIG_SPL_OF_LIST),)
-LIST_OF_DTB := $(CONFIG_DEFAULT_DEVICE_TREE)
-else
-LIST_OF_DTB := $(CONFIG_SPL_OF_LIST)
-endif
-
-quiet_cmd_k3_mkits = MKITS   $@
-cmd_k3_mkits = \
-	$(srctree)/tools/k3_fit_atf.sh \
-	$(CONFIG_K3_ATF_LOAD_ADDR) \
-	$(patsubst %,$(obj)/dts/%.dtb,$(subst ",,$(LIST_OF_DTB))) > $@
-
-$(SPL_ITS): FORCE
-	$(call cmd,k3_mkits)
-endif
-
-else
-
-ifeq ($(CONFIG_TI_SECURE_DEVICE),y)
-INPUTS-y	+= u-boot.img_HS
-else
-INPUTS-y	+= u-boot.img
-endif
-endif
-
-include $(srctree)/arch/arm/mach-k3/config_secure.mk
diff --git a/tools/k3_fit_atf.sh b/tools/k3_fit_atf.sh
deleted file mode 100755
index 7bc07ad074..0000000000
--- a/tools/k3_fit_atf.sh
+++ /dev/null
@@ -1,123 +0,0 @@
-#!/bin/sh
-# SPDX-License-Identifier: GPL-2.0+
-#
-# script to generate FIT image source for K3 Family boards with
-# ATF, OPTEE, SPL and multiple device trees (given on the command line).
-# Inspired from board/sunxi/mksunxi_fit_atf.sh
-#
-# usage: $0 <atf_load_addr> <dt_name> [<dt_name> [<dt_name] ...]
-
-[ -z "$ATF" ] && ATF="bl31.bin"
-
-if [ ! -f $ATF ]; then
-	echo "WARNING ATF file $ATF NOT found, resulting binary is non-functional" >&2
-	ATF=/dev/null
-fi
-
-[ -z "$TEE" ] && TEE="bl32.bin"
-
-if [ ! -f $TEE ]; then
-	echo "WARNING OPTEE file $TEE NOT found, resulting might be non-functional" >&2
-	TEE=/dev/null
-fi
-
-[ -z "$DM" ] && DM="dm.bin"
-
-if [ ! -e $DM ]; then
-	echo "WARNING DM file $DM NOT found, resulting might be non-functional" >&2
-	DM=/dev/null
-fi
-
-if [ ! -z "$IS_HS" ]; then
-	HS_APPEND=_HS
-fi
-
-cat << __HEADER_EOF
-/dts-v1/;
-
-/ {
-	description = "Configuration to load ATF and SPL";
-	#address-cells = <1>;
-
-	images {
-		atf {
-			description = "ARM Trusted Firmware";
-			data = /incbin/("$ATF");
-			type = "firmware";
-			arch = "arm64";
-			compression = "none";
-			os = "arm-trusted-firmware";
-			load = <$1>;
-			entry = <$1>;
-		};
-		tee {
-			description = "OPTEE";
-			data = /incbin/("$TEE");
-			type = "tee";
-			arch = "arm64";
-			compression = "none";
-			os = "tee";
-			load = <0x9e800000>;
-			entry = <0x9e800000>;
-		};
-		dm {
-			description = "DM binary";
-			data = /incbin/("$DM");
-			type = "firmware";
-			arch = "arm32";
-			compression = "none";
-			os = "DM";
-			load = <0x89000000>;
-			entry = <0x89000000>;
-		};
-		spl {
-			description = "SPL (64-bit)";
-			data = /incbin/("spl/u-boot-spl-nodtb.bin$HS_APPEND");
-			type = "standalone";
-			os = "U-Boot";
-			arch = "arm64";
-			compression = "none";
-			load = <0x80080000>;
-			entry = <0x80080000>;
-		};
-__HEADER_EOF
-
-# shift through ATF load address in the command line arguments
-shift
-
-for dtname in $*
-do
-	cat << __FDT_IMAGE_EOF
-		$(basename $dtname) {
-			description = "$(basename $dtname .dtb)";
-			data = /incbin/("$dtname$HS_APPEND");
-			type = "flat_dt";
-			arch = "arm";
-			compression = "none";
-		};
-__FDT_IMAGE_EOF
-done
-
-cat << __CONF_HEADER_EOF
-	};
-	configurations {
-		default = "$(basename $1)";
-
-__CONF_HEADER_EOF
-
-for dtname in $*
-do
-	cat << __CONF_SECTION_EOF
-		$(basename $dtname) {
-			description = "$(basename $dtname .dtb)";
-			firmware = "atf";
-			loadables = "tee", "dm", "spl";
-			fdt = "$(basename $dtname)";
-		};
-__CONF_SECTION_EOF
-done
-
-cat << __ITS_EOF
-	};
-};
-__ITS_EOF
diff --git a/tools/k3_gen_x509_cert.sh b/tools/k3_gen_x509_cert.sh
deleted file mode 100755
index d9cde07417..0000000000
--- a/tools/k3_gen_x509_cert.sh
+++ /dev/null
@@ -1,262 +0,0 @@
-#!/bin/bash
-# SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause
-#
-# Script to add K3 specific x509 cetificate to a binary.
-#
-
-# Variables
-OUTPUT=tiboot3.bin
-TEMP_X509=x509-temp.cert
-CERT=certificate.bin
-RAND_KEY=eckey.pem
-LOADADDR=0x41c00000
-BOOTCORE_OPTS=0
-BOOTCORE=16
-DEBUG_TYPE=0
-SWRV=1
-
-gen_degen_template() {
-cat << 'EOF' > degen-template.txt
-
-asn1=SEQUENCE:rsa_key
-
-[rsa_key]
-version=INTEGER:0
-modulus=INTEGER:0xDEGEN_MODULUS
-pubExp=INTEGER:1
-privExp=INTEGER:1
-p=INTEGER:0xDEGEN_P
-q=INTEGER:0xDEGEN_Q
-e1=INTEGER:1
-e2=INTEGER:1
-coeff=INTEGER:0xDEGEN_COEFF
-EOF
-}
-
-# Generate x509 Template
-gen_template() {
-cat << 'EOF' > x509-template.txt
- [ req ]
- distinguished_name     = req_distinguished_name
- x509_extensions        = v3_ca
- prompt                 = no
- dirstring_type         = nobmp
-
- [ req_distinguished_name ]
- C                      = US
- ST                     = TX
- L                      = Dallas
- O                      = Texas Instruments Incorporated
- OU                     = Processors
- CN                     = TI support
- emailAddress           = support@ti.com
-
- [ v3_ca ]
- basicConstraints = CA:true
- 1.3.6.1.4.1.294.1.1 = ASN1:SEQUENCE:boot_seq
- 1.3.6.1.4.1.294.1.2 = ASN1:SEQUENCE:image_integrity
- 1.3.6.1.4.1.294.1.3 = ASN1:SEQUENCE:swrv
-# 1.3.6.1.4.1.294.1.4 = ASN1:SEQUENCE:encryption
- 1.3.6.1.4.1.294.1.8 = ASN1:SEQUENCE:debug
-
- [ boot_seq ]
- certType = INTEGER:TEST_CERT_TYPE
- bootCore = INTEGER:TEST_BOOT_CORE
- bootCoreOpts = INTEGER:TEST_BOOT_CORE_OPTS
- destAddr = FORMAT:HEX,OCT:TEST_BOOT_ADDR
- imageSize = INTEGER:TEST_IMAGE_LENGTH
-
- [ image_integrity ]
- shaType = OID:2.16.840.1.101.3.4.2.3
- shaValue = FORMAT:HEX,OCT:TEST_IMAGE_SHA_VAL
-
- [ swrv ]
- swrv = INTEGER:TEST_SWRV
-
-# [ encryption ]
-# initalVector = FORMAT:HEX,OCT:TEST_IMAGE_ENC_IV
-# randomString = FORMAT:HEX,OCT:TEST_IMAGE_ENC_RS
-# iterationCnt = INTEGER:TEST_IMAGE_KEY_DERIVE_INDEX
-# salt = FORMAT:HEX,OCT:TEST_IMAGE_KEY_DERIVE_SALT
-
- [ debug ]
- debugUID = FORMAT:HEX,OCT:0000000000000000000000000000000000000000000000000000000000000000
- debugType = INTEGER:TEST_DEBUG_TYPE
- coreDbgEn = INTEGER:0
- coreDbgSecEn = INTEGER:0
-EOF
-}
-
-parse_key() {
-	sed '/    /s/://g' key.txt | \
-            awk  '!/    / {printf("\n%s\n", $0)}; /    / {printf("%s", $0)}' | \
-            sed 's/    //g' | \
-            awk "/$1:/{getline; print}"
-}
-
-gen_degen_key() {
-# Generate a 4096 bit RSA Key
-	openssl genrsa -out key.pem 1024 >>/dev/null 2>&1
-	openssl rsa -in key.pem -text -out key.txt >>/dev/null 2>&1
-	DEGEN_MODULUS=$( parse_key 'modulus' )
-	DEGEN_P=$( parse_key 'prime1' )
-	DEGEN_Q=$( parse_key 'prime2' )
-	DEGEN_COEFF=$( parse_key 'coefficient' )
-	gen_degen_template
-
-	sed -e "s/DEGEN_MODULUS/$DEGEN_MODULUS/"\
-		-e "s/DEGEN_P/$DEGEN_P/" \
-		-e "s/DEGEN_Q/$DEGEN_Q/" \
-		-e "s/DEGEN_COEFF/$DEGEN_COEFF/" \
-		 degen-template.txt > degenerateKey.txt
-
-	openssl asn1parse -genconf degenerateKey.txt -out degenerateKey.der >>/dev/null 2>&1
-	openssl rsa -in degenerateKey.der -inform DER -outform PEM -out $RAND_KEY >>/dev/null 2>&1
-	KEY=$RAND_KEY
-	rm key.pem key.txt degen-template.txt degenerateKey.txt degenerateKey.der
-}
-
-declare -A options_help
-usage() {
-	if [ -n "$*" ]; then
-		echo "ERROR: $*"
-	fi
-	echo -n "Usage: $0 "
-	for option in "${!options_help[@]}"
-	do
-		arg=`echo ${options_help[$option]}|cut -d ':' -f1`
-		if [ -n "$arg" ]; then
-			arg=" $arg"
-		fi
-		echo -n "[-$option$arg] "
-	done
-	echo
-	echo -e "\nWhere:"
-	for option in "${!options_help[@]}"
-	do
-		arg=`echo ${options_help[$option]}|cut -d ':' -f1`
-		txt=`echo ${options_help[$option]}|cut -d ':' -f2`
-		tb="\t\t\t"
-		if [ -n "$arg" ]; then
-			arg=" $arg"
-			tb="\t"
-		fi
-		echo -e "   -$option$arg:$tb$txt"
-	done
-	echo
-	echo "Examples of usage:-"
-	echo "# Example of signing the SYSFW binary with rsa degenerate key"
-	echo "    $0 -c 0 -b ti-sci-firmware-am6x.bin -o sysfw.bin -l 0x40000"
-	echo "# Example of signing the SPL binary with rsa degenerate key"
-	echo "    $0 -c 16 -b spl/u-boot-spl.bin -o tiboot3.bin -l 0x41c00000"
-}
-
-options_help[b]="bin_file:Bin file that needs to be signed"
-options_help[k]="key_file:file with key inside it. If not provided script generates a rsa degenerate key."
-options_help[o]="output_file:Name of the final output file. default to $OUTPUT"
-options_help[c]="core_id:target core id on which the image would be running. Default to $BOOTCORE"
-options_help[l]="loadaddr: Target load address of the binary in hex. Default to $LOADADDR"
-options_help[d]="debug_type: Debug type, set to 4 to enable early JTAG. Default to $DEBUG_TYPE"
-options_help[r]="SWRV: Software Rev for X509 certificate"
-
-while getopts "b:k:o:c:l:d:h:r:" opt
-do
-	case $opt in
-	b)
-		BIN=$OPTARG
-	;;
-	k)
-		KEY=$OPTARG
-	;;
-	o)
-		OUTPUT=$OPTARG
-	;;
-	l)
-		LOADADDR=$OPTARG
-	;;
-	c)
-		BOOTCORE=$OPTARG
-	;;
-	d)
-		DEBUG_TYPE=$OPTARG
-	;;
-        r)
-		SWRV=$OPTARG
-	;;
-	h)
-		usage
-		exit 0
-	;;
-	\?)
-		usage "Invalid Option '-$OPTARG'"
-		exit 1
-	;;
-	:)
-		usage "Option '-$OPTARG' Needs an argument."
-		exit 1
-	;;
-	esac
-done
-
-if [ "$#" -eq 0 ]; then
-	usage "Arguments missing"
-	exit 1
-fi
-
-if [ -z "$BIN" ]; then
-	usage "Bin file missing in arguments"
-	exit 1
-fi
-
-# Generate rsa degenerate key if user doesn't provide a key
-if [ -z "$KEY" ]; then
-	gen_degen_key
-fi
-
-if [ $BOOTCORE == 0 ]; then	# BOOTCORE M3, loaded by ROM
-	CERTTYPE=2
-elif [ $BOOTCORE == 16 ]; then	# BOOTCORE R5, loaded by ROM
-	CERTTYPE=1
-else				# Non BOOTCORE, loaded by SYSFW
-	BOOTCORE_OPTS_VER=$(printf "%01x" 1)
-	# Add input args option for SET and CLR flags.
-	BOOTCORE_OPTS_SETFLAG=$(printf "%08x" 0)
-	BOOTCORE_OPTS_CLRFLAG=$(printf "%08x" 0x100) # Clear FLAG_ARMV8_AARCH32
-	BOOTCORE_OPTS="0x$BOOTCORE_OPTS_VER$BOOTCORE_OPTS_SETFLAG$BOOTCORE_OPTS_CLRFLAG"
-	# Set the cert type to zero.
-	# We are not using public/private key store now
-	CERTTYPE=$(printf "0x%08x" 0)
-fi
-
-SHA_VAL=`openssl dgst -sha512 -hex $BIN | sed -e "s/^.*= //g"`
-BIN_SIZE=`cat $BIN | wc -c`
-ADDR=`printf "%08x" $LOADADDR`
-
-gen_cert() {
-	#echo "Certificate being generated :"
-	#echo "	LOADADDR = 0x$ADDR"
-	#echo "	IMAGE_SIZE = $BIN_SIZE"
-	#echo "	CERT_TYPE = $CERTTYPE"
-	#echo "	DEBUG_TYPE = $DEBUG_TYPE"
-	#echo " SWRV = $SWRV"
-	sed -e "s/TEST_IMAGE_LENGTH/$BIN_SIZE/"	\
-		-e "s/TEST_IMAGE_SHA_VAL/$SHA_VAL/" \
-		-e "s/TEST_CERT_TYPE/$CERTTYPE/" \
-		-e "s/TEST_BOOT_CORE_OPTS/$BOOTCORE_OPTS/" \
-		-e "s/TEST_BOOT_CORE/$BOOTCORE/" \
-		-e "s/TEST_BOOT_ADDR/$ADDR/" \
-		-e "s/TEST_DEBUG_TYPE/$DEBUG_TYPE/" \
-                -e "s/TEST_SWRV/$SWRV/" \
-		x509-template.txt > $TEMP_X509
-	openssl req -new -x509 -key $KEY -nodes -outform DER -out $CERT -config $TEMP_X509 -sha512
-}
-
-gen_template
-gen_cert
-cat $CERT $BIN > $OUTPUT
-
-# Remove all intermediate files
-rm $TEMP_X509 $CERT x509-template.txt
-if [ "$KEY" == "$RAND_KEY" ]; then
-	rm $RAND_KEY
-fi
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 20/23] doc: board: ti: Update documentation for binman flow
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (18 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 19/23] k3: tools: config.mk: Update makefile and remove scripts Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 12:56   ` Nishanth Menon
  2023-07-07 13:30   ` Jerome Forissier
  2023-07-07 12:34 ` [PATCH v5 21/23] binman: Overwrite symlink if it already exists Neha Malcom Francis
                   ` (2 subsequent siblings)
  22 siblings, 2 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Earlier documentation specified builds for generating bootloader images
using an external TI repository k3-image-gen and core-secdev-k3. Modify
this to using the binman flow so that user understands how to build the
final boot images.

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---
 doc/board/ti/am62x_sk.rst  | 42 ++++++++---------
 doc/board/ti/j721e_evm.rst | 50 +++++++++-----------
 doc/board/ti/k3.rst        | 95 +++++++++++++-------------------------
 3 files changed, 73 insertions(+), 114 deletions(-)

diff --git a/doc/board/ti/am62x_sk.rst b/doc/board/ti/am62x_sk.rst
index 27d7b527c6..e4d58b4958 100644
--- a/doc/board/ti/am62x_sk.rst
+++ b/doc/board/ti/am62x_sk.rst
@@ -115,23 +115,19 @@ Below is the pictorial representation of boot flow:
 
 Sources:
 --------
-1. SYSFW:
-	Tree: git://git.ti.com/k3-image-gen/k3-image-gen.git
-	Branch: master
-
-2. ATF:
+1. ATF:
 	Tree: https://github.com/ARM-software/arm-trusted-firmware.git
 	Branch: master
 
-3. OPTEE:
+2. OPTEE:
 	Tree: https://github.com/OP-TEE/optee_os.git
 	Branch: master
 
-4. U-Boot:
+3. U-Boot:
 	Tree: https://source.denx.de/u-boot/u-boot
 	Branch: master
 
-5. TI Linux Firmware:
+4. TI Linux Firmware:
 	Tree: git://git.ti.com/processor-firmware/ti-linux-firmware.git
 	Branch: ti-linux-firmware
 
@@ -139,35 +135,37 @@ Build procedure:
 ----------------
 1. ATF:
 
-.. code-block:: text
+.. code-block:: bash
 
- $ make CROSS_COMPILE=aarch64-none-linux-gnu- ARCH=aarch64 PLAT=k3 TARGET_BOARD=lite SPD=opteed
+ $ make CROSS_COMPILE=aarch64-none-linux-gnu- ARCH=aarch64 PLAT=k3 \
+        TARGET_BOARD=lite SPD=opteed
 
 2. OPTEE:
 
-.. code-block:: text
+.. code-block:: bash
 
- $ make PLATFORM=k3 CFG_ARM64_core=y CROSS_COMPILE=arm-none-linux-gnueabihf- CROSS_COMPILE64=aarch64-none-linux-gnu-
+ $ make PLATFORM=k3 CFG_ARM64_core=y CROSS_COMPILE=arm-none-linux-gnueabihf- \
+        CROSS_COMPILE64=aarch64-none-linux-gnu-
 
 3. U-Boot:
 
 * 3.1 R5:
 
-.. code-block:: text
+.. code-block:: bash
 
- $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf- am62x_evm_r5_defconfig O=/tmp/r5
- $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf- O=/tmp/r5
- $ cd <k3-image-gen>
- $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf- SOC=am62x SBL=/tmp/r5/spl/u-boot-spl.bin SYSFW_PATH=<path to ti-linux-firmware>/ti-sysfw/ti-fs-firmware-am62x-gp.bin
-
-Use the tiboot3.bin generated from last command
+ $ make ARCH=arm am62x_evm_r5_defconfig
+ $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf- \
+        BINMAN_INDIRS=<path/to/ti-linux-firmware>
 
 * 3.2 A53:
 
-.. code-block:: text
+.. code-block:: bash
 
- $ make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- am62x_evm_a53_defconfig O=/tmp/a53
- $ make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- ATF=<path to ATF dir>/build/k3/lite/release/bl31.bin TEE=<path to OPTEE OS dir>/out/arm-plat-k3/core/tee-pager_v2.bin DM=<path to ti-linux-firmware>/ti-dm/am62xx/ipc_echo_testb_mcu1_0_release_strip.xer5f O=/tmp/a53
+ $ make ARCH=arm am62x_evm_a53_defconfig
+ $ make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- \
+        BL31=<path to ATF dir>/build/k3/lite/release/bl31.bin \
+        TEE=<path to OPTEE OS dir>/out/arm-plat-k3/core/tee-pager_v2.bin \
+        BINMAN_INDIRS=<path/to/ti-linux-firmware>
 
 Target Images
 --------------
diff --git a/doc/board/ti/j721e_evm.rst b/doc/board/ti/j721e_evm.rst
index feaa2da5e9..9e604f6f12 100644
--- a/doc/board/ti/j721e_evm.rst
+++ b/doc/board/ti/j721e_evm.rst
@@ -130,67 +130,61 @@ support. Below is the pictorial representation of boot flow:
 
 Sources:
 --------
-1. SYSFW:
-	Tree: git://git.ti.com/k3-image-gen/k3-image-gen.git
-	Branch: master
-
-2. ATF:
+1. ATF:
 	Tree: https://github.com/ARM-software/arm-trusted-firmware.git
 	Branch: master
 
-3. OPTEE:
+2. OPTEE:
 	Tree: https://github.com/OP-TEE/optee_os.git
 	Branch: master
 
-4. DM Firmware:
-	Tree: git://git.ti.com/processor-firmware/ti-linux-firmware.git
-	Branch: ti-linux-firmware
-
-5. U-Boot:
+3. U-Boot:
 	Tree: https://source.denx.de/u-boot/u-boot
 	Branch: master
 
+4. TI Linux Firmware:
+	Tree: git://git.ti.com/processor-firmware/ti-linux-firmware.git
+	Branch: ti-linux-firmware
+
 Build procedure:
 ----------------
-1. SYSFW:
-
-.. code-block:: bash
-
-    make CROSS_COMPILE=arm-linux-gnueabihf- SOC=j721e
-
-2. ATF:
+1. ATF:
 
 .. code-block:: bash
 
-    make CROSS_COMPILE=aarch64-linux-gnu- ARCH=aarch64 PLAT=k3 TARGET_BOARD=generic SPD=opteed
+ $ make CROSS_COMPILE=aarch64-linux-gnu- ARCH=aarch64 PLAT=k3 \
+        TARGET_BOARD=generic SPD=opteed
 
-3. OPTEE:
+2. OPTEE:
 
 .. code-block:: bash
 
-    make PLATFORM=k3-j721e CFG_ARM64_core=y
+ $ make PLATFORM=k3-j721e CFG_ARM64_core=y
 
-4. U-Boot:
+3. U-Boot:
 
 * 4.1 R5:
 
 .. code-block:: bash
 
-    make CROSS_COMPILE=arm-linux-gnueabihf- j721e_evm_r5_defconfig O=build/r5
-    make CROSS_COMPILE=arm-linux-gnueabihf- O=build/r5
+ $ make j721e_evm_r5_defconfig
+ $ make CROSS_COMPILE=arm-linux-gnueabihf- \
+        BINMAN_INDIRS=<path/to/ti-linux-firmware>
 
 * 4.2 A72:
 
 .. code-block:: bash
 
-    make CROSS_COMPILE=aarch64-linux-gnu- j721e_evm_a72_defconfig O=build/a72
-    make CROSS_COMPILE=aarch64-linux-gnu- ATF=<ATF dir>/build/k3/generic/release/bl31.bin TEE=<OPTEE OS dir>/out/arm-plat-k3/core/tee-pager_v2.bin DM=<DM firmware>/ti-dm/j721e/ipc_echo_testb_mcu1_0_release_strip.xer5f O=build/a72
+ $ make j721e_evm_a72_defconfig
+ $ make CROSS_COMPILE=aarch64-linux-gnu- \
+        BL31=<ATF dir>/build/k3/generic/release/bl31.bin \
+        TEE=<OPTEE OS dir>/out/arm-plat-k3/core/tee-pager_v2.bin \
+        BINMAN_INDIRS=<path/to/ti-linux-firmware>
 
 Target Images
 --------------
 Copy the below images to an SD card and boot:
- - sysfw.itb from step 1
- - tiboot3.bin from step 4.1
+ - tiboot3.bin and sysfw.itb from step 4.1
  - tispl.bin, u-boot.img from 4.2
 
 Image formats:
diff --git a/doc/board/ti/k3.rst b/doc/board/ti/k3.rst
index 2b2f4bb8bb..214a22b1ae 100644
--- a/doc/board/ti/k3.rst
+++ b/doc/board/ti/k3.rst
@@ -115,11 +115,6 @@ online
   | **source:** https://source.denx.de/u-boot/u-boot.git
   | **branch:** master
 
-* **K3 Image Gen**
-
-  | **source:** https://git.ti.com/git/k3-image-gen/k3-image-gen.git
-  | **branch:** master
-
 * **ARM Trusted Firmware (ATF)**
 
   | **source:** https://github.com/ARM-software/arm-trusted-firmware.git
@@ -135,11 +130,6 @@ online
   | **source:** https://git.ti.com/git/processor-firmware/ti-linux-firmware.git
   | **branch:** ti-linux-firmware
 
-* **TI's Security Development Tools**
-
-  | **source:** https://git.ti.com/git/security-development-tools/core-secdev-k3.git
-  | **branch:** master
-
 Build Procedure
 ---------------
 
@@ -161,54 +151,37 @@ All of that to say you will need both a 32bit and 64bit cross compiler
 
 .. code-block:: bash
 
-   export CC32=arm-linux-gnueabihf-
-   export CC64=aarch64-linux-gnu-
+ $ export CC32=arm-linux-gnueabihf-
+ $ export CC64=aarch64-linux-gnu-
 
 Building tiboot3.bin
 ^^^^^^^^^^^^^^^^^^^^^
 
 1. To generate the U-Boot SPL for the wakeup domain, use the following
    commands, substituting :code:`{SOC}` for the name of your device (eg:
-   am62x)
-
-.. code-block:: bash
-
-   # inside u-boot source
-   make ARCH=arm O=build/wkup CROSS_COMPILE=$CC32 {SOC}_evm_r5_defconfig
-   make ARCH=arm O=build/wkup CROSS_COMPILE=$CC32
+   am62x) to package the various firmware and the wakeup UBoot SPL into
+   the final `tiboot3.bin` binary. (or the `sysfw.itb` if your device
+   uses the split binary flow)
 
-2. Next we will use the K3 Image Gen scripts to package the various
-   firmware and the wakeup UBoot SPL into the final `tiboot3.bin`
-   binary. (or the `sysfw.itb` if your device uses the split binary
-   flow)
 
 .. code-block:: bash
 
-   # inside k3-image-gen source
-   make CROSS_COMPILE=$CC32 SOC={SOC} SOC_TYPE={hs,gp} \
-        TI_SECURE_DEV_PKG=<path/to/securit-development-tools> \
-        SYSFW_PATH=<path/to/ti-sysfw/ti-fs-firmware-{SOC}-{hs|gp}.bin> \
-        SYSFW_HS_INNER_CERT_PATH=<path/to/ti-sysfw/ti-fs-firmware-{SOC}-hs-cert.bin
-
-For devices that use the *combined binary flow*, you will also need to
-supply the location of the SPL we created in step 1 above, so it can be
-packaged into the final `tiboot3.bin`.
-
-.. code-block:: bash
-
-   SBL=<path/to/wakeup/u-boot-spl.bin>
+ $ # inside u-boot source
+ $ make ARCH=arm {SOC}_evm_r5_defconfig
+ $ make ARCH=arm CROSS_COMPILE=$CC32 \
+        BINMAN_INDIRS=<path/to/ti-linux-firmware>
 
 At this point you should have all the needed binaries to boot the wakeup
 domain of your K3 SoC.
 
 **Combined Binary Boot Flow** (eg: am62x, am64x, ... )
 
-   `k3-image-gen/tiboot3-{SOC}-{hs,gp}-evm.bin`
+   `tiboot3.bin`
 
 **Split Binary Boot Flow** (eg: j721e, am65x)
 
-   | `u-boot/build/wkup/tiboot3.bin`
-   | `k3-image-gen/sysfw-{SOC}-evm.bin`
+   | `tiboot3.bin`
+   | `sysfw-{SOC}-evm.itb`
 
 .. note ::
 
@@ -223,53 +196,47 @@ The `tispl.bin` is a standard fitImage combining the firmware need for
 the main domain to function properly as well as Device Management (DM)
 firmware if your device using a split firmware.
 
-3. We will first need ATF, as it's the first thing to run on the 'big'
+2. We will first need ATF, as it's the first thing to run on the 'big'
    application cores on the main domain.
 
 .. code-block:: bash
 
-   # inside arm-trusted-firmware source
-   make CROSS_COMPILE=$CC64 ARCH=aarch64 PLAT=k3 \
-        TARGET_BOARD={lite|generic} \
-        SPD=opteed \
+ $ # inside arm-trusted-firmware source
+ $ make CROSS_COMPILE=$CC64 ARCH=aarch64 PLAT=k3 \
+        TARGET_BOARD={lite|generic|j784s4} \
+        SPD=opteed
 
-Typically all `j7*` devices will use `TARGET_BOARD=generic` while all
-Sitara (`am6*`) devices use the `lite` option.
+Typically all `j7*` devices will use `TARGET_BOARD=generic` or `TARGET_BOARD
+=j784s4` (if it is a J784S4 device), while all Sitara (`am6*`) devices
+use the `lite` option.
 
-4. The Open Portable Trusted Execution Environment (OPTEE) is designed
+3. The Open Portable Trusted Execution Environment (OPTEE) is designed
    to run as a companion to a non-secure Linux kernel for Cortex-A cores
    using the TrustZone technology built into the core.
 
 .. code-block:: bash
 
-   # inside optee_os source
-   make CROSS_COMPILE=$CC32 CROSS_COMPILE64=$CC64 \
+ $ # inside optee_os source
+ $ make CROSS_COMPILE=$CC32 CROSS_COMPILE64=$CC64 \
         PLATFORM=k3 CFG_ARM64_core=y
 
-5. Finally, after ATF has initialized the main domain and OPTEE has
+4. Finally, after ATF has initialized the main domain and OPTEE has
    finished, we can jump back into U-Boot again, this time running on a
    64bit core in the main domain.
 
 .. code-block:: bash
 
-   # inside u-boot source
-   make ARCH=arm O=build/main CROSS_COMPILE=$CC64 {SOC}_evm_a{53,72}_defconfig
-   make ARCH=arm O=build/main CROSS_COMPILE=$CC64 \
-        ATF=<path/to/atf/bl31.bin \
+ $ # inside u-boot source
+ $ make ARCH=arm {SOC}_evm_a{53,72}_defconfig
+ $ make ARCH=arm CROSS_COMPILE=$CC64 \
+        BINMAN_INDIRS=<path/to/ti-linux-firmware> \
+        BL31=<path/to/atf/bl31.bin \
         TEE=<path/to/optee/tee-pager_v2.bin
 
-If your device uses a split firmware, you will also need to supply the
-path to the Device Management (DM) Firmware to be included in the final
-`tispl.bin` binary
-
-.. code-block:: bash
-
-   DM=<path/to/ti-linux-firmware/ti-dm/ipc_echo_testb_mcu1_0_release_strip.xer5f>
-
 At this point you should have every binary needed initialize both the
 wakeup and main domain and to boot to the U-Boot prompt
 
 **Main Domain Bootloader**
 
-   | `u-boot/build/main/tispl.bin`
-   | `u-boot/build/main/u-boot.img`
+   | `tispl.bin`
+   | `u-boot.img`
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 21/23] binman: Overwrite symlink if it already exists
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (19 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 20/23] doc: board: ti: Update documentation for binman flow Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 17:35   ` Simon Glass
  2023-07-07 12:34 ` [PATCH v5 22/23] buildman: Create a requirements.txt file Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 23/23] CI: Make use of buildman requirements.txt Neha Malcom Francis
  22 siblings, 1 reply; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

From: Andrew Davis <afd@ti.com>

Without this re-building will fail with an error when trying to create
the symlink for the second time with an already exists error.

Signed-off-by: Andrew Davis <afd@ti.com>
Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
---
 tools/binman/image.py | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/tools/binman/image.py b/tools/binman/image.py
index 8ebf71d61a..e77b5d0d97 100644
--- a/tools/binman/image.py
+++ b/tools/binman/image.py
@@ -182,6 +182,8 @@ class Image(section.Entry_section):
         # Create symlink to file if symlink given
         if self._symlink is not None:
             sname = tools.get_output_filename(self._symlink)
+            if os.path.islink(sname):
+                os.remove(sname)
             os.symlink(fname, sname)
 
     def WriteMap(self):
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 22/23] buildman: Create a requirements.txt file
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (20 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 21/23] binman: Overwrite symlink if it already exists Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  2023-07-07 12:34 ` [PATCH v5 23/23] CI: Make use of buildman requirements.txt Neha Malcom Francis
  22 siblings, 0 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

From: Tom Rini <trini@konsulko.com>

At this point, buildman requires a few different modules and so we need
a requirements.txt to track what modules are needed.

Cc: Simon Glass <sjg@chromium.org>
Cc: Neha Malcom Francis <n-francis@ti.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
---
 tools/buildman/requirements.txt | 2 ++
 1 file changed, 2 insertions(+)
 create mode 100644 tools/buildman/requirements.txt

diff --git a/tools/buildman/requirements.txt b/tools/buildman/requirements.txt
new file mode 100644
index 0000000000..a1efcb9d4b
--- /dev/null
+++ b/tools/buildman/requirements.txt
@@ -0,0 +1,2 @@
+jsonschema==4.17.3
+pyyaml==6.0
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* [PATCH v5 23/23] CI: Make use of buildman requirements.txt
  2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
                   ` (21 preceding siblings ...)
  2023-07-07 12:34 ` [PATCH v5 22/23] buildman: Create a requirements.txt file Neha Malcom Francis
@ 2023-07-07 12:34 ` Neha Malcom Francis
  22 siblings, 0 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-07 12:34 UTC (permalink / raw)
  To: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak
  Cc: n-francis, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

From: Tom Rini <trini@konsulko.com>

Now that buildman has a requirements.txt file we need to make use of it.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
[n-francis@ti.com: Adding missing command from .azure-pipelines.yml]
Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
---
 .azure-pipelines.yml | 4 ++++
 .gitlab-ci.yml       | 4 ++++
 2 files changed, 8 insertions(+)

diff --git a/.azure-pipelines.yml b/.azure-pipelines.yml
index 06c46b681c..8626b27d4b 100644
--- a/.azure-pipelines.yml
+++ b/.azure-pipelines.yml
@@ -162,6 +162,7 @@ stages:
           virtualenv -p /usr/bin/python3 /tmp/venv
           . /tmp/venv/bin/activate
           pip install -r test/py/requirements.txt
+          pip install -r tools/buildman/requirements.txt
           export UBOOT_TRAVIS_BUILD_DIR=/tmp/sandbox_spl
           export PYTHONPATH=${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc/pylibfdt
           export PATH=${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc:${PATH}
@@ -209,6 +210,7 @@ stages:
           git config --global --add safe.directory $(work_dir)
           export USER=azure
           pip install -r test/py/requirements.txt
+          pip install -r tools/buildman/requirements.txt
           pip install asteval pylint==2.12.2 pyopenssl
           export PATH=${PATH}:~/.local/bin
           echo "[MASTER]" >> .pylintrc
@@ -404,6 +406,7 @@ stages:
           if [ -n "${BUILD_ENV}" ]; then
               export ${BUILD_ENV};
           fi
+          pip install -r tools/buildman/requirements.txt
           tools/buildman/buildman -o ${UBOOT_TRAVIS_BUILD_DIR} -w -E -W -e --board ${TEST_PY_BD} ${OVERRIDE}
           cp ~/grub_x86.efi ${UBOOT_TRAVIS_BUILD_DIR}/
           cp ~/grub_x64.efi ${UBOOT_TRAVIS_BUILD_DIR}/
@@ -583,6 +586,7 @@ stages:
           # make environment variables available as tests are running inside a container
           export BUILDMAN="${BUILDMAN}"
           git config --global --add safe.directory ${WORK_DIR}
+          pip install -r tools/buildman/requirements.txt
           EOF
           cat << "EOF" >> build.sh
           if [[ "${BUILDMAN}" != "" ]]; then
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index cfd58513c3..07d8ba5ac2 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -97,6 +97,7 @@ build all 32bit ARM platforms:
   script:
     - ret=0;
       git config --global --add safe.directory "${CI_PROJECT_DIR}";
+      pip install -r tools/buildman/requirements.txt;
       ./tools/buildman/buildman -o /tmp -PEWM arm -x aarch64 || ret=$?;
       if [[ $ret -ne 0 ]]; then
         ./tools/buildman/buildman -o /tmp -seP;
@@ -110,6 +111,7 @@ build all 64bit ARM platforms:
     - . /tmp/venv/bin/activate
     - ret=0;
       git config --global --add safe.directory "${CI_PROJECT_DIR}";
+      pip install -r tools/buildman/requirements.txt;
       ./tools/buildman/buildman -o /tmp -PEWM aarch64 || ret=$?;
       if [[ $ret -ne 0 ]]; then
         ./tools/buildman/buildman -o /tmp -seP;
@@ -208,6 +210,7 @@ Run binman, buildman, dtoc, Kconfig and patman testsuites:
       virtualenv -p /usr/bin/python3 /tmp/venv;
       . /tmp/venv/bin/activate;
       pip install -r test/py/requirements.txt;
+      pip install -r tools/buildman/requirements.txt;
       export UBOOT_TRAVIS_BUILD_DIR=/tmp/sandbox_spl;
       export PYTHONPATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc/pylibfdt";
       export PATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc:${PATH}";
@@ -240,6 +243,7 @@ Run pylint:
   script:
     - git config --global --add safe.directory "${CI_PROJECT_DIR}"
     - pip install -r test/py/requirements.txt
+    - pip install -r tools/buildman/requirements.txt
     - pip install asteval pylint==2.12.2 pyopenssl
     - export PATH=${PATH}:~/.local/bin
     - echo "[MASTER]" >> .pylintrc
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 42+ messages in thread

* Re: [PATCH v5 20/23] doc: board: ti: Update documentation for binman flow
  2023-07-07 12:34 ` [PATCH v5 20/23] doc: board: ti: Update documentation for binman flow Neha Malcom Francis
@ 2023-07-07 12:56   ` Nishanth Menon
  2023-07-07 13:30   ` Jerome Forissier
  1 sibling, 0 replies; 42+ messages in thread
From: Nishanth Menon @ 2023-07-07 12:56 UTC (permalink / raw)
  To: Neha Malcom Francis
  Cc: u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh, jan.kiszka,
	bb, alpernebiyasak, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

On 18:04-20230707, Neha Malcom Francis wrote:
> Earlier documentation specified builds for generating bootloader images
> using an external TI repository k3-image-gen and core-secdev-k3. Modify
> this to using the binman flow so that user understands how to build the
> final boot images.
> 
> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
> Reviewed-by: Simon Glass <sjg@chromium.org>
> ---
>  doc/board/ti/am62x_sk.rst  | 42 ++++++++---------
>  doc/board/ti/j721e_evm.rst | 50 +++++++++-----------
>  doc/board/ti/k3.rst        | 95 +++++++++++++-------------------------
>  3 files changed, 73 insertions(+), 114 deletions(-)
> 

[...]
>  
>  Sources:
>  --------
> -1. SYSFW:
> -	Tree: git://git.ti.com/k3-image-gen/k3-image-gen.git
> -	Branch: master
> -
> -2. ATF:
> +1. ATF:
Minor nitpick: ATF was the old name
https://community.arm.com/oss-platforms/w/docs/483/trusted-firmware-a
Trusted Firmware-A is the new name.

>  	Tree: https://github.com/ARM-software/arm-trusted-firmware.git

I believe the official repo is https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/

[...]

-- 
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3  1A34 DDB5 849D 1736 249D

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: [PATCH v5 20/23] doc: board: ti: Update documentation for binman flow
  2023-07-07 12:34 ` [PATCH v5 20/23] doc: board: ti: Update documentation for binman flow Neha Malcom Francis
  2023-07-07 12:56   ` Nishanth Menon
@ 2023-07-07 13:30   ` Jerome Forissier
  2023-07-07 13:44     ` Jan Kiszka
  1 sibling, 1 reply; 42+ messages in thread
From: Jerome Forissier @ 2023-07-07 13:30 UTC (permalink / raw)
  To: Neha Malcom Francis, u-boot, trini, sjg, afd, vigneshr, rogerq,
	kamlesh, jan.kiszka, bb, alpernebiyasak
  Cc: nm, u-kumar1, m-chawdhry, christian.gmeiner, xypron.glpk



On 7/7/23 14:34, Neha Malcom Francis wrote:
> Earlier documentation specified builds for generating bootloader images
> using an external TI repository k3-image-gen and core-secdev-k3. Modify
> this to using the binman flow so that user understands how to build the
> final boot images.
> 
> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
> Reviewed-by: Simon Glass <sjg@chromium.org>
> ---
>  doc/board/ti/am62x_sk.rst  | 42 ++++++++---------
>  doc/board/ti/j721e_evm.rst | 50 +++++++++-----------
>  doc/board/ti/k3.rst        | 95 +++++++++++++-------------------------
>  3 files changed, 73 insertions(+), 114 deletions(-)
> 
> diff --git a/doc/board/ti/am62x_sk.rst b/doc/board/ti/am62x_sk.rst
> index 27d7b527c6..e4d58b4958 100644
> --- a/doc/board/ti/am62x_sk.rst
> +++ b/doc/board/ti/am62x_sk.rst
[...]
> @@ -139,35 +135,37 @@ Build procedure:
>  ----------------
>  1. ATF:
>  
> -.. code-block:: text
> +.. code-block:: bash
>  
> - $ make CROSS_COMPILE=aarch64-none-linux-gnu- ARCH=aarch64 PLAT=k3 TARGET_BOARD=lite SPD=opteed
> + $ make CROSS_COMPILE=aarch64-none-linux-gnu- ARCH=aarch64 PLAT=k3 \
> +        TARGET_BOARD=lite SPD=opteed
>  
>  2. OPTEE:
>  
> -.. code-block:: text
> +.. code-block:: bash
>  
> - $ make PLATFORM=k3 CFG_ARM64_core=y CROSS_COMPILE=arm-none-linux-gnueabihf- CROSS_COMPILE64=aarch64-none-linux-gnu-
> + $ make PLATFORM=k3 CFG_ARM64_core=y CROSS_COMPILE=arm-none-linux-gnueabihf- \
> +        CROSS_COMPILE64=aarch64-none-linux-gnu-
>  
>  3. U-Boot:
>  
>  * 3.1 R5:
>  
> -.. code-block:: text
> +.. code-block:: bash
>  
> - $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf- am62x_evm_r5_defconfig O=/tmp/r5
> - $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf- O=/tmp/r5
> - $ cd <k3-image-gen>
> - $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf- SOC=am62x SBL=/tmp/r5/spl/u-boot-spl.bin SYSFW_PATH=<path to ti-linux-firmware>/ti-sysfw/ti-fs-firmware-am62x-gp.bin
> -
> -Use the tiboot3.bin generated from last command
> + $ make ARCH=arm am62x_evm_r5_defconfig
> + $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf- \
> +        BINMAN_INDIRS=<path/to/ti-linux-firmware>
>  
>  * 3.2 A53:
>  
> -.. code-block:: text
> +.. code-block:: bash
>  
> - $ make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- am62x_evm_a53_defconfig O=/tmp/a53
> - $ make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- ATF=<path to ATF dir>/build/k3/lite/release/bl31.bin TEE=<path to OPTEE OS dir>/out/arm-plat-k3/core/tee-pager_v2.bin DM=<path to ti-linux-firmware>/ti-dm/am62xx/ipc_echo_testb_mcu1_0_release_strip.xer5f O=/tmp/a53
> + $ make ARCH=arm am62x_evm_a53_defconfig
> + $ make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- \
> +        BL31=<path to ATF dir>/build/k3/lite/release/bl31.bin \
> +        TEE=<path to OPTEE OS dir>/out/arm-plat-k3/core/tee-pager_v2.bin \

Note that since OP-TEE 3.21.0, tee-raw.bin could/should be used instead of
tee-pager_v2.bin. Indeed when the "pager" feature is not enabled, the two
binaries are identical, and the newer name is hopefully less confusing.

-- 
Jerome

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: [PATCH v5 18/23] arm: k3-am65x-iot2050: Use binman for tispl.bin for iot2050
  2023-07-07 12:34 ` [PATCH v5 18/23] arm: k3-am65x-iot2050: Use binman for tispl.bin for iot2050 Neha Malcom Francis
@ 2023-07-07 13:38   ` Jan Kiszka
  2023-07-10  7:50     ` Neha Malcom Francis
  2023-07-07 17:35   ` Simon Glass
  1 sibling, 1 reply; 42+ messages in thread
From: Jan Kiszka @ 2023-07-07 13:38 UTC (permalink / raw)
  To: Neha Malcom Francis, u-boot, trini, sjg, afd, vigneshr, rogerq,
	kamlesh, bb, alpernebiyasak
  Cc: nm, u-kumar1, m-chawdhry, christian.gmeiner, xypron.glpk

On 07.07.23 14:34, Neha Malcom Francis wrote:
> Move to using binman to generate tispl.bin which is used to generate the
> final flash.bin bootloader for iot2050 boards.
> 
> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
> Cc: Jan Kiszka <jan.kiszka@siemens.com>
> ---
>  arch/arm/dts/k3-am65-iot2050-boot-image.dtsi | 76 +++++++++++++++++++-
>  1 file changed, 74 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi b/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
> index 03ccc54329..9d83898d33 100644
> --- a/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
> +++ b/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
> @@ -26,9 +26,81 @@
>  			missing-msg = "iot2050-seboot";
>  		};
>  
> -		blob@0x180000 {
> +		fit@0x180000 {
>  			offset = <0x180000>;
> -			filename = "tispl.bin";
> +			pad-byte = <0xff>;
> +			description = "Configuration to load ATF and SPL";
> +
> +			images {
> +				atf {
> +					description = "ARM Trusted Firmware";
> +					type = "firmware";
> +					arch = "arm64";
> +					compression = "none";
> +					os = "arm-trusted-firmware";
> +					load = <CONFIG_K3_ATF_LOAD_ADDR>;
> +					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
> +					atf: atf-bl31 {
> +					};
> +				};
> +
> +				tee {
> +					description = "OPTEE";
> +					type = "tee";
> +					arch = "arm64";
> +					compression = "none";
> +					os = "tee";
> +					load = <0x9e800000>;
> +					entry = <0x9e800000>;
> +					tee: tee-os {
> +					};
> +				};
> +
> +				dm {
> +					description = "DM binary";
> +					type = "firmware";
> +					arch = "arm32";
> +					compression = "none";
> +					os = "DM";
> +					load = <0x89000000>;
> +					entry = <0x89000000>;
> +					blob-ext {
> +						filename = "/dev/null";
> +					};
> +				};
> +
> +				spl {
> +					description = "SPL (64-bit)";
> +					type = "standalone";
> +					os = "U-Boot";
> +					arch = "arm64";
> +					compression = "none";
> +					load = <CONFIG_SPL_TEXT_BASE>;
> +					entry = <CONFIG_SPL_TEXT_BASE>;
> +					u_boot_spl_nodtb: blob-ext {
> +						filename = "spl/u-boot-spl-nodtb.bin";
> +					};
> +				};
> +
> +				fdt-0 {
> +					description = "k3-am65-iot2050-spl.dtb";
> +					type = "flat_dt";
> +					arch = "arm";
> +					compression = "none";
> +					spl_am65x_evm_dtb: blob-ext {
> +						filename = "spl/dts/k3-am65-iot2050-spl.dtb";
> +					};
> +				};
> +			};
> +
> +			configurations {
> +				default = "spl";
> +				spl {
> +					fdt = "fdt-0";
> +					firmware = "atf";
> +					loadables = "tee", "dm", "spl";
> +				};
> +			};
>  		};
>  
>  		fit@0x380000 {

Looks ok (will have to test), but this lacks adjustment of
tools/iot2050-sign-fw.sh, probably something around
s/tispl.bin/fit@0x180000/g.

Jan

-- 
Siemens AG, Technology
Competence Center Embedded Linux


^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: [PATCH v5 20/23] doc: board: ti: Update documentation for binman flow
  2023-07-07 13:30   ` Jerome Forissier
@ 2023-07-07 13:44     ` Jan Kiszka
  2023-07-07 13:47       ` Kumar, Udit
  0 siblings, 1 reply; 42+ messages in thread
From: Jan Kiszka @ 2023-07-07 13:44 UTC (permalink / raw)
  To: Jerome Forissier, Neha Malcom Francis, u-boot, trini, sjg, afd,
	vigneshr, rogerq, kamlesh, bb, alpernebiyasak
  Cc: nm, u-kumar1, m-chawdhry, christian.gmeiner, xypron.glpk

On 07.07.23 15:30, Jerome Forissier wrote:
> 
> 
> On 7/7/23 14:34, Neha Malcom Francis wrote:
>> Earlier documentation specified builds for generating bootloader images
>> using an external TI repository k3-image-gen and core-secdev-k3. Modify
>> this to using the binman flow so that user understands how to build the
>> final boot images.
>>
>> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
>> Reviewed-by: Simon Glass <sjg@chromium.org>
>> ---
>>  doc/board/ti/am62x_sk.rst  | 42 ++++++++---------
>>  doc/board/ti/j721e_evm.rst | 50 +++++++++-----------
>>  doc/board/ti/k3.rst        | 95 +++++++++++++-------------------------
>>  3 files changed, 73 insertions(+), 114 deletions(-)
>>
>> diff --git a/doc/board/ti/am62x_sk.rst b/doc/board/ti/am62x_sk.rst
>> index 27d7b527c6..e4d58b4958 100644
>> --- a/doc/board/ti/am62x_sk.rst
>> +++ b/doc/board/ti/am62x_sk.rst
> [...]
>> @@ -139,35 +135,37 @@ Build procedure:
>>  ----------------
>>  1. ATF:
>>  
>> -.. code-block:: text
>> +.. code-block:: bash
>>  
>> - $ make CROSS_COMPILE=aarch64-none-linux-gnu- ARCH=aarch64 PLAT=k3 TARGET_BOARD=lite SPD=opteed
>> + $ make CROSS_COMPILE=aarch64-none-linux-gnu- ARCH=aarch64 PLAT=k3 \
>> +        TARGET_BOARD=lite SPD=opteed
>>  
>>  2. OPTEE:
>>  
>> -.. code-block:: text
>> +.. code-block:: bash
>>  
>> - $ make PLATFORM=k3 CFG_ARM64_core=y CROSS_COMPILE=arm-none-linux-gnueabihf- CROSS_COMPILE64=aarch64-none-linux-gnu-
>> + $ make PLATFORM=k3 CFG_ARM64_core=y CROSS_COMPILE=arm-none-linux-gnueabihf- \
>> +        CROSS_COMPILE64=aarch64-none-linux-gnu-
>>  
>>  3. U-Boot:
>>  
>>  * 3.1 R5:
>>  
>> -.. code-block:: text
>> +.. code-block:: bash
>>  
>> - $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf- am62x_evm_r5_defconfig O=/tmp/r5
>> - $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf- O=/tmp/r5
>> - $ cd <k3-image-gen>
>> - $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf- SOC=am62x SBL=/tmp/r5/spl/u-boot-spl.bin SYSFW_PATH=<path to ti-linux-firmware>/ti-sysfw/ti-fs-firmware-am62x-gp.bin
>> -
>> -Use the tiboot3.bin generated from last command
>> + $ make ARCH=arm am62x_evm_r5_defconfig
>> + $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf- \
>> +        BINMAN_INDIRS=<path/to/ti-linux-firmware>
>>  
>>  * 3.2 A53:
>>  
>> -.. code-block:: text
>> +.. code-block:: bash
>>  
>> - $ make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- am62x_evm_a53_defconfig O=/tmp/a53
>> - $ make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- ATF=<path to ATF dir>/build/k3/lite/release/bl31.bin TEE=<path to OPTEE OS dir>/out/arm-plat-k3/core/tee-pager_v2.bin DM=<path to ti-linux-firmware>/ti-dm/am62xx/ipc_echo_testb_mcu1_0_release_strip.xer5f O=/tmp/a53
>> + $ make ARCH=arm am62x_evm_a53_defconfig
>> + $ make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- \
>> +        BL31=<path to ATF dir>/build/k3/lite/release/bl31.bin \
>> +        TEE=<path to OPTEE OS dir>/out/arm-plat-k3/core/tee-pager_v2.bin \
> 
> Note that since OP-TEE 3.21.0, tee-raw.bin could/should be used instead of
> tee-pager_v2.bin. Indeed when the "pager" feature is not enabled, the two
> binaries are identical, and the newer name is hopefully less confusing.
> 

Ah, interesting. That will affect doc/board/siemens/iot2050.rst as well
(and our integration recipes).

Jan

-- 
Siemens AG, Technology
Competence Center Embedded Linux


^ permalink raw reply	[flat|nested] 42+ messages in thread

* RE: [PATCH v5 20/23] doc: board: ti: Update documentation for binman flow
  2023-07-07 13:44     ` Jan Kiszka
@ 2023-07-07 13:47       ` Kumar, Udit
  0 siblings, 0 replies; 42+ messages in thread
From: Kumar, Udit @ 2023-07-07 13:47 UTC (permalink / raw)
  To: Jan Kiszka, Jerome Forissier, Francis, Neha, u-boot@lists.denx.de,
	trini@konsulko.com, sjg@chromium.org, Davis, Andrew,
	Raghavendra, Vignesh, rogerq@kernel.org, Gurudasani, Kamlesh,
	Brattlof, Bryan, alpernebiyasak@gmail.com
  Cc: Menon, Nishanth, Chawdhry, Manorit, christian.gmeiner@gmail.com,
	xypron.glpk@gmx.de

>On 07.07.23 15:30, Jerome Forissier wrote:
>>
>>
>> On 7/7/23 14:34, Neha Malcom Francis wrote:
>>> Earlier documentation specified builds for generating bootloader
>>> images using an external TI repository k3-image-gen and
>>> core-secdev-k3. Modify this to using the binman flow so that user
>>> understands how to build the final boot images.
>>>
>>> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
>>> Reviewed-by: Simon Glass <sjg@chromium.org>
>>> ---
>>>  doc/board/ti/am62x_sk.rst  | 42 ++++++++---------
>>> doc/board/ti/j721e_evm.rst | 50 +++++++++-----------
>>>  doc/board/ti/k3.rst        | 95 +++++++++++++-------------------------
>>>  3 files changed, 73 insertions(+), 114 deletions(-)
>>>
>>> diff --git a/doc/board/ti/am62x_sk.rst b/doc/board/ti/am62x_sk.rst
>>> index 27d7b527c6..e4d58b4958 100644
>>> --- a/doc/board/ti/am62x_sk.rst
>>> +++ b/doc/board/ti/am62x_sk.rst
>> [...]
>>> @@ -139,35 +135,37 @@ Build procedure:
>>>  ----------------
>>>  1. ATF:
>>>
>>> -.. code-block:: text
>>> +.. code-block:: bash
>>>
>>> - $ make CROSS_COMPILE=aarch64-none-linux-gnu- ARCH=aarch64
>PLAT=k3
>>> TARGET_BOARD=lite SPD=opteed
>>> + $ make CROSS_COMPILE=aarch64-none-linux-gnu- ARCH=aarch64
>PLAT=k3 \
>>> +        TARGET_BOARD=lite SPD=opteed
>>>
>>>  2. OPTEE:
>>>
>>> -.. code-block:: text
>>> +.. code-block:: bash
>>>
>>> - $ make PLATFORM=k3 CFG_ARM64_core=y
>>> CROSS_COMPILE=arm-none-linux-gnueabihf-
>>> CROSS_COMPILE64=aarch64-none-linux-gnu-
>>> + $ make PLATFORM=k3 CFG_ARM64_core=y CROSS_COMPILE=arm-none-
>linux-gnueabihf- \
>>> +        CROSS_COMPILE64=aarch64-none-linux-gnu-
>>>
>>>  3. U-Boot:
>>>
>>>  * 3.1 R5:
>>>
>>> -.. code-block:: text
>>> +.. code-block:: bash
>>>
>>> - $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf-
>>> am62x_evm_r5_defconfig O=/tmp/r5
>>> - $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf-
>O=/tmp/r5
>>> - $ cd <k3-image-gen>
>>> - $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf-
>SOC=am62x
>>> SBL=/tmp/r5/spl/u-boot-spl.bin SYSFW_PATH=<path to
>>> ti-linux-firmware>/ti-sysfw/ti-fs-firmware-am62x-gp.bin
>>> -
>>> -Use the tiboot3.bin generated from last command
>>> + $ make ARCH=arm am62x_evm_r5_defconfig $ make ARCH=arm
>>> + CROSS_COMPILE=arm-none-linux-gnueabihf- \
>>> +        BINMAN_INDIRS=<path/to/ti-linux-firmware>
>>>
>>>  * 3.2 A53:
>>>
>>> -.. code-block:: text
>>> +.. code-block:: bash
>>>
>>> - $ make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu-
>>> am62x_evm_a53_defconfig O=/tmp/a53
>>> - $ make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- ATF=<path
>to
>>> ATF dir>/build/k3/lite/release/bl31.bin TEE=<path to OPTEE OS
>>> dir>/out/arm-plat-k3/core/tee-pager_v2.bin DM=<path to
>>> ti-linux-firmware>/ti-dm/am62xx/ipc_echo_testb_mcu1_0_release_strip.x
>>> er5f O=/tmp/a53
>>> + $ make ARCH=arm am62x_evm_a53_defconfig $ make ARCH=arm
>>> + CROSS_COMPILE=aarch64-none-linux-gnu- \
>>> +        BL31=<path to ATF dir>/build/k3/lite/release/bl31.bin \
>>> +        TEE=<path to OPTEE OS
>>> + dir>/out/arm-plat-k3/core/tee-pager_v2.bin \
>>
>> Note that since OP-TEE 3.21.0, tee-raw.bin could/should be used
>> instead of tee-pager_v2.bin. Indeed when the "pager" feature is not
>> enabled, the two binaries are identical, and the newer name is hopefully
>less confusing.
>>
>
>Ah, interesting. That will affect doc/board/siemens/iot2050.rst as well (and
>our integration recipes).

And J7200 docs as well, however this doc is on next  

https://github.com/u-boot/u-boot/blob/next/doc/board/ti/j7200_evm.rst

>
>Jan
>
>--
>Siemens AG, Technology
>Competence Center Embedded Linux


^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: [PATCH v5 03/23] arm: dts: k3: Add support for packaging sysfw.itb and tiboot3.bin
  2023-07-07 12:34 ` [PATCH v5 03/23] arm: dts: k3: Add support for packaging sysfw.itb and tiboot3.bin Neha Malcom Francis
@ 2023-07-07 17:35   ` Simon Glass
  0 siblings, 0 replies; 42+ messages in thread
From: Simon Glass @ 2023-07-07 17:35 UTC (permalink / raw)
  To: Neha Malcom Francis
  Cc: u-boot, trini, afd, vigneshr, rogerq, kamlesh, jan.kiszka, bb,
	alpernebiyasak, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

On Fri, 7 Jul 2023 at 13:35, Neha Malcom Francis <n-francis@ti.com> wrote:
>
> Board config binary artifacts must be generated to be used by binman to
> package sysfw.itb and tiboot3.bin for all K3 devices.
>
> For devices that follow combined flow, these board configuration
> binaries must again be packaged into a combined board configuration
> blobs to be used by binman to package tiboot3.bin.
>
> Add common k3-binman.dtsi to generate all the board configuration
> binaries needed.
>
> Also add custMpk.pem and ti-degenerate-key.pem needed for signing GP and
> HS bootloader images common to all K3 devices.
>
> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
> ---
>  arch/arm/dts/k3-binman.dtsi | 116 ++++++++++++++++++++++++++++++++++++
>  1 file changed, 116 insertions(+)
>  create mode 100644 arch/arm/dts/k3-binman.dtsi
>

Reviewed-by: Simon Glass <sjg@chromium.org>

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: [PATCH v5 11/23] am64x: dts: binman: Package tiboot3.bin, tispl.bin u-boot.img
  2023-07-07 12:34 ` [PATCH v5 11/23] am64x: dts: binman: Package tiboot3.bin, tispl.bin u-boot.img Neha Malcom Francis
@ 2023-07-07 17:35   ` Simon Glass
  2023-07-10  9:12     ` Neha Malcom Francis
  0 siblings, 1 reply; 42+ messages in thread
From: Simon Glass @ 2023-07-07 17:35 UTC (permalink / raw)
  To: Neha Malcom Francis
  Cc: u-boot, trini, afd, vigneshr, rogerq, kamlesh, jan.kiszka, bb,
	alpernebiyasak, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Hi Neha,

On Fri, 7 Jul 2023 at 13:36, Neha Malcom Francis <n-francis@ti.com> wrote:
>
> Support added for HS and GP boot binaries for AM64x.
>
> HS-SE:
>     * tiboot3-am64x_sr2-hs-evm.bin
>     * tispl.bin
>     * u-boot.img
>
> HS-FS:
>     * tiboot3-am64x_sr2-hs-fs-evm.bin
>     * tispl.bin
>     * u-boot.img
>
> GP:
>     * tiboot3.bin --> tiboot3-am64x-gp-evm.bin
>     * tispl.bin_unsigned
>     * u-boot.img_unsigned
>
> Note that the bootflow followed by AM64x requires:
>
> tiboot3.bin:
>         * R5 SPL
>         * R5 SPL dtbs
>         * sysfw
>         * board-cfg
>         * pm-cfg
>         * sec-cfg
>         * rm-cfg
>
> tispl.bin:
>         * ATF
>         * OPTEE
>         * A53 SPL
>         * A53 SPL dtbs
>
> u-boot.img:
>         * A53 U-Boot
>         * A53 U-Boot dtbs
>
> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
> Reviewed-by: Simon Glass <sjg@chromium.org>
> [afd@ti.com: changed output binary names appropriately]
> Signed-off-by: Andrew Davis <afd@ti.com>
> ---
>  arch/arm/dts/k3-am642-evm-u-boot.dtsi |   2 +
>  arch/arm/dts/k3-am642-r5-evm.dts      |   1 +
>  arch/arm/dts/k3-am642-sk-u-boot.dtsi  |   2 +
>  arch/arm/dts/k3-am64x-binman.dtsi     | 515 ++++++++++++++++++++++++++
>  board/ti/am64x/Kconfig                |   2 +
>  5 files changed, 522 insertions(+)
>  create mode 100644 arch/arm/dts/k3-am64x-binman.dtsi

It looks like the template feature (see pending patches) might help
reduce the size of the .dtsi, but we can worry about that later.

Regards,
Simon

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: [PATCH v5 21/23] binman: Overwrite symlink if it already exists
  2023-07-07 12:34 ` [PATCH v5 21/23] binman: Overwrite symlink if it already exists Neha Malcom Francis
@ 2023-07-07 17:35   ` Simon Glass
  0 siblings, 0 replies; 42+ messages in thread
From: Simon Glass @ 2023-07-07 17:35 UTC (permalink / raw)
  To: Neha Malcom Francis
  Cc: u-boot, trini, afd, vigneshr, rogerq, kamlesh, jan.kiszka, bb,
	alpernebiyasak, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Hi Neha,

On Fri, 7 Jul 2023 at 13:37, Neha Malcom Francis <n-francis@ti.com> wrote:
>
> From: Andrew Davis <afd@ti.com>
>
> Without this re-building will fail with an error when trying to create
> the symlink for the second time with an already exists error.
>
> Signed-off-by: Andrew Davis <afd@ti.com>
> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
> ---
>  tools/binman/image.py | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/tools/binman/image.py b/tools/binman/image.py
> index 8ebf71d61a..e77b5d0d97 100644
> --- a/tools/binman/image.py
> +++ b/tools/binman/image.py
> @@ -182,6 +182,8 @@ class Image(section.Entry_section):
>          # Create symlink to file if symlink given
>          if self._symlink is not None:
>              sname = tools.get_output_filename(self._symlink)
> +            if os.path.islink(sname):
> +                os.remove(sname)
>              os.symlink(fname, sname)
>
>      def WriteMap(self):
> --
> 2.34.1
>

This breaks test coverage. Please add a test to ftest.py. You can
probably run _DoTestFile() on an output directory with a in it?

Regards,
Simon

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: [PATCH v5 18/23] arm: k3-am65x-iot2050: Use binman for tispl.bin for iot2050
  2023-07-07 12:34 ` [PATCH v5 18/23] arm: k3-am65x-iot2050: Use binman for tispl.bin for iot2050 Neha Malcom Francis
  2023-07-07 13:38   ` Jan Kiszka
@ 2023-07-07 17:35   ` Simon Glass
  1 sibling, 0 replies; 42+ messages in thread
From: Simon Glass @ 2023-07-07 17:35 UTC (permalink / raw)
  To: Neha Malcom Francis
  Cc: u-boot, trini, afd, vigneshr, rogerq, kamlesh, jan.kiszka, bb,
	alpernebiyasak, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

On Fri, 7 Jul 2023 at 13:36, Neha Malcom Francis <n-francis@ti.com> wrote:
>
> Move to using binman to generate tispl.bin which is used to generate the
> final flash.bin bootloader for iot2050 boards.
>
> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
> Cc: Jan Kiszka <jan.kiszka@siemens.com>
> ---
>  arch/arm/dts/k3-am65-iot2050-boot-image.dtsi | 76 +++++++++++++++++++-
>  1 file changed, 74 insertions(+), 2 deletions(-)

Reviewed-by: Simon Glass <sjg@chromium.org>

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: [PATCH v5 18/23] arm: k3-am65x-iot2050: Use binman for tispl.bin for iot2050
  2023-07-07 13:38   ` Jan Kiszka
@ 2023-07-10  7:50     ` Neha Malcom Francis
  2023-07-11  5:06       ` Jan Kiszka
  0 siblings, 1 reply; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-10  7:50 UTC (permalink / raw)
  To: Jan Kiszka, u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh,
	bb, alpernebiyasak
  Cc: nm, u-kumar1, m-chawdhry, christian.gmeiner, xypron.glpk

Hi Jan

On 07/07/23 19:08, Jan Kiszka wrote:
> On 07.07.23 14:34, Neha Malcom Francis wrote:
>> Move to using binman to generate tispl.bin which is used to generate the
>> final flash.bin bootloader for iot2050 boards.
>>
>> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
>> Cc: Jan Kiszka <jan.kiszka@siemens.com>
>> ---
>>   arch/arm/dts/k3-am65-iot2050-boot-image.dtsi | 76 +++++++++++++++++++-
>>   1 file changed, 74 insertions(+), 2 deletions(-)
>>
>> diff --git a/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi b/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
>> index 03ccc54329..9d83898d33 100644
>> --- a/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
>> +++ b/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
>> @@ -26,9 +26,81 @@
>>   			missing-msg = "iot2050-seboot";
>>   		};
>>   
>> -		blob@0x180000 {
>> +		fit@0x180000 {
>>   			offset = <0x180000>;
>> -			filename = "tispl.bin";
>> +			pad-byte = <0xff>;
>> +			description = "Configuration to load ATF and SPL";
>> +
>> +			images {
>> +				atf {
>> +					description = "ARM Trusted Firmware";
>> +					type = "firmware";
>> +					arch = "arm64";
>> +					compression = "none";
>> +					os = "arm-trusted-firmware";
>> +					load = <CONFIG_K3_ATF_LOAD_ADDR>;
>> +					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
>> +					atf: atf-bl31 {
>> +					};
>> +				};
>> +
>> +				tee {
>> +					description = "OPTEE";
>> +					type = "tee";
>> +					arch = "arm64";
>> +					compression = "none";
>> +					os = "tee";
>> +					load = <0x9e800000>;
>> +					entry = <0x9e800000>;
>> +					tee: tee-os {
>> +					};
>> +				};
>> +
>> +				dm {
>> +					description = "DM binary";
>> +					type = "firmware";
>> +					arch = "arm32";
>> +					compression = "none";
>> +					os = "DM";
>> +					load = <0x89000000>;
>> +					entry = <0x89000000>;
>> +					blob-ext {
>> +						filename = "/dev/null";
>> +					};
>> +				};
>> +
>> +				spl {
>> +					description = "SPL (64-bit)";
>> +					type = "standalone";
>> +					os = "U-Boot";
>> +					arch = "arm64";
>> +					compression = "none";
>> +					load = <CONFIG_SPL_TEXT_BASE>;
>> +					entry = <CONFIG_SPL_TEXT_BASE>;
>> +					u_boot_spl_nodtb: blob-ext {
>> +						filename = "spl/u-boot-spl-nodtb.bin";
>> +					};
>> +				};
>> +
>> +				fdt-0 {
>> +					description = "k3-am65-iot2050-spl.dtb";
>> +					type = "flat_dt";
>> +					arch = "arm";
>> +					compression = "none";
>> +					spl_am65x_evm_dtb: blob-ext {
>> +						filename = "spl/dts/k3-am65-iot2050-spl.dtb";
>> +					};
>> +				};
>> +			};
>> +
>> +			configurations {
>> +				default = "spl";
>> +				spl {
>> +					fdt = "fdt-0";
>> +					firmware = "atf";
>> +					loadables = "tee", "dm", "spl";
>> +				};
>> +			};
>>   		};
>>   
>>   		fit@0x380000 {
> 
> Looks ok (will have to test), but this lacks adjustment of
> tools/iot2050-sign-fw.sh, probably something around
> s/tispl.bin/fit@0x180000/g.
> 

Okay, let us know once tested.

Regarding the naming used in tools/iot2050-sign-fw.sh; would you like me to 
preserve tispl.bin naming in the dts?

> Jan
> 

-- 
Thanking You
Neha Malcom Francis

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: [PATCH v5 11/23] am64x: dts: binman: Package tiboot3.bin, tispl.bin u-boot.img
  2023-07-07 17:35   ` Simon Glass
@ 2023-07-10  9:12     ` Neha Malcom Francis
  2023-07-10 10:17       ` Jan Kiszka
  0 siblings, 1 reply; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-10  9:12 UTC (permalink / raw)
  To: Simon Glass
  Cc: u-boot, trini, afd, vigneshr, rogerq, kamlesh, jan.kiszka, bb,
	alpernebiyasak, nm, u-kumar1, m-chawdhry, christian.gmeiner,
	xypron.glpk

Hi Simon

On 07/07/23 23:05, Simon Glass wrote:
> Hi Neha,
> 
> On Fri, 7 Jul 2023 at 13:36, Neha Malcom Francis <n-francis@ti.com> wrote:
>>
>> Support added for HS and GP boot binaries for AM64x.
>>
>> HS-SE:
>>      * tiboot3-am64x_sr2-hs-evm.bin
>>      * tispl.bin
>>      * u-boot.img
>>
>> HS-FS:
>>      * tiboot3-am64x_sr2-hs-fs-evm.bin
>>      * tispl.bin
>>      * u-boot.img
>>
>> GP:
>>      * tiboot3.bin --> tiboot3-am64x-gp-evm.bin
>>      * tispl.bin_unsigned
>>      * u-boot.img_unsigned
>>
>> Note that the bootflow followed by AM64x requires:
>>
>> tiboot3.bin:
>>          * R5 SPL
>>          * R5 SPL dtbs
>>          * sysfw
>>          * board-cfg
>>          * pm-cfg
>>          * sec-cfg
>>          * rm-cfg
>>
>> tispl.bin:
>>          * ATF
>>          * OPTEE
>>          * A53 SPL
>>          * A53 SPL dtbs
>>
>> u-boot.img:
>>          * A53 U-Boot
>>          * A53 U-Boot dtbs
>>
>> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
>> Reviewed-by: Simon Glass <sjg@chromium.org>
>> [afd@ti.com: changed output binary names appropriately]
>> Signed-off-by: Andrew Davis <afd@ti.com>
>> ---
>>   arch/arm/dts/k3-am642-evm-u-boot.dtsi |   2 +
>>   arch/arm/dts/k3-am642-r5-evm.dts      |   1 +
>>   arch/arm/dts/k3-am642-sk-u-boot.dtsi  |   2 +
>>   arch/arm/dts/k3-am64x-binman.dtsi     | 515 ++++++++++++++++++++++++++
>>   board/ti/am64x/Kconfig                |   2 +
>>   5 files changed, 522 insertions(+)
>>   create mode 100644 arch/arm/dts/k3-am64x-binman.dtsi
> 
> It looks like the template feature (see pending patches) might help
> reduce the size of the .dtsi, but we can worry about that later.
> 

Right, I'll have a shot at it once this series is up. Thanks!

> Regards,
> Simon

-- 
Thanking You
Neha Malcom Francis

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: [PATCH v5 11/23] am64x: dts: binman: Package tiboot3.bin, tispl.bin u-boot.img
  2023-07-10  9:12     ` Neha Malcom Francis
@ 2023-07-10 10:17       ` Jan Kiszka
  0 siblings, 0 replies; 42+ messages in thread
From: Jan Kiszka @ 2023-07-10 10:17 UTC (permalink / raw)
  To: Neha Malcom Francis, Simon Glass
  Cc: u-boot, trini, afd, vigneshr, rogerq, kamlesh, bb, alpernebiyasak,
	nm, u-kumar1, m-chawdhry, christian.gmeiner, xypron.glpk

On 10.07.23 11:12, Neha Malcom Francis wrote:
> Hi Simon
> 
> On 07/07/23 23:05, Simon Glass wrote:
>> Hi Neha,
>>
>> On Fri, 7 Jul 2023 at 13:36, Neha Malcom Francis <n-francis@ti.com>
>> wrote:
>>>
>>> Support added for HS and GP boot binaries for AM64x.
>>>
>>> HS-SE:
>>>      * tiboot3-am64x_sr2-hs-evm.bin
>>>      * tispl.bin
>>>      * u-boot.img
>>>
>>> HS-FS:
>>>      * tiboot3-am64x_sr2-hs-fs-evm.bin
>>>      * tispl.bin
>>>      * u-boot.img
>>>
>>> GP:
>>>      * tiboot3.bin --> tiboot3-am64x-gp-evm.bin
>>>      * tispl.bin_unsigned
>>>      * u-boot.img_unsigned
>>>
>>> Note that the bootflow followed by AM64x requires:
>>>
>>> tiboot3.bin:
>>>          * R5 SPL
>>>          * R5 SPL dtbs
>>>          * sysfw
>>>          * board-cfg
>>>          * pm-cfg
>>>          * sec-cfg
>>>          * rm-cfg
>>>
>>> tispl.bin:
>>>          * ATF
>>>          * OPTEE
>>>          * A53 SPL
>>>          * A53 SPL dtbs
>>>
>>> u-boot.img:
>>>          * A53 U-Boot
>>>          * A53 U-Boot dtbs
>>>
>>> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
>>> Reviewed-by: Simon Glass <sjg@chromium.org>
>>> [afd@ti.com: changed output binary names appropriately]
>>> Signed-off-by: Andrew Davis <afd@ti.com>
>>> ---
>>>   arch/arm/dts/k3-am642-evm-u-boot.dtsi |   2 +
>>>   arch/arm/dts/k3-am642-r5-evm.dts      |   1 +
>>>   arch/arm/dts/k3-am642-sk-u-boot.dtsi  |   2 +
>>>   arch/arm/dts/k3-am64x-binman.dtsi     | 515 ++++++++++++++++++++++++++
>>>   board/ti/am64x/Kconfig                |   2 +
>>>   5 files changed, 522 insertions(+)
>>>   create mode 100644 arch/arm/dts/k3-am64x-binman.dtsi
>>
>> It looks like the template feature (see pending patches) might help
>> reduce the size of the .dtsi, but we can worry about that later.
>>
> 
> Right, I'll have a shot at it once this series is up. Thanks!
> 

I would recommend testing it earlier locally if you are interested -
there might be still some edges left, and early feedback already helped
to improve it.

Jan

-- 
Siemens AG, Technology
Competence Center Embedded Linux


^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: [PATCH v5 01/23] binman: ti-board-config: Add support for TI board config binaries
  2023-07-07 12:34 ` [PATCH v5 01/23] binman: ti-board-config: Add support for TI board config binaries Neha Malcom Francis
@ 2023-07-11  4:51   ` Jan Kiszka
  0 siblings, 0 replies; 42+ messages in thread
From: Jan Kiszka @ 2023-07-11  4:51 UTC (permalink / raw)
  To: Neha Malcom Francis, u-boot, trini, sjg, afd, vigneshr, rogerq,
	kamlesh, bb, alpernebiyasak
  Cc: nm, u-kumar1, m-chawdhry, christian.gmeiner, xypron.glpk

On 07.07.23 14:34, Neha Malcom Francis wrote:
> The ti-board-config entry loads and validates a given YAML config file
> against a given schema, and generates the board config binary. K3
> devices require these binaries to be packed into the final system
> firmware images.
> 
> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
> Reviewed-by: Simon Glass <sjg@chromium.org>
> ---
>  tools/binman/entries.rst                      |  48 ++++
>  tools/binman/etype/ti_board_config.py         | 259 ++++++++++++++++++
>  tools/binman/ftest.py                         |  20 ++
>  tools/binman/test/277_ti_board_cfg.dts        |  14 +
>  .../binman/test/278_ti_board_cfg_combined.dts |  25 ++
>  .../binman/test/279_ti_board_cfg_no_type.dts  |  11 +
>  tools/binman/test/yaml/config.yaml            |  19 ++
>  tools/binman/test/yaml/schema.yaml            |  51 ++++
>  tools/binman/test/yaml/schema_notype.yaml     |  40 +++
>  9 files changed, 487 insertions(+)
>  create mode 100644 tools/binman/etype/ti_board_config.py
>  create mode 100644 tools/binman/test/277_ti_board_cfg.dts
>  create mode 100644 tools/binman/test/278_ti_board_cfg_combined.dts
>  create mode 100644 tools/binman/test/279_ti_board_cfg_no_type.dts
>  create mode 100644 tools/binman/test/yaml/config.yaml
>  create mode 100644 tools/binman/test/yaml/schema.yaml
>  create mode 100644 tools/binman/test/yaml/schema_notype.yaml
> 
> diff --git a/tools/binman/entries.rst b/tools/binman/entries.rst
> index b71af801fd..14a2d03fad 100644
> --- a/tools/binman/entries.rst
> +++ b/tools/binman/entries.rst
> @@ -1658,6 +1658,54 @@ by setting the size of the entry to something larger than the text.
>  
>  
>  
> +.. _etype_ti_board_config:
> +
> +Entry: ti-board-config: An entry containing a TI schema validated board config binary
> +-------------------------------------------------------------------------------------
> +
> +This etype supports generation of two kinds of board configuration
> +binaries: singular board config binary as well as combined board config
> +binary.
> +
> +Properties / Entry arguments:
> +    - config-file: File containing board configuration data in YAML
> +    - schema-file: File containing board configuration YAML schema against
> +      which the config file is validated
> +
> +Output files:
> +    - board config binary: File containing board configuration binary
> +
> +These above parameters are used only when the generated binary is
> +intended to be a single board configuration binary. Example::
> +
> +    my-ti-board-config {
> +        ti-board-config {
> +            config = "board-config.yaml";
> +            schema = "schema.yaml";
> +        };
> +    };
> +
> +To generate a combined board configuration binary, we pack the
> +needed individual binaries into a ti-board-config binary. In this case,
> +the available supported subnode names are board-cfg, pm-cfg, sec-cfg and
> +rm-cfg. The final binary is prepended with a header containing details about
> +the included board config binaries. Example::
> +
> +    my-combined-ti-board-config {
> +        ti-board-config {
> +            board-cfg {
> +                config = "board-cfg.yaml";
> +                schema = "schema.yaml";
> +            };
> +            sec-cfg {
> +                config = "sec-cfg.yaml";
> +                schema = "schema.yaml";
> +            };
> +        }
> +    }
> +
> +
> +
>  .. _etype_u_boot:
>  
>  Entry: u-boot: U-Boot flat binary
> diff --git a/tools/binman/etype/ti_board_config.py b/tools/binman/etype/ti_board_config.py
> new file mode 100644
> index 0000000000..0799e5dc59
> --- /dev/null
> +++ b/tools/binman/etype/ti_board_config.py
> @@ -0,0 +1,259 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +# Copyright (c) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +# Written by Neha Malcom Francis <n-francis@ti.com>
> +#
> +# Entry-type module for generating schema validated TI board
> +# configuration binary
> +#
> +
> +import os
> +import struct
> +import yaml
> +
> +from collections import OrderedDict
> +from jsonschema import validate
> +from shutil import copyfileobj
> +
> +from binman.entry import Entry
> +from binman.etype.section import Entry_section
> +from dtoc import fdt_util
> +from u_boot_pylib import tools
> +
> +BOARDCFG = 0xB
> +BOARDCFG_SEC = 0xD
> +BOARDCFG_PM = 0xE
> +BOARDCFG_RM = 0xC
> +BOARDCFG_NUM_ELEMS = 4
> +
> +class Entry_ti_board_config(Entry_section):
> +    """An entry containing a TI schema validated board config binary
> +
> +    This etype supports generation of two kinds of board configuration
> +    binaries: singular board config binary as well as combined board config
> +    binary.
> +
> +    Properties / Entry arguments:
> +        - config-file: File containing board configuration data in YAML
> +        - schema-file: File containing board configuration YAML schema against
> +          which the config file is validated
> +
> +    Output files:
> +        - board config binary: File containing board configuration binary
> +
> +    These above parameters are used only when the generated binary is
> +    intended to be a single board configuration binary. Example::
> +
> +        my-ti-board-config {
> +            ti-board-config {
> +                config = "board-config.yaml";
> +                schema = "schema.yaml";
> +            };
> +        };
> +
> +    To generate a combined board configuration binary, we pack the
> +    needed individual binaries into a ti-board-config binary. In this case,
> +    the available supported subnode names are board-cfg, pm-cfg, sec-cfg and
> +    rm-cfg. The final binary is prepended with a header containing details about
> +    the included board config binaries. Example::
> +
> +        my-combined-ti-board-config {
> +            ti-board-config {
> +                board-cfg {
> +                    config = "board-cfg.yaml";
> +                    schema = "schema.yaml";
> +                };
> +                sec-cfg {
> +                    config = "sec-cfg.yaml";
> +                    schema = "schema.yaml";
> +                };
> +            }
> +        }
> +    """
> +    def __init__(self, section, etype, node):
> +        super().__init__(section, etype, node)
> +        self._config = None
> +        self._schema = None
> +        self._entries = OrderedDict()
> +        self._num_elems = BOARDCFG_NUM_ELEMS
> +        self._fmt = '<HHHBB'
> +        self._index = 0
> +        self._binary_offset = 0
> +        self._sw_rev = 1
> +        self._devgrp = 0
> +
> +    def ReadNode(self):
> +        super().ReadNode()
> +        self._config = fdt_util.GetString(self._node, 'config')
> +        self._schema = fdt_util.GetString(self._node, 'schema')
> +        # Depending on whether config file is present in node, we determine
> +        # whether it is a combined board config binary or not
> +        if self._config is None:
> +            self.ReadEntries()
> +        else:
> +            self._config_file = tools.get_input_filename(self._config)
> +            self._schema_file = tools.get_input_filename(self._schema)
> +
> +    def ReadEntries(self):
> +        """Read the subnodes to find out what should go in this image
> +        """
> +        for node in self._node.subnodes:
> +            if 'type' not in node.props:
> +                entry = Entry.Create(self, node, 'ti-board-config')
> +                entry.ReadNode()
> +                cfg_data = entry.BuildSectionData(True)
> +                entry._cfg_data = cfg_data
> +                self._entries[entry.name] = entry
> +        self._num_elems = len(self._node.subnodes)
> +
> +    def _convert_to_byte_chunk(self, val, data_type):
> +        """Convert value into byte array
> +
> +        Args:
> +            val: value to convert into byte array
> +            data_type: data type used in schema, supported data types are u8,
> +                u16 and u32
> +
> +        Returns:
> +            array of bytes representing value
> +        """
> +        size = 0
> +        if (data_type == '#/definitions/u8'):
> +            size = 1
> +        elif (data_type == '#/definitions/u16'):
> +            size = 2
> +        else:
> +            size = 4
> +        if type(val) == int:
> +            br = val.to_bytes(size, byteorder='little')
> +        return br
> +
> +    def _compile_yaml(self, schema_yaml, file_yaml):
> +        """Convert YAML file into byte array based on YAML schema
> +
> +        Args:
> +            schema_yaml: file containing YAML schema
> +            file_yaml: file containing config to compile
> +
> +        Returns:
> +            array of bytes repesenting YAML file against YAML schema
> +        """
> +        br = bytearray()
> +        for key, node in file_yaml.items():
> +            node_schema = schema_yaml['properties'][key]
> +            node_type = node_schema.get('type')
> +            if not 'type' in node_schema:
> +                br += self._convert_to_byte_chunk(node,
> +                                                node_schema.get('$ref'))
> +            elif node_type == 'object':
> +                br += self._compile_yaml(node_schema, node)
> +            elif node_type == 'array':
> +                for item in node:
> +                    if not isinstance(item, dict):
> +                        br += self._convert_to_byte_chunk(
> +                            item, schema_yaml['properties'][key]['items']['$ref'])
> +                    else:
> +                        br += self._compile_yaml(node_schema.get('items'), item)
> +        return br
> +
> +    def _generate_binaries(self):
> +        """Generate config binary artifacts from the loaded YAML configuration file
> +
> +        Returns:
> +            byte array containing config binary artifacts
> +            or None if generation fails
> +        """
> +        cfg_binary = bytearray()
> +        for key, node in self.file_yaml.items():
> +            node_schema = self.schema_yaml['properties'][key]
> +            br = self._compile_yaml(node_schema, node)
> +            cfg_binary += br
> +        return cfg_binary
> +
> +    def _add_boardcfg(self, bcfgtype, bcfgdata):
> +        """Add board config to combined board config binary
> +
> +        Args:
> +            bcfgtype (int): board config type
> +            bcfgdata (byte array): board config data
> +        """
> +        size = len(bcfgdata)
> +        desc = struct.pack(self._fmt, bcfgtype,
> +                            self._binary_offset, size, self._devgrp, 0)
> +        with open(self.descfile, 'ab+') as desc_fh:
> +            desc_fh.write(desc)
> +        with open(self.bcfgfile, 'ab+') as bcfg_fh:
> +            bcfg_fh.write(bcfgdata)
> +        self._binary_offset += size
> +        self._index += 1
> +
> +    def _finalize(self):
> +        """Generate final combined board config binary
> +
> +        Returns:
> +            byte array containing combined board config data
> +            or None if unable to generate
> +        """
> +        with open(self.descfile, 'rb') as desc_fh:
> +            with open(self.bcfgfile, 'rb') as bcfg_fh:
> +                with open(self.fh_file, 'ab+') as fh:
> +                    copyfileobj(desc_fh, fh)
> +                    copyfileobj(bcfg_fh, fh)
> +        data = tools.read_file(self.fh_file)
> +        return data
> +
> +    def BuildSectionData(self, required):
> +        if self._config is None:
> +            self._binary_offset = 0
> +            uniq = self.GetUniqueName()
> +            self.fh_file = tools.get_output_filename('fh.%s' % uniq)
> +            self.descfile = tools.get_output_filename('desc.%s' % uniq)
> +            self.bcfgfile = tools.get_output_filename('bcfg.%s' % uniq)
> +
> +            # when binman runs again make sure we start clean
> +            if os.path.exists(self.fh_file):
> +                os.remove(self.fh_file)
> +            if os.path.exists(self.descfile):
> +                os.remove(self.descfile)
> +            if os.path.exists(self.bcfgfile):
> +                os.remove(self.bcfgfile)
> +
> +            with open(self.fh_file, 'wb') as f:
> +                t_bytes = f.write(struct.pack(
> +                    '<BB', self._num_elems, self._sw_rev))
> +            self._binary_offset += t_bytes
> +            self._binary_offset += self._num_elems * struct.calcsize(self._fmt)
> +
> +            if 'board-cfg' in self._entries:
> +                self._add_boardcfg(BOARDCFG, self._entries['board-cfg']._cfg_data)
> +
> +            if 'sec-cfg' in self._entries:
> +                self._add_boardcfg(BOARDCFG_SEC, self._entries['sec-cfg']._cfg_data)
> +
> +            if 'pm-cfg' in self._entries:
> +                self._add_boardcfg(BOARDCFG_PM, self._entries['pm-cfg']._cfg_data)
> +
> +            if 'rm-cfg' in self._entries:
> +                self._add_boardcfg(BOARDCFG_RM, self._entries['rm-cfg']._cfg_data)
> +
> +            data = self._finalize()
> +            return data
> +
> +        else:
> +            with open(self._config_file, 'r') as f:
> +                self.file_yaml = yaml.safe_load(f)
> +            with open(self._schema_file, 'r') as sch:
> +                self.schema_yaml = yaml.safe_load(sch)
> +
> +            try:
> +                validate(self.file_yaml, self.schema_yaml)
> +            except Exception as e:
> +                self.Raise(f"Schema validation error: {e}")
> +
> +            data = self._generate_binaries()
> +            return data
> +
> +    def SetImagePos(self, image_pos):
> +        Entry.SetImagePos(self, image_pos)
> +
> +    def CheckEntries(self):
> +        Entry.CheckEntries(self)
> diff --git a/tools/binman/ftest.py b/tools/binman/ftest.py
> index 43b4f850a6..b9a490a5bd 100644
> --- a/tools/binman/ftest.py
> +++ b/tools/binman/ftest.py
> @@ -97,6 +97,7 @@ ENV_DATA              = b'var1=1\nvar2="2"'
>  PRE_LOAD_MAGIC        = b'UBSH'
>  PRE_LOAD_VERSION      = 0x11223344.to_bytes(4, 'big')
>  PRE_LOAD_HDR_SIZE     = 0x00001000.to_bytes(4, 'big')
> +TI_BOARD_CONFIG_DATA  = b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
>  
>  # Subdirectory of the input dir to use to put test FDTs
>  TEST_FDT_SUBDIR       = 'fdts'
> @@ -199,6 +200,9 @@ class TestFunctional(unittest.TestCase):
>          shutil.copytree(cls.TestFile('files'),
>                          os.path.join(cls._indir, 'files'))
>  
> +        shutil.copytree(cls.TestFile('yaml'),
> +                        os.path.join(cls._indir, 'yaml'))
> +
>          TestFunctional._MakeInputFile('compress', COMPRESS_DATA)
>          TestFunctional._MakeInputFile('compress_big', COMPRESS_DATA_BIG)
>          TestFunctional._MakeInputFile('bl31.bin', ATF_BL31_DATA)
> @@ -6676,6 +6680,22 @@ fdt         fdtmap                Extract the devicetree blob from the fdtmap
>                                  ['fit'])
>          self.assertIn("Node '/fit': Missing tool: 'mkimage'", str(e.exception))
>  
> +    def testTIBoardConfig(self):
> +        """Test that a schema validated board config file can be generated"""
> +        data = self._DoReadFile('277_ti_board_cfg.dts')
> +        self.assertEqual(TI_BOARD_CONFIG_DATA, data)
> +
> +    def testTIBoardConfigCombined(self):
> +        """Test that a schema validated combined board config file can be generated"""
> +        data = self._DoReadFile('278_ti_board_cfg_combined.dts')
> +        configlen_noheader = TI_BOARD_CONFIG_DATA * 4
> +        self.assertGreater(data, configlen_noheader)
> +
> +    def testTIBoardConfigNoDataType(self):
> +        """Test that error is thrown when data type is not supported"""
> +        with self.assertRaises(ValueError) as e:
> +            data = self._DoReadFile('279_ti_board_cfg_no_type.dts')
> +        self.assertIn("Schema validation error", str(e.exception))
>  
>  if __name__ == "__main__":
>      unittest.main()
> diff --git a/tools/binman/test/277_ti_board_cfg.dts b/tools/binman/test/277_ti_board_cfg.dts
> new file mode 100644
> index 0000000000..cda024c1b8
> --- /dev/null
> +++ b/tools/binman/test/277_ti_board_cfg.dts
> @@ -0,0 +1,14 @@
> +// SPDX-License-Identifier: GPL-2.0+
> +/dts-v1/;
> +
> +/ {
> +	#address-cells = <1>;
> +	#size-cells = <1>;
> +
> +	binman {
> +		ti-board-config {
> +			config = "yaml/config.yaml";
> +			schema = "yaml/schema.yaml";
> +		};
> +	};
> +};
> diff --git a/tools/binman/test/278_ti_board_cfg_combined.dts b/tools/binman/test/278_ti_board_cfg_combined.dts
> new file mode 100644
> index 0000000000..95ef449cbf
> --- /dev/null
> +++ b/tools/binman/test/278_ti_board_cfg_combined.dts
> @@ -0,0 +1,25 @@
> +// SPDX-License-Identifier: GPL-2.0+
> +/dts-v1/;
> +
> +/ {
> +	binman {
> +		ti-board-config {
> +			board-cfg {
> +				config = "yaml/config.yaml";
> +				schema = "yaml/schema.yaml";
> +			};
> +			sec-cfg {
> +				config = "yaml/config.yaml";
> +				schema = "yaml/schema.yaml";
> +			};
> +			rm-cfg {
> +				config = "yaml/config.yaml";
> +				schema = "yaml/schema.yaml";
> +			};
> +			pm-cfg {
> +				config = "yaml/config.yaml";
> +				schema = "yaml/schema.yaml";
> +			};
> +		};
> +	};
> +};
> diff --git a/tools/binman/test/279_ti_board_cfg_no_type.dts b/tools/binman/test/279_ti_board_cfg_no_type.dts
> new file mode 100644
> index 0000000000..584b7acc5a
> --- /dev/null
> +++ b/tools/binman/test/279_ti_board_cfg_no_type.dts
> @@ -0,0 +1,11 @@
> +// SPDX-License-Identifier: GPL-2.0+
> +/dts-v1/;
> +
> +/ {
> +	binman {
> +		ti-board-config {
> +			config = "yaml/config.yaml";
> +			schema = "yaml/schema_notype.yaml";
> +		};
> +	};
> +};
> diff --git a/tools/binman/test/yaml/config.yaml b/tools/binman/test/yaml/config.yaml
> new file mode 100644
> index 0000000000..79fd67c7f4
> --- /dev/null
> +++ b/tools/binman/test/yaml/config.yaml
> @@ -0,0 +1,19 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +#
> +# Test config
> +#
> +---
> +
> +main-branch:
> +  obj:
> +    a: 0x0
> +    b: 0
> +  arr: [0, 0, 0, 0]
> +  another-arr:
> +    - #1
> +      c: 0
> +      d: 0
> +    - #2
> +      c: 0
> +      d: 0
> diff --git a/tools/binman/test/yaml/schema.yaml b/tools/binman/test/yaml/schema.yaml
> new file mode 100644
> index 0000000000..60bf56f671
> --- /dev/null
> +++ b/tools/binman/test/yaml/schema.yaml
> @@ -0,0 +1,51 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +#
> +# Test schema
> +#
> +---
> +
> +definitions:
> +    u8:
> +        type: integer
> +        minimum: 0
> +        maximum: 0xff
> +    u16:
> +        type: integer
> +        minimum: 0
> +        maximum: 0xffff
> +    u32:
> +        type: integer
> +        minimum: 0
> +        maximum: 0xffffffff
> +
> +type: object
> +properties:
> +    main-branch:
> +        type: object
> +        properties:
> +            obj:
> +                type: object
> +                properties:
> +                    a:
> +                        $ref: "#/definitions/u32"
> +                    b:
> +                        $ref: "#/definitions/u16"
> +            arr:
> +                type: array
> +                minItems: 4
> +                maxItems: 4
> +                items:
> +                    $ref: "#/definitions/u8"
> +            another-arr:
> +                type: array
> +                minItems: 2
> +                maxItems: 2
> +                items:
> +                    type: object
> +                    properties:
> +                        c:
> +                            $ref: "#/definitions/u8"
> +                        d:
> +                            $ref: "#/definitions/u8"
> +
> diff --git a/tools/binman/test/yaml/schema_notype.yaml b/tools/binman/test/yaml/schema_notype.yaml
> new file mode 100644
> index 0000000000..d45d6cdf7e
> --- /dev/null
> +++ b/tools/binman/test/yaml/schema_notype.yaml
> @@ -0,0 +1,40 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +#
> +# Test schema
> +#
> +---
> +
> +definitions:
> +    u8:
> +        type: integer
> +        minimum: 0
> +        maximum: 0xff
> +    u16:
> +        type: integer
> +        minimum: 0
> +        maximum: 0xffff
> +    u32:
> +        type: integer
> +        minimum: 0
> +        maximum: 0xffffffff
> +
> +type: object
> +properties:
> +    main-branch:
> +        type: object
> +        properties:
> +            obj:
> +                type: object
> +                properties:
> +                    a:
> +                        $ref: "#/definitions/u4"
> +                    b:
> +                        $ref: "#/definitions/u16"
> +            arr:
> +                type: array
> +                minItems: 4
> +                maxItems: 4
> +                items:
> +                    $ref: "#/definitions/u8"
> +

...
Applying: binman: ti-board-config: Add support for TI board config binaries
.git/rebase-apply/patch:538: new blank line at EOF.
+
.git/rebase-apply/patch:584: new blank line at EOF.
+
warning: 2 lines add whitespace errors.

Jan

-- 
Siemens AG, Technology
Competence Center Embedded Linux


^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: [PATCH v5 04/23] j721e: schema: yaml: Add general schema and J721E board config files
  2023-07-07 12:34 ` [PATCH v5 04/23] j721e: schema: yaml: Add general schema and J721E board config files Neha Malcom Francis
@ 2023-07-11  4:52   ` Jan Kiszka
  2023-07-11  4:53     ` Neha Malcom Francis
  0 siblings, 1 reply; 42+ messages in thread
From: Jan Kiszka @ 2023-07-11  4:52 UTC (permalink / raw)
  To: Neha Malcom Francis, u-boot, trini, sjg, afd, vigneshr, rogerq,
	kamlesh, bb, alpernebiyasak
  Cc: nm, u-kumar1, m-chawdhry, christian.gmeiner, xypron.glpk

On 07.07.23 14:34, Neha Malcom Francis wrote:
> Schema file in YAML must be provided in board/ti/common for validating
> input config files and packaging system firmware. The schema includes
> entries for rm-cfg, board-cfg, pm-cfg and sec-cfg.
> 
> Board config files must be provided in board/ti/<devicename> in YAML.
> These can then be consumed for generation of binaries to package system
> firmware. Added YAML configs for J721E in particular.
> 
> Signed-off-by: Tarun Sahu <t-sahu@ti.com>
> [n-francis@ti.com: prepared patch for upstreaming]
> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
> ---
>  board/ti/common/schema.yaml   |  436 +++++
>  board/ti/j721e/board-cfg.yaml |   37 +
>  board/ti/j721e/pm-cfg.yaml    |   13 +
>  board/ti/j721e/rm-cfg.yaml    | 3174 +++++++++++++++++++++++++++++++++
>  board/ti/j721e/sec-cfg.yaml   |  381 ++++
>  5 files changed, 4041 insertions(+)
>  create mode 100644 board/ti/common/schema.yaml
>  create mode 100644 board/ti/j721e/board-cfg.yaml
>  create mode 100644 board/ti/j721e/pm-cfg.yaml
>  create mode 100644 board/ti/j721e/rm-cfg.yaml
>  create mode 100644 board/ti/j721e/sec-cfg.yaml
> 
> diff --git a/board/ti/common/schema.yaml b/board/ti/common/schema.yaml
> new file mode 100644
> index 0000000000..8023ecb0e0
> --- /dev/null
> +++ b/board/ti/common/schema.yaml
> @@ -0,0 +1,436 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +#
> +# Config schema for TI K3 devices
> +#
> +
> +---
> +
> +definitions:
> +    u8:
> +        type: integer
> +        minimum: 0
> +        maximum: 0xff
> +    u16:
> +        type: integer
> +        minimum: 0
> +        maximum: 0xffff
> +    u32:
> +        type: integer
> +        minimum: 0
> +        maximum: 0xffffffff
> +
> +
> +
> +type: object
> +properties:
> +    pm-cfg:
> +        type: object
> +        properties:
> +            rev:
> +                type: object
> +                properties:
> +                    boardcfg_abi_maj:
> +                        $ref: "#/definitions/u8"
> +                    boardcfg_abi_min:
> +                        $ref: "#/definitions/u8"
> +    board-cfg:
> +        type: object
> +        properties:
> +            rev:
> +                type: object
> +                properties:
> +                    boardcfg_abi_maj:
> +                        $ref: "#/definitions/u8"
> +                    boardcfg_abi_min:
> +                        $ref: "#/definitions/u8"
> +            control:
> +                type: object
> +                properties:
> +                    subhdr:
> +                        type: object
> +                        properties:
> +                            magic:
> +                                $ref: "#/definitions/u16"
> +                            size:
> +                                $ref: "#/definitions/u16"
> +                    main_isolation_enable:
> +                        $ref: "#/definitions/u8"
> +                    main_isolation_hostid:
> +                        $ref: "#/definitions/u16"
> +
> +
> +            secproxy:
> +                type: object
> +                properties:
> +                    subhdr:
> +                        type: object
> +                        properties:
> +                            magic:
> +                                $ref: "#/definitions/u16"
> +                            size:
> +                                $ref: "#/definitions/u16"
> +                    scaling_factor:
> +                        $ref: "#/definitions/u8"
> +                    scaling_profile:
> +                        $ref: "#/definitions/u8"
> +                    disable_main_nav_secure_proxy:
> +                        $ref: "#/definitions/u8"
> +
> +            msmc:
> +                type: object
> +                properties:
> +                    subhdr:
> +                        type: object
> +                        properties:
> +                            magic:
> +                                $ref: "#/definitions/u16"
> +                            size:
> +                                $ref: "#/definitions/u16"
> +                    msmc_cache_size:
> +                        $ref: "#/definitions/u8"
> +            debug_cfg:
> +                type: object
> +                properties:
> +                    subhdr:
> +                        type: object
> +                        properties:
> +                            magic:
> +                                $ref: "#/definitions/u16"
> +                            size:
> +                                $ref: "#/definitions/u16"
> +                    trace_dst_enables:
> +                        $ref: "#/definitions/u16"
> +                    trace_src_enables:
> +                        $ref: "#/definitions/u16"
> +
> +    sec-cfg:
> +        type: object
> +        properties:
> +            rev:
> +                type: object
> +                properties:
> +                    boardcfg_abi_maj:
> +                        $ref: "#/definitions/u8"
> +                    boardcfg_abi_min:
> +                        $ref: "#/definitions/u8"
> +
> +            processor_acl_list:
> +                type: object
> +                properties:
> +                    subhdr:
> +                        type: object
> +                        properties:
> +                            magic:
> +                                $ref: "#/definitions/u16"
> +                            size:
> +                                $ref: "#/definitions/u16"
> +                    proc_acl_entries:
> +                        type: array
> +                        minItems: 32
> +                        maxItems: 32
> +                        items:
> +                            type: object
> +                            properties:
> +                                processor_id:
> +                                    $ref: "#/definitions/u8"
> +                                proc_access_master:
> +                                    $ref: "#/definitions/u8"
> +                                proc_access_secondary:
> +                                    type: array
> +                                    minItems: 3
> +                                    maxItems: 3
> +                                    items:
> +                                        $ref: "#/definitions/u8"
> +            host_hierarchy:
> +                type: object
> +                properties:
> +                    subhdr:
> +                        type: object
> +                        properties:
> +                            magic:
> +                                $ref: "#/definitions/u16"
> +                            size:
> +                                $ref: "#/definitions/u16"
> +                    host_hierarchy_entries:
> +                        type: array
> +                        minItems: 32
> +                        maxItems: 32
> +                        items:
> +                            type: object
> +                            properties:
> +                                host_id:
> +                                    $ref: "#/definitions/u8"
> +                                supervisor_host_id:
> +                                    $ref: "#/definitions/u8"
> +
> +            otp_config:
> +                type: object
> +                properties:
> +                    subhdr:
> +                        type: object
> +                        properties:
> +                            magic:
> +                                $ref: "#/definitions/u16"
> +                            size:
> +                                $ref: "#/definitions/u16"
> +                    otp_entry:
> +                        type: array
> +                        minItems: 32
> +                        maxItems: 32
> +                        items:
> +                            type: object
> +                            properties:
> +                                host_id:
> +                                    $ref: "#/definitions/u8"
> +                                host_perms:
> +                                    $ref: "#/definitions/u8"
> +                    write_host_id:
> +                        $ref: "#/definitions/u8"
> +
> +            dkek_config:
> +                type: object
> +                properties:
> +                    subhdr:
> +                        type: object
> +                        properties:
> +                            magic:
> +                                $ref: "#/definitions/u16"
> +                            size:
> +                                $ref: "#/definitions/u16"
> +                    allowed_hosts:
> +                        type: array
> +                        minItems: 4
> +                        maxItems: 4
> +                        items:
> +                            $ref: "#/definitions/u8"
> +                    allow_dkek_export_tisci:
> +                        $ref: "#/definitions/u8"
> +                    rsvd:
> +                        type: array
> +                        minItems: 3
> +                        maxItems: 3
> +                        items:
> +                            $ref: "#/definitions/u8"
> +
> +            sa2ul_cfg:
> +                type: object
> +                properties:
> +                    subhdr:
> +                        type: object
> +                        properties:
> +                            magic:
> +                                $ref: "#/definitions/u16"
> +                            size:
> +                                $ref: "#/definitions/u16"
> +                    rsvd:
> +                        type: array
> +                        minItems: 2
> +                        maxItems: 4
> +                        items:
> +                            $ref: "#/definitions/u8"
> +                    enable_saul_psil_global_config_writes:
> +                        $ref: "#/definitions/u8"
> +                    auth_resource_owner:
> +                        $ref: "#/definitions/u8"
> +
> +            sec_dbg_config:
> +                type: object
> +                properties:
> +                    subhdr:
> +                        type: object
> +                        properties:
> +                            magic:
> +                                $ref: "#/definitions/u16"
> +                            size:
> +                                $ref: "#/definitions/u16"
> +                    allow_jtag_unlock:
> +                        $ref: "#/definitions/u8"
> +                    allow_wildcard_unlock:
> +                        $ref: "#/definitions/u8"
> +                    allowed_debug_level_rsvd:
> +                        $ref: "#/definitions/u8"
> +                    rsvd:
> +                        $ref: "#/definitions/u8"
> +                    min_cert_rev:
> +                        $ref: "#/definitions/u32"
> +                    jtag_unlock_hosts:
> +                        type: array
> +                        minItems: 4
> +                        maxItems: 4
> +                        items:
> +                            $ref: "#/definitions/u8"
> +
> +
> +            sec_handover_cfg:
> +                type: object
> +                properties:
> +                    subhdr:
> +                        type: object
> +                        properties:
> +                            magic:
> +                                $ref: "#/definitions/u16"
> +                            size:
> +                                $ref: "#/definitions/u16"
> +                    handover_msg_sender:
> +                        $ref: "#/definitions/u8"
> +                    handover_to_host_id:
> +                        $ref: "#/definitions/u8"
> +                    rsvd:
> +                        type: array
> +                        minItems: 4
> +                        maxItems: 4
> +                        items:
> +                            $ref: "#/definitions/u8"
> +
> +    rm-cfg:
> +        type: object
> +        properties:
> +            rm_boardcfg:
> +                type: object
> +                properties:
> +                    rev:
> +                        type: object
> +                        properties:
> +                            boardcfg_abi_maj:
> +                                $ref: "#/definitions/u8"
> +                            boardcfg_abi_min:
> +                                $ref: "#/definitions/u8"
> +
> +                    host_cfg:
> +                        type: object
> +                        properties:
> +                            subhdr:
> +                                type: object
> +                                properties:
> +                                    magic:
> +                                        $ref: "#/definitions/u16"
> +                                    size:
> +                                        $ref: "#/definitions/u16"
> +                            host_cfg_entries:
> +                                type: array
> +                                minItems: 0
> +                                maxItems: 32
> +                                items:
> +                                    type: object
> +                                    properties:
> +                                        host_id:
> +                                            $ref: "#/definitions/u8"
> +                                        allowed_atype:
> +                                            $ref: "#/definitions/u8"
> +                                        allowed_qos:
> +                                            $ref: "#/definitions/u16"
> +                                        allowed_orderid:
> +                                            $ref: "#/definitions/u32"
> +                                        allowed_priority:
> +                                            $ref: "#/definitions/u16"
> +                                        allowed_sched_priority:
> +                                            $ref: "#/definitions/u8"
> +                    resasg:
> +                        type: object
> +                        properties:
> +                            subhdr:
> +                                type: object
> +                                properties:
> +                                    magic:
> +                                        $ref: "#/definitions/u16"
> +                                    size:
> +                                        $ref: "#/definitions/u16"
> +                            resasg_entries_size:
> +                                        $ref: "#/definitions/u16"
> +                            reserved:
> +                                        $ref: "#/definitions/u16"
> +
> +            resasg_entries:
> +                type: array
> +                minItems: 0
> +                maxItems: 468
> +                items:
> +                    type: object
> +                    properties:
> +                        start_resource:
> +                            $ref: "#/definitions/u16"
> +                        num_resource:
> +                            $ref: "#/definitions/u16"
> +                        type:
> +                            $ref: "#/definitions/u16"
> +                        host_id:
> +                            $ref: "#/definitions/u8"
> +                        reserved:
> +                            $ref: "#/definitions/u8"
> +
> +    tifs-rm-cfg:
> +        type: object
> +        properties:
> +            rm_boardcfg:
> +                type: object
> +                properties:
> +                    rev:
> +                        type: object
> +                        properties:
> +                            boardcfg_abi_maj:
> +                                $ref: "#/definitions/u8"
> +                            boardcfg_abi_min:
> +                                $ref: "#/definitions/u8"
> +
> +                    host_cfg:
> +                        type: object
> +                        properties:
> +                            subhdr:
> +                                type: object
> +                                properties:
> +                                    magic:
> +                                        $ref: "#/definitions/u16"
> +                                    size:
> +                                        $ref: "#/definitions/u16"
> +                            host_cfg_entries:
> +                                type: array
> +                                minItems: 0
> +                                maxItems: 32
> +                                items:
> +                                    type: object
> +                                    properties:
> +                                        host_id:
> +                                            $ref: "#/definitions/u8"
> +                                        allowed_atype:
> +                                            $ref: "#/definitions/u8"
> +                                        allowed_qos:
> +                                            $ref: "#/definitions/u16"
> +                                        allowed_orderid:
> +                                            $ref: "#/definitions/u32"
> +                                        allowed_priority:
> +                                            $ref: "#/definitions/u16"
> +                                        allowed_sched_priority:
> +                                            $ref: "#/definitions/u8"
> +                    resasg:
> +                        type: object
> +                        properties:
> +                            subhdr:
> +                                type: object
> +                                properties:
> +                                    magic:
> +                                        $ref: "#/definitions/u16"
> +                                    size:
> +                                        $ref: "#/definitions/u16"
> +                            resasg_entries_size:
> +                                        $ref: "#/definitions/u16"
> +                            reserved:
> +                                        $ref: "#/definitions/u16"
> +
> +            resasg_entries:
> +                type: array
> +                minItems: 0
> +                maxItems: 468
> +                items:
> +                    type: object
> +                    properties:
> +                        start_resource:
> +                            $ref: "#/definitions/u16"
> +                        num_resource:
> +                            $ref: "#/definitions/u16"
> +                        type:
> +                            $ref: "#/definitions/u16"
> +                        host_id:
> +                            $ref: "#/definitions/u8"
> +                        reserved:
> +                            $ref: "#/definitions/u8"
> diff --git a/board/ti/j721e/board-cfg.yaml b/board/ti/j721e/board-cfg.yaml
> new file mode 100644
> index 0000000000..9f5e00b3dc
> --- /dev/null
> +++ b/board/ti/j721e/board-cfg.yaml
> @@ -0,0 +1,37 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +#
> +# Board configuration for J721E
> +#
> +
> +---
> +
> +board-cfg:
> +        rev:
> +                boardcfg_abi_maj: 0x0
> +                boardcfg_abi_min: 0x1
> +        control:
> +                subhdr:
> +                        magic: 0xC1D3
> +                        size: 7
> +                main_isolation_enable: 0x5A
> +                main_isolation_hostid: 0x2
> +        secproxy:
> +                subhdr:
> +                        magic: 0x1207
> +                        size: 7
> +                scaling_factor: 0x1
> +                scaling_profile: 0x1
> +                disable_main_nav_secure_proxy: 0
> +        msmc:
> +                subhdr:
> +                        magic: 0xA5C3
> +                        size: 5
> +                msmc_cache_size: 0x0
> +        debug_cfg:
> +                subhdr:
> +                        magic: 0x020C
> +                        size: 8
> +                trace_dst_enables: 0x00
> +                trace_src_enables: 0x00
> +
> diff --git a/board/ti/j721e/pm-cfg.yaml b/board/ti/j721e/pm-cfg.yaml
> new file mode 100644
> index 0000000000..40a8dfb7af
> --- /dev/null
> +++ b/board/ti/j721e/pm-cfg.yaml
> @@ -0,0 +1,13 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +#
> +# Power management configuration for J721E
> +#
> +
> +---
> +
> +pm-cfg:
> +        rev:
> +                boardcfg_abi_maj: 0x0
> +                boardcfg_abi_min: 0x1
> +
> diff --git a/board/ti/j721e/rm-cfg.yaml b/board/ti/j721e/rm-cfg.yaml
> new file mode 100644
> index 0000000000..39d276d9d5
> --- /dev/null
> +++ b/board/ti/j721e/rm-cfg.yaml
> @@ -0,0 +1,3174 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +#
> +# Resource management configuration for J721E
> +#
> +
> +---
> +
> +rm-cfg:
> +        rm_boardcfg:
> +                rev:
> +                        boardcfg_abi_maj: 0x0
> +                        boardcfg_abi_min: 0x1
> +                host_cfg:
> +                        subhdr:
> +                                magic: 0x4C41
> +                                size: 356
> +                        host_cfg_entries:
> +                                - #1
> +                                        host_id: 3
> +                                        allowed_atype: 0x2A
> +                                        allowed_qos: 0xAAAA
> +                                        allowed_orderid: 0xAAAAAAAA
> +                                        allowed_priority: 0xAAAA
> +                                        allowed_sched_priority: 0xAA
> +                                - #2
> +                                        host_id: 5
> +                                        allowed_atype: 0x2A
> +                                        allowed_qos: 0xAAAA
> +                                        allowed_orderid: 0xAAAAAAAA
> +                                        allowed_priority: 0xAAAA
> +                                        allowed_sched_priority: 0xAA
> +                                - #3
> +                                        host_id: 12
> +                                        allowed_atype: 0x2A
> +                                        allowed_qos: 0xAAAA
> +                                        allowed_orderid: 0xAAAAAAAA
> +                                        allowed_priority: 0xAAAA
> +                                        allowed_sched_priority: 0xAA
> +                                - #4
> +                                        host_id: 13
> +                                        allowed_atype: 0x2A
> +                                        allowed_qos: 0xAAAA
> +                                        allowed_orderid: 0xAAAAAAAA
> +                                        allowed_priority: 0xAAAA
> +                                        allowed_sched_priority: 0xAA
> +                                - #5
> +                                        host_id: 21
> +                                        allowed_atype: 0x2A
> +                                        allowed_qos: 0xAAAA
> +                                        allowed_orderid: 0xAAAAAAAA
> +                                        allowed_priority: 0xAAAA
> +                                        allowed_sched_priority: 0xAA
> +                                - #6
> +                                        host_id: 26
> +                                        allowed_atype: 0x2A
> +                                        allowed_qos: 0xAAAA
> +                                        allowed_orderid: 0xAAAAAAAA
> +                                        allowed_priority: 0xAAAA
> +                                        allowed_sched_priority: 0xAA
> +                                - #7
> +                                        host_id: 28
> +                                        allowed_atype: 0x2A
> +                                        allowed_qos: 0xAAAA
> +                                        allowed_orderid: 0xAAAAAAAA
> +                                        allowed_priority: 0xAAAA
> +                                        allowed_sched_priority: 0xAA
> +                                - #8
> +                                        host_id: 35
> +                                        allowed_atype: 0x2A
> +                                        allowed_qos: 0xAAAA
> +                                        allowed_orderid: 0xAAAAAAAA
> +                                        allowed_priority: 0xAAAA
> +                                        allowed_sched_priority: 0xAA
> +                                - #9
> +                                        host_id: 37
> +                                        allowed_atype: 0x2A
> +                                        allowed_qos: 0xAAAA
> +                                        allowed_orderid: 0xAAAAAAAA
> +                                        allowed_priority: 0xAAAA
> +                                        allowed_sched_priority: 0xAA
> +                                - #10
> +                                        host_id: 40
> +                                        allowed_atype: 0x2A
> +                                        allowed_qos: 0xAAAA
> +                                        allowed_orderid: 0xAAAAAAAA
> +                                        allowed_priority: 0xAAAA
> +                                        allowed_sched_priority: 0xAA
> +                                - #11
> +                                        host_id: 42
> +                                        allowed_atype: 0x2A
> +                                        allowed_qos: 0xAAAA
> +                                        allowed_orderid: 0xAAAAAAAA
> +                                        allowed_priority: 0xAAAA
> +                                        allowed_sched_priority: 0xAA
> +                                - #12
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #13
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #14
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #15
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #16
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #17
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #18
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #19
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #20
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #21
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #22
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #23
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #24
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #25
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #26
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #27
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #28
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #29
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #30
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #31
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                                - #32
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                resasg:
> +                        subhdr:
> +                                magic: 0x7B25
> +                                size: 8
> +                        resasg_entries_size: 3344
> +                        reserved: 0
> +        resasg_entries:
> +                -
> +                        start_resource: 4
> +                        num_resource: 93
> +                        type: 7744
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 4
> +                        num_resource: 93
> +                        type: 7808
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 32
> +                        type: 7872
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 32
> +                        type: 8192
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 32
> +                        num_resource: 32
> +                        type: 8192
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 24
> +                        type: 8320
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 24
> +                        num_resource: 24
> +                        type: 8320
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 8
> +                        type: 8384
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 8
> +                        num_resource: 8
> +                        type: 8384
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 16
> +                        num_resource: 4
> +                        type: 8384
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 20
> +                        num_resource: 4
> +                        type: 8384
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 24
> +                        num_resource: 4
> +                        type: 8384
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 28
> +                        num_resource: 4
> +                        type: 8384
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 32
> +                        num_resource: 4
> +                        type: 8384
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 36
> +                        num_resource: 4
> +                        type: 8384
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 40
> +                        num_resource: 12
> +                        type: 8384
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 52
> +                        num_resource: 12
> +                        type: 8384
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 128
> +                        type: 8576
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 128
> +                        num_resource: 128
> +                        type: 8576
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 128
> +                        type: 8640
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 128
> +                        num_resource: 128
> +                        type: 8640
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 48
> +                        type: 8704
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 8
> +                        type: 8768
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 8
> +                        num_resource: 8
> +                        type: 8768
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 16
> +                        num_resource: 6
> +                        type: 8768
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 22
> +                        num_resource: 6
> +                        type: 8768
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 28
> +                        num_resource: 2
> +                        type: 8768
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 30
> +                        num_resource: 2
> +                        type: 8768
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 64
> +                        type: 13258
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 20480
> +                        num_resource: 1024
> +                        type: 13261
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 64
> +                        type: 13322
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 22528
> +                        num_resource: 1024
> +                        type: 13325
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 38
> +                        num_resource: 86
> +                        type: 13386
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 124
> +                        num_resource: 32
> +                        type: 13386
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 156
> +                        num_resource: 12
> +                        type: 13386
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 168
> +                        num_resource: 12
> +                        type: 13386
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 180
> +                        num_resource: 12
> +                        type: 13386
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 192
> +                        num_resource: 12
> +                        type: 13386
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 204
> +                        num_resource: 12
> +                        type: 13386
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 216
> +                        num_resource: 28
> +                        type: 13386
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 244
> +                        num_resource: 8
> +                        type: 13386
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 252
> +                        num_resource: 4
> +                        type: 13386
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 38
> +                        num_resource: 1024
> +                        type: 13389
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 1062
> +                        num_resource: 512
> +                        type: 13389
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 1574
> +                        num_resource: 32
> +                        type: 13389
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 1606
> +                        num_resource: 32
> +                        type: 13389
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 1638
> +                        num_resource: 256
> +                        type: 13389
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 1894
> +                        num_resource: 256
> +                        type: 13389
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 2150
> +                        num_resource: 256
> +                        type: 13389
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 2406
> +                        num_resource: 256
> +                        type: 13389
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 2662
> +                        num_resource: 256
> +                        type: 13389
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 2918
> +                        num_resource: 512
> +                        type: 13389
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 3430
> +                        num_resource: 256
> +                        type: 13389
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 3686
> +                        num_resource: 922
> +                        type: 13389
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 4
> +                        type: 13440
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 4
> +                        num_resource: 4
> +                        type: 13440
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 8
> +                        num_resource: 4
> +                        type: 13440
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 12
> +                        num_resource: 4
> +                        type: 13440
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 16
> +                        num_resource: 4
> +                        type: 13440
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 20
> +                        num_resource: 4
> +                        type: 13440
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 24
> +                        num_resource: 4
> +                        type: 13440
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 28
> +                        num_resource: 4
> +                        type: 13440
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 32
> +                        num_resource: 4
> +                        type: 13440
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 36
> +                        num_resource: 12
> +                        type: 13440
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 48
> +                        num_resource: 4
> +                        type: 13440
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 52
> +                        num_resource: 12
> +                        type: 13440
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 1
> +                        type: 13504
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 440
> +                        num_resource: 150
> +                        type: 13505
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 590
> +                        num_resource: 40
> +                        type: 13505
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 630
> +                        num_resource: 6
> +                        type: 13505
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 636
> +                        num_resource: 6
> +                        type: 13505
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 642
> +                        num_resource: 10
> +                        type: 13505
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 652
> +                        num_resource: 10
> +                        type: 13505
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 662
> +                        num_resource: 32
> +                        type: 13505
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 694
> +                        num_resource: 38
> +                        type: 13505
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 732
> +                        num_resource: 12
> +                        type: 13505
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 744
> +                        num_resource: 182
> +                        type: 13505
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 926
> +                        num_resource: 40
> +                        type: 13505
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 966
> +                        num_resource: 8
> +                        type: 13505
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 316
> +                        num_resource: 8
> +                        type: 13506
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 324
> +                        num_resource: 2
> +                        type: 13506
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 324
> +                        num_resource: 0
> +                        type: 13506
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 326
> +                        num_resource: 2
> +                        type: 13506
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 328
> +                        num_resource: 2
> +                        type: 13506
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 330
> +                        num_resource: 2
> +                        type: 13506
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 332
> +                        num_resource: 2
> +                        type: 13506
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 334
> +                        num_resource: 8
> +                        type: 13506
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 342
> +                        num_resource: 2
> +                        type: 13506
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 344
> +                        num_resource: 4
> +                        type: 13506
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 348
> +                        num_resource: 1
> +                        type: 13506
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 349
> +                        num_resource: 47
> +                        type: 13506
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 396
> +                        num_resource: 1
> +                        type: 13506
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 397
> +                        num_resource: 4
> +                        type: 13506
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 401
> +                        num_resource: 4
> +                        type: 13506
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 405
> +                        num_resource: 4
> +                        type: 13506
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 409
> +                        num_resource: 8
> +                        type: 13506
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 417
> +                        num_resource: 6
> +                        type: 13506
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 423
> +                        num_resource: 16
> +                        type: 13506
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 439
> +                        num_resource: 1
> +                        type: 13506
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 16
> +                        num_resource: 8
> +                        type: 13507
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 24
> +                        num_resource: 2
> +                        type: 13507
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 24
> +                        num_resource: 0
> +                        type: 13507
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 26
> +                        num_resource: 2
> +                        type: 13507
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 28
> +                        num_resource: 2
> +                        type: 13507
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 30
> +                        num_resource: 2
> +                        type: 13507
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 32
> +                        num_resource: 2
> +                        type: 13507
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 34
> +                        num_resource: 8
> +                        type: 13507
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 42
> +                        num_resource: 2
> +                        type: 13507
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 44
> +                        num_resource: 4
> +                        type: 13507
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 48
> +                        num_resource: 1
> +                        type: 13507
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 49
> +                        num_resource: 47
> +                        type: 13507
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 96
> +                        num_resource: 1
> +                        type: 13507
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 97
> +                        num_resource: 4
> +                        type: 13507
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 101
> +                        num_resource: 4
> +                        type: 13507
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 105
> +                        num_resource: 4
> +                        type: 13507
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 109
> +                        num_resource: 8
> +                        type: 13507
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 117
> +                        num_resource: 6
> +                        type: 13507
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 123
> +                        num_resource: 10
> +                        type: 13507
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 133
> +                        num_resource: 6
> +                        type: 13507
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 139
> +                        num_resource: 1
> +                        type: 13507
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 140
> +                        num_resource: 16
> +                        type: 13508
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 156
> +                        num_resource: 6
> +                        type: 13508
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 162
> +                        num_resource: 6
> +                        type: 13508
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 168
> +                        num_resource: 2
> +                        type: 13508
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 170
> +                        num_resource: 2
> +                        type: 13508
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 172
> +                        num_resource: 96
> +                        type: 13508
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 268
> +                        num_resource: 32
> +                        type: 13508
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 304
> +                        num_resource: 0
> +                        type: 13509
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 304
> +                        num_resource: 4
> +                        type: 13509
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 304
> +                        num_resource: 0
> +                        type: 13509
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 308
> +                        num_resource: 6
> +                        type: 13509
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 314
> +                        num_resource: 2
> +                        type: 13509
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 300
> +                        num_resource: 0
> +                        type: 13510
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 300
> +                        num_resource: 2
> +                        type: 13510
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 300
> +                        num_resource: 0
> +                        type: 13510
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 302
> +                        num_resource: 2
> +                        type: 13510
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 4
> +                        num_resource: 0
> +                        type: 13511
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 4
> +                        num_resource: 4
> +                        type: 13511
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 4
> +                        num_resource: 0
> +                        type: 13511
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 8
> +                        num_resource: 6
> +                        type: 13511
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 14
> +                        num_resource: 2
> +                        type: 13511
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 0
> +                        type: 13512
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 2
> +                        type: 13512
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 0
> +                        type: 13512
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 2
> +                        num_resource: 2
> +                        type: 13512
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 2
> +                        num_resource: 5
> +                        type: 13514
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 7
> +                        num_resource: 1
> +                        type: 13514
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 3
> +                        type: 13515
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 3
> +                        num_resource: 2
> +                        type: 13515
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 5
> +                        num_resource: 1
> +                        type: 13515
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 6
> +                        num_resource: 1
> +                        type: 13515
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 7
> +                        num_resource: 3
> +                        type: 13515
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 10
> +                        num_resource: 3
> +                        type: 13515
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 13
> +                        num_resource: 3
> +                        type: 13515
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 16
> +                        num_resource: 3
> +                        type: 13515
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 19
> +                        num_resource: 3
> +                        type: 13515
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 22
> +                        num_resource: 6
> +                        type: 13515
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 28
> +                        num_resource: 3
> +                        type: 13515
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 31
> +                        num_resource: 1
> +                        type: 13515
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 140
> +                        num_resource: 16
> +                        type: 13568
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 156
> +                        num_resource: 16
> +                        type: 13568
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 172
> +                        num_resource: 128
> +                        type: 13568
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 1
> +                        type: 13569
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 49152
> +                        num_resource: 1024
> +                        type: 13570
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 1
> +                        type: 13571
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 16
> +                        num_resource: 8
> +                        type: 13578
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 24
> +                        num_resource: 2
> +                        type: 13578
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 24
> +                        num_resource: 0
> +                        type: 13578
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 26
> +                        num_resource: 2
> +                        type: 13578
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 28
> +                        num_resource: 2
> +                        type: 13578
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 30
> +                        num_resource: 2
> +                        type: 13578
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 32
> +                        num_resource: 2
> +                        type: 13578
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 34
> +                        num_resource: 8
> +                        type: 13578
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 42
> +                        num_resource: 2
> +                        type: 13578
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 44
> +                        num_resource: 4
> +                        type: 13578
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 48
> +                        num_resource: 1
> +                        type: 13578
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 49
> +                        num_resource: 47
> +                        type: 13578
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 96
> +                        num_resource: 1
> +                        type: 13578
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 97
> +                        num_resource: 4
> +                        type: 13578
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 101
> +                        num_resource: 4
> +                        type: 13578
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 105
> +                        num_resource: 4
> +                        type: 13578
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 109
> +                        num_resource: 8
> +                        type: 13578
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 117
> +                        num_resource: 6
> +                        type: 13578
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 123
> +                        num_resource: 16
> +                        type: 13578
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 139
> +                        num_resource: 1
> +                        type: 13578
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 4
> +                        num_resource: 0
> +                        type: 13579
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 4
> +                        num_resource: 4
> +                        type: 13579
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 4
> +                        num_resource: 0
> +                        type: 13579
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 8
> +                        num_resource: 6
> +                        type: 13579
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 14
> +                        num_resource: 2
> +                        type: 13579
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 0
> +                        type: 13580
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 2
> +                        type: 13580
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 0
> +                        type: 13580
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 2
> +                        num_resource: 2
> +                        type: 13580
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 16
> +                        num_resource: 8
> +                        type: 13581
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 24
> +                        num_resource: 2
> +                        type: 13581
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 24
> +                        num_resource: 0
> +                        type: 13581
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 26
> +                        num_resource: 2
> +                        type: 13581
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 28
> +                        num_resource: 2
> +                        type: 13581
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 30
> +                        num_resource: 2
> +                        type: 13581
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 32
> +                        num_resource: 2
> +                        type: 13581
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 34
> +                        num_resource: 8
> +                        type: 13581
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 42
> +                        num_resource: 2
> +                        type: 13581
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 44
> +                        num_resource: 4
> +                        type: 13581
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 48
> +                        num_resource: 1
> +                        type: 13581
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 49
> +                        num_resource: 47
> +                        type: 13581
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 96
> +                        num_resource: 1
> +                        type: 13581
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 97
> +                        num_resource: 4
> +                        type: 13581
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 101
> +                        num_resource: 4
> +                        type: 13581
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 105
> +                        num_resource: 4
> +                        type: 13581
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 109
> +                        num_resource: 8
> +                        type: 13581
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 117
> +                        num_resource: 6
> +                        type: 13581
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 123
> +                        num_resource: 10
> +                        type: 13581
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 133
> +                        num_resource: 6
> +                        type: 13581
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 139
> +                        num_resource: 1
> +                        type: 13581
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 140
> +                        num_resource: 16
> +                        type: 13582
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 156
> +                        num_resource: 6
> +                        type: 13582
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 162
> +                        num_resource: 6
> +                        type: 13582
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 168
> +                        num_resource: 2
> +                        type: 13582
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 170
> +                        num_resource: 2
> +                        type: 13582
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 172
> +                        num_resource: 96
> +                        type: 13582
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 268
> +                        num_resource: 32
> +                        type: 13582
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 4
> +                        num_resource: 0
> +                        type: 13583
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 4
> +                        num_resource: 4
> +                        type: 13583
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 4
> +                        num_resource: 0
> +                        type: 13583
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 8
> +                        num_resource: 6
> +                        type: 13583
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 14
> +                        num_resource: 2
> +                        type: 13583
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 0
> +                        type: 13584
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 2
> +                        type: 13584
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 0
> +                        type: 13584
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 2
> +                        num_resource: 2
> +                        type: 13584
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 10
> +                        num_resource: 100
> +                        type: 13632
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 110
> +                        num_resource: 32
> +                        type: 13632
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 142
> +                        num_resource: 46
> +                        type: 13632
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 196
> +                        num_resource: 28
> +                        type: 13632
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 228
> +                        num_resource: 28
> +                        type: 13632
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 260
> +                        num_resource: 28
> +                        type: 13632
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 292
> +                        num_resource: 28
> +                        type: 13632
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 320
> +                        num_resource: 24
> +                        type: 13632
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 352
> +                        num_resource: 24
> +                        type: 13632
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 400
> +                        num_resource: 4
> +                        type: 13632
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 404
> +                        num_resource: 4
> +                        type: 13632
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 16
> +                        num_resource: 32
> +                        type: 14922
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 48
> +                        num_resource: 16
> +                        type: 14922
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 64
> +                        num_resource: 64
> +                        type: 14922
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 128
> +                        num_resource: 4
> +                        type: 14922
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 132
> +                        num_resource: 16
> +                        type: 14922
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 148
> +                        num_resource: 16
> +                        type: 14922
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 164
> +                        num_resource: 8
> +                        type: 14922
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 172
> +                        num_resource: 8
> +                        type: 14922
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 180
> +                        num_resource: 8
> +                        type: 14922
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 188
> +                        num_resource: 24
> +                        type: 14922
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 212
> +                        num_resource: 8
> +                        type: 14922
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 220
> +                        num_resource: 36
> +                        type: 14922
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 16400
> +                        num_resource: 128
> +                        type: 14925
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 16528
> +                        num_resource: 128
> +                        type: 14925
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 16656
> +                        num_resource: 256
> +                        type: 14925
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 16912
> +                        num_resource: 64
> +                        type: 14925
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 16976
> +                        num_resource: 128
> +                        type: 14925
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 17104
> +                        num_resource: 128
> +                        type: 14925
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 17232
> +                        num_resource: 64
> +                        type: 14925
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 17296
> +                        num_resource: 64
> +                        type: 14925
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 17360
> +                        num_resource: 64
> +                        type: 14925
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 17424
> +                        num_resource: 128
> +                        type: 14925
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 17552
> +                        num_resource: 128
> +                        type: 14925
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 17680
> +                        num_resource: 240
> +                        type: 14925
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 1
> +                        num_resource: 4
> +                        type: 14976
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 5
> +                        num_resource: 4
> +                        type: 14976
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 9
> +                        num_resource: 4
> +                        type: 14976
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 13
> +                        num_resource: 4
> +                        type: 14976
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 17
> +                        num_resource: 4
> +                        type: 14976
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 21
> +                        num_resource: 4
> +                        type: 14976
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 25
> +                        num_resource: 4
> +                        type: 14976
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 29
> +                        num_resource: 4
> +                        type: 14976
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 33
> +                        num_resource: 4
> +                        type: 14976
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 37
> +                        num_resource: 16
> +                        type: 14976
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 53
> +                        num_resource: 4
> +                        type: 14976
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 57
> +                        num_resource: 7
> +                        type: 14976
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 1
> +                        type: 15040
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 96
> +                        num_resource: 20
> +                        type: 15041
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 116
> +                        num_resource: 8
> +                        type: 15041
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 124
> +                        num_resource: 32
> +                        type: 15041
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 156
> +                        num_resource: 12
> +                        type: 15041
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 168
> +                        num_resource: 8
> +                        type: 15041
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 176
> +                        num_resource: 8
> +                        type: 15041
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 184
> +                        num_resource: 8
> +                        type: 15041
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 192
> +                        num_resource: 8
> +                        type: 15041
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 200
> +                        num_resource: 8
> +                        type: 15041
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 208
> +                        num_resource: 16
> +                        type: 15041
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 224
> +                        num_resource: 8
> +                        type: 15041
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 232
> +                        num_resource: 20
> +                        type: 15041
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 50
> +                        num_resource: 4
> +                        type: 15042
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 54
> +                        num_resource: 2
> +                        type: 15042
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 54
> +                        num_resource: 0
> +                        type: 15042
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 56
> +                        num_resource: 0
> +                        type: 15042
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 56
> +                        num_resource: 1
> +                        type: 15042
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 57
> +                        num_resource: 1
> +                        type: 15042
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 58
> +                        num_resource: 1
> +                        type: 15042
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 59
> +                        num_resource: 1
> +                        type: 15042
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 60
> +                        num_resource: 1
> +                        type: 15042
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 61
> +                        num_resource: 1
> +                        type: 15042
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 62
> +                        num_resource: 1
> +                        type: 15042
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 63
> +                        num_resource: 9
> +                        type: 15042
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 72
> +                        num_resource: 6
> +                        type: 15042
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 78
> +                        num_resource: 3
> +                        type: 15042
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 81
> +                        num_resource: 2
> +                        type: 15042
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 83
> +                        num_resource: 1
> +                        type: 15042
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 84
> +                        num_resource: 1
> +                        type: 15042
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 85
> +                        num_resource: 1
> +                        type: 15042
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 86
> +                        num_resource: 1
> +                        type: 15042
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 87
> +                        num_resource: 1
> +                        type: 15042
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 88
> +                        num_resource: 2
> +                        type: 15042
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 90
> +                        num_resource: 1
> +                        type: 15042
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 91
> +                        num_resource: 2
> +                        type: 15042
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 2
> +                        num_resource: 4
> +                        type: 15043
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 6
> +                        num_resource: 2
> +                        type: 15043
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 6
> +                        num_resource: 0
> +                        type: 15043
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 8
> +                        num_resource: 0
> +                        type: 15043
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 8
> +                        num_resource: 1
> +                        type: 15043
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 9
> +                        num_resource: 1
> +                        type: 15043
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 10
> +                        num_resource: 1
> +                        type: 15043
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 11
> +                        num_resource: 1
> +                        type: 15043
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 12
> +                        num_resource: 1
> +                        type: 15043
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 13
> +                        num_resource: 1
> +                        type: 15043
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 14
> +                        num_resource: 1
> +                        type: 15043
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 15
> +                        num_resource: 9
> +                        type: 15043
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 24
> +                        num_resource: 6
> +                        type: 15043
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 30
> +                        num_resource: 3
> +                        type: 15043
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 33
> +                        num_resource: 2
> +                        type: 15043
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 35
> +                        num_resource: 1
> +                        type: 15043
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 36
> +                        num_resource: 1
> +                        type: 15043
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 37
> +                        num_resource: 1
> +                        type: 15043
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 38
> +                        num_resource: 1
> +                        type: 15043
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 39
> +                        num_resource: 1
> +                        type: 15043
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 40
> +                        num_resource: 2
> +                        type: 15043
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 42
> +                        num_resource: 1
> +                        type: 15043
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 43
> +                        num_resource: 3
> +                        type: 15043
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 48
> +                        num_resource: 0
> +                        type: 15045
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 48
> +                        num_resource: 2
> +                        type: 15045
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 0
> +                        type: 15047
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 2
> +                        type: 15047
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 2
> +                        num_resource: 5
> +                        type: 15050
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 7
> +                        num_resource: 1
> +                        type: 15050
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 3
> +                        type: 15051
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 3
> +                        num_resource: 2
> +                        type: 15051
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 5
> +                        num_resource: 3
> +                        type: 15051
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 8
> +                        num_resource: 3
> +                        type: 15051
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 11
> +                        num_resource: 3
> +                        type: 15051
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 14
> +                        num_resource: 3
> +                        type: 15051
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 17
> +                        num_resource: 3
> +                        type: 15051
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 20
> +                        num_resource: 3
> +                        type: 15051
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 23
> +                        num_resource: 3
> +                        type: 15051
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 26
> +                        num_resource: 3
> +                        type: 15051
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 29
> +                        num_resource: 3
> +                        type: 15051
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 48
> +                        num_resource: 8
> +                        type: 15104
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 56
> +                        num_resource: 4
> +                        type: 15104
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 60
> +                        num_resource: 8
> +                        type: 15104
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 68
> +                        num_resource: 4
> +                        type: 15104
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 72
> +                        num_resource: 4
> +                        type: 15104
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 76
> +                        num_resource: 4
> +                        type: 15104
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 80
> +                        num_resource: 8
> +                        type: 15104
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 88
> +                        num_resource: 4
> +                        type: 15104
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 92
> +                        num_resource: 4
> +                        type: 15104
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 1
> +                        type: 15105
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 56320
> +                        num_resource: 256
> +                        type: 15106
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 1
> +                        type: 15107
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 2
> +                        num_resource: 4
> +                        type: 15114
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 6
> +                        num_resource: 2
> +                        type: 15114
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 6
> +                        num_resource: 0
> +                        type: 15114
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 8
> +                        num_resource: 0
> +                        type: 15114
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 8
> +                        num_resource: 1
> +                        type: 15114
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 9
> +                        num_resource: 1
> +                        type: 15114
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 10
> +                        num_resource: 1
> +                        type: 15114
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 11
> +                        num_resource: 1
> +                        type: 15114
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 12
> +                        num_resource: 1
> +                        type: 15114
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 13
> +                        num_resource: 1
> +                        type: 15114
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 14
> +                        num_resource: 1
> +                        type: 15114
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 15
> +                        num_resource: 9
> +                        type: 15114
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 24
> +                        num_resource: 6
> +                        type: 15114
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 30
> +                        num_resource: 3
> +                        type: 15114
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 33
> +                        num_resource: 2
> +                        type: 15114
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 35
> +                        num_resource: 1
> +                        type: 15114
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 36
> +                        num_resource: 1
> +                        type: 15114
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 37
> +                        num_resource: 1
> +                        type: 15114
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 38
> +                        num_resource: 1
> +                        type: 15114
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 39
> +                        num_resource: 1
> +                        type: 15114
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 40
> +                        num_resource: 2
> +                        type: 15114
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 42
> +                        num_resource: 1
> +                        type: 15114
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 43
> +                        num_resource: 2
> +                        type: 15114
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 0
> +                        type: 15115
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 2
> +                        type: 15115
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 2
> +                        num_resource: 4
> +                        type: 15117
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 6
> +                        num_resource: 2
> +                        type: 15117
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 6
> +                        num_resource: 0
> +                        type: 15117
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 8
> +                        num_resource: 0
> +                        type: 15117
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 8
> +                        num_resource: 1
> +                        type: 15117
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 9
> +                        num_resource: 1
> +                        type: 15117
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 10
> +                        num_resource: 1
> +                        type: 15117
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 11
> +                        num_resource: 1
> +                        type: 15117
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 12
> +                        num_resource: 1
> +                        type: 15117
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 13
> +                        num_resource: 1
> +                        type: 15117
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 14
> +                        num_resource: 1
> +                        type: 15117
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 15
> +                        num_resource: 9
> +                        type: 15117
> +                        host_id: 12
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 24
> +                        num_resource: 6
> +                        type: 15117
> +                        host_id: 13
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 30
> +                        num_resource: 3
> +                        type: 15117
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 33
> +                        num_resource: 2
> +                        type: 15117
> +                        host_id: 5
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 35
> +                        num_resource: 1
> +                        type: 15117
> +                        host_id: 40
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 36
> +                        num_resource: 1
> +                        type: 15117
> +                        host_id: 42
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 37
> +                        num_resource: 1
> +                        type: 15117
> +                        host_id: 21
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 38
> +                        num_resource: 1
> +                        type: 15117
> +                        host_id: 26
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 39
> +                        num_resource: 1
> +                        type: 15117
> +                        host_id: 28
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 40
> +                        num_resource: 2
> +                        type: 15117
> +                        host_id: 35
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 42
> +                        num_resource: 1
> +                        type: 15117
> +                        host_id: 37
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 43
> +                        num_resource: 3
> +                        type: 15117
> +                        host_id: 128
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 0
> +                        type: 15119
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 0
> +                        num_resource: 2
> +                        type: 15119
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 12
> +                        num_resource: 20
> +                        type: 15168
> +                        host_id: 3
> +                        reserved: 0
> +
> +                -
> +                        start_resource: 36
> +                        num_resource: 28
> +                        type: 15168
> +                        host_id: 5
> +                        reserved: 0
> diff --git a/board/ti/j721e/sec-cfg.yaml b/board/ti/j721e/sec-cfg.yaml
> new file mode 100644
> index 0000000000..dbaae99033
> --- /dev/null
> +++ b/board/ti/j721e/sec-cfg.yaml
> @@ -0,0 +1,381 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +#
> +# Security configuration for J721E
> +#
> +
> +---
> +
> +sec-cfg:
> +        rev:
> +                boardcfg_abi_maj: 0x0
> +                boardcfg_abi_min: 0x1
> +        processor_acl_list:
> +                subhdr:
> +                        magic: 0xF1EA
> +                        size: 164
> +                proc_acl_entries:
> +                        - #1
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #2
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #3
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #4
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #5
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #6
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #7
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #8
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #9
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #10
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #11
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #12
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #13
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #14
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #15
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #16
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #17
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #18
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #19
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #20
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #21
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #22
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #23
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #24
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #25
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #26
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #27
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #28
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #29
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #30
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #31
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #32
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +
> +        host_hierarchy:
> +                subhdr:
> +                        magic: 0x8D27
> +                        size: 68
> +                host_hierarchy_entries:
> +                        - #1
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #2
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #3
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #4
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #5
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #6
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #7
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #8
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #9
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #10
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #11
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #12
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #13
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #14
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #15
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #16
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #17
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #18
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #19
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #20
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #21
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #22
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #23
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #24
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #25
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #26
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #27
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #28
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #29
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #30
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #31
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #32
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +        otp_config:
> +                subhdr:
> +                        magic: 0x4081
> +                        size: 69
> +                otp_entry:
> +                        - #1
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #2
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #3
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #4
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #5
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #6
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #7
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #8
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #9
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #10
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #11
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #12
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #13
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #14
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #15
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #16
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #17
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #18
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #19
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #20
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #21
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #22
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #23
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #24
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #25
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #26
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #27
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #28
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #29
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #30
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #31
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #32
> +                                host_id: 0
> +                                host_perms: 0
> +                write_host_id: 0
> +        dkek_config:
> +                subhdr:
> +                        magic: 0x5170
> +                        size: 12
> +                allowed_hosts: [128, 0, 0, 0]
> +                allow_dkek_export_tisci: 0x5A
> +                rsvd: [0, 0, 0]
> +        sa2ul_cfg:
> +                subhdr:
> +                        magic: 0x23BE
> +                        size: 0
> +                auth_resource_owner: 0
> +                enable_saul_psil_global_config_writes: 0
> +                rsvd: [0, 0]
> +        sec_dbg_config:
> +                subhdr:
> +                        magic: 0x42AF
> +                        size: 16
> +                allow_jtag_unlock: 0x5A
> +                allow_wildcard_unlock: 0x5A
> +                allowed_debug_level_rsvd: 0
> +                rsvd: 0
> +                min_cert_rev: 0x0
> +                jtag_unlock_hosts: [0, 0, 0, 0]
> +        sec_handover_cfg:
> +                subhdr:
> +                        magic: 0x608F
> +                        size: 10
> +                handover_msg_sender: 0
> +                handover_to_host_id: 0
> +                rsvd: [0, 0, 0, 0]
> +

...
Applying: j721e: schema: yaml: Add general schema and J721E board config
files
.git/rebase-apply/patch:498: new blank line at EOF.
+
.git/rebase-apply/patch:517: new blank line at EOF.
+
.git/rebase-apply/patch:4084: new blank line at EOF.
+
warning: 3 lines add whitespace errors.

Jan

-- 
Siemens AG, Technology
Competence Center Embedded Linux


^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: [PATCH v5 10/23] am64x: yaml: Add board configs for AM64x
  2023-07-07 12:34 ` [PATCH v5 10/23] am64x: yaml: Add board configs for AM64x Neha Malcom Francis
@ 2023-07-11  4:53   ` Jan Kiszka
  0 siblings, 0 replies; 42+ messages in thread
From: Jan Kiszka @ 2023-07-11  4:53 UTC (permalink / raw)
  To: Neha Malcom Francis, u-boot, trini, sjg, afd, vigneshr, rogerq,
	kamlesh, bb, alpernebiyasak
  Cc: nm, u-kumar1, m-chawdhry, christian.gmeiner, xypron.glpk

On 07.07.23 14:34, Neha Malcom Francis wrote:
> Added YAML configs for AM64xx
> 
> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
> ---
>  board/ti/am64x/board-cfg.yaml |   37 +
>  board/ti/am64x/pm-cfg.yaml    |   12 +
>  board/ti/am64x/rm-cfg.yaml    | 1400 +++++++++++++++++++++++++++++++++
>  board/ti/am64x/sec-cfg.yaml   |  380 +++++++++
>  4 files changed, 1829 insertions(+)
>  create mode 100644 board/ti/am64x/board-cfg.yaml
>  create mode 100644 board/ti/am64x/pm-cfg.yaml
>  create mode 100644 board/ti/am64x/rm-cfg.yaml
>  create mode 100644 board/ti/am64x/sec-cfg.yaml
> 
> diff --git a/board/ti/am64x/board-cfg.yaml b/board/ti/am64x/board-cfg.yaml
> new file mode 100644
> index 0000000000..f1f7c68d50
> --- /dev/null
> +++ b/board/ti/am64x/board-cfg.yaml
> @@ -0,0 +1,37 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +#
> +# Board configuration for AM64x
> +#
> +
> +---
> +
> +board-cfg:
> +        rev:
> +                boardcfg_abi_maj : 0x0
> +                boardcfg_abi_min : 0x1
> +        control:
> +                subhdr:
> +                        magic: 0xC1D3
> +                        size: 7
> +                main_isolation_enable : 0x5A
> +                main_isolation_hostid : 0x2
> +        secproxy:
> +                subhdr:
> +                        magic: 0x1207
> +                        size: 7
> +                scaling_factor : 0x1
> +                scaling_profile : 0x1
> +                disable_main_nav_secure_proxy : 0
> +        msmc:
> +                subhdr:
> +                        magic: 0xA5C3
> +                        size: 5
> +                msmc_cache_size : 0x0
> +        debug_cfg:
> +                subhdr:
> +                        magic: 0x020C
> +                        size: 8
> +                trace_dst_enables : 0x00
> +                trace_src_enables : 0x00
> +
> diff --git a/board/ti/am64x/pm-cfg.yaml b/board/ti/am64x/pm-cfg.yaml
> new file mode 100644
> index 0000000000..c97495f482
> --- /dev/null
> +++ b/board/ti/am64x/pm-cfg.yaml
> @@ -0,0 +1,12 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +#
> +# Power management configuration for AM64x
> +#
> +
> +---
> +
> +pm-cfg:
> +        rev:
> +                boardcfg_abi_maj : 0x0
> +                boardcfg_abi_min : 0x1
> diff --git a/board/ti/am64x/rm-cfg.yaml b/board/ti/am64x/rm-cfg.yaml
> new file mode 100644
> index 0000000000..1e6b07aef6
> --- /dev/null
> +++ b/board/ti/am64x/rm-cfg.yaml
> @@ -0,0 +1,1400 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +#
> +# Resource management configuration for AM64x
> +#
> +
> +---
> +
> +rm-cfg:
> +        rm_boardcfg:
> +                rev:
> +                        boardcfg_abi_maj : 0x0
> +                        boardcfg_abi_min : 0x1
> +                host_cfg:
> +                        subhdr:
> +                                magic: 0x4C41
> +                                size : 356
> +                        host_cfg_entries:
> +                                - #1
> +                                        host_id: 12
> +                                        allowed_atype : 0x2A
> +                                        allowed_qos : 0xAAAA
> +                                        allowed_orderid : 0xAAAAAAAA
> +                                        allowed_priority : 0xAAAA
> +                                        allowed_sched_priority : 0xAA
> +                                - #2
> +                                        host_id: 30
> +                                        allowed_atype : 0x2A
> +                                        allowed_qos : 0xAAAA
> +                                        allowed_orderid : 0xAAAAAAAA
> +                                        allowed_priority : 0xAAAA
> +                                        allowed_sched_priority : 0xAA
> +                                - #3
> +                                        host_id: 36
> +                                        allowed_atype : 0x2A
> +                                        allowed_qos : 0xAAAA
> +                                        allowed_orderid : 0xAAAAAAAA
> +                                        allowed_priority : 0xAAAA
> +                                        allowed_sched_priority : 0xAA
> +                                - #4
> +                                        host_id: 38
> +                                        allowed_atype : 0x2A
> +                                        allowed_qos : 0xAAAA
> +                                        allowed_orderid : 0xAAAAAAAA
> +                                        allowed_priority : 0xAAAA
> +                                        allowed_sched_priority : 0xAA
> +                                - #5
> +                                        host_id: 41
> +                                        allowed_atype : 0x2A
> +                                        allowed_qos : 0xAAAA
> +                                        allowed_orderid : 0xAAAAAAAA
> +                                        allowed_priority : 0xAAAA
> +                                        allowed_sched_priority : 0xAA
> +                                - #6
> +                                        host_id: 43
> +                                        allowed_atype : 0x2A
> +                                        allowed_qos : 0xAAAA
> +                                        allowed_orderid : 0xAAAAAAAA
> +                                        allowed_priority : 0xAAAA
> +                                        allowed_sched_priority : 0xAA
> +                                - #7
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #8
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #9
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #10
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #11
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #12
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #13
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #14
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #15
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #16
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #17
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #18
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #19
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #20
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #21
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #22
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #23
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #24
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #25
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #26
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #27
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #28
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #29
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #30
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #31
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +
> +                                - #32
> +                                        host_id: 0
> +                                        allowed_atype: 0
> +                                        allowed_qos: 0
> +                                        allowed_orderid: 0
> +                                        allowed_priority: 0
> +                                        allowed_sched_priority: 0
> +                resasg:
> +                        subhdr:
> +                                magic: 0x7B25
> +                                size : 8
> +                        resasg_entries_size: 1288
> +                        reserved : 0
> +        resasg_entries:
> +        -
> +                start_resource: 0
> +                num_resource: 16
> +                type: 64
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 16
> +                num_resource: 4
> +                type: 64
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 16
> +                num_resource: 4
> +                type: 64
> +                host_id: 36
> +                reserved: 0
> +
> +        -
> +                start_resource: 20
> +                num_resource: 4
> +                type: 64
> +                host_id: 38
> +                reserved: 0
> +
> +        -
> +                start_resource: 24
> +                num_resource: 4
> +                type: 64
> +                host_id: 41
> +                reserved: 0
> +
> +        -
> +                start_resource: 28
> +                num_resource: 4
> +                type: 64
> +                host_id: 43
> +                reserved: 0
> +
> +        -
> +                start_resource: 32
> +                num_resource: 8
> +                type: 64
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 12
> +                type: 192
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 12
> +                num_resource: 2
> +                type: 192
> +                host_id: 41
> +                reserved: 0
> +
> +        -
> +                start_resource: 14
> +                num_resource: 2
> +                type: 192
> +                host_id: 43
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 4
> +                type: 320
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 4
> +                num_resource: 4
> +                type: 320
> +                host_id: 30
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 41
> +                type: 384
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 50176
> +                num_resource: 136
> +                type: 1666
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 1
> +                type: 1667
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 12
> +                type: 1677
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 12
> +                num_resource: 6
> +                type: 1677
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 12
> +                num_resource: 6
> +                type: 1677
> +                host_id: 36
> +                reserved: 0
> +
> +        -
> +                start_resource: 18
> +                num_resource: 2
> +                type: 1677
> +                host_id: 38
> +                reserved: 0
> +
> +        -
> +                start_resource: 20
> +                num_resource: 4
> +                type: 1677
> +                host_id: 41
> +                reserved: 0
> +
> +        -
> +                start_resource: 24
> +                num_resource: 2
> +                type: 1677
> +                host_id: 43
> +                reserved: 0
> +
> +        -
> +                start_resource: 26
> +                num_resource: 1
> +                type: 1677
> +                host_id: 30
> +                reserved: 0
> +
> +        -
> +                start_resource: 27
> +                num_resource: 1
> +                type: 1677
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 48
> +                num_resource: 6
> +                type: 1678
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 54
> +                num_resource: 6
> +                type: 1678
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 54
> +                num_resource: 6
> +                type: 1678
> +                host_id: 36
> +                reserved: 0
> +
> +        -
> +                start_resource: 60
> +                num_resource: 2
> +                type: 1678
> +                host_id: 38
> +                reserved: 0
> +
> +        -
> +                start_resource: 62
> +                num_resource: 4
> +                type: 1678
> +                host_id: 41
> +                reserved: 0
> +
> +        -
> +                start_resource: 66
> +                num_resource: 2
> +                type: 1678
> +                host_id: 43
> +                reserved: 0
> +
> +        -
> +                start_resource: 28
> +                num_resource: 6
> +                type: 1679
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 34
> +                num_resource: 6
> +                type: 1679
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 34
> +                num_resource: 6
> +                type: 1679
> +                host_id: 36
> +                reserved: 0
> +
> +        -
> +                start_resource: 40
> +                num_resource: 2
> +                type: 1679
> +                host_id: 38
> +                reserved: 0
> +
> +        -
> +                start_resource: 42
> +                num_resource: 4
> +                type: 1679
> +                host_id: 41
> +                reserved: 0
> +
> +        -
> +                start_resource: 46
> +                num_resource: 2
> +                type: 1679
> +                host_id: 43
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 12
> +                type: 1696
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 12
> +                num_resource: 6
> +                type: 1696
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 12
> +                num_resource: 6
> +                type: 1696
> +                host_id: 36
> +                reserved: 0
> +
> +        -
> +                start_resource: 18
> +                num_resource: 2
> +                type: 1696
> +                host_id: 38
> +                reserved: 0
> +
> +        -
> +                start_resource: 20
> +                num_resource: 4
> +                type: 1696
> +                host_id: 41
> +                reserved: 0
> +
> +        -
> +                start_resource: 24
> +                num_resource: 2
> +                type: 1696
> +                host_id: 43
> +                reserved: 0
> +
> +        -
> +                start_resource: 26
> +                num_resource: 1
> +                type: 1696
> +                host_id: 30
> +                reserved: 0
> +
> +        -
> +                start_resource: 27
> +                num_resource: 1
> +                type: 1696
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 6
> +                type: 1697
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 6
> +                num_resource: 6
> +                type: 1697
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 6
> +                num_resource: 6
> +                type: 1697
> +                host_id: 36
> +                reserved: 0
> +
> +        -
> +                start_resource: 12
> +                num_resource: 2
> +                type: 1697
> +                host_id: 38
> +                reserved: 0
> +
> +        -
> +                start_resource: 14
> +                num_resource: 4
> +                type: 1697
> +                host_id: 41
> +                reserved: 0
> +
> +        -
> +                start_resource: 18
> +                num_resource: 2
> +                type: 1697
> +                host_id: 43
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 6
> +                type: 1698
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 6
> +                num_resource: 6
> +                type: 1698
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 6
> +                num_resource: 6
> +                type: 1698
> +                host_id: 36
> +                reserved: 0
> +
> +        -
> +                start_resource: 12
> +                num_resource: 2
> +                type: 1698
> +                host_id: 38
> +                reserved: 0
> +
> +        -
> +                start_resource: 14
> +                num_resource: 4
> +                type: 1698
> +                host_id: 41
> +                reserved: 0
> +
> +        -
> +                start_resource: 18
> +                num_resource: 2
> +                type: 1698
> +                host_id: 43
> +                reserved: 0
> +
> +        -
> +                start_resource: 5
> +                num_resource: 35
> +                type: 1802
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 44
> +                num_resource: 14
> +                type: 1802
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 44
> +                num_resource: 14
> +                type: 1802
> +                host_id: 36
> +                reserved: 0
> +
> +        -
> +                start_resource: 58
> +                num_resource: 14
> +                type: 1802
> +                host_id: 38
> +                reserved: 0
> +
> +        -
> +                start_resource: 92
> +                num_resource: 14
> +                type: 1802
> +                host_id: 41
> +                reserved: 0
> +
> +        -
> +                start_resource: 106
> +                num_resource: 14
> +                type: 1802
> +                host_id: 43
> +                reserved: 0
> +
> +        -
> +                start_resource: 168
> +                num_resource: 16
> +                type: 1802
> +                host_id: 30
> +                reserved: 0
> +
> +        -
> +                start_resource: 16
> +                num_resource: 512
> +                type: 1805
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 528
> +                num_resource: 256
> +                type: 1805
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 528
> +                num_resource: 256
> +                type: 1805
> +                host_id: 36
> +                reserved: 0
> +
> +        -
> +                start_resource: 784
> +                num_resource: 192
> +                type: 1805
> +                host_id: 38
> +                reserved: 0
> +
> +        -
> +                start_resource: 976
> +                num_resource: 256
> +                type: 1805
> +                host_id: 41
> +                reserved: 0
> +
> +        -
> +                start_resource: 1232
> +                num_resource: 192
> +                type: 1805
> +                host_id: 43
> +                reserved: 0
> +
> +        -
> +                start_resource: 1424
> +                num_resource: 96
> +                type: 1805
> +                host_id: 30
> +                reserved: 0
> +
> +        -
> +                start_resource: 1520
> +                num_resource: 16
> +                type: 1805
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 1024
> +                type: 1807
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 4096
> +                num_resource: 42
> +                type: 1808
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 4608
> +                num_resource: 112
> +                type: 1809
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 5120
> +                num_resource: 29
> +                type: 1810
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 5632
> +                num_resource: 176
> +                type: 1811
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 6144
> +                num_resource: 176
> +                type: 1812
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 6656
> +                num_resource: 176
> +                type: 1813
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 8192
> +                num_resource: 28
> +                type: 1814
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 8704
> +                num_resource: 28
> +                type: 1815
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 9216
> +                num_resource: 28
> +                type: 1816
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 9728
> +                num_resource: 20
> +                type: 1817
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 10240
> +                num_resource: 20
> +                type: 1818
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 10752
> +                num_resource: 20
> +                type: 1819
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 11264
> +                num_resource: 20
> +                type: 1820
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 11776
> +                num_resource: 20
> +                type: 1821
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 12288
> +                num_resource: 20
> +                type: 1822
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 1
> +                type: 1923
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 4
> +                type: 1936
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 4
> +                num_resource: 3
> +                type: 1936
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 4
> +                num_resource: 3
> +                type: 1936
> +                host_id: 36
> +                reserved: 0
> +
> +        -
> +                start_resource: 7
> +                num_resource: 2
> +                type: 1936
> +                host_id: 38
> +                reserved: 0
> +
> +        -
> +                start_resource: 9
> +                num_resource: 4
> +                type: 1936
> +                host_id: 41
> +                reserved: 0
> +
> +        -
> +                start_resource: 13
> +                num_resource: 2
> +                type: 1936
> +                host_id: 43
> +                reserved: 0
> +
> +        -
> +                start_resource: 15
> +                num_resource: 1
> +                type: 1936
> +                host_id: 30
> +                reserved: 0
> +
> +        -
> +                start_resource: 16
> +                num_resource: 64
> +                type: 1937
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 16
> +                num_resource: 64
> +                type: 1937
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 88
> +                num_resource: 8
> +                type: 1939
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 96
> +                num_resource: 8
> +                type: 1940
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 104
> +                num_resource: 8
> +                type: 1941
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 112
> +                num_resource: 4
> +                type: 1942
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 116
> +                num_resource: 3
> +                type: 1942
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 116
> +                num_resource: 3
> +                type: 1942
> +                host_id: 36
> +                reserved: 0
> +
> +        -
> +                start_resource: 119
> +                num_resource: 2
> +                type: 1942
> +                host_id: 38
> +                reserved: 0
> +
> +        -
> +                start_resource: 121
> +                num_resource: 4
> +                type: 1942
> +                host_id: 41
> +                reserved: 0
> +
> +        -
> +                start_resource: 125
> +                num_resource: 2
> +                type: 1942
> +                host_id: 43
> +                reserved: 0
> +
> +        -
> +                start_resource: 127
> +                num_resource: 1
> +                type: 1942
> +                host_id: 30
> +                reserved: 0
> +
> +        -
> +                start_resource: 128
> +                num_resource: 16
> +                type: 1943
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 128
> +                num_resource: 16
> +                type: 1943
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 144
> +                num_resource: 8
> +                type: 1945
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 152
> +                num_resource: 8
> +                type: 1946
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 152
> +                num_resource: 8
> +                type: 1947
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 160
> +                num_resource: 64
> +                type: 1948
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 224
> +                num_resource: 64
> +                type: 1949
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 4
> +                type: 1955
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 4
> +                num_resource: 3
> +                type: 1955
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 4
> +                num_resource: 3
> +                type: 1955
> +                host_id: 36
> +                reserved: 0
> +
> +        -
> +                start_resource: 7
> +                num_resource: 2
> +                type: 1955
> +                host_id: 38
> +                reserved: 0
> +
> +        -
> +                start_resource: 9
> +                num_resource: 4
> +                type: 1955
> +                host_id: 41
> +                reserved: 0
> +
> +        -
> +                start_resource: 13
> +                num_resource: 2
> +                type: 1955
> +                host_id: 43
> +                reserved: 0
> +
> +        -
> +                start_resource: 15
> +                num_resource: 1
> +                type: 1955
> +                host_id: 30
> +                reserved: 0
> +
> +        -
> +                start_resource: 16
> +                num_resource: 8
> +                type: 1956
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 16
> +                num_resource: 8
> +                type: 1956
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 25
> +                num_resource: 1
> +                type: 1958
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 26
> +                num_resource: 8
> +                type: 1959
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 34
> +                num_resource: 8
> +                type: 1960
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 4
> +                type: 1961
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 4
> +                num_resource: 3
> +                type: 1961
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 4
> +                num_resource: 3
> +                type: 1961
> +                host_id: 36
> +                reserved: 0
> +
> +        -
> +                start_resource: 7
> +                num_resource: 2
> +                type: 1961
> +                host_id: 38
> +                reserved: 0
> +
> +        -
> +                start_resource: 9
> +                num_resource: 4
> +                type: 1961
> +                host_id: 41
> +                reserved: 0
> +
> +        -
> +                start_resource: 13
> +                num_resource: 2
> +                type: 1961
> +                host_id: 43
> +                reserved: 0
> +
> +        -
> +                start_resource: 15
> +                num_resource: 1
> +                type: 1961
> +                host_id: 30
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 4
> +                type: 1962
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 4
> +                num_resource: 3
> +                type: 1962
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 4
> +                num_resource: 3
> +                type: 1962
> +                host_id: 36
> +                reserved: 0
> +
> +        -
> +                start_resource: 7
> +                num_resource: 2
> +                type: 1962
> +                host_id: 38
> +                reserved: 0
> +
> +        -
> +                start_resource: 9
> +                num_resource: 4
> +                type: 1962
> +                host_id: 41
> +                reserved: 0
> +
> +        -
> +                start_resource: 13
> +                num_resource: 2
> +                type: 1962
> +                host_id: 43
> +                reserved: 0
> +
> +        -
> +                start_resource: 15
> +                num_resource: 1
> +                type: 1962
> +                host_id: 30
> +                reserved: 0
> +
> +        -
> +                start_resource: 16
> +                num_resource: 1
> +                type: 1963
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 16
> +                num_resource: 1
> +                type: 1963
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 16
> +                num_resource: 16
> +                type: 1964
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 16
> +                num_resource: 16
> +                type: 1964
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 32
> +                num_resource: 8
> +                type: 1966
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 32
> +                num_resource: 8
> +                type: 1968
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 19
> +                num_resource: 1
> +                type: 1969
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 40
> +                num_resource: 8
> +                type: 1970
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 20
> +                num_resource: 1
> +                type: 1971
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 40
> +                num_resource: 8
> +                type: 1972
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 21
> +                num_resource: 4
> +                type: 1973
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 48
> +                num_resource: 64
> +                type: 1974
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 25
> +                num_resource: 4
> +                type: 1975
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 112
> +                num_resource: 64
> +                type: 1976
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 1
> +                type: 2112
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 2
> +                num_resource: 2
> +                type: 2122
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 20
> +                num_resource: 2
> +                type: 2124
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 20
> +                num_resource: 2
> +                type: 2124
> +                host_id: 36
> +                reserved: 0
> +
> +        -
> +                start_resource: 22
> +                num_resource: 2
> +                type: 2124
> +                host_id: 38
> +                reserved: 0
> +
> +        -
> +                start_resource: 24
> +                num_resource: 2
> +                type: 2124
> +                host_id: 41
> +                reserved: 0
> +
> +        -
> +                start_resource: 26
> +                num_resource: 2
> +                type: 2124
> +                host_id: 43
> +                reserved: 0
> +
> +        -
> +                start_resource: 28
> +                num_resource: 4
> +                type: 2124
> +                host_id: 128
> +                reserved: 0
> diff --git a/board/ti/am64x/sec-cfg.yaml b/board/ti/am64x/sec-cfg.yaml
> new file mode 100644
> index 0000000000..2779f2943d
> --- /dev/null
> +++ b/board/ti/am64x/sec-cfg.yaml
> @@ -0,0 +1,380 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +#
> +# Security configuration for AM64x
> +#
> +
> +---
> +
> +sec-cfg:
> +        rev:
> +                boardcfg_abi_maj : 0x0
> +                boardcfg_abi_min : 0x1
> +        processor_acl_list:
> +                subhdr:
> +                        magic: 0xF1EA
> +                        size: 164
> +                proc_acl_entries:
> +                        - #1
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #2
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #3
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #4
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #5
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #6
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #7
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #8
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #9
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #10
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #11
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #12
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #13
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #14
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #15
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #16
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #17
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #18
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #19
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #20
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #21
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #22
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #23
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #24
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #25
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #26
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #27
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #28
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #29
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #30
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #31
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +                        - #32
> +                                processor_id: 0
> +                                proc_access_master: 0
> +                                proc_access_secondary: [0, 0, 0]
> +
> +        host_hierarchy:
> +                subhdr:
> +                        magic: 0x8D27
> +                        size: 68
> +                host_hierarchy_entries:
> +                        - #1
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #2
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #3
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #4
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #5
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #6
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #7
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #8
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #9
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #10
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #11
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #12
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #13
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #14
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #15
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #16
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #17
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #18
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #19
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #20
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #21
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #22
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #23
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #24
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #25
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #26
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #27
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #28
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #29
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #30
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #31
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +                        - #32
> +                                host_id: 0
> +                                supervisor_host_id: 0
> +        otp_config:
> +                subhdr:
> +                        magic: 0x4081
> +                        size: 69
> +                write_host_id : 0
> +                otp_entry:
> +                        - #1
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #2
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #3
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #4
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #5
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #6
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #7
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #8
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #9
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #10
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #11
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #12
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #13
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #14
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #15
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #16
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #17
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #18
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #19
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #20
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #21
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #22
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #23
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #24
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #25
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #26
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #27
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #28
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #29
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #30
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #31
> +                                host_id: 0
> +                                host_perms: 0
> +                        - #32
> +                                host_id: 0
> +                                host_perms: 0
> +        dkek_config:
> +                subhdr:
> +                        magic: 0x5170
> +                        size: 12
> +                allowed_hosts: [128, 0, 0, 0]
> +                allow_dkek_export_tisci : 0x5A
> +                rsvd: [0, 0, 0]
> +        sa2ul_cfg:
> +                subhdr:
> +                        magic: 0x23BE
> +                        size : 0
> +                auth_resource_owner: 0
> +                enable_saul_psil_global_config_writes: 0
> +                rsvd: [0, 0]
> +        sec_dbg_config:
> +                subhdr:
> +                        magic: 0x42AF
> +                        size: 16
> +                allow_jtag_unlock : 0x5A
> +                allow_wildcard_unlock : 0x5A
> +                allowed_debug_level_rsvd : 0
> +                rsvd : 0
> +                min_cert_rev : 0x0
> +                jtag_unlock_hosts: [0, 0, 0, 0]
> +        sec_handover_cfg:
> +                subhdr:
> +                        magic: 0x608F
> +                        size: 10
> +                handover_msg_sender : 0
> +                handover_to_host_id : 0
> +                rsvd: [0, 0, 0, 0]

...
Applying: am64x: yaml: Add board configs for AM64x
.git/rebase-apply/patch:54: new blank line at EOF.
+
warning: 1 line adds whitespace errors.

Jan

-- 
Siemens AG, Technology
Competence Center Embedded Linux


^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: [PATCH v5 04/23] j721e: schema: yaml: Add general schema and J721E board config files
  2023-07-11  4:52   ` Jan Kiszka
@ 2023-07-11  4:53     ` Neha Malcom Francis
  0 siblings, 0 replies; 42+ messages in thread
From: Neha Malcom Francis @ 2023-07-11  4:53 UTC (permalink / raw)
  To: Jan Kiszka, u-boot, trini, sjg, afd, vigneshr, rogerq, kamlesh,
	bb, alpernebiyasak
  Cc: nm, u-kumar1, m-chawdhry, christian.gmeiner, xypron.glpk

Hi Jan

On 11/07/23 10:22, Jan Kiszka wrote:
> On 07.07.23 14:34, Neha Malcom Francis wrote:
>> Schema file in YAML must be provided in board/ti/common for validating
>> input config files and packaging system firmware. The schema includes
>> entries for rm-cfg, board-cfg, pm-cfg and sec-cfg.
>>
>> Board config files must be provided in board/ti/<devicename> in YAML.
>> These can then be consumed for generation of binaries to package system
>> firmware. Added YAML configs for J721E in particular.
>>
>> Signed-off-by: Tarun Sahu <t-sahu@ti.com>
>> [n-francis@ti.com: prepared patch for upstreaming]
>> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
>> ---
>>   board/ti/common/schema.yaml   |  436 +++++
>>   board/ti/j721e/board-cfg.yaml |   37 +
>>   board/ti/j721e/pm-cfg.yaml    |   13 +
>>   board/ti/j721e/rm-cfg.yaml    | 3174 +++++++++++++++++++++++++++++++++
>>   board/ti/j721e/sec-cfg.yaml   |  381 ++++
>>   5 files changed, 4041 insertions(+)
>>   create mode 100644 board/ti/common/schema.yaml
>>   create mode 100644 board/ti/j721e/board-cfg.yaml
>>   create mode 100644 board/ti/j721e/pm-cfg.yaml
>>   create mode 100644 board/ti/j721e/rm-cfg.yaml
>>   create mode 100644 board/ti/j721e/sec-cfg.yaml
>>
>> diff --git a/board/ti/common/schema.yaml b/board/ti/common/schema.yaml
>> new file mode 100644
>> index 0000000000..8023ecb0e0
>> --- /dev/null
>> +++ b/board/ti/common/schema.yaml
>> @@ -0,0 +1,436 @@
>> +# SPDX-License-Identifier: GPL-2.0+
>> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
>> +#
>> +# Config schema for TI K3 devices
>> +#
>> +
>> +---
>> +
>> +definitions:
>> +    u8:
>> +        type: integer
>> +        minimum: 0
>> +        maximum: 0xff
>> +    u16:
>> +        type: integer
>> +        minimum: 0
>> +        maximum: 0xffff
>> +    u32:
>> +        type: integer
>> +        minimum: 0
>> +        maximum: 0xffffffff
>> +
>> +
>> +
>> +type: object
>> +properties:
>> +    pm-cfg:
>> +        type: object
>> +        properties:
>> +            rev:
>> +                type: object
>> +                properties:
>> +                    boardcfg_abi_maj:
>> +                        $ref: "#/definitions/u8"
>> +                    boardcfg_abi_min:
>> +                        $ref: "#/definitions/u8"
>> +    board-cfg:
>> +        type: object
>> +        properties:
>> +            rev:
>> +                type: object
>> +                properties:
>> +                    boardcfg_abi_maj:
>> +                        $ref: "#/definitions/u8"
>> +                    boardcfg_abi_min:
>> +                        $ref: "#/definitions/u8"
>> +            control:
>> +                type: object
>> +                properties:
>> +                    subhdr:
>> +                        type: object
>> +                        properties:
>> +                            magic:
>> +                                $ref: "#/definitions/u16"
>> +                            size:
>> +                                $ref: "#/definitions/u16"
>> +                    main_isolation_enable:
>> +                        $ref: "#/definitions/u8"
>> +                    main_isolation_hostid:
>> +                        $ref: "#/definitions/u16"
>> +
>> +
>> +            secproxy:
>> +                type: object
>> +                properties:
>> +                    subhdr:
>> +                        type: object
>> +                        properties:
>> +                            magic:
>> +                                $ref: "#/definitions/u16"
>> +                            size:
>> +                                $ref: "#/definitions/u16"
>> +                    scaling_factor:
>> +                        $ref: "#/definitions/u8"
>> +                    scaling_profile:
>> +                        $ref: "#/definitions/u8"
>> +                    disable_main_nav_secure_proxy:
>> +                        $ref: "#/definitions/u8"
>> +
>> +            msmc:
>> +                type: object
>> +                properties:
>> +                    subhdr:
>> +                        type: object
>> +                        properties:
>> +                            magic:
>> +                                $ref: "#/definitions/u16"
>> +                            size:
>> +                                $ref: "#/definitions/u16"
>> +                    msmc_cache_size:
>> +                        $ref: "#/definitions/u8"
>> +            debug_cfg:
>> +                type: object
>> +                properties:
>> +                    subhdr:
>> +                        type: object
>> +                        properties:
>> +                            magic:
>> +                                $ref: "#/definitions/u16"
>> +                            size:
>> +                                $ref: "#/definitions/u16"
>> +                    trace_dst_enables:
>> +                        $ref: "#/definitions/u16"
>> +                    trace_src_enables:
>> +                        $ref: "#/definitions/u16"
>> +
>> +    sec-cfg:
>> +        type: object
>> +        properties:
>> +            rev:
>> +                type: object
>> +                properties:
>> +                    boardcfg_abi_maj:
>> +                        $ref: "#/definitions/u8"
>> +                    boardcfg_abi_min:
>> +                        $ref: "#/definitions/u8"
>> +
>> +            processor_acl_list:
>> +                type: object
>> +                properties:
>> +                    subhdr:
>> +                        type: object
>> +                        properties:
>> +                            magic:
>> +                                $ref: "#/definitions/u16"
>> +                            size:
>> +                                $ref: "#/definitions/u16"
>> +                    proc_acl_entries:
>> +                        type: array
>> +                        minItems: 32
>> +                        maxItems: 32
>> +                        items:
>> +                            type: object
>> +                            properties:
>> +                                processor_id:
>> +                                    $ref: "#/definitions/u8"
>> +                                proc_access_master:
>> +                                    $ref: "#/definitions/u8"
>> +                                proc_access_secondary:
>> +                                    type: array
>> +                                    minItems: 3
>> +                                    maxItems: 3
>> +                                    items:
>> +                                        $ref: "#/definitions/u8"
>> +            host_hierarchy:
>> +                type: object
>> +                properties:
>> +                    subhdr:
>> +                        type: object
>> +                        properties:
>> +                            magic:
>> +                                $ref: "#/definitions/u16"
>> +                            size:
>> +                                $ref: "#/definitions/u16"
>> +                    host_hierarchy_entries:
>> +                        type: array
>> +                        minItems: 32
>> +                        maxItems: 32
>> +                        items:
>> +                            type: object
>> +                            properties:
>> +                                host_id:
>> +                                    $ref: "#/definitions/u8"
>> +                                supervisor_host_id:
>> +                                    $ref: "#/definitions/u8"
>> +
>> +            otp_config:
>> +                type: object
>> +                properties:
>> +                    subhdr:
>> +                        type: object
>> +                        properties:
>> +                            magic:
>> +                                $ref: "#/definitions/u16"
>> +                            size:
>> +                                $ref: "#/definitions/u16"
>> +                    otp_entry:
>> +                        type: array
>> +                        minItems: 32
>> +                        maxItems: 32
>> +                        items:
>> +                            type: object
>> +                            properties:
>> +                                host_id:
>> +                                    $ref: "#/definitions/u8"
>> +                                host_perms:
>> +                                    $ref: "#/definitions/u8"
>> +                    write_host_id:
>> +                        $ref: "#/definitions/u8"
>> +
>> +            dkek_config:
>> +                type: object
>> +                properties:
>> +                    subhdr:
>> +                        type: object
>> +                        properties:
>> +                            magic:
>> +                                $ref: "#/definitions/u16"
>> +                            size:
>> +                                $ref: "#/definitions/u16"
>> +                    allowed_hosts:
>> +                        type: array
>> +                        minItems: 4
>> +                        maxItems: 4
>> +                        items:
>> +                            $ref: "#/definitions/u8"
>> +                    allow_dkek_export_tisci:
>> +                        $ref: "#/definitions/u8"
>> +                    rsvd:
>> +                        type: array
>> +                        minItems: 3
>> +                        maxItems: 3
>> +                        items:
>> +                            $ref: "#/definitions/u8"
>> +
>> +            sa2ul_cfg:
>> +                type: object
>> +                properties:
>> +                    subhdr:
>> +                        type: object
>> +                        properties:
>> +                            magic:
>> +                                $ref: "#/definitions/u16"
>> +                            size:
>> +                                $ref: "#/definitions/u16"
>> +                    rsvd:
>> +                        type: array
>> +                        minItems: 2
>> +                        maxItems: 4
>> +                        items:
>> +                            $ref: "#/definitions/u8"
>> +                    enable_saul_psil_global_config_writes:
>> +                        $ref: "#/definitions/u8"
>> +                    auth_resource_owner:
>> +                        $ref: "#/definitions/u8"
>> +
>> +            sec_dbg_config:
>> +                type: object
>> +                properties:
>> +                    subhdr:
>> +                        type: object
>> +                        properties:
>> +                            magic:
>> +                                $ref: "#/definitions/u16"
>> +                            size:
>> +                                $ref: "#/definitions/u16"
>> +                    allow_jtag_unlock:
>> +                        $ref: "#/definitions/u8"
>> +                    allow_wildcard_unlock:
>> +                        $ref: "#/definitions/u8"
>> +                    allowed_debug_level_rsvd:
>> +                        $ref: "#/definitions/u8"
>> +                    rsvd:
>> +                        $ref: "#/definitions/u8"
>> +                    min_cert_rev:
>> +                        $ref: "#/definitions/u32"
>> +                    jtag_unlock_hosts:
>> +                        type: array
>> +                        minItems: 4
>> +                        maxItems: 4
>> +                        items:
>> +                            $ref: "#/definitions/u8"
>> +
>> +
>> +            sec_handover_cfg:
>> +                type: object
>> +                properties:
>> +                    subhdr:
>> +                        type: object
>> +                        properties:
>> +                            magic:
>> +                                $ref: "#/definitions/u16"
>> +                            size:
>> +                                $ref: "#/definitions/u16"
>> +                    handover_msg_sender:
>> +                        $ref: "#/definitions/u8"
>> +                    handover_to_host_id:
>> +                        $ref: "#/definitions/u8"
>> +                    rsvd:
>> +                        type: array
>> +                        minItems: 4
>> +                        maxItems: 4
>> +                        items:
>> +                            $ref: "#/definitions/u8"
>> +
>> +    rm-cfg:
>> +        type: object
>> +        properties:
>> +            rm_boardcfg:
>> +                type: object
>> +                properties:
>> +                    rev:
>> +                        type: object
>> +                        properties:
>> +                            boardcfg_abi_maj:
>> +                                $ref: "#/definitions/u8"
>> +                            boardcfg_abi_min:
>> +                                $ref: "#/definitions/u8"
>> +
>> +                    host_cfg:
>> +                        type: object
>> +                        properties:
>> +                            subhdr:
>> +                                type: object
>> +                                properties:
>> +                                    magic:
>> +                                        $ref: "#/definitions/u16"
>> +                                    size:
>> +                                        $ref: "#/definitions/u16"
>> +                            host_cfg_entries:
>> +                                type: array
>> +                                minItems: 0
>> +                                maxItems: 32
>> +                                items:
>> +                                    type: object
>> +                                    properties:
>> +                                        host_id:
>> +                                            $ref: "#/definitions/u8"
>> +                                        allowed_atype:
>> +                                            $ref: "#/definitions/u8"
>> +                                        allowed_qos:
>> +                                            $ref: "#/definitions/u16"
>> +                                        allowed_orderid:
>> +                                            $ref: "#/definitions/u32"
>> +                                        allowed_priority:
>> +                                            $ref: "#/definitions/u16"
>> +                                        allowed_sched_priority:
>> +                                            $ref: "#/definitions/u8"
>> +                    resasg:
>> +                        type: object
>> +                        properties:
>> +                            subhdr:
>> +                                type: object
>> +                                properties:
>> +                                    magic:
>> +                                        $ref: "#/definitions/u16"
>> +                                    size:
>> +                                        $ref: "#/definitions/u16"
>> +                            resasg_entries_size:
>> +                                        $ref: "#/definitions/u16"
>> +                            reserved:
>> +                                        $ref: "#/definitions/u16"
>> +
>> +            resasg_entries:
>> +                type: array
>> +                minItems: 0
>> +                maxItems: 468
>> +                items:
>> +                    type: object
>> +                    properties:
>> +                        start_resource:
>> +                            $ref: "#/definitions/u16"
>> +                        num_resource:
>> +                            $ref: "#/definitions/u16"
>> +                        type:
>> +                            $ref: "#/definitions/u16"
>> +                        host_id:
>> +                            $ref: "#/definitions/u8"
>> +                        reserved:
>> +                            $ref: "#/definitions/u8"
>> +
>> +    tifs-rm-cfg:
>> +        type: object
>> +        properties:
>> +            rm_boardcfg:
>> +                type: object
>> +                properties:
>> +                    rev:
>> +                        type: object
>> +                        properties:
>> +                            boardcfg_abi_maj:
>> +                                $ref: "#/definitions/u8"
>> +                            boardcfg_abi_min:
>> +                                $ref: "#/definitions/u8"
>> +
>> +                    host_cfg:
>> +                        type: object
>> +                        properties:
>> +                            subhdr:
>> +                                type: object
>> +                                properties:
>> +                                    magic:
>> +                                        $ref: "#/definitions/u16"
>> +                                    size:
>> +                                        $ref: "#/definitions/u16"
>> +                            host_cfg_entries:
>> +                                type: array
>> +                                minItems: 0
>> +                                maxItems: 32
>> +                                items:
>> +                                    type: object
>> +                                    properties:
>> +                                        host_id:
>> +                                            $ref: "#/definitions/u8"
>> +                                        allowed_atype:
>> +                                            $ref: "#/definitions/u8"
>> +                                        allowed_qos:
>> +                                            $ref: "#/definitions/u16"
>> +                                        allowed_orderid:
>> +                                            $ref: "#/definitions/u32"
>> +                                        allowed_priority:
>> +                                            $ref: "#/definitions/u16"
>> +                                        allowed_sched_priority:
>> +                                            $ref: "#/definitions/u8"
>> +                    resasg:
>> +                        type: object
>> +                        properties:
>> +                            subhdr:
>> +                                type: object
>> +                                properties:
>> +                                    magic:
>> +                                        $ref: "#/definitions/u16"
>> +                                    size:
>> +                                        $ref: "#/definitions/u16"
>> +                            resasg_entries_size:
>> +                                        $ref: "#/definitions/u16"
>> +                            reserved:
>> +                                        $ref: "#/definitions/u16"
>> +
>> +            resasg_entries:
>> +                type: array
>> +                minItems: 0
>> +                maxItems: 468
>> +                items:
>> +                    type: object
>> +                    properties:
>> +                        start_resource:
>> +                            $ref: "#/definitions/u16"
>> +                        num_resource:
>> +                            $ref: "#/definitions/u16"
>> +                        type:
>> +                            $ref: "#/definitions/u16"
>> +                        host_id:
>> +                            $ref: "#/definitions/u8"
>> +                        reserved:
>> +                            $ref: "#/definitions/u8"
>> diff --git a/board/ti/j721e/board-cfg.yaml b/board/ti/j721e/board-cfg.yaml
>> new file mode 100644
>> index 0000000000..9f5e00b3dc
>> --- /dev/null
>> +++ b/board/ti/j721e/board-cfg.yaml
>> @@ -0,0 +1,37 @@
>> +# SPDX-License-Identifier: GPL-2.0+
>> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
>> +#
>> +# Board configuration for J721E
>> +#
>> +
>> +---
>> +
>> +board-cfg:
>> +        rev:
>> +                boardcfg_abi_maj: 0x0
>> +                boardcfg_abi_min: 0x1
>> +        control:
>> +                subhdr:
>> +                        magic: 0xC1D3
>> +                        size: 7
>> +                main_isolation_enable: 0x5A
>> +                main_isolation_hostid: 0x2
>> +        secproxy:
>> +                subhdr:
>> +                        magic: 0x1207
>> +                        size: 7
>> +                scaling_factor: 0x1
>> +                scaling_profile: 0x1
>> +                disable_main_nav_secure_proxy: 0
>> +        msmc:
>> +                subhdr:
>> +                        magic: 0xA5C3
>> +                        size: 5
>> +                msmc_cache_size: 0x0
>> +        debug_cfg:
>> +                subhdr:
>> +                        magic: 0x020C
>> +                        size: 8
>> +                trace_dst_enables: 0x00
>> +                trace_src_enables: 0x00
>> +
>> diff --git a/board/ti/j721e/pm-cfg.yaml b/board/ti/j721e/pm-cfg.yaml
>> new file mode 100644
>> index 0000000000..40a8dfb7af
>> --- /dev/null
>> +++ b/board/ti/j721e/pm-cfg.yaml
>> @@ -0,0 +1,13 @@
>> +# SPDX-License-Identifier: GPL-2.0+
>> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
>> +#
>> +# Power management configuration for J721E
>> +#
>> +
>> +---
>> +
>> +pm-cfg:
>> +        rev:
>> +                boardcfg_abi_maj: 0x0
>> +                boardcfg_abi_min: 0x1
>> +
>> diff --git a/board/ti/j721e/rm-cfg.yaml b/board/ti/j721e/rm-cfg.yaml
>> new file mode 100644
>> index 0000000000..39d276d9d5
>> --- /dev/null
>> +++ b/board/ti/j721e/rm-cfg.yaml
>> @@ -0,0 +1,3174 @@
>> +# SPDX-License-Identifier: GPL-2.0+
>> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
>> +#
>> +# Resource management configuration for J721E
>> +#
>> +
>> +---
>> +
>> +rm-cfg:
>> +        rm_boardcfg:
>> +                rev:
>> +                        boardcfg_abi_maj: 0x0
>> +                        boardcfg_abi_min: 0x1
>> +                host_cfg:
>> +                        subhdr:
>> +                                magic: 0x4C41
>> +                                size: 356
>> +                        host_cfg_entries:
>> +                                - #1
>> +                                        host_id: 3
>> +                                        allowed_atype: 0x2A
>> +                                        allowed_qos: 0xAAAA
>> +                                        allowed_orderid: 0xAAAAAAAA
>> +                                        allowed_priority: 0xAAAA
>> +                                        allowed_sched_priority: 0xAA
>> +                                - #2
>> +                                        host_id: 5
>> +                                        allowed_atype: 0x2A
>> +                                        allowed_qos: 0xAAAA
>> +                                        allowed_orderid: 0xAAAAAAAA
>> +                                        allowed_priority: 0xAAAA
>> +                                        allowed_sched_priority: 0xAA
>> +                                - #3
>> +                                        host_id: 12
>> +                                        allowed_atype: 0x2A
>> +                                        allowed_qos: 0xAAAA
>> +                                        allowed_orderid: 0xAAAAAAAA
>> +                                        allowed_priority: 0xAAAA
>> +                                        allowed_sched_priority: 0xAA
>> +                                - #4
>> +                                        host_id: 13
>> +                                        allowed_atype: 0x2A
>> +                                        allowed_qos: 0xAAAA
>> +                                        allowed_orderid: 0xAAAAAAAA
>> +                                        allowed_priority: 0xAAAA
>> +                                        allowed_sched_priority: 0xAA
>> +                                - #5
>> +                                        host_id: 21
>> +                                        allowed_atype: 0x2A
>> +                                        allowed_qos: 0xAAAA
>> +                                        allowed_orderid: 0xAAAAAAAA
>> +                                        allowed_priority: 0xAAAA
>> +                                        allowed_sched_priority: 0xAA
>> +                                - #6
>> +                                        host_id: 26
>> +                                        allowed_atype: 0x2A
>> +                                        allowed_qos: 0xAAAA
>> +                                        allowed_orderid: 0xAAAAAAAA
>> +                                        allowed_priority: 0xAAAA
>> +                                        allowed_sched_priority: 0xAA
>> +                                - #7
>> +                                        host_id: 28
>> +                                        allowed_atype: 0x2A
>> +                                        allowed_qos: 0xAAAA
>> +                                        allowed_orderid: 0xAAAAAAAA
>> +                                        allowed_priority: 0xAAAA
>> +                                        allowed_sched_priority: 0xAA
>> +                                - #8
>> +                                        host_id: 35
>> +                                        allowed_atype: 0x2A
>> +                                        allowed_qos: 0xAAAA
>> +                                        allowed_orderid: 0xAAAAAAAA
>> +                                        allowed_priority: 0xAAAA
>> +                                        allowed_sched_priority: 0xAA
>> +                                - #9
>> +                                        host_id: 37
>> +                                        allowed_atype: 0x2A
>> +                                        allowed_qos: 0xAAAA
>> +                                        allowed_orderid: 0xAAAAAAAA
>> +                                        allowed_priority: 0xAAAA
>> +                                        allowed_sched_priority: 0xAA
>> +                                - #10
>> +                                        host_id: 40
>> +                                        allowed_atype: 0x2A
>> +                                        allowed_qos: 0xAAAA
>> +                                        allowed_orderid: 0xAAAAAAAA
>> +                                        allowed_priority: 0xAAAA
>> +                                        allowed_sched_priority: 0xAA
>> +                                - #11
>> +                                        host_id: 42
>> +                                        allowed_atype: 0x2A
>> +                                        allowed_qos: 0xAAAA
>> +                                        allowed_orderid: 0xAAAAAAAA
>> +                                        allowed_priority: 0xAAAA
>> +                                        allowed_sched_priority: 0xAA
>> +                                - #12
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #13
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #14
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #15
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #16
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #17
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #18
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #19
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #20
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #21
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #22
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #23
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #24
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #25
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #26
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #27
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #28
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #29
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #30
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #31
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                                - #32
>> +                                        host_id: 0
>> +                                        allowed_atype: 0
>> +                                        allowed_qos: 0
>> +                                        allowed_orderid: 0
>> +                                        allowed_priority: 0
>> +                                        allowed_sched_priority: 0
>> +                resasg:
>> +                        subhdr:
>> +                                magic: 0x7B25
>> +                                size: 8
>> +                        resasg_entries_size: 3344
>> +                        reserved: 0
>> +        resasg_entries:
>> +                -
>> +                        start_resource: 4
>> +                        num_resource: 93
>> +                        type: 7744
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 4
>> +                        num_resource: 93
>> +                        type: 7808
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 32
>> +                        type: 7872
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 32
>> +                        type: 8192
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 32
>> +                        num_resource: 32
>> +                        type: 8192
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 24
>> +                        type: 8320
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 24
>> +                        num_resource: 24
>> +                        type: 8320
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 8
>> +                        type: 8384
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 8
>> +                        num_resource: 8
>> +                        type: 8384
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 16
>> +                        num_resource: 4
>> +                        type: 8384
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 20
>> +                        num_resource: 4
>> +                        type: 8384
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 24
>> +                        num_resource: 4
>> +                        type: 8384
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 28
>> +                        num_resource: 4
>> +                        type: 8384
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 32
>> +                        num_resource: 4
>> +                        type: 8384
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 36
>> +                        num_resource: 4
>> +                        type: 8384
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 40
>> +                        num_resource: 12
>> +                        type: 8384
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 52
>> +                        num_resource: 12
>> +                        type: 8384
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 128
>> +                        type: 8576
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 128
>> +                        num_resource: 128
>> +                        type: 8576
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 128
>> +                        type: 8640
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 128
>> +                        num_resource: 128
>> +                        type: 8640
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 48
>> +                        type: 8704
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 8
>> +                        type: 8768
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 8
>> +                        num_resource: 8
>> +                        type: 8768
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 16
>> +                        num_resource: 6
>> +                        type: 8768
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 22
>> +                        num_resource: 6
>> +                        type: 8768
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 28
>> +                        num_resource: 2
>> +                        type: 8768
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 30
>> +                        num_resource: 2
>> +                        type: 8768
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 64
>> +                        type: 13258
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 20480
>> +                        num_resource: 1024
>> +                        type: 13261
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 64
>> +                        type: 13322
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 22528
>> +                        num_resource: 1024
>> +                        type: 13325
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 38
>> +                        num_resource: 86
>> +                        type: 13386
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 124
>> +                        num_resource: 32
>> +                        type: 13386
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 156
>> +                        num_resource: 12
>> +                        type: 13386
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 168
>> +                        num_resource: 12
>> +                        type: 13386
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 180
>> +                        num_resource: 12
>> +                        type: 13386
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 192
>> +                        num_resource: 12
>> +                        type: 13386
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 204
>> +                        num_resource: 12
>> +                        type: 13386
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 216
>> +                        num_resource: 28
>> +                        type: 13386
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 244
>> +                        num_resource: 8
>> +                        type: 13386
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 252
>> +                        num_resource: 4
>> +                        type: 13386
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 38
>> +                        num_resource: 1024
>> +                        type: 13389
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 1062
>> +                        num_resource: 512
>> +                        type: 13389
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 1574
>> +                        num_resource: 32
>> +                        type: 13389
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 1606
>> +                        num_resource: 32
>> +                        type: 13389
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 1638
>> +                        num_resource: 256
>> +                        type: 13389
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 1894
>> +                        num_resource: 256
>> +                        type: 13389
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 2150
>> +                        num_resource: 256
>> +                        type: 13389
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 2406
>> +                        num_resource: 256
>> +                        type: 13389
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 2662
>> +                        num_resource: 256
>> +                        type: 13389
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 2918
>> +                        num_resource: 512
>> +                        type: 13389
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 3430
>> +                        num_resource: 256
>> +                        type: 13389
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 3686
>> +                        num_resource: 922
>> +                        type: 13389
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 4
>> +                        type: 13440
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 4
>> +                        num_resource: 4
>> +                        type: 13440
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 8
>> +                        num_resource: 4
>> +                        type: 13440
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 12
>> +                        num_resource: 4
>> +                        type: 13440
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 16
>> +                        num_resource: 4
>> +                        type: 13440
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 20
>> +                        num_resource: 4
>> +                        type: 13440
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 24
>> +                        num_resource: 4
>> +                        type: 13440
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 28
>> +                        num_resource: 4
>> +                        type: 13440
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 32
>> +                        num_resource: 4
>> +                        type: 13440
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 36
>> +                        num_resource: 12
>> +                        type: 13440
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 48
>> +                        num_resource: 4
>> +                        type: 13440
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 52
>> +                        num_resource: 12
>> +                        type: 13440
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 1
>> +                        type: 13504
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 440
>> +                        num_resource: 150
>> +                        type: 13505
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 590
>> +                        num_resource: 40
>> +                        type: 13505
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 630
>> +                        num_resource: 6
>> +                        type: 13505
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 636
>> +                        num_resource: 6
>> +                        type: 13505
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 642
>> +                        num_resource: 10
>> +                        type: 13505
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 652
>> +                        num_resource: 10
>> +                        type: 13505
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 662
>> +                        num_resource: 32
>> +                        type: 13505
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 694
>> +                        num_resource: 38
>> +                        type: 13505
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 732
>> +                        num_resource: 12
>> +                        type: 13505
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 744
>> +                        num_resource: 182
>> +                        type: 13505
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 926
>> +                        num_resource: 40
>> +                        type: 13505
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 966
>> +                        num_resource: 8
>> +                        type: 13505
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 316
>> +                        num_resource: 8
>> +                        type: 13506
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 324
>> +                        num_resource: 2
>> +                        type: 13506
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 324
>> +                        num_resource: 0
>> +                        type: 13506
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 326
>> +                        num_resource: 2
>> +                        type: 13506
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 328
>> +                        num_resource: 2
>> +                        type: 13506
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 330
>> +                        num_resource: 2
>> +                        type: 13506
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 332
>> +                        num_resource: 2
>> +                        type: 13506
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 334
>> +                        num_resource: 8
>> +                        type: 13506
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 342
>> +                        num_resource: 2
>> +                        type: 13506
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 344
>> +                        num_resource: 4
>> +                        type: 13506
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 348
>> +                        num_resource: 1
>> +                        type: 13506
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 349
>> +                        num_resource: 47
>> +                        type: 13506
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 396
>> +                        num_resource: 1
>> +                        type: 13506
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 397
>> +                        num_resource: 4
>> +                        type: 13506
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 401
>> +                        num_resource: 4
>> +                        type: 13506
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 405
>> +                        num_resource: 4
>> +                        type: 13506
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 409
>> +                        num_resource: 8
>> +                        type: 13506
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 417
>> +                        num_resource: 6
>> +                        type: 13506
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 423
>> +                        num_resource: 16
>> +                        type: 13506
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 439
>> +                        num_resource: 1
>> +                        type: 13506
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 16
>> +                        num_resource: 8
>> +                        type: 13507
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 24
>> +                        num_resource: 2
>> +                        type: 13507
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 24
>> +                        num_resource: 0
>> +                        type: 13507
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 26
>> +                        num_resource: 2
>> +                        type: 13507
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 28
>> +                        num_resource: 2
>> +                        type: 13507
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 30
>> +                        num_resource: 2
>> +                        type: 13507
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 32
>> +                        num_resource: 2
>> +                        type: 13507
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 34
>> +                        num_resource: 8
>> +                        type: 13507
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 42
>> +                        num_resource: 2
>> +                        type: 13507
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 44
>> +                        num_resource: 4
>> +                        type: 13507
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 48
>> +                        num_resource: 1
>> +                        type: 13507
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 49
>> +                        num_resource: 47
>> +                        type: 13507
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 96
>> +                        num_resource: 1
>> +                        type: 13507
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 97
>> +                        num_resource: 4
>> +                        type: 13507
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 101
>> +                        num_resource: 4
>> +                        type: 13507
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 105
>> +                        num_resource: 4
>> +                        type: 13507
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 109
>> +                        num_resource: 8
>> +                        type: 13507
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 117
>> +                        num_resource: 6
>> +                        type: 13507
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 123
>> +                        num_resource: 10
>> +                        type: 13507
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 133
>> +                        num_resource: 6
>> +                        type: 13507
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 139
>> +                        num_resource: 1
>> +                        type: 13507
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 140
>> +                        num_resource: 16
>> +                        type: 13508
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 156
>> +                        num_resource: 6
>> +                        type: 13508
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 162
>> +                        num_resource: 6
>> +                        type: 13508
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 168
>> +                        num_resource: 2
>> +                        type: 13508
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 170
>> +                        num_resource: 2
>> +                        type: 13508
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 172
>> +                        num_resource: 96
>> +                        type: 13508
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 268
>> +                        num_resource: 32
>> +                        type: 13508
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 304
>> +                        num_resource: 0
>> +                        type: 13509
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 304
>> +                        num_resource: 4
>> +                        type: 13509
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 304
>> +                        num_resource: 0
>> +                        type: 13509
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 308
>> +                        num_resource: 6
>> +                        type: 13509
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 314
>> +                        num_resource: 2
>> +                        type: 13509
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 300
>> +                        num_resource: 0
>> +                        type: 13510
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 300
>> +                        num_resource: 2
>> +                        type: 13510
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 300
>> +                        num_resource: 0
>> +                        type: 13510
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 302
>> +                        num_resource: 2
>> +                        type: 13510
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 4
>> +                        num_resource: 0
>> +                        type: 13511
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 4
>> +                        num_resource: 4
>> +                        type: 13511
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 4
>> +                        num_resource: 0
>> +                        type: 13511
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 8
>> +                        num_resource: 6
>> +                        type: 13511
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 14
>> +                        num_resource: 2
>> +                        type: 13511
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 0
>> +                        type: 13512
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 2
>> +                        type: 13512
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 0
>> +                        type: 13512
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 2
>> +                        num_resource: 2
>> +                        type: 13512
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 2
>> +                        num_resource: 5
>> +                        type: 13514
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 7
>> +                        num_resource: 1
>> +                        type: 13514
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 3
>> +                        type: 13515
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 3
>> +                        num_resource: 2
>> +                        type: 13515
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 5
>> +                        num_resource: 1
>> +                        type: 13515
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 6
>> +                        num_resource: 1
>> +                        type: 13515
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 7
>> +                        num_resource: 3
>> +                        type: 13515
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 10
>> +                        num_resource: 3
>> +                        type: 13515
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 13
>> +                        num_resource: 3
>> +                        type: 13515
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 16
>> +                        num_resource: 3
>> +                        type: 13515
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 19
>> +                        num_resource: 3
>> +                        type: 13515
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 22
>> +                        num_resource: 6
>> +                        type: 13515
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 28
>> +                        num_resource: 3
>> +                        type: 13515
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 31
>> +                        num_resource: 1
>> +                        type: 13515
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 140
>> +                        num_resource: 16
>> +                        type: 13568
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 156
>> +                        num_resource: 16
>> +                        type: 13568
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 172
>> +                        num_resource: 128
>> +                        type: 13568
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 1
>> +                        type: 13569
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 49152
>> +                        num_resource: 1024
>> +                        type: 13570
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 1
>> +                        type: 13571
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 16
>> +                        num_resource: 8
>> +                        type: 13578
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 24
>> +                        num_resource: 2
>> +                        type: 13578
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 24
>> +                        num_resource: 0
>> +                        type: 13578
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 26
>> +                        num_resource: 2
>> +                        type: 13578
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 28
>> +                        num_resource: 2
>> +                        type: 13578
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 30
>> +                        num_resource: 2
>> +                        type: 13578
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 32
>> +                        num_resource: 2
>> +                        type: 13578
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 34
>> +                        num_resource: 8
>> +                        type: 13578
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 42
>> +                        num_resource: 2
>> +                        type: 13578
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 44
>> +                        num_resource: 4
>> +                        type: 13578
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 48
>> +                        num_resource: 1
>> +                        type: 13578
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 49
>> +                        num_resource: 47
>> +                        type: 13578
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 96
>> +                        num_resource: 1
>> +                        type: 13578
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 97
>> +                        num_resource: 4
>> +                        type: 13578
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 101
>> +                        num_resource: 4
>> +                        type: 13578
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 105
>> +                        num_resource: 4
>> +                        type: 13578
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 109
>> +                        num_resource: 8
>> +                        type: 13578
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 117
>> +                        num_resource: 6
>> +                        type: 13578
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 123
>> +                        num_resource: 16
>> +                        type: 13578
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 139
>> +                        num_resource: 1
>> +                        type: 13578
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 4
>> +                        num_resource: 0
>> +                        type: 13579
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 4
>> +                        num_resource: 4
>> +                        type: 13579
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 4
>> +                        num_resource: 0
>> +                        type: 13579
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 8
>> +                        num_resource: 6
>> +                        type: 13579
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 14
>> +                        num_resource: 2
>> +                        type: 13579
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 0
>> +                        type: 13580
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 2
>> +                        type: 13580
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 0
>> +                        type: 13580
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 2
>> +                        num_resource: 2
>> +                        type: 13580
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 16
>> +                        num_resource: 8
>> +                        type: 13581
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 24
>> +                        num_resource: 2
>> +                        type: 13581
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 24
>> +                        num_resource: 0
>> +                        type: 13581
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 26
>> +                        num_resource: 2
>> +                        type: 13581
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 28
>> +                        num_resource: 2
>> +                        type: 13581
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 30
>> +                        num_resource: 2
>> +                        type: 13581
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 32
>> +                        num_resource: 2
>> +                        type: 13581
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 34
>> +                        num_resource: 8
>> +                        type: 13581
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 42
>> +                        num_resource: 2
>> +                        type: 13581
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 44
>> +                        num_resource: 4
>> +                        type: 13581
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 48
>> +                        num_resource: 1
>> +                        type: 13581
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 49
>> +                        num_resource: 47
>> +                        type: 13581
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 96
>> +                        num_resource: 1
>> +                        type: 13581
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 97
>> +                        num_resource: 4
>> +                        type: 13581
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 101
>> +                        num_resource: 4
>> +                        type: 13581
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 105
>> +                        num_resource: 4
>> +                        type: 13581
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 109
>> +                        num_resource: 8
>> +                        type: 13581
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 117
>> +                        num_resource: 6
>> +                        type: 13581
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 123
>> +                        num_resource: 10
>> +                        type: 13581
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 133
>> +                        num_resource: 6
>> +                        type: 13581
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 139
>> +                        num_resource: 1
>> +                        type: 13581
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 140
>> +                        num_resource: 16
>> +                        type: 13582
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 156
>> +                        num_resource: 6
>> +                        type: 13582
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 162
>> +                        num_resource: 6
>> +                        type: 13582
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 168
>> +                        num_resource: 2
>> +                        type: 13582
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 170
>> +                        num_resource: 2
>> +                        type: 13582
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 172
>> +                        num_resource: 96
>> +                        type: 13582
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 268
>> +                        num_resource: 32
>> +                        type: 13582
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 4
>> +                        num_resource: 0
>> +                        type: 13583
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 4
>> +                        num_resource: 4
>> +                        type: 13583
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 4
>> +                        num_resource: 0
>> +                        type: 13583
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 8
>> +                        num_resource: 6
>> +                        type: 13583
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 14
>> +                        num_resource: 2
>> +                        type: 13583
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 0
>> +                        type: 13584
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 2
>> +                        type: 13584
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 0
>> +                        type: 13584
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 2
>> +                        num_resource: 2
>> +                        type: 13584
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 10
>> +                        num_resource: 100
>> +                        type: 13632
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 110
>> +                        num_resource: 32
>> +                        type: 13632
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 142
>> +                        num_resource: 46
>> +                        type: 13632
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 196
>> +                        num_resource: 28
>> +                        type: 13632
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 228
>> +                        num_resource: 28
>> +                        type: 13632
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 260
>> +                        num_resource: 28
>> +                        type: 13632
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 292
>> +                        num_resource: 28
>> +                        type: 13632
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 320
>> +                        num_resource: 24
>> +                        type: 13632
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 352
>> +                        num_resource: 24
>> +                        type: 13632
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 400
>> +                        num_resource: 4
>> +                        type: 13632
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 404
>> +                        num_resource: 4
>> +                        type: 13632
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 16
>> +                        num_resource: 32
>> +                        type: 14922
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 48
>> +                        num_resource: 16
>> +                        type: 14922
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 64
>> +                        num_resource: 64
>> +                        type: 14922
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 128
>> +                        num_resource: 4
>> +                        type: 14922
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 132
>> +                        num_resource: 16
>> +                        type: 14922
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 148
>> +                        num_resource: 16
>> +                        type: 14922
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 164
>> +                        num_resource: 8
>> +                        type: 14922
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 172
>> +                        num_resource: 8
>> +                        type: 14922
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 180
>> +                        num_resource: 8
>> +                        type: 14922
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 188
>> +                        num_resource: 24
>> +                        type: 14922
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 212
>> +                        num_resource: 8
>> +                        type: 14922
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 220
>> +                        num_resource: 36
>> +                        type: 14922
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 16400
>> +                        num_resource: 128
>> +                        type: 14925
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 16528
>> +                        num_resource: 128
>> +                        type: 14925
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 16656
>> +                        num_resource: 256
>> +                        type: 14925
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 16912
>> +                        num_resource: 64
>> +                        type: 14925
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 16976
>> +                        num_resource: 128
>> +                        type: 14925
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 17104
>> +                        num_resource: 128
>> +                        type: 14925
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 17232
>> +                        num_resource: 64
>> +                        type: 14925
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 17296
>> +                        num_resource: 64
>> +                        type: 14925
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 17360
>> +                        num_resource: 64
>> +                        type: 14925
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 17424
>> +                        num_resource: 128
>> +                        type: 14925
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 17552
>> +                        num_resource: 128
>> +                        type: 14925
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 17680
>> +                        num_resource: 240
>> +                        type: 14925
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 1
>> +                        num_resource: 4
>> +                        type: 14976
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 5
>> +                        num_resource: 4
>> +                        type: 14976
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 9
>> +                        num_resource: 4
>> +                        type: 14976
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 13
>> +                        num_resource: 4
>> +                        type: 14976
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 17
>> +                        num_resource: 4
>> +                        type: 14976
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 21
>> +                        num_resource: 4
>> +                        type: 14976
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 25
>> +                        num_resource: 4
>> +                        type: 14976
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 29
>> +                        num_resource: 4
>> +                        type: 14976
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 33
>> +                        num_resource: 4
>> +                        type: 14976
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 37
>> +                        num_resource: 16
>> +                        type: 14976
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 53
>> +                        num_resource: 4
>> +                        type: 14976
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 57
>> +                        num_resource: 7
>> +                        type: 14976
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 1
>> +                        type: 15040
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 96
>> +                        num_resource: 20
>> +                        type: 15041
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 116
>> +                        num_resource: 8
>> +                        type: 15041
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 124
>> +                        num_resource: 32
>> +                        type: 15041
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 156
>> +                        num_resource: 12
>> +                        type: 15041
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 168
>> +                        num_resource: 8
>> +                        type: 15041
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 176
>> +                        num_resource: 8
>> +                        type: 15041
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 184
>> +                        num_resource: 8
>> +                        type: 15041
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 192
>> +                        num_resource: 8
>> +                        type: 15041
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 200
>> +                        num_resource: 8
>> +                        type: 15041
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 208
>> +                        num_resource: 16
>> +                        type: 15041
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 224
>> +                        num_resource: 8
>> +                        type: 15041
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 232
>> +                        num_resource: 20
>> +                        type: 15041
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 50
>> +                        num_resource: 4
>> +                        type: 15042
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 54
>> +                        num_resource: 2
>> +                        type: 15042
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 54
>> +                        num_resource: 0
>> +                        type: 15042
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 56
>> +                        num_resource: 0
>> +                        type: 15042
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 56
>> +                        num_resource: 1
>> +                        type: 15042
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 57
>> +                        num_resource: 1
>> +                        type: 15042
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 58
>> +                        num_resource: 1
>> +                        type: 15042
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 59
>> +                        num_resource: 1
>> +                        type: 15042
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 60
>> +                        num_resource: 1
>> +                        type: 15042
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 61
>> +                        num_resource: 1
>> +                        type: 15042
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 62
>> +                        num_resource: 1
>> +                        type: 15042
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 63
>> +                        num_resource: 9
>> +                        type: 15042
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 72
>> +                        num_resource: 6
>> +                        type: 15042
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 78
>> +                        num_resource: 3
>> +                        type: 15042
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 81
>> +                        num_resource: 2
>> +                        type: 15042
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 83
>> +                        num_resource: 1
>> +                        type: 15042
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 84
>> +                        num_resource: 1
>> +                        type: 15042
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 85
>> +                        num_resource: 1
>> +                        type: 15042
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 86
>> +                        num_resource: 1
>> +                        type: 15042
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 87
>> +                        num_resource: 1
>> +                        type: 15042
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 88
>> +                        num_resource: 2
>> +                        type: 15042
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 90
>> +                        num_resource: 1
>> +                        type: 15042
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 91
>> +                        num_resource: 2
>> +                        type: 15042
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 2
>> +                        num_resource: 4
>> +                        type: 15043
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 6
>> +                        num_resource: 2
>> +                        type: 15043
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 6
>> +                        num_resource: 0
>> +                        type: 15043
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 8
>> +                        num_resource: 0
>> +                        type: 15043
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 8
>> +                        num_resource: 1
>> +                        type: 15043
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 9
>> +                        num_resource: 1
>> +                        type: 15043
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 10
>> +                        num_resource: 1
>> +                        type: 15043
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 11
>> +                        num_resource: 1
>> +                        type: 15043
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 12
>> +                        num_resource: 1
>> +                        type: 15043
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 13
>> +                        num_resource: 1
>> +                        type: 15043
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 14
>> +                        num_resource: 1
>> +                        type: 15043
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 15
>> +                        num_resource: 9
>> +                        type: 15043
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 24
>> +                        num_resource: 6
>> +                        type: 15043
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 30
>> +                        num_resource: 3
>> +                        type: 15043
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 33
>> +                        num_resource: 2
>> +                        type: 15043
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 35
>> +                        num_resource: 1
>> +                        type: 15043
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 36
>> +                        num_resource: 1
>> +                        type: 15043
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 37
>> +                        num_resource: 1
>> +                        type: 15043
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 38
>> +                        num_resource: 1
>> +                        type: 15043
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 39
>> +                        num_resource: 1
>> +                        type: 15043
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 40
>> +                        num_resource: 2
>> +                        type: 15043
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 42
>> +                        num_resource: 1
>> +                        type: 15043
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 43
>> +                        num_resource: 3
>> +                        type: 15043
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 48
>> +                        num_resource: 0
>> +                        type: 15045
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 48
>> +                        num_resource: 2
>> +                        type: 15045
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 0
>> +                        type: 15047
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 2
>> +                        type: 15047
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 2
>> +                        num_resource: 5
>> +                        type: 15050
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 7
>> +                        num_resource: 1
>> +                        type: 15050
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 3
>> +                        type: 15051
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 3
>> +                        num_resource: 2
>> +                        type: 15051
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 5
>> +                        num_resource: 3
>> +                        type: 15051
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 8
>> +                        num_resource: 3
>> +                        type: 15051
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 11
>> +                        num_resource: 3
>> +                        type: 15051
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 14
>> +                        num_resource: 3
>> +                        type: 15051
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 17
>> +                        num_resource: 3
>> +                        type: 15051
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 20
>> +                        num_resource: 3
>> +                        type: 15051
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 23
>> +                        num_resource: 3
>> +                        type: 15051
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 26
>> +                        num_resource: 3
>> +                        type: 15051
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 29
>> +                        num_resource: 3
>> +                        type: 15051
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 48
>> +                        num_resource: 8
>> +                        type: 15104
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 56
>> +                        num_resource: 4
>> +                        type: 15104
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 60
>> +                        num_resource: 8
>> +                        type: 15104
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 68
>> +                        num_resource: 4
>> +                        type: 15104
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 72
>> +                        num_resource: 4
>> +                        type: 15104
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 76
>> +                        num_resource: 4
>> +                        type: 15104
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 80
>> +                        num_resource: 8
>> +                        type: 15104
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 88
>> +                        num_resource: 4
>> +                        type: 15104
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 92
>> +                        num_resource: 4
>> +                        type: 15104
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 1
>> +                        type: 15105
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 56320
>> +                        num_resource: 256
>> +                        type: 15106
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 1
>> +                        type: 15107
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 2
>> +                        num_resource: 4
>> +                        type: 15114
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 6
>> +                        num_resource: 2
>> +                        type: 15114
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 6
>> +                        num_resource: 0
>> +                        type: 15114
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 8
>> +                        num_resource: 0
>> +                        type: 15114
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 8
>> +                        num_resource: 1
>> +                        type: 15114
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 9
>> +                        num_resource: 1
>> +                        type: 15114
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 10
>> +                        num_resource: 1
>> +                        type: 15114
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 11
>> +                        num_resource: 1
>> +                        type: 15114
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 12
>> +                        num_resource: 1
>> +                        type: 15114
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 13
>> +                        num_resource: 1
>> +                        type: 15114
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 14
>> +                        num_resource: 1
>> +                        type: 15114
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 15
>> +                        num_resource: 9
>> +                        type: 15114
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 24
>> +                        num_resource: 6
>> +                        type: 15114
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 30
>> +                        num_resource: 3
>> +                        type: 15114
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 33
>> +                        num_resource: 2
>> +                        type: 15114
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 35
>> +                        num_resource: 1
>> +                        type: 15114
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 36
>> +                        num_resource: 1
>> +                        type: 15114
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 37
>> +                        num_resource: 1
>> +                        type: 15114
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 38
>> +                        num_resource: 1
>> +                        type: 15114
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 39
>> +                        num_resource: 1
>> +                        type: 15114
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 40
>> +                        num_resource: 2
>> +                        type: 15114
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 42
>> +                        num_resource: 1
>> +                        type: 15114
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 43
>> +                        num_resource: 2
>> +                        type: 15114
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 0
>> +                        type: 15115
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 2
>> +                        type: 15115
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 2
>> +                        num_resource: 4
>> +                        type: 15117
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 6
>> +                        num_resource: 2
>> +                        type: 15117
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 6
>> +                        num_resource: 0
>> +                        type: 15117
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 8
>> +                        num_resource: 0
>> +                        type: 15117
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 8
>> +                        num_resource: 1
>> +                        type: 15117
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 9
>> +                        num_resource: 1
>> +                        type: 15117
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 10
>> +                        num_resource: 1
>> +                        type: 15117
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 11
>> +                        num_resource: 1
>> +                        type: 15117
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 12
>> +                        num_resource: 1
>> +                        type: 15117
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 13
>> +                        num_resource: 1
>> +                        type: 15117
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 14
>> +                        num_resource: 1
>> +                        type: 15117
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 15
>> +                        num_resource: 9
>> +                        type: 15117
>> +                        host_id: 12
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 24
>> +                        num_resource: 6
>> +                        type: 15117
>> +                        host_id: 13
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 30
>> +                        num_resource: 3
>> +                        type: 15117
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 33
>> +                        num_resource: 2
>> +                        type: 15117
>> +                        host_id: 5
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 35
>> +                        num_resource: 1
>> +                        type: 15117
>> +                        host_id: 40
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 36
>> +                        num_resource: 1
>> +                        type: 15117
>> +                        host_id: 42
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 37
>> +                        num_resource: 1
>> +                        type: 15117
>> +                        host_id: 21
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 38
>> +                        num_resource: 1
>> +                        type: 15117
>> +                        host_id: 26
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 39
>> +                        num_resource: 1
>> +                        type: 15117
>> +                        host_id: 28
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 40
>> +                        num_resource: 2
>> +                        type: 15117
>> +                        host_id: 35
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 42
>> +                        num_resource: 1
>> +                        type: 15117
>> +                        host_id: 37
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 43
>> +                        num_resource: 3
>> +                        type: 15117
>> +                        host_id: 128
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 0
>> +                        type: 15119
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 0
>> +                        num_resource: 2
>> +                        type: 15119
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 12
>> +                        num_resource: 20
>> +                        type: 15168
>> +                        host_id: 3
>> +                        reserved: 0
>> +
>> +                -
>> +                        start_resource: 36
>> +                        num_resource: 28
>> +                        type: 15168
>> +                        host_id: 5
>> +                        reserved: 0
>> diff --git a/board/ti/j721e/sec-cfg.yaml b/board/ti/j721e/sec-cfg.yaml
>> new file mode 100644
>> index 0000000000..dbaae99033
>> --- /dev/null
>> +++ b/board/ti/j721e/sec-cfg.yaml
>> @@ -0,0 +1,381 @@
>> +# SPDX-License-Identifier: GPL-2.0+
>> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
>> +#
>> +# Security configuration for J721E
>> +#
>> +
>> +---
>> +
>> +sec-cfg:
>> +        rev:
>> +                boardcfg_abi_maj: 0x0
>> +                boardcfg_abi_min: 0x1
>> +        processor_acl_list:
>> +                subhdr:
>> +                        magic: 0xF1EA
>> +                        size: 164
>> +                proc_acl_entries:
>> +                        - #1
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #2
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #3
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #4
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #5
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #6
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #7
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #8
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #9
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #10
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #11
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #12
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #13
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #14
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #15
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #16
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #17
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #18
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #19
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #20
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #21
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #22
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #23
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #24
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #25
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #26
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #27
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #28
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #29
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #30
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #31
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +                        - #32
>> +                                processor_id: 0
>> +                                proc_access_master: 0
>> +                                proc_access_secondary: [0, 0, 0]
>> +
>> +        host_hierarchy:
>> +                subhdr:
>> +                        magic: 0x8D27
>> +                        size: 68
>> +                host_hierarchy_entries:
>> +                        - #1
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #2
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #3
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #4
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #5
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #6
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #7
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #8
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #9
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #10
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #11
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #12
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #13
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #14
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #15
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #16
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #17
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #18
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #19
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #20
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #21
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #22
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #23
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #24
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #25
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #26
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #27
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #28
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #29
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #30
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #31
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +                        - #32
>> +                                host_id: 0
>> +                                supervisor_host_id: 0
>> +        otp_config:
>> +                subhdr:
>> +                        magic: 0x4081
>> +                        size: 69
>> +                otp_entry:
>> +                        - #1
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #2
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #3
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #4
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #5
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #6
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #7
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #8
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #9
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #10
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #11
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #12
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #13
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #14
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #15
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #16
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #17
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #18
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #19
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #20
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #21
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #22
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #23
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #24
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #25
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #26
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #27
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #28
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #29
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #30
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #31
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                        - #32
>> +                                host_id: 0
>> +                                host_perms: 0
>> +                write_host_id: 0
>> +        dkek_config:
>> +                subhdr:
>> +                        magic: 0x5170
>> +                        size: 12
>> +                allowed_hosts: [128, 0, 0, 0]
>> +                allow_dkek_export_tisci: 0x5A
>> +                rsvd: [0, 0, 0]
>> +        sa2ul_cfg:
>> +                subhdr:
>> +                        magic: 0x23BE
>> +                        size: 0
>> +                auth_resource_owner: 0
>> +                enable_saul_psil_global_config_writes: 0
>> +                rsvd: [0, 0]
>> +        sec_dbg_config:
>> +                subhdr:
>> +                        magic: 0x42AF
>> +                        size: 16
>> +                allow_jtag_unlock: 0x5A
>> +                allow_wildcard_unlock: 0x5A
>> +                allowed_debug_level_rsvd: 0
>> +                rsvd: 0
>> +                min_cert_rev: 0x0
>> +                jtag_unlock_hosts: [0, 0, 0, 0]
>> +        sec_handover_cfg:
>> +                subhdr:
>> +                        magic: 0x608F
>> +                        size: 10
>> +                handover_msg_sender: 0
>> +                handover_to_host_id: 0
>> +                rsvd: [0, 0, 0, 0]
>> +
> 
> ...
> Applying: j721e: schema: yaml: Add general schema and J721E board config
> files
> .git/rebase-apply/patch:498: new blank line at EOF.
> +
> .git/rebase-apply/patch:517: new blank line at EOF.
> +
> .git/rebase-apply/patch:4084: new blank line at EOF.
> +
> warning: 3 lines add whitespace errors.
> 
> Jan
> 

I hadn't seen these warnings when applying locally, will check and update 
accordingly.

-- 
Thanking You
Neha Malcom Francis

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: [PATCH v5 12/23] j721s2: yaml: Add board configs for J721S2
  2023-07-07 12:34 ` [PATCH v5 12/23] j721s2: yaml: Add board configs for J721S2 Neha Malcom Francis
@ 2023-07-11  4:54   ` Jan Kiszka
  0 siblings, 0 replies; 42+ messages in thread
From: Jan Kiszka @ 2023-07-11  4:54 UTC (permalink / raw)
  To: Neha Malcom Francis, u-boot, trini, sjg, afd, vigneshr, rogerq,
	kamlesh, bb, alpernebiyasak
  Cc: nm, u-kumar1, m-chawdhry, christian.gmeiner, xypron.glpk

On 07.07.23 14:34, Neha Malcom Francis wrote:
> Added YAML configs for J721S2
> 
> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
> ---
>  board/ti/j721s2/board-cfg.yaml |   37 +
>  board/ti/j721s2/pm-cfg.yaml    |   12 +
>  board/ti/j721s2/rm-cfg.yaml    | 2901 ++++++++++++++++++++++++++++++++
>  board/ti/j721s2/sec-cfg.yaml   |  379 +++++
>  4 files changed, 3329 insertions(+)
>  create mode 100644 board/ti/j721s2/board-cfg.yaml
>  create mode 100644 board/ti/j721s2/pm-cfg.yaml
>  create mode 100644 board/ti/j721s2/rm-cfg.yaml
>  create mode 100644 board/ti/j721s2/sec-cfg.yaml
> 
> diff --git a/board/ti/j721s2/board-cfg.yaml b/board/ti/j721s2/board-cfg.yaml
> new file mode 100644
> index 0000000000..d80f308ca6
> --- /dev/null
> +++ b/board/ti/j721s2/board-cfg.yaml
> @@ -0,0 +1,37 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +#
> +# Board configuration for J721S2
> +#
> +
> +---
> +
> +board-cfg:
> +    rev:
> +        boardcfg_abi_maj : 0x0
> +        boardcfg_abi_min : 0x1
> +    control:
> +        subhdr:
> +            magic: 0xC1D3
> +            size: 7
> +        main_isolation_enable : 0x5A
> +        main_isolation_hostid : 0x2
> +    secproxy:
> +        subhdr:
> +            magic: 0x1207
> +            size: 7
> +        scaling_factor : 0x1
> +        scaling_profile : 0x1
> +        disable_main_nav_secure_proxy : 0
> +    msmc:
> +        subhdr:
> +            magic: 0xA5C3
> +            size: 5
> +        msmc_cache_size : 0x0
> +    debug_cfg:
> +        subhdr:
> +            magic: 0x020C
> +            size: 8
> +        trace_dst_enables : 0x00
> +        trace_src_enables : 0x00
> +
> diff --git a/board/ti/j721s2/pm-cfg.yaml b/board/ti/j721s2/pm-cfg.yaml
> new file mode 100644
> index 0000000000..45994e23cc
> --- /dev/null
> +++ b/board/ti/j721s2/pm-cfg.yaml
> @@ -0,0 +1,12 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +#
> +# Power management configuration for J721S2
> +#
> +
> +---
> +
> +pm-cfg:
> +    rev:
> +        boardcfg_abi_maj : 0x0
> +        boardcfg_abi_min : 0x1
> diff --git a/board/ti/j721s2/rm-cfg.yaml b/board/ti/j721s2/rm-cfg.yaml
> new file mode 100644
> index 0000000000..6058f3b35c
> --- /dev/null
> +++ b/board/ti/j721s2/rm-cfg.yaml
> @@ -0,0 +1,2901 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +#
> +# Resource management configuration for J721S2
> +#
> +
> +---
> +
> +rm-cfg:
> +    rm_boardcfg:
> +        rev:
> +            boardcfg_abi_maj : 0x0
> +            boardcfg_abi_min : 0x1
> +        host_cfg:
> +            subhdr:
> +                magic: 0x4C41
> +                size : 356
> +            host_cfg_entries:
> +                - #1
> +                    host_id: 3
> +                    allowed_atype : 0x2A
> +                    allowed_qos : 0xAAAA
> +                    allowed_orderid : 0xAAAAAAAA
> +                    allowed_priority : 0xAAAA
> +                    allowed_sched_priority : 0xAA
> +                - #2
> +                    host_id: 5
> +                    allowed_atype : 0x2A
> +                    allowed_qos : 0xAAAA
> +                    allowed_orderid : 0xAAAAAAAA
> +                    allowed_priority : 0xAAAA
> +                    allowed_sched_priority : 0xAA
> +                - #3
> +                    host_id: 12
> +                    allowed_atype : 0x2A
> +                    allowed_qos : 0xAAAA
> +                    allowed_orderid : 0xAAAAAAAA
> +                    allowed_priority : 0xAAAA
> +                    allowed_sched_priority : 0xAA
> +                - #4
> +                    host_id: 13
> +                    allowed_atype : 0x2A
> +                    allowed_qos : 0xAAAA
> +                    allowed_orderid : 0xAAAAAAAA
> +                    allowed_priority : 0xAAAA
> +                    allowed_sched_priority : 0xAA
> +                - #5
> +                    host_id: 21
> +                    allowed_atype : 0x2A
> +                    allowed_qos : 0xAAAA
> +                    allowed_orderid : 0xAAAAAAAA
> +                    allowed_priority : 0xAAAA
> +                    allowed_sched_priority : 0xAA
> +                - #6
> +                    host_id: 23
> +                    allowed_atype : 0x2A
> +                    allowed_qos : 0xAAAA
> +                    allowed_orderid : 0xAAAAAAAA
> +                    allowed_priority : 0xAAAA
> +                    allowed_sched_priority : 0xAA
> +                - #7
> +                    host_id: 35
> +                    allowed_atype : 0x2A
> +                    allowed_qos : 0xAAAA
> +                    allowed_orderid : 0xAAAAAAAA
> +                    allowed_priority : 0xAAAA
> +                    allowed_sched_priority : 0xAA
> +                - #8
> +                    host_id: 37
> +                    allowed_atype : 0x2A
> +                    allowed_qos : 0xAAAA
> +                    allowed_orderid : 0xAAAAAAAA
> +                    allowed_priority : 0xAAAA
> +                    allowed_sched_priority : 0xAA
> +                - #9
> +                    host_id: 40
> +                    allowed_atype : 0x2A
> +                    allowed_qos : 0xAAAA
> +                    allowed_orderid : 0xAAAAAAAA
> +                    allowed_priority : 0xAAAA
> +                    allowed_sched_priority : 0xAA
> +                - #10
> +                    host_id: 42
> +                    allowed_atype : 0x2A
> +                    allowed_qos : 0xAAAA
> +                    allowed_orderid : 0xAAAAAAAA
> +                    allowed_priority : 0xAAAA
> +                    allowed_sched_priority : 0xAA
> +                - #11
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #12
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #13
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #14
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #15
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #16
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #17
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #18
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #19
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #20
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #21
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #22
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #23
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #24
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #25
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #26
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #27
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #28
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #29
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #30
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #31
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +                - #32
> +                    host_id: 0
> +                    allowed_atype : 0
> +                    allowed_qos : 0
> +                    allowed_orderid : 0
> +                    allowed_priority : 0
> +                    allowed_sched_priority : 0
> +        resasg:
> +            subhdr:
> +                magic: 0x7B25
> +                size : 8
> +            resasg_entries_size: 3032
> +            reserved : 0
> +    resasg_entries:
> +        -
> +                start_resource: 0
> +                num_resource: 32
> +                type: 7744
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 32
> +                num_resource: 24
> +                type: 7744
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 24
> +                type: 7808
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 24
> +                num_resource: 16
> +                type: 7808
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 48
> +                type: 7936
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 8
> +                type: 8000
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 8
> +                num_resource: 8
> +                type: 8000
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 16
> +                num_resource: 6
> +                type: 8000
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 22
> +                num_resource: 6
> +                type: 8000
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 28
> +                num_resource: 2
> +                type: 8000
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 30
> +                num_resource: 2
> +                type: 8000
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 4
> +                type: 9472
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 4
> +                num_resource: 4
> +                type: 9472
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 8
> +                num_resource: 4
> +                type: 9472
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 12
> +                num_resource: 4
> +                type: 9472
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 16
> +                num_resource: 8
> +                type: 9472
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 24
> +                num_resource: 8
> +                type: 9472
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 32
> +                num_resource: 12
> +                type: 9472
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 44
> +                num_resource: 12
> +                type: 9472
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 16
> +                type: 9600
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 50176
> +                num_resource: 96
> +                type: 14402
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 1
> +                type: 14403
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 16
> +                num_resource: 16
> +                type: 14414
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 32
> +                num_resource: 16
> +                type: 14414
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 8
> +                type: 14415
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 8
> +                num_resource: 8
> +                type: 14415
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 16
> +                type: 14433
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 16
> +                num_resource: 16
> +                type: 14433
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 8
> +                type: 14434
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 8
> +                num_resource: 8
> +                type: 14434
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 10
> +                num_resource: 100
> +                type: 14528
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 110
> +                num_resource: 32
> +                type: 14528
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 142
> +                num_resource: 21
> +                type: 14528
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 163
> +                num_resource: 21
> +                type: 14528
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 196
> +                num_resource: 28
> +                type: 14528
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 228
> +                num_resource: 28
> +                type: 14528
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 260
> +                num_resource: 28
> +                type: 14528
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 292
> +                num_resource: 28
> +                type: 14528
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 400
> +                num_resource: 4
> +                type: 14528
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 404
> +                num_resource: 4
> +                type: 14528
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 64
> +                type: 16266
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 20480
> +                num_resource: 1024
> +                type: 16269
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 64
> +                type: 16330
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 22528
> +                num_resource: 1024
> +                type: 16333
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 4
> +                type: 16384
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 4
> +                num_resource: 4
> +                type: 16384
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 8
> +                num_resource: 4
> +                type: 16384
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 12
> +                num_resource: 4
> +                type: 16384
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 16
> +                num_resource: 12
> +                type: 16384
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 28
> +                num_resource: 4
> +                type: 16384
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 32
> +                num_resource: 4
> +                type: 16384
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 36
> +                num_resource: 4
> +                type: 16384
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 40
> +                num_resource: 4
> +                type: 16384
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 44
> +                num_resource: 4
> +                type: 16384
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 48
> +                num_resource: 16
> +                type: 16384
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 1
> +                type: 16576
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 423
> +                num_resource: 32
> +                type: 16577
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 455
> +                num_resource: 32
> +                type: 16577
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 487
> +                num_resource: 182
> +                type: 16577
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 669
> +                num_resource: 40
> +                type: 16577
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 709
> +                num_resource: 10
> +                type: 16577
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 719
> +                num_resource: 10
> +                type: 16577
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 729
> +                num_resource: 6
> +                type: 16577
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 735
> +                num_resource: 6
> +                type: 16577
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 878
> +                num_resource: 128
> +                type: 16577
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 1006
> +                num_resource: 10
> +                type: 16577
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 345
> +                num_resource: 6
> +                type: 16578
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 351
> +                num_resource: 0
> +                type: 16578
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 351
> +                num_resource: 2
> +                type: 16578
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 353
> +                num_resource: 2
> +                type: 16578
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 355
> +                num_resource: 6
> +                type: 16578
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 361
> +                num_resource: 1
> +                type: 16578
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 362
> +                num_resource: 1
> +                type: 16578
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 363
> +                num_resource: 1
> +                type: 16578
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 364
> +                num_resource: 2
> +                type: 16578
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 366
> +                num_resource: 2
> +                type: 16578
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 368
> +                num_resource: 22
> +                type: 16578
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 390
> +                num_resource: 6
> +                type: 16578
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 396
> +                num_resource: 4
> +                type: 16578
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 400
> +                num_resource: 4
> +                type: 16578
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 404
> +                num_resource: 12
> +                type: 16578
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 416
> +                num_resource: 1
> +                type: 16578
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 417
> +                num_resource: 2
> +                type: 16578
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 419
> +                num_resource: 2
> +                type: 16578
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 421
> +                num_resource: 2
> +                type: 16578
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 4
> +                num_resource: 6
> +                type: 16579
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 10
> +                num_resource: 0
> +                type: 16579
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 10
> +                num_resource: 2
> +                type: 16579
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 12
> +                num_resource: 2
> +                type: 16579
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 14
> +                num_resource: 6
> +                type: 16579
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 20
> +                num_resource: 1
> +                type: 16579
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 21
> +                num_resource: 1
> +                type: 16579
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 22
> +                num_resource: 1
> +                type: 16579
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 23
> +                num_resource: 2
> +                type: 16579
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 25
> +                num_resource: 2
> +                type: 16579
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 27
> +                num_resource: 22
> +                type: 16579
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 49
> +                num_resource: 6
> +                type: 16579
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 55
> +                num_resource: 4
> +                type: 16579
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 59
> +                num_resource: 4
> +                type: 16579
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 63
> +                num_resource: 12
> +                type: 16579
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 75
> +                num_resource: 4
> +                type: 16579
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 79
> +                num_resource: 2
> +                type: 16579
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 81
> +                num_resource: 2
> +                type: 16579
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 83
> +                num_resource: 2
> +                type: 16579
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 85
> +                num_resource: 16
> +                type: 16580
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 101
> +                num_resource: 12
> +                type: 16580
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 113
> +                num_resource: 2
> +                type: 16580
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 115
> +                num_resource: 2
> +                type: 16580
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 117
> +                num_resource: 96
> +                type: 16580
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 309
> +                num_resource: 32
> +                type: 16580
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 343
> +                num_resource: 1
> +                type: 16581
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 344
> +                num_resource: 1
> +                type: 16581
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 341
> +                num_resource: 1
> +                type: 16582
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 342
> +                num_resource: 1
> +                type: 16582
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 2
> +                num_resource: 1
> +                type: 16583
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 3
> +                num_resource: 1
> +                type: 16583
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 1
> +                type: 16584
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 1
> +                num_resource: 1
> +                type: 16584
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 2
> +                num_resource: 5
> +                type: 16586
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 7
> +                num_resource: 1
> +                type: 16586
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 3
> +                type: 16587
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 3
> +                num_resource: 2
> +                type: 16587
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 5
> +                num_resource: 3
> +                type: 16587
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 8
> +                num_resource: 3
> +                type: 16587
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 11
> +                num_resource: 6
> +                type: 16587
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 17
> +                num_resource: 3
> +                type: 16587
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 20
> +                num_resource: 3
> +                type: 16587
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 23
> +                num_resource: 3
> +                type: 16587
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 26
> +                num_resource: 1
> +                type: 16587
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 27
> +                num_resource: 1
> +                type: 16587
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 28
> +                num_resource: 4
> +                type: 16587
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 82
> +                num_resource: 16
> +                type: 16832
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 98
> +                num_resource: 16
> +                type: 16832
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 114
> +                num_resource: 110
> +                type: 16832
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 1
> +                type: 16833
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 49152
> +                num_resource: 1024
> +                type: 16834
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 1
> +                type: 16835
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 4
> +                num_resource: 6
> +                type: 16842
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 10
> +                num_resource: 0
> +                type: 16842
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 10
> +                num_resource: 2
> +                type: 16842
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 12
> +                num_resource: 2
> +                type: 16842
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 14
> +                num_resource: 6
> +                type: 16842
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 20
> +                num_resource: 1
> +                type: 16842
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 21
> +                num_resource: 1
> +                type: 16842
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 22
> +                num_resource: 1
> +                type: 16842
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 23
> +                num_resource: 2
> +                type: 16842
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 25
> +                num_resource: 2
> +                type: 16842
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 27
> +                num_resource: 22
> +                type: 16842
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 49
> +                num_resource: 6
> +                type: 16842
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 55
> +                num_resource: 4
> +                type: 16842
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 59
> +                num_resource: 4
> +                type: 16842
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 63
> +                num_resource: 12
> +                type: 16842
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 75
> +                num_resource: 1
> +                type: 16842
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 76
> +                num_resource: 2
> +                type: 16842
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 78
> +                num_resource: 2
> +                type: 16842
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 80
> +                num_resource: 2
> +                type: 16842
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 2
> +                num_resource: 1
> +                type: 16843
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 3
> +                num_resource: 1
> +                type: 16843
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 1
> +                type: 16844
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 1
> +                num_resource: 1
> +                type: 16844
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 4
> +                num_resource: 6
> +                type: 16845
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 10
> +                num_resource: 0
> +                type: 16845
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 10
> +                num_resource: 2
> +                type: 16845
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 12
> +                num_resource: 2
> +                type: 16845
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 14
> +                num_resource: 6
> +                type: 16845
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 20
> +                num_resource: 1
> +                type: 16845
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 21
> +                num_resource: 1
> +                type: 16845
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 22
> +                num_resource: 1
> +                type: 16845
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 23
> +                num_resource: 2
> +                type: 16845
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 25
> +                num_resource: 2
> +                type: 16845
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 27
> +                num_resource: 22
> +                type: 16845
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 49
> +                num_resource: 6
> +                type: 16845
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 55
> +                num_resource: 4
> +                type: 16845
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 59
> +                num_resource: 4
> +                type: 16845
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 63
> +                num_resource: 12
> +                type: 16845
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 75
> +                num_resource: 4
> +                type: 16845
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 79
> +                num_resource: 2
> +                type: 16845
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 81
> +                num_resource: 2
> +                type: 16845
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 83
> +                num_resource: 2
> +                type: 16845
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 85
> +                num_resource: 16
> +                type: 16846
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 101
> +                num_resource: 12
> +                type: 16846
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 113
> +                num_resource: 2
> +                type: 16846
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 115
> +                num_resource: 2
> +                type: 16846
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 117
> +                num_resource: 96
> +                type: 16846
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 309
> +                num_resource: 32
> +                type: 16846
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 2
> +                num_resource: 1
> +                type: 16847
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 3
> +                num_resource: 1
> +                type: 16847
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 1
> +                type: 16848
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 1
> +                num_resource: 1
> +                type: 16848
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 34
> +                num_resource: 86
> +                type: 16970
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 120
> +                num_resource: 32
> +                type: 16970
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 152
> +                num_resource: 12
> +                type: 16970
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 164
> +                num_resource: 12
> +                type: 16970
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 176
> +                num_resource: 28
> +                type: 16970
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 204
> +                num_resource: 8
> +                type: 16970
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 212
> +                num_resource: 12
> +                type: 16970
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 224
> +                num_resource: 12
> +                type: 16970
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 236
> +                num_resource: 20
> +                type: 16970
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 34
> +                num_resource: 1024
> +                type: 16973
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 1058
> +                num_resource: 512
> +                type: 16973
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 1570
> +                num_resource: 256
> +                type: 16973
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 1826
> +                num_resource: 256
> +                type: 16973
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 2082
> +                num_resource: 512
> +                type: 16973
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 2594
> +                num_resource: 256
> +                type: 16973
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 2850
> +                num_resource: 256
> +                type: 16973
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 3106
> +                num_resource: 256
> +                type: 16973
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 3362
> +                num_resource: 32
> +                type: 16973
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 3394
> +                num_resource: 32
> +                type: 16973
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 3426
> +                num_resource: 1182
> +                type: 16973
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 1536
> +                num_resource: 16
> +                type: 16975
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 2048
> +                num_resource: 16
> +                type: 16976
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 2560
> +                num_resource: 16
> +                type: 16977
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 3072
> +                num_resource: 32
> +                type: 16978
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 3584
> +                num_resource: 32
> +                type: 16979
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 4096
> +                num_resource: 32
> +                type: 16980
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 12
> +                num_resource: 12
> +                type: 17152
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 36
> +                num_resource: 20
> +                type: 17152
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 1
> +                num_resource: 4
> +                type: 17344
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 5
> +                num_resource: 4
> +                type: 17344
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 9
> +                num_resource: 4
> +                type: 17344
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 13
> +                num_resource: 4
> +                type: 17344
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 17
> +                num_resource: 16
> +                type: 17344
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 33
> +                num_resource: 4
> +                type: 17344
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 37
> +                num_resource: 4
> +                type: 17344
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 41
> +                num_resource: 4
> +                type: 17344
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 45
> +                num_resource: 4
> +                type: 17344
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 49
> +                num_resource: 4
> +                type: 17344
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 53
> +                num_resource: 11
> +                type: 17344
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 1
> +                type: 17408
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 96
> +                num_resource: 20
> +                type: 17409
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 116
> +                num_resource: 8
> +                type: 17409
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 124
> +                num_resource: 8
> +                type: 17409
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 132
> +                num_resource: 8
> +                type: 17409
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 140
> +                num_resource: 16
> +                type: 17409
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 156
> +                num_resource: 8
> +                type: 17409
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 164
> +                num_resource: 8
> +                type: 17409
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 172
> +                num_resource: 8
> +                type: 17409
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 180
> +                num_resource: 32
> +                type: 17409
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 212
> +                num_resource: 12
> +                type: 17409
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 224
> +                num_resource: 28
> +                type: 17409
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 50
> +                num_resource: 4
> +                type: 17410
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 54
> +                num_resource: 0
> +                type: 17410
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 54
> +                num_resource: 1
> +                type: 17410
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 55
> +                num_resource: 1
> +                type: 17410
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 56
> +                num_resource: 1
> +                type: 17410
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 57
> +                num_resource: 1
> +                type: 17410
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 58
> +                num_resource: 1
> +                type: 17410
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 59
> +                num_resource: 1
> +                type: 17410
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 60
> +                num_resource: 2
> +                type: 17410
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 62
> +                num_resource: 0
> +                type: 17410
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 62
> +                num_resource: 9
> +                type: 17410
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 71
> +                num_resource: 6
> +                type: 17410
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 77
> +                num_resource: 1
> +                type: 17410
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 78
> +                num_resource: 1
> +                type: 17410
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 79
> +                num_resource: 2
> +                type: 17410
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 81
> +                num_resource: 1
> +                type: 17410
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 82
> +                num_resource: 1
> +                type: 17410
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 83
> +                num_resource: 1
> +                type: 17410
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 84
> +                num_resource: 3
> +                type: 17410
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 87
> +                num_resource: 2
> +                type: 17410
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 89
> +                num_resource: 4
> +                type: 17410
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 2
> +                num_resource: 4
> +                type: 17411
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 6
> +                num_resource: 0
> +                type: 17411
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 6
> +                num_resource: 1
> +                type: 17411
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 7
> +                num_resource: 1
> +                type: 17411
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 8
> +                num_resource: 1
> +                type: 17411
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 9
> +                num_resource: 1
> +                type: 17411
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 10
> +                num_resource: 1
> +                type: 17411
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 11
> +                num_resource: 1
> +                type: 17411
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 12
> +                num_resource: 2
> +                type: 17411
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 14
> +                num_resource: 0
> +                type: 17411
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 14
> +                num_resource: 9
> +                type: 17411
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 23
> +                num_resource: 6
> +                type: 17411
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 29
> +                num_resource: 1
> +                type: 17411
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 30
> +                num_resource: 1
> +                type: 17411
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 31
> +                num_resource: 2
> +                type: 17411
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 33
> +                num_resource: 1
> +                type: 17411
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 34
> +                num_resource: 1
> +                type: 17411
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 35
> +                num_resource: 1
> +                type: 17411
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 36
> +                num_resource: 3
> +                type: 17411
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 39
> +                num_resource: 2
> +                type: 17411
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 41
> +                num_resource: 5
> +                type: 17411
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 48
> +                num_resource: 0
> +                type: 17413
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 48
> +                num_resource: 2
> +                type: 17413
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 0
> +                type: 17415
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 2
> +                type: 17415
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 2
> +                num_resource: 5
> +                type: 17418
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 7
> +                num_resource: 1
> +                type: 17418
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 3
> +                type: 17419
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 3
> +                num_resource: 2
> +                type: 17419
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 5
> +                num_resource: 3
> +                type: 17419
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 8
> +                num_resource: 3
> +                type: 17419
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 11
> +                num_resource: 3
> +                type: 17419
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 14
> +                num_resource: 3
> +                type: 17419
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 17
> +                num_resource: 3
> +                type: 17419
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 20
> +                num_resource: 3
> +                type: 17419
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 23
> +                num_resource: 3
> +                type: 17419
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 26
> +                num_resource: 3
> +                type: 17419
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 29
> +                num_resource: 3
> +                type: 17419
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 48
> +                num_resource: 8
> +                type: 17472
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 56
> +                num_resource: 4
> +                type: 17472
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 60
> +                num_resource: 8
> +                type: 17472
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 68
> +                num_resource: 4
> +                type: 17472
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 72
> +                num_resource: 4
> +                type: 17472
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 76
> +                num_resource: 4
> +                type: 17472
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 80
> +                num_resource: 8
> +                type: 17472
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 88
> +                num_resource: 4
> +                type: 17472
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 92
> +                num_resource: 4
> +                type: 17472
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 1
> +                type: 17473
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 56320
> +                num_resource: 256
> +                type: 17474
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 1
> +                type: 17475
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 2
> +                num_resource: 4
> +                type: 17482
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 6
> +                num_resource: 0
> +                type: 17482
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 6
> +                num_resource: 1
> +                type: 17482
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 7
> +                num_resource: 1
> +                type: 17482
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 8
> +                num_resource: 1
> +                type: 17482
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 9
> +                num_resource: 1
> +                type: 17482
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 10
> +                num_resource: 1
> +                type: 17482
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 11
> +                num_resource: 1
> +                type: 17482
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 12
> +                num_resource: 2
> +                type: 17482
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 14
> +                num_resource: 0
> +                type: 17482
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 14
> +                num_resource: 9
> +                type: 17482
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 23
> +                num_resource: 6
> +                type: 17482
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 29
> +                num_resource: 1
> +                type: 17482
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 30
> +                num_resource: 1
> +                type: 17482
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 31
> +                num_resource: 2
> +                type: 17482
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 33
> +                num_resource: 1
> +                type: 17482
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 34
> +                num_resource: 1
> +                type: 17482
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 35
> +                num_resource: 1
> +                type: 17482
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 36
> +                num_resource: 3
> +                type: 17482
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 39
> +                num_resource: 2
> +                type: 17482
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 41
> +                num_resource: 4
> +                type: 17482
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 0
> +                type: 17483
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 2
> +                type: 17483
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 2
> +                num_resource: 4
> +                type: 17485
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 6
> +                num_resource: 0
> +                type: 17485
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 6
> +                num_resource: 1
> +                type: 17485
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 7
> +                num_resource: 1
> +                type: 17485
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 8
> +                num_resource: 1
> +                type: 17485
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 9
> +                num_resource: 1
> +                type: 17485
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 10
> +                num_resource: 1
> +                type: 17485
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 11
> +                num_resource: 1
> +                type: 17485
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 12
> +                num_resource: 2
> +                type: 17485
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 14
> +                num_resource: 0
> +                type: 17485
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 14
> +                num_resource: 9
> +                type: 17485
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 23
> +                num_resource: 6
> +                type: 17485
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 29
> +                num_resource: 1
> +                type: 17485
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 30
> +                num_resource: 1
> +                type: 17485
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 31
> +                num_resource: 2
> +                type: 17485
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 33
> +                num_resource: 1
> +                type: 17485
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 34
> +                num_resource: 1
> +                type: 17485
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 35
> +                num_resource: 1
> +                type: 17485
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 36
> +                num_resource: 3
> +                type: 17485
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 39
> +                num_resource: 2
> +                type: 17485
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 41
> +                num_resource: 5
> +                type: 17485
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 0
> +                type: 17487
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 0
> +                num_resource: 2
> +                type: 17487
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 22
> +                num_resource: 32
> +                type: 17610
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 54
> +                num_resource: 16
> +                type: 17610
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 70
> +                num_resource: 8
> +                type: 17610
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 78
> +                num_resource: 8
> +                type: 17610
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 86
> +                num_resource: 24
> +                type: 17610
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 110
> +                num_resource: 8
> +                type: 17610
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 118
> +                num_resource: 16
> +                type: 17610
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 134
> +                num_resource: 16
> +                type: 17610
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 150
> +                num_resource: 64
> +                type: 17610
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 214
> +                num_resource: 4
> +                type: 17610
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 218
> +                num_resource: 38
> +                type: 17610
> +                host_id: 128
> +                reserved: 0
> +
> +        -
> +                start_resource: 16406
> +                num_resource: 128
> +                type: 17613
> +                host_id: 12
> +                reserved: 0
> +
> +        -
> +                start_resource: 16534
> +                num_resource: 128
> +                type: 17613
> +                host_id: 13
> +                reserved: 0
> +
> +        -
> +                start_resource: 16662
> +                num_resource: 64
> +                type: 17613
> +                host_id: 21
> +                reserved: 0
> +
> +        -
> +                start_resource: 16726
> +                num_resource: 64
> +                type: 17613
> +                host_id: 23
> +                reserved: 0
> +
> +        -
> +                start_resource: 16790
> +                num_resource: 128
> +                type: 17613
> +                host_id: 35
> +                reserved: 0
> +
> +        -
> +                start_resource: 16918
> +                num_resource: 128
> +                type: 17613
> +                host_id: 37
> +                reserved: 0
> +
> +        -
> +                start_resource: 17046
> +                num_resource: 128
> +                type: 17613
> +                host_id: 40
> +                reserved: 0
> +
> +        -
> +                start_resource: 17174
> +                num_resource: 128
> +                type: 17613
> +                host_id: 42
> +                reserved: 0
> +
> +        -
> +                start_resource: 17302
> +                num_resource: 256
> +                type: 17613
> +                host_id: 3
> +                reserved: 0
> +
> +        -
> +                start_resource: 17558
> +                num_resource: 64
> +                type: 17613
> +                host_id: 5
> +                reserved: 0
> +
> +        -
> +                start_resource: 17622
> +                num_resource: 298
> +                type: 17613
> +                host_id: 128
> +                reserved: 0
> diff --git a/board/ti/j721s2/sec-cfg.yaml b/board/ti/j721s2/sec-cfg.yaml
> new file mode 100644
> index 0000000000..7484a1b58e
> --- /dev/null
> +++ b/board/ti/j721s2/sec-cfg.yaml
> @@ -0,0 +1,379 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +#
> +# Security management configuration for J721S2
> +#
> +
> +---
> +
> +sec-cfg:
> +    rev:
> +        boardcfg_abi_maj : 0x0
> +        boardcfg_abi_min : 0x1
> +    processor_acl_list:
> +        subhdr:
> +            magic: 0xF1EA
> +            size: 164
> +        proc_acl_entries:
> +            - #1
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #2
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #3
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #4
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #5
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #6
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #7
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #8
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #9
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #10
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #11
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #12
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #13
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #14
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #15
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #16
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #17
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #18
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #19
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #20
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #21
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #22
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #23
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #24
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #25
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #26
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #27
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #28
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #29
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #30
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #31
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +            - #32
> +                processor_id: 0
> +                proc_access_master: 0
> +                proc_access_secondary: [0, 0, 0]
> +    host_hierarchy:
> +        subhdr:
> +            magic: 0x8D27
> +            size: 68
> +        host_hierarchy_entries:
> +            - #1
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #2
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #3
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #4
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #5
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #6
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #7
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #8
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #9
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #10
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #11
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #12
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #13
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #14
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #15
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #16
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #17
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #18
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #19
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #20
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #21
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #22
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #23
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #24
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #25
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #26
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #27
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #28
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #29
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #30
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #31
> +                host_id: 0
> +                supervisor_host_id: 0
> +            - #32
> +                host_id: 0
> +                supervisor_host_id: 0
> +    otp_config:
> +        subhdr:
> +            magic: 0x4081
> +            size: 69
> +        write_host_id : 0
> +        otp_entry:
> +            - #1
> +                host_id: 0
> +                host_perms: 0
> +            - #2
> +                host_id: 0
> +                host_perms: 0
> +            - #3
> +                host_id: 0
> +                host_perms: 0
> +            - #4
> +                host_id: 0
> +                host_perms: 0
> +            - #5
> +                host_id: 0
> +                host_perms: 0
> +            - #6
> +                host_id: 0
> +                host_perms: 0
> +            - #7
> +                host_id: 0
> +                host_perms: 0
> +            - #8
> +                host_id: 0
> +                host_perms: 0
> +            - #9
> +                host_id: 0
> +                host_perms: 0
> +            - #10
> +                host_id: 0
> +                host_perms: 0
> +            - #11
> +                host_id: 0
> +                host_perms: 0
> +            - #12
> +                host_id: 0
> +                host_perms: 0
> +            - #13
> +                host_id: 0
> +                host_perms: 0
> +            - #14
> +                host_id: 0
> +                host_perms: 0
> +            - #15
> +                host_id: 0
> +                host_perms: 0
> +            - #16
> +                host_id: 0
> +                host_perms: 0
> +            - #17
> +                host_id: 0
> +                host_perms: 0
> +            - #18
> +                host_id: 0
> +                host_perms: 0
> +            - #19
> +                host_id: 0
> +                host_perms: 0
> +            - #20
> +                host_id: 0
> +                host_perms: 0
> +            - #21
> +                host_id: 0
> +                host_perms: 0
> +            - #22
> +                host_id: 0
> +                host_perms: 0
> +            - #23
> +                host_id: 0
> +                host_perms: 0
> +            - #24
> +                host_id: 0
> +                host_perms: 0
> +            - #25
> +                host_id: 0
> +                host_perms: 0
> +            - #26
> +                host_id: 0
> +                host_perms: 0
> +            - #27
> +                host_id: 0
> +                host_perms: 0
> +            - #28
> +                host_id: 0
> +                host_perms: 0
> +            - #29
> +                host_id: 0
> +                host_perms: 0
> +            - #30
> +                host_id: 0
> +                host_perms: 0
> +            - #31
> +                host_id: 0
> +                host_perms: 0
> +            - #32
> +                host_id: 0
> +                host_perms: 0
> +    dkek_config:
> +        subhdr:
> +            magic: 0x5170
> +            size: 12
> +        allowed_hosts: [128, 0, 0, 0]
> +        allow_dkek_export_tisci : 0x5A
> +        rsvd: [0, 0, 0]
> +    sa2ul_cfg:
> +        subhdr:
> +            magic: 0x23BE
> +            size : 0
> +        auth_resource_owner: 0
> +        enable_saul_psil_global_config_writes: 0
> +        rsvd: [0, 0]
> +    sec_dbg_config:
> +        subhdr:
> +            magic: 0x42AF
> +            size: 16
> +        allow_jtag_unlock : 0x0
> +        allow_wildcard_unlock : 0x0
> +        allowed_debug_level_rsvd: 0
> +        rsvd: 0
> +        min_cert_rev : 0x0
> +        jtag_unlock_hosts: [0, 0, 0, 0]
> +    sec_handover_cfg:
> +        subhdr:
> +            magic: 0x608F
> +            size: 10
> +        handover_msg_sender : 0
> +        handover_to_host_id : 0
> +        rsvd: [0, 0, 0, 0]

Applying: j721s2: yaml: Add board configs for J721S2
.git/rebase-apply/patch:54: new blank line at EOF.
+
warning: 1 line adds whitespace errors.

Jan

-- 
Siemens AG, Technology
Competence Center Embedded Linux


^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: [PATCH v5 18/23] arm: k3-am65x-iot2050: Use binman for tispl.bin for iot2050
  2023-07-10  7:50     ` Neha Malcom Francis
@ 2023-07-11  5:06       ` Jan Kiszka
  0 siblings, 0 replies; 42+ messages in thread
From: Jan Kiszka @ 2023-07-11  5:06 UTC (permalink / raw)
  To: Neha Malcom Francis, u-boot, trini, sjg, afd, vigneshr, rogerq,
	kamlesh, bb, alpernebiyasak
  Cc: nm, u-kumar1, m-chawdhry, christian.gmeiner, xypron.glpk

On 10.07.23 09:50, Neha Malcom Francis wrote:
> Hi Jan
> 
> On 07/07/23 19:08, Jan Kiszka wrote:
>> On 07.07.23 14:34, Neha Malcom Francis wrote:
>>> Move to using binman to generate tispl.bin which is used to generate the
>>> final flash.bin bootloader for iot2050 boards.
>>>
>>> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
>>> Cc: Jan Kiszka <jan.kiszka@siemens.com>
>>> ---
>>>   arch/arm/dts/k3-am65-iot2050-boot-image.dtsi | 76 +++++++++++++++++++-
>>>   1 file changed, 74 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
>>> b/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
>>> index 03ccc54329..9d83898d33 100644
>>> --- a/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
>>> +++ b/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
>>> @@ -26,9 +26,81 @@
>>>               missing-msg = "iot2050-seboot";
>>>           };
>>>   -        blob@0x180000 {
>>> +        fit@0x180000 {
>>>               offset = <0x180000>;
>>> -            filename = "tispl.bin";
>>> +            pad-byte = <0xff>;
>>> +            description = "Configuration to load ATF and SPL";
>>> +
>>> +            images {
>>> +                atf {
>>> +                    description = "ARM Trusted Firmware";
>>> +                    type = "firmware";
>>> +                    arch = "arm64";
>>> +                    compression = "none";
>>> +                    os = "arm-trusted-firmware";
>>> +                    load = <CONFIG_K3_ATF_LOAD_ADDR>;
>>> +                    entry = <CONFIG_K3_ATF_LOAD_ADDR>;
>>> +                    atf: atf-bl31 {
>>> +                    };
>>> +                };
>>> +
>>> +                tee {
>>> +                    description = "OPTEE";
>>> +                    type = "tee";
>>> +                    arch = "arm64";
>>> +                    compression = "none";
>>> +                    os = "tee";
>>> +                    load = <0x9e800000>;
>>> +                    entry = <0x9e800000>;
>>> +                    tee: tee-os {
>>> +                    };
>>> +                };
>>> +
>>> +                dm {
>>> +                    description = "DM binary";
>>> +                    type = "firmware";
>>> +                    arch = "arm32";
>>> +                    compression = "none";
>>> +                    os = "DM";
>>> +                    load = <0x89000000>;
>>> +                    entry = <0x89000000>;
>>> +                    blob-ext {
>>> +                        filename = "/dev/null";
>>> +                    };
>>> +                };
>>> +
>>> +                spl {
>>> +                    description = "SPL (64-bit)";
>>> +                    type = "standalone";
>>> +                    os = "U-Boot";
>>> +                    arch = "arm64";
>>> +                    compression = "none";
>>> +                    load = <CONFIG_SPL_TEXT_BASE>;
>>> +                    entry = <CONFIG_SPL_TEXT_BASE>;
>>> +                    u_boot_spl_nodtb: blob-ext {
>>> +                        filename = "spl/u-boot-spl-nodtb.bin";
>>> +                    };
>>> +                };
>>> +
>>> +                fdt-0 {
>>> +                    description = "k3-am65-iot2050-spl.dtb";
>>> +                    type = "flat_dt";
>>> +                    arch = "arm";
>>> +                    compression = "none";
>>> +                    spl_am65x_evm_dtb: blob-ext {
>>> +                        filename = "spl/dts/k3-am65-iot2050-spl.dtb";
>>> +                    };
>>> +                };
>>> +            };
>>> +
>>> +            configurations {
>>> +                default = "spl";
>>> +                spl {
>>> +                    fdt = "fdt-0";
>>> +                    firmware = "atf";
>>> +                    loadables = "tee", "dm", "spl";
>>> +                };
>>> +            };
>>>           };
>>>             fit@0x380000 {
>>
>> Looks ok (will have to test), but this lacks adjustment of
>> tools/iot2050-sign-fw.sh, probably something around
>> s/tispl.bin/fit@0x180000/g.
>>
> 
> Okay, let us know once tested.
> 

Done successfully, using this diff:

diff --git a/tools/iot2050-sign-fw.sh b/tools/iot2050-sign-fw.sh
index 4d1d79498c2..598482311ca 100755
--- a/tools/iot2050-sign-fw.sh
+++ b/tools/iot2050-sign-fw.sh
@@ -8,8 +8,8 @@ fi
 TEMP_X509=$(mktemp XXXXXXXX.temp)
 
 REVISION=${2:-0}
-SHA_VAL=$(openssl dgst -sha512 -hex tispl.bin | sed -e "s/^.*= //g")
-BIN_SIZE=$(stat -c %s tispl.bin)
+SHA_VAL=$(openssl dgst -sha512 -hex fit@0x180000.fit | sed -e "s/^.*= //g")
+BIN_SIZE=$(stat -c %s fit@0x180000.fit)
 
 cat <<EOF >$TEMP_X509
 [ req ]
@@ -38,10 +38,10 @@ EOF
 CERT_X509=$(mktemp XXXXXXXX.crt)
 
 openssl req -new -x509 -key $1 -nodes -outform DER -out $CERT_X509 -config $TEMP_X509 -sha512
-cat $CERT_X509 tispl.bin > tispl.bin_signed
+cat $CERT_X509 fit@0x180000.fit > fit@0x180000.fit_signed
 # currently broken in upstream
 #source/tools/binman/binman replace -i flash.bin -f tispl.bin_signed blob@0x180000
-dd if=tispl.bin_signed of=flash.bin bs=$((0x1000)) seek=$((0x180000/0x1000)) conv=notrunc
+dd if=fit@0x180000.fit_signed of=flash.bin bs=$((0x1000)) seek=$((0x180000/0x1000)) conv=notrunc
 
 rm $TEMP_X509 $CERT_X509
 

> Regarding the naming used in tools/iot2050-sign-fw.sh; would you like me
> to preserve tispl.bin naming in the dts?
> 

I don't mind, the naming is internal (thanks to the script).

Jan

-- 
Siemens AG, Technology
Competence Center Embedded Linux


^ permalink raw reply related	[flat|nested] 42+ messages in thread

end of thread, other threads:[~2023-07-11 14:01 UTC | newest]

Thread overview: 42+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-07-07 12:34 [PATCH v5 00/23] Migration to using binman for bootloader Neha Malcom Francis
2023-07-07 12:34 ` [PATCH v5 01/23] binman: ti-board-config: Add support for TI board config binaries Neha Malcom Francis
2023-07-11  4:51   ` Jan Kiszka
2023-07-07 12:34 ` [PATCH v5 02/23] binman: ti-secure: Add support for TI signing Neha Malcom Francis
2023-07-07 12:34 ` [PATCH v5 03/23] arm: dts: k3: Add support for packaging sysfw.itb and tiboot3.bin Neha Malcom Francis
2023-07-07 17:35   ` Simon Glass
2023-07-07 12:34 ` [PATCH v5 04/23] j721e: schema: yaml: Add general schema and J721E board config files Neha Malcom Francis
2023-07-11  4:52   ` Jan Kiszka
2023-07-11  4:53     ` Neha Malcom Francis
2023-07-07 12:34 ` [PATCH v5 05/23] j721e: dts: binman: Package tiboot3.bin, sysfw.itb, tispl.bin, u-boot.img Neha Malcom Francis
2023-07-07 12:34 ` [PATCH v5 06/23] j7200: yaml: Add J7200 board config files Neha Malcom Francis
2023-07-07 12:34 ` [PATCH v5 07/23] j7200: dts: binman: Package tiboot3.bin, tispl.bin, u-boot.img Neha Malcom Francis
2023-07-07 12:34 ` [PATCH v5 08/23] am65x: yaml: Add AM65x board config files Neha Malcom Francis
2023-07-07 12:34 ` [PATCH v5 09/23] am65: dts: binman: Package tiboot3.bin, sysfw.itb, tispl.bin, u-boot.img Neha Malcom Francis
2023-07-07 12:34 ` [PATCH v5 10/23] am64x: yaml: Add board configs for AM64x Neha Malcom Francis
2023-07-11  4:53   ` Jan Kiszka
2023-07-07 12:34 ` [PATCH v5 11/23] am64x: dts: binman: Package tiboot3.bin, tispl.bin u-boot.img Neha Malcom Francis
2023-07-07 17:35   ` Simon Glass
2023-07-10  9:12     ` Neha Malcom Francis
2023-07-10 10:17       ` Jan Kiszka
2023-07-07 12:34 ` [PATCH v5 12/23] j721s2: yaml: Add board configs for J721S2 Neha Malcom Francis
2023-07-11  4:54   ` Jan Kiszka
2023-07-07 12:34 ` [PATCH v5 13/23] j721s2: dts: binman: Package tiboot3.bin, tispl.bin and u-boot.img Neha Malcom Francis
2023-07-07 12:34 ` [PATCH v5 14/23] am62: yaml: Add board configs for AM62 Neha Malcom Francis
2023-07-07 12:34 ` [PATCH v5 15/23] am625: dts: binman: Package tiboot3.bin, tispl.bin and u-boot.img Neha Malcom Francis
2023-07-07 12:34 ` [PATCH v5 16/23] am62a: yaml: Add board configs for AM62ax Neha Malcom Francis
2023-07-07 12:34 ` [PATCH v5 17/23] am62a: dts: binman: Package tiboot3.bin, tispl.bin, u-boot.img Neha Malcom Francis
2023-07-07 12:34 ` [PATCH v5 18/23] arm: k3-am65x-iot2050: Use binman for tispl.bin for iot2050 Neha Malcom Francis
2023-07-07 13:38   ` Jan Kiszka
2023-07-10  7:50     ` Neha Malcom Francis
2023-07-11  5:06       ` Jan Kiszka
2023-07-07 17:35   ` Simon Glass
2023-07-07 12:34 ` [PATCH v5 19/23] k3: tools: config.mk: Update makefile and remove scripts Neha Malcom Francis
2023-07-07 12:34 ` [PATCH v5 20/23] doc: board: ti: Update documentation for binman flow Neha Malcom Francis
2023-07-07 12:56   ` Nishanth Menon
2023-07-07 13:30   ` Jerome Forissier
2023-07-07 13:44     ` Jan Kiszka
2023-07-07 13:47       ` Kumar, Udit
2023-07-07 12:34 ` [PATCH v5 21/23] binman: Overwrite symlink if it already exists Neha Malcom Francis
2023-07-07 17:35   ` Simon Glass
2023-07-07 12:34 ` [PATCH v5 22/23] buildman: Create a requirements.txt file Neha Malcom Francis
2023-07-07 12:34 ` [PATCH v5 23/23] CI: Make use of buildman requirements.txt Neha Malcom Francis

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox