)]}'
{
  "commit": "84006ecab40d9ae740c8c933c9705730b8c7f4b2",
  "tree": "48d2c596cd4ab53e2245fa385bfcb22fde16c615",
  "parents": [
    "836308fe0c28a6c03f5e2b3fd61df29d50ccf23a"
  ],
  "author": {
    "name": "Will Marone",
    "email": "Will.Marone@amd.com",
    "time": "Tue Mar 03 16:51:26 2026 -0800"
  },
  "committer": {
    "name": "Will Marone",
    "email": "Will.Marone@amd.com",
    "time": "Thu Mar 05 11:02:15 2026 -0800"
  },
  "message": "Enable I2C via IPC port of AST test on AST1060\n\nThis fixes some issues on the openprot side of things to enable\nthe ASpeed I2C test to run on Pigweed, sending requests over IPC\nto the I2C server.\n\nThe test makes a few assumptions about the hardware setup:\n- Using an ASpeed PRoT fixture with two devices\n- The JTAG equipped unit running openprot\n- The other runninng a reference build of Zephyr\n\nConfigure the build of Zephyr to simulate an eeprom on i2c address 0x42, this will satisfy the test. Connect I2C2 between the devices.\n\n* Added a testing doc, should replace README.md with it at some point\n* Significant updates to  uart_test_exec.py to add more features and bugfixes.\n* Replace default() with with_static_clocks()\n* Fixed the target bus to match hardware config across the project.\n* Added memory mappings to the i2c server so that it had permission to touch necessary registers\n* Removed semihosting as it was causing misleading faults at the end of the tests.\n\nA change not included here is in pigweed itself, in pw_kernel/arch/arm_cortex_m/protection_v7.rs:\n\n            MemoryRegionType::Device \u003d\u003e (\n                /* xn */ true,\n                /* tex */ 0b000, // Device memory\n                /* s */ true,\n                /* c */ false,\n                /* b */ true,\n-               RasrAp::RoAny,\n+               RasrAp::RwAny,\n            ),\n\nThis is required to allow writes to the registers.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "fafa027e9d0174db7e11d611e79610e73e6d0942",
      "old_mode": 33188,
      "old_path": "services/i2c/backend-aspeed/src/lib.rs",
      "new_id": "32587f7e8d769f762596ad89c063b592960676e5",
      "new_mode": 33188,
      "new_path": "services/i2c/backend-aspeed/src/lib.rs"
    },
    {
      "type": "modify",
      "old_id": "3a757d66f034533a946a3343dbae32647f0aac11",
      "old_mode": 33188,
      "old_path": "services/i2c/server/src/main.rs",
      "new_id": "55c2066d04723a51fcad45a67f4f89e96d32cf36",
      "new_mode": 33188,
      "new_path": "services/i2c/server/src/main.rs"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a8449cd23f93d0c72b35e551510329a61fb280f0",
      "new_mode": 33188,
      "new_path": "target/ast1060-evb/TESTING.md"
    },
    {
      "type": "modify",
      "old_id": "31dc91155b5f3f49837ef73318eaddcfa495882a",
      "old_mode": 33188,
      "old_path": "target/ast1060-evb/entry.rs",
      "new_id": "ea9dee98ed9297c92a1c98b1248250a61f5e9082",
      "new_mode": 33188,
      "new_path": "target/ast1060-evb/entry.rs"
    },
    {
      "type": "modify",
      "old_id": "54b9cb8a344e3eb2afe5615931678e3891c304e3",
      "old_mode": 33188,
      "old_path": "target/ast1060-evb/harness/uart_test_exec.py",
      "new_id": "4f1fc1a22dfe27fd9d1e18e05d3b14cce9aecc94",
      "new_mode": 33188,
      "new_path": "target/ast1060-evb/harness/uart_test_exec.py"
    },
    {
      "type": "modify",
      "old_id": "06ace72f60cdc4f8bedf99d61379c46e01f49574",
      "old_mode": 33188,
      "old_path": "target/ast1060-evb/i2c/i2c_client_test.rs",
      "new_id": "5838ca121ba54c58d77ff41ab38a275e17f33b61",
      "new_mode": 33188,
      "new_path": "target/ast1060-evb/i2c/i2c_client_test.rs"
    },
    {
      "type": "modify",
      "old_id": "4bafc66a4f96f9d4532385684bc301645fec8a9f",
      "old_mode": 33188,
      "old_path": "target/ast1060-evb/i2c/system.json5",
      "new_id": "3ef99636537817eef64f3e12f3532573db6e738f",
      "new_mode": 33188,
      "new_path": "target/ast1060-evb/i2c/system.json5"
    },
    {
      "type": "modify",
      "old_id": "33d19ac768d23bb29f4256a644ab705627ed2cf1",
      "old_mode": 33188,
      "old_path": "target/ast1060-evb/i2c/target.rs",
      "new_id": "ae94503045a88f1b47017b9d571effcd7562ffb5",
      "new_mode": 33188,
      "new_path": "target/ast1060-evb/i2c/target.rs"
    },
    {
      "type": "modify",
      "old_id": "e9c4dab172fc3ac2eff3d7dc968fd8295303cb7d",
      "old_mode": 33188,
      "old_path": "target/ast1060-evb/ipc/user/target.rs",
      "new_id": "fbf62a857087a09fb10ed0166da6b9cbd381b876",
      "new_mode": 33188,
      "new_path": "target/ast1060-evb/ipc/user/target.rs"
    }
  ]
}
