)]}'
{
  "commit": "155a62cc3278dd08c3cf3adf38034a09c74c0727",
  "tree": "66fa8f8467acd2c64cbc558c3e45d4a43d642dff",
  "parents": [
    "8ea958c0cc8111f6edf1f5eabd5939f185c73b4a"
  ],
  "author": {
    "name": "Jes B. Klinke",
    "email": "jbk@chromium.org",
    "time": "Tue Feb 14 16:11:54 2023 -0800"
  },
  "committer": {
    "name": "cfrantz",
    "email": "frantzcj+github@gmail.com",
    "time": "Thu Mar 02 07:55:09 2023 -0800"
  },
  "message": "[opentitantool] Propagate `transport init` to backend\n\nThe existing command `opentitantool transport init` will send a series\nof instructions to the backend to configure pins according to a set of\nconfiguration files.  Ideally, that would bring the transport into a\nknown state.  However, sometimes the configuration is under-specified,\nthat is, maybe it omits declaring the direction of a pin as \"Input\",\nrelying on that being the default for all pins at power-on.  Doing so\nopens up the possibility that if the debugger device has previously been\nused with a different configuration file, which used the same pin as\noutput, then after `transport init` the pin would remain an output, to\nthe surprise of automated tests or operators.\n\nThis PR makes `transport init` first tell the backend transport to reset\nto power-on state, before sending the usual series of pin-specific\ninstructions, hopefully reducing the risk of surprises.\n\nSome backends, such as UltraDebug, do not support re-configuraion of\npin direction, and others, such as Verilator, do not have backend\nhardware which could carry over state from one test to the next, so a\ndefault empty implementation of the new method is provided.\n\nSigned-off-by: Jes B. Klinke \u003cjbk@chromium.org\u003e\nChange-Id: I0cee4a994ff72c653f0522fcfe92ce1be1ecf6af\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "be6828f746ceea670b08127393878b36cf239a77",
      "old_mode": 33188,
      "old_path": "WORKSPACE",
      "new_id": "9eb984c417f1548adb5c9eac928335cb6c2a27e9",
      "new_mode": 33188,
      "new_path": "WORKSPACE"
    },
    {
      "type": "modify",
      "old_id": "52a5bef90709d69585b2e5e6c652fabc47023e55",
      "old_mode": 33188,
      "old_path": "sw/host/opentitanlib/src/app/mod.rs",
      "new_id": "8a3066670786c0abb28f2fc5fa3040f8754c2f67",
      "new_mode": 33188,
      "new_path": "sw/host/opentitanlib/src/app/mod.rs"
    },
    {
      "type": "modify",
      "old_id": "bb194c65c1bd7720a25ba20faa2a265e4596bfb9",
      "old_mode": 33188,
      "old_path": "sw/host/opentitanlib/src/proxy/handler.rs",
      "new_id": "a20c001c1fb2a65a58ac047dbbe51b5e5c3bf9dd",
      "new_mode": 33188,
      "new_path": "sw/host/opentitanlib/src/proxy/handler.rs"
    },
    {
      "type": "modify",
      "old_id": "6e7e539e934194178ae99a35b114c63570a9d7d2",
      "old_mode": 33188,
      "old_path": "sw/host/opentitanlib/src/proxy/protocol.rs",
      "new_id": "3bb4d2435d9046f8362b6f84116e2c6e67650c00",
      "new_mode": 33188,
      "new_path": "sw/host/opentitanlib/src/proxy/protocol.rs"
    },
    {
      "type": "modify",
      "old_id": "524ecc298abab830078bf972de0b7b6c3253488c",
      "old_mode": 33188,
      "old_path": "sw/host/opentitanlib/src/transport/hyperdebug/mod.rs",
      "new_id": "41bf63f3519615028bb0aab7546694b526d0ba3a",
      "new_mode": 33188,
      "new_path": "sw/host/opentitanlib/src/transport/hyperdebug/mod.rs"
    },
    {
      "type": "modify",
      "old_id": "b174f1444440a305ce085bbf820daa3b3b55ab11",
      "old_mode": 33188,
      "old_path": "sw/host/opentitanlib/src/transport/mod.rs",
      "new_id": "634c1f05f5b3fed1909ccaf56ad7bf38a43346d1",
      "new_mode": 33188,
      "new_path": "sw/host/opentitanlib/src/transport/mod.rs"
    },
    {
      "type": "modify",
      "old_id": "ef36527793304105eccb7be640cb64ce61a830bb",
      "old_mode": 33188,
      "old_path": "sw/host/opentitanlib/src/transport/proxy/mod.rs",
      "new_id": "c931f15f0b2b91019ba5ead474d14ecd928f5ef6",
      "new_mode": 33188,
      "new_path": "sw/host/opentitanlib/src/transport/proxy/mod.rs"
    }
  ]
}
