)]}'
{
  "commit": "17daef62c4a039f9dd4d64e8f9c00a0e4e4aa6b4",
  "tree": "477cb06d4854198f626ccea3320abf04b3fe9063",
  "parents": [
    "70a2d243a8478c368d5a92c6bfb324d03aa81bcf"
  ],
  "author": {
    "name": "Jamin Lin",
    "email": "jamin_lin@aspeedtech.com",
    "time": "Fri Jan 02 11:35:17 2026 +0800"
  },
  "committer": {
    "name": "Jamin Lin",
    "email": "jamin_lin@aspeedtech.com",
    "time": "Fri Jan 02 11:44:39 2026 +0800"
  },
  "message": "ast27x0: Add Caliptra Manifest boot support and MCU runtime loader framework\n\nAdd initial support for Caliptra Manifest based boot flow on AST2700\nand introduce a generic MCU runtime image loader framework.\n\nThis change adds full parsing, verification, and loading support for\nCaliptra flash images, including manifest header handling, checksum\nverification, image table parsing, and SoC manifest processing. A new\nboot policy is implemented to prefer Caliptra Manifest boot and fall\nback to legacy FIT boot on failure.\n\nKey components introduced in this change:\n\n- Add Caliptra Manifest data structures, image metadata, and helper APIs\n(manifest.c, manifest_image.c, manifest.h).\n- Introduce ast_loader and stor modules to abstract image lookup and\nloading from manifest storage into destination memory.\n- Add board-specific manifest boot handling for AST2700, including\nBL31, U-Boot, SSP, and TSP image post-processing and release flow.\n- Support MCU runtime firmware loading for AST2700 A1/A2 platforms.\n- Support SPL and appended DTB discovery for both Caliptra and FIT paths.\n- Enable SSP boot flow and chained TSP boot when corresponding firmware\nimages are present.\n- Refactor platform constants into platform_ast2700.h and clean up\naddress handling and reserved memory parsing.\n\nThe implementation is aligned with the MCU runtime design used in the\nZephyr-based reference implementation:\nhttps://github.com/AspeedTech-BMC/aspeed-zephyr-project/tree/aspeed-master/apps/mcu-runtime\n\nThis commit establishes the foundation for Caliptra-based boot while\nmaintaining backward compatibility with existing FIT-based boot\nflows.\n\nSigned-off-by: Jamin Lin \u003cjamin_lin@aspeedtech.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6330cead34c9aa2a67429dfe3d209be753ff9ed7",
      "old_mode": 33188,
      "old_path": "ast27x0/Makefile",
      "new_id": "cf201f0df5ef1707d41d1aa554e2979c5fbb596b",
      "new_mode": 33188,
      "new_path": "ast27x0/Makefile"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1caa9729fdcc9daba88c343cb575e7deb1f595d6",
      "new_mode": 33188,
      "new_path": "ast27x0/ast_loader.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d1f626e070461cf09dc46fde23830caf9bb5ac7a",
      "new_mode": 33188,
      "new_path": "ast27x0/board_ast2700.c"
    },
    {
      "type": "modify",
      "old_id": "92e65f4851c0f3fff7fe166599b6d4647120df7c",
      "old_mode": 33188,
      "old_path": "ast27x0/bootrom.ld",
      "new_id": "96a259195ce42817df8360ad4adb111fb9d5bdf2",
      "new_mode": 33188,
      "new_path": "ast27x0/bootrom.ld"
    },
    {
      "type": "modify",
      "old_id": "86982cffc9367e213bf77bbe81658b2c4bee643e",
      "old_mode": 33188,
      "old_path": "ast27x0/fmc_image.c",
      "new_id": "d495f3aacd5af5f7a78e62cc829374252b738bcc",
      "new_mode": 33188,
      "new_path": "ast27x0/fmc_image.c"
    },
    {
      "type": "modify",
      "old_id": "b61ab07b1eca032fbaefad2028161b45443e0e08",
      "old_mode": 33188,
      "old_path": "ast27x0/image.c",
      "new_id": "76e2c73118b95be03a48322d66e7e31b7a8d97c4",
      "new_mode": 33188,
      "new_path": "ast27x0/image.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2fe57a7265948096b682515208ed3504f1b561ca",
      "new_mode": 33188,
      "new_path": "ast27x0/include/ast_loader.h"
    },
    {
      "type": "modify",
      "old_id": "bfea5352326b630d4b2a2e8a11d37c59b5fea8fe",
      "old_mode": 33188,
      "old_path": "ast27x0/include/image.h",
      "new_id": "5d48767ad7a833938f2c1fe3bf98767f837bea64",
      "new_mode": 33188,
      "new_path": "ast27x0/include/image.h"
    },
    {
      "type": "modify",
      "old_id": "6813940aadcd8964d3b7a6d92be8f87ab4a9e35f",
      "old_mode": 33188,
      "old_path": "ast27x0/include/io.h",
      "new_id": "40d8297789c1fc1fc2b5926661598360e27e7235",
      "new_mode": 33188,
      "new_path": "ast27x0/include/io.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "48b9d7e0bdb7aa822bc973b1d6e8bea0ba58e2b9",
      "new_mode": 33188,
      "new_path": "ast27x0/include/manifest.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a5e4ddf5b87fc065381780db0c9d6d6de3a9b53f",
      "new_mode": 33188,
      "new_path": "ast27x0/include/platform_ast2700.h"
    },
    {
      "type": "modify",
      "old_id": "571cc0e18dff206ff66e057ca9a20592803de90f",
      "old_mode": 33188,
      "old_path": "ast27x0/include/ssp_tsp.h",
      "new_id": "eff71972350a33645afaef12ff094a8b0e17dfe4",
      "new_mode": 33188,
      "new_path": "ast27x0/include/ssp_tsp.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "69543b93f9ded5bd597fe061c7697c9777016484",
      "new_mode": 33188,
      "new_path": "ast27x0/include/stor.h"
    },
    {
      "type": "modify",
      "old_id": "a227cb6a3e6dbe91c6febe6805cf8455edad6110",
      "old_mode": 33188,
      "old_path": "ast27x0/include/uart.h",
      "new_id": "8f16bf738c92d77739d969ffc6cefcd6fed2c2d7",
      "new_mode": 33188,
      "new_path": "ast27x0/include/uart.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3d2d475dc2325e1ad488e64400bccd0e5f8f7860",
      "new_mode": 33188,
      "new_path": "ast27x0/manifest.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f7f25600e867caa6e2dc08589cf631d3a6977f85",
      "new_mode": 33188,
      "new_path": "ast27x0/manifest_image.c"
    },
    {
      "type": "modify",
      "old_id": "6bbeef0360b43c6e95202ad5882348e0ee0d4397",
      "old_mode": 33188,
      "old_path": "ast27x0/ssp_tsp.c",
      "new_id": "7d790a32bca80a3672ce85db634a352939f339d7",
      "new_mode": 33188,
      "new_path": "ast27x0/ssp_tsp.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "832a72cb7a2e9fdeba311234944aa252fa4ed90e",
      "new_mode": 33188,
      "new_path": "ast27x0/stor.c"
    }
  ]
}
