)]}'
{
  "commit": "65386c60b9511f08039c8afcaf2f7a0eac586b87",
  "tree": "d466301158792b828fc7938a82d786fbed87b2aa",
  "parents": [
    "e9552d3930f9a7226de6788d74842949eeee3e35"
  ],
  "author": {
    "name": "Steven Lee",
    "email": "steven_lee@aspeedtech.com",
    "time": "Thu Jul 23 18:33:24 2026 +0800"
  },
  "committer": {
    "name": "Steven Lee",
    "email": "steven_lee@aspeedtech.com",
    "time": "Fri Jul 24 12:41:07 2026 +0800"
  },
  "message": "ast10x0/i3c: refine state tracking and harden error recovery\n\nAddress review feedback from PR #278 and improve state safety during DAA\nand transfer recovery:\n\n- Replace boolean `da_assigned` and `ibi_en` with explicit `DaState` and `IbiState` enums.\n- Fix `do_ccc` timeout handling to return `I3cDrvError::Timeout` immediately.\n- Enforce sticky fault (`xfer_faulted`) when recovery fails to prevent hardware lockup.\n- Log and set sticky fault on `init()` failures during SIR timeout recovery.\n- Add 7-bit address bounds checks and spec-defined default reservations to `AddrBook`.\n- Update peripheral tests (`i3c_init`, `i3c_irq`) to conform to updated state models.\n\nSigned-off-by: Steven Lee \u003csteven_lee@aspeedtech.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "bd9bfdc4db7258ddfe69b8ae534455b185bd0aeb",
      "old_mode": 33188,
      "old_path": "target/ast10x0/peripherals/i3c/ccc.rs",
      "new_id": "e2cbf997da46e799de4dad05e48a1935d46de497",
      "new_mode": 33188,
      "new_path": "target/ast10x0/peripherals/i3c/ccc.rs"
    },
    {
      "type": "modify",
      "old_id": "2665dab614eeb0c7b1b697b098282a7818e9170f",
      "old_mode": 33188,
      "old_path": "target/ast10x0/peripherals/i3c/config.rs",
      "new_id": "ed24c657d661656dcdc18a4762eada50716b2fb9",
      "new_mode": 33188,
      "new_path": "target/ast10x0/peripherals/i3c/config.rs"
    },
    {
      "type": "modify",
      "old_id": "4325ad22edf853792bf1067fd4cdf2452f6c301d",
      "old_mode": 33188,
      "old_path": "target/ast10x0/peripherals/i3c/controller.rs",
      "new_id": "663e7f45711354be5c89b427ec876f4286a8284c",
      "new_mode": 33188,
      "new_path": "target/ast10x0/peripherals/i3c/controller.rs"
    },
    {
      "type": "modify",
      "old_id": "ae34a3debba175c22eaddaeea063a67058029cd7",
      "old_mode": 33188,
      "old_path": "target/ast10x0/peripherals/i3c/error.rs",
      "new_id": "ac79e3ce3e7c15db7d6ac2d92e1216c5d7c7182c",
      "new_mode": 33188,
      "new_path": "target/ast10x0/peripherals/i3c/error.rs"
    },
    {
      "type": "modify",
      "old_id": "2d34cd473a215cb3612a1b469586a1c928483585",
      "old_mode": 33188,
      "old_path": "target/ast10x0/peripherals/i3c/hardware.rs",
      "new_id": "6b15260c11c725e34ed9a71d957d7a03fdbf55d0",
      "new_mode": 33188,
      "new_path": "target/ast10x0/peripherals/i3c/hardware.rs"
    },
    {
      "type": "modify",
      "old_id": "c73fddda548b510bc89ea9189f72fefd0171b962",
      "old_mode": 33188,
      "old_path": "target/ast10x0/peripherals/i3c/ibi.rs",
      "new_id": "0b2434a22082ae7612dfcfc7d2df077292baa43c",
      "new_mode": 33188,
      "new_path": "target/ast10x0/peripherals/i3c/ibi.rs"
    },
    {
      "type": "modify",
      "old_id": "a915d8048fdd96614dc4b7ec3344d7c496518b70",
      "old_mode": 33188,
      "old_path": "target/ast10x0/peripherals/i3c/mod.rs",
      "new_id": "777d9799e4a988e59599cb022c27ed59499791bf",
      "new_mode": 33188,
      "new_path": "target/ast10x0/peripherals/i3c/mod.rs"
    },
    {
      "type": "modify",
      "old_id": "33799775b60a4660e584d11cedc1fa7004031b62",
      "old_mode": 33188,
      "old_path": "target/ast10x0/peripherals/i3c/registers.rs",
      "new_id": "f8913871c5ddd142ba08104264be6d351ad71c49",
      "new_mode": 33188,
      "new_path": "target/ast10x0/peripherals/i3c/registers.rs"
    },
    {
      "type": "modify",
      "old_id": "ab0fd7363fd66fdbb41047c1a8f89ab33b278cd8",
      "old_mode": 33188,
      "old_path": "target/ast10x0/tests/peripherals/i3c/i3c_init/target.rs",
      "new_id": "67319fc65d6d39d76b2b4e8b3ed5bbfe0d38350a",
      "new_mode": 33188,
      "new_path": "target/ast10x0/tests/peripherals/i3c/i3c_init/target.rs"
    },
    {
      "type": "modify",
      "old_id": "fbd6e90f685b57f969a1d6bcc3f99d3aca788c8c",
      "old_mode": 33188,
      "old_path": "target/ast10x0/tests/peripherals/i3c/i3c_irq/slave_target.rs",
      "new_id": "bb3fd128f4823f3438d27156e3725ce8c0efeb91",
      "new_mode": 33188,
      "new_path": "target/ast10x0/tests/peripherals/i3c/i3c_irq/slave_target.rs"
    },
    {
      "type": "modify",
      "old_id": "19ea3b6c8b383dad306b4549b3a8a11ad3df4c43",
      "old_mode": 33188,
      "old_path": "target/ast10x0/tests/peripherals/i3c/i3c_irq/target.rs",
      "new_id": "39250b12c34452fc17c2171f6e3f0e3c98109217",
      "new_mode": 33188,
      "new_path": "target/ast10x0/tests/peripherals/i3c/i3c_irq/target.rs"
    }
  ]
}
