)]}'
{
  "commit": "a37bcfa3d83c2eeed22726be66a1e7b26dcc7c3a",
  "tree": "e2a3795cfac90c30096ff62fd91c80f1069e8db6",
  "parents": [
    "2a3a4adbc28b9c301e705f137ef765399f5d7d8a"
  ],
  "author": {
    "name": "Philipp Wagner",
    "email": "phw@lowrisc.org",
    "time": "Tue May 19 22:46:41 2020 +0100"
  },
  "committer": {
    "name": "Philipp Wagner",
    "email": "mail@philipp-wagner.com",
    "time": "Wed May 20 08:26:44 2020 +0100"
  },
  "message": "[prim] Make ROM_INIT_FILE a parameter\n\nInstead of having a global define ROM_INIT_FILE, which contains a path\nto a VMEM file with the boot ROM contents, use a parameter passed\nthrough the hierarchy. This enables multiple instantiations of the ROM,\nand avoids naming clashes between the ROM_INIT_FILE/SRAM_INIT_FILE\ndefine, which can be used only once in the whole toplevel design.\n\nThis requires changes in various places to properly pass through the\nparameter.\n\nInstead of updating the prim_xilinx_rom variant, remove it. This\nprimitive is identical to the generic one, with the addition of\ngenerating an empty ROM if no ROM initialization file is present during\nthe synthesis run. We capture this problem now in a more user-friendly\nway with a TCL script after synthesis; removing this primitive here\navoids updating it first to the new way of passing in the init file.\n\nThe Arty S7 changes were done blindly, I don\u0027t have that board. I also\nnote that the board was very likely broken before, as the ROM init file\nname was not called SRAM_INIT_FILE for a long time.\n\nFixes #2225\n\nSigned-off-by: Philipp Wagner \u003cphw@lowrisc.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "1cb50922e2e7df3b5a7f10394c17d8b5b9c8570e",
      "old_mode": 33188,
      "old_path": "azure-pipelines.yml",
      "new_id": "5255c5ec21287a1f5015128e1dc0e0d3c9e27fdc",
      "new_mode": 33188,
      "new_path": "azure-pipelines.yml"
    },
    {
      "type": "modify",
      "old_id": "d5ebf3f81a77e2fc67592b1d3c00183ddb4f2795",
      "old_mode": 33188,
      "old_path": "hw/ip/prim/rtl/prim_util_memload.sv",
      "new_id": "db7710288ef269edb846e981b225473593d22e86",
      "new_mode": 33188,
      "new_path": "hw/ip/prim/rtl/prim_util_memload.sv"
    },
    {
      "type": "modify",
      "old_id": "4c8085fc9e6fdfb3ef45a22e82170bbf0640e230",
      "old_mode": 33188,
      "old_path": "hw/ip/prim_generic/rtl/prim_generic_ram_1p.sv",
      "new_id": "e81bf8406ef4cfaead60fdb4468c4140b7658d64",
      "new_mode": 33188,
      "new_path": "hw/ip/prim_generic/rtl/prim_generic_ram_1p.sv"
    },
    {
      "type": "modify",
      "old_id": "36a90d498bc5c7dc0b4a17966197388ec43458d1",
      "old_mode": 33188,
      "old_path": "hw/ip/prim_generic/rtl/prim_generic_ram_2p.sv",
      "new_id": "266687954f80d19d3c66f9890bbcc27d0b0ffb93",
      "new_mode": 33188,
      "new_path": "hw/ip/prim_generic/rtl/prim_generic_ram_2p.sv"
    },
    {
      "type": "modify",
      "old_id": "3bd1c2ac16e2707e85bbe0793555c3513b4b647f",
      "old_mode": 33188,
      "old_path": "hw/ip/prim_generic/rtl/prim_generic_rom.sv",
      "new_id": "9bfe88b5a4f38525fa0e45e7bdc5a867034fa0c3",
      "new_mode": 33188,
      "new_path": "hw/ip/prim_generic/rtl/prim_generic_rom.sv"
    },
    {
      "type": "delete",
      "old_id": "544a7b79b1f0323f0daf25a1c536d2c08b308531",
      "old_mode": 33188,
      "old_path": "hw/ip/prim_xilinx/lint/prim_xilinx_rom.vlt",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "af90009c054137b2a7181bd142a5c5deb7844768",
      "old_mode": 33188,
      "old_path": "hw/ip/prim_xilinx/lint/prim_xilinx_rom.waiver",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "9e4a0533a07e8dbb4fc6a4ed1fc167012ae2efa3",
      "old_mode": 33188,
      "old_path": "hw/ip/prim_xilinx/prim_xilinx_rom.core",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "57032702236c6ab36970977a2d916f7a9be9262d",
      "old_mode": 33188,
      "old_path": "hw/ip/prim_xilinx/rtl/prim_xilinx_rom.sv",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "c8021c94f3d576c2b79d04251a2d0fc785105677",
      "old_mode": 33188,
      "old_path": "hw/top_earlgrey/data/top_earlgrey.sv.tpl",
      "new_id": "046b80a5434a3810b528a4302a61f4dafe672987",
      "new_mode": 33188,
      "new_path": "hw/top_earlgrey/data/top_earlgrey.sv.tpl"
    },
    {
      "type": "modify",
      "old_id": "7abb4d81b1a7626fb404e069000e06e31028b179",
      "old_mode": 33188,
      "old_path": "hw/top_earlgrey/rtl/autogen/top_earlgrey.sv",
      "new_id": "ff6e4dcfb6324b738c126bc6489861bf2eac4cb1",
      "new_mode": 33188,
      "new_path": "hw/top_earlgrey/rtl/autogen/top_earlgrey.sv"
    },
    {
      "type": "modify",
      "old_id": "16ab39225024f1f84693144b432f8105f6f92a5c",
      "old_mode": 33188,
      "old_path": "hw/top_earlgrey/rtl/top_earlgrey_artys7.sv",
      "new_id": "fc3a897bed1c91335a0800481eea5d190f818ba6",
      "new_mode": 33188,
      "new_path": "hw/top_earlgrey/rtl/top_earlgrey_artys7.sv"
    },
    {
      "type": "modify",
      "old_id": "ff3ddec4a731c86c1dbe44b7fc69e5de3a4daba7",
      "old_mode": 33188,
      "old_path": "hw/top_earlgrey/rtl/top_earlgrey_nexysvideo.sv",
      "new_id": "3bc70e08afbc9e86aef1dbb18356111dd9a10d59",
      "new_mode": 33188,
      "new_path": "hw/top_earlgrey/rtl/top_earlgrey_nexysvideo.sv"
    },
    {
      "type": "modify",
      "old_id": "71e258a67ae983a335e92b865f669fc733430c5b",
      "old_mode": 33188,
      "old_path": "hw/top_earlgrey/top_earlgrey_artys7-50.core",
      "new_id": "5f2b18889827281018fbfc8c552be2e0aaa81c7d",
      "new_mode": 33188,
      "new_path": "hw/top_earlgrey/top_earlgrey_artys7-50.core"
    },
    {
      "type": "modify",
      "old_id": "84460eaa57d3a5e4b307a7157abaca9aec65c4db",
      "old_mode": 33188,
      "old_path": "hw/top_earlgrey/top_earlgrey_nexysvideo.core",
      "new_id": "8d6cf89b6906af3c8fd790aee4e715f78498ad9f",
      "new_mode": 33188,
      "new_path": "hw/top_earlgrey/top_earlgrey_nexysvideo.core"
    }
  ]
}
