)]}'
{
  "commit": "37fdb2f56a90c7d5ea7093b920a7bf72c03aff17",
  "tree": "bc992b6a83b62d964819addea7fdc5fd0d6c9f48",
  "parents": [
    "ca5aa28e244ee3dfe0dd6c76c7c33ce78f25beed"
  ],
  "author": {
    "name": "Manos Pitsidianakis",
    "email": "manos.pitsidianakis@linaro.org",
    "time": "Thu Oct 24 17:03:00 2024 +0300"
  },
  "committer": {
    "name": "Paolo Bonzini",
    "email": "pbonzini@redhat.com",
    "time": "Tue Nov 05 14:18:15 2024 +0100"
  },
  "message": "rust: add PL011 device model\n\nThis commit adds a re-implementation of hw/char/pl011.c in Rust.\n\nHow to build:\n\n1. Configure a QEMU build with:\n   --enable-system --target-list\u003daarch64-softmmu --enable-rust\n2. Launching a VM with qemu-system-aarch64 should use the Rust version\n   of the pl011 device\n\nCo-authored-by: Junjie Mao \u003cjunjie.mao@intel.com\u003e\nCo-authored-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\nSigned-off-by: Junjie Mao \u003cjunjie.mao@intel.com\u003e\nSigned-off-by: Manos Pitsidianakis \u003cmanos.pitsidianakis@linaro.org\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\nLink: https://lore.kernel.org/r/20241024-rust-round-2-v1-2-051e7a25b978@linaro.org\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e5bd7b7e75a833641204c6636490af745de0821b",
      "old_mode": 33188,
      "old_path": "MAINTAINERS",
      "new_id": "2c14c670c5abf50574eda2507bef77c695b511bb",
      "new_mode": 33188,
      "new_path": "MAINTAINERS"
    },
    {
      "type": "modify",
      "old_id": "53eb7bb3d0157bb6e8e078fe73ec66015ae0fe13",
      "old_mode": 33188,
      "old_path": "hw/arm/Kconfig",
      "new_id": "e7fd9338d11dadb7a18032c674927db3d9887bdd",
      "new_mode": 33188,
      "new_path": "hw/arm/Kconfig"
    },
    {
      "type": "modify",
      "old_id": "7f08e8aae80535d4a1a0d1311c8d9d93d164d8e3",
      "old_mode": 33188,
      "old_path": "meson.build",
      "new_id": "c386593c5277af6dfb9cdb56f2d9e09bdc1e2f12",
      "new_mode": 33188,
      "new_path": "meson.build"
    },
    {
      "type": "modify",
      "old_id": "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391",
      "old_mode": 33188,
      "old_path": "rust/Kconfig",
      "new_id": "f9f5c3909887451f71360a7986d79e57fdb43c91",
      "new_mode": 33188,
      "new_path": "rust/Kconfig"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4d934f30afe13ddff418db8ec9e8b8eb25a9e8d0",
      "new_mode": 33188,
      "new_path": "rust/hw/Kconfig"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a1732a9e97fe3211547e30bc9319382e6394ed5b",
      "new_mode": 33188,
      "new_path": "rust/hw/char/Kconfig"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5716dc43ef6facdcf1cc963108347bbf4d12cf0e",
      "new_mode": 33188,
      "new_path": "rust/hw/char/meson.build"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "71eaff2035d5a65b57ae32dfeecf3d87bbc7b396",
      "new_mode": 33188,
      "new_path": "rust/hw/char/pl011/.gitignore"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b58cebb186e99efe184117bb931a341543d4466b",
      "new_mode": 33188,
      "new_path": "rust/hw/char/pl011/Cargo.lock"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b089e3dded623131ee13b4af8145b84388755df7",
      "new_mode": 33188,
      "new_path": "rust/hw/char/pl011/Cargo.toml"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "cd7dea31634241cbf96b0be13f21d52bbd8ae750",
      "new_mode": 33188,
      "new_path": "rust/hw/char/pl011/README.md"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "547cca5a96f7eef284caf1949380b65f7d015d92",
      "new_mode": 33188,
      "new_path": "rust/hw/char/pl011/meson.build"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c7193b41beec0b177dbc75ac0e43fcfea4c82bfb",
      "new_mode": 33188,
      "new_path": "rust/hw/char/pl011/src/device.rs"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b7ab31af02d7bb50ae94be0b153baafc7ccfa375",
      "new_mode": 33188,
      "new_path": "rust/hw/char/pl011/src/device_class.rs"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2939ee50c99ceaacf6ec68127272d58814e33679",
      "new_mode": 33188,
      "new_path": "rust/hw/char/pl011/src/lib.rs"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8d066ebf6d016fa30db004933751a854d7e59117",
      "new_mode": 33188,
      "new_path": "rust/hw/char/pl011/src/memory_ops.rs"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "860196645e719624d2e2e6bc301b62b81ab2e19b",
      "new_mode": 33188,
      "new_path": "rust/hw/meson.build"
    },
    {
      "type": "modify",
      "old_id": "7a32b1b195083571931ad589965c10ddaf6383b1",
      "old_mode": 33188,
      "old_path": "rust/meson.build",
      "new_id": "def77389cddc52f5d4503840e9bdfb1207586fa2",
      "new_mode": 33188,
      "new_path": "rust/meson.build"
    },
    {
      "type": "modify",
      "old_id": "62a2cf45d28ed5565076443b9f931a647d395542",
      "old_mode": 33261,
      "old_path": "scripts/archive-source.sh",
      "new_id": "30677c3ec9032ea01090f74602d839d1c571d012",
      "new_mode": 33261,
      "new_path": "scripts/archive-source.sh"
    },
    {
      "type": "modify",
      "old_id": "cf7d694ef73ba1c6c5afad5d211a42f6a6fe1577",
      "old_mode": 33261,
      "old_path": "scripts/make-release",
      "new_id": "8dc939124c4fd4abf3509c3b64c0588bc8810962",
      "new_mode": 33261,
      "new_path": "scripts/make-release"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "975bddf7f1a4c6ca7770f800bdc894cdff1f3ab1",
      "new_mode": 33261,
      "new_path": "scripts/rust/rust_root_crate.sh"
    },
    {
      "type": "modify",
      "old_id": "b6888182ca4e5b59b90cfde1792a5770e9a5240a",
      "old_mode": 33188,
      "old_path": "subprojects/.gitignore",
      "new_id": "50f173f90dbe5dde1162cfe96636f63637574c74",
      "new_mode": 33188,
      "new_path": "subprojects/.gitignore"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e580538a8776001147bfc5c5c73df2bfccac6347",
      "new_mode": 33188,
      "new_path": "subprojects/arbitrary-int-1-rs.wrap"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7a4339d29896922c392e2e1952e02a1ee82b1874",
      "new_mode": 33188,
      "new_path": "subprojects/bilge-0.2-rs.wrap"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "eefb10c36c24007d48833748cf200d67b6ff7ee7",
      "new_mode": 33188,
      "new_path": "subprojects/bilge-impl-0.2-rs.wrap"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6046712036c8db1b142d083ae6f8a2d58d6203ab",
      "new_mode": 33188,
      "new_path": "subprojects/either-1-rs.wrap"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "66b05252cd55ed3149b79b992a6d224e9789ba97",
      "new_mode": 33188,
      "new_path": "subprojects/itertools-0.11-rs.wrap"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "34a189cbaec77ba6631c6a8cb40d7eb3f32099ee",
      "new_mode": 33188,
      "new_path": "subprojects/packagefiles/arbitrary-int-1-rs/meson.build"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a6ed4a8f0cde70be0bf75cd1ad40bc64e3a11a3a",
      "new_mode": 33188,
      "new_path": "subprojects/packagefiles/bilge-0.2-rs/meson.build"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "80243c7024d898826cc3c98ba5b78ef286b79ce9",
      "new_mode": 33188,
      "new_path": "subprojects/packagefiles/bilge-impl-0.2-rs/meson.build"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a5842eb3a6a63cf94883663758ca5eb11225ad58",
      "new_mode": 33188,
      "new_path": "subprojects/packagefiles/either-1-rs/meson.build"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "13d2d27019d215fb793c457e494be7387a7ef455",
      "new_mode": 33188,
      "new_path": "subprojects/packagefiles/itertools-0.11-rs/meson.build"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "38ea7b89d39d3f131959f00665b51a49d5bc95e5",
      "new_mode": 33188,
      "new_path": "subprojects/packagefiles/proc-macro-error-1-rs/meson.build"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d900c54cfd1ad6c8c415438c2e9dd51695c82150",
      "new_mode": 33188,
      "new_path": "subprojects/packagefiles/proc-macro-error-attr-1-rs/meson.build"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "54f2376854504236689604f8ab08d351e4cceae9",
      "new_mode": 33188,
      "new_path": "subprojects/packagefiles/unicode-ident-1-rs/meson.build"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b7db03b06a019562b2ad77bb252d50b7e83c0b33",
      "new_mode": 33188,
      "new_path": "subprojects/proc-macro-error-1-rs.wrap"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d13d8a239ac259132cd905bc512e9024b2f30fb8",
      "new_mode": 33188,
      "new_path": "subprojects/proc-macro-error-attr-1-rs.wrap"
    }
  ]
}
