Brad Bishop | bec4ebc | 2022-08-03 09:55:16 -0400 | [diff] [blame] | 1 | # gem5 aarch64 specific configuration |
| 2 | |
| 3 | # Build arm64 gem5 |
| 4 | GEM5_BUILD_CONFIGS ?= "build/ARM/gem5.${GEM5_BUILD_VARIANT}" |
| 5 | |
| 6 | SRC_URI += "file://start-gem5.sh" |
| 7 | |
| 8 | inherit deploy |
| 9 | |
| 10 | # Parameters for the start script |
| 11 | |
| 12 | GEM5_RUN_CONFIG ?= "gem5.${GEM5_BUILD_VARIANT}" |
| 13 | |
| 14 | # Linux kernel file to boot |
| 15 | GEM5_RUN_KERNEL ?= "vmlinux" |
| 16 | |
| 17 | # Disk Image to use |
| 18 | GEM5_RUN_DISK ?= "*-${MACHINE}.ext4" |
| 19 | |
| 20 | # DTB to use |
| 21 | GEM5_RUN_DTB ?= "${@os.path.basename(d.getVar('KERNEL_DEVICETREE'))}" |
| 22 | |
| 23 | # Linux command line to pass |
| 24 | GEM5_RUN_CMDLINE ?= "earlyprintk=pl011,0x1c090000 console=ttyAMA0 rw mem=512MB root=/dev/sda rootwait" |
| 25 | |
| 26 | # Extra arguments to pass to gem5 |
| 27 | GEM5_RUN_EXTRA ?= "--mem-size=512MB -n 4 --machine-type=VExpress_GEM5_V2" |
| 28 | |
| 29 | #This is required so that our binaries are in the sysroot. We need this |
| 30 | # to have both gem5 required libraries and gem5 in the same sysroot. |
| 31 | addtask addto_recipe_sysroot after do_populate_sysroot before do_build |
| 32 | |
| 33 | do_deploy[sstate-outputdirs] = "${DEPLOY_DIR_TOOLS}" |
| 34 | do_deploy() { |
| 35 | install -d ${DEPLOYDIR} |
| 36 | |
| 37 | install -m 755 ${WORKDIR}/start-gem5.sh ${DEPLOYDIR}/. |
| 38 | } |
| 39 | addtask deploy before do_build after do_compile |
| 40 | |