Sort constants in csr generation.
Previously the order of constant output depended on Python's hashing order which changes every run. This caused the file to change every run. With this change the csr.h file will always be the same. This can be verified this with the following; ```bash CSR=software/include/generated/csr.h for i in 1 2 3 4 5 6; do rm -f $CSR; python make.py build-headers cp $CSR $CSR.$i done md5sum $CSR.* ```
This commit is contained in:
parent
a186bfe0f3
commit
27a0e16fea
2
make.py
2
make.py
|
@ -167,7 +167,7 @@ CPU type: {}
|
||||||
write_to_file(os.path.join(genhdir, "sdram_phy.h"), boilerplate + sdram_phy_header)
|
write_to_file(os.path.join(genhdir, "sdram_phy.h"), boilerplate + sdram_phy_header)
|
||||||
mem_header = cpu_interface.get_mem_header(memory_regions, getattr(soc, "flash_boot_address", None))
|
mem_header = cpu_interface.get_mem_header(memory_regions, getattr(soc, "flash_boot_address", None))
|
||||||
write_to_file(os.path.join(genhdir, "mem.h"), boilerplate + mem_header)
|
write_to_file(os.path.join(genhdir, "mem.h"), boilerplate + mem_header)
|
||||||
csr_header = cpu_interface.get_csr_header(csr_regions, soc.get_constants())
|
csr_header = cpu_interface.get_csr_header(csr_regions, sorted(soc.get_constants()))
|
||||||
write_to_file(os.path.join(genhdir, "csr.h"), boilerplate + csr_header)
|
write_to_file(os.path.join(genhdir, "csr.h"), boilerplate + csr_header)
|
||||||
|
|
||||||
if actions["build-csr-csv"]:
|
if actions["build-csr-csv"]:
|
||||||
|
|
Loading…
Reference in New Issue