diff --git a/generators/chipyard/src/main/scala/CustomBusTopologies.scala b/generators/chipyard/src/main/scala/CustomBusTopologies.scala index 2f6f3de7..ee694d22 100644 --- a/generators/chipyard/src/main/scala/CustomBusTopologies.scala +++ b/generators/chipyard/src/main/scala/CustomBusTopologies.scala @@ -54,9 +54,9 @@ case class HierarchicalMulticlockBusTopologyParams( (FBUS, fbus), (CBUS, cbus)), connections = List( - (SBUS, CBUS, TLBusWrapperConnection(xType = xTypes.sbusToCbusXType, nodeBinding = BIND_STAR)()), - (CBUS, PBUS, TLBusWrapperConnection(xType = xTypes.cbusToPbusXType, nodeBinding = BIND_STAR)()), - (FBUS, SBUS, TLBusWrapperConnection(xType = xTypes.fbusToSbusXType, nodeBinding = BIND_QUERY, flipRendering = true)())) + (SBUS, CBUS, TLBusWrapperConnection. crossTo(xType = xTypes.sbusToCbusXType, driveClockFromMaster = None)), + (CBUS, PBUS, TLBusWrapperConnection. crossTo(xType = xTypes.cbusToPbusXType, driveClockFromMaster = None)), + (FBUS, SBUS, TLBusWrapperConnection.crossFrom(xType = xTypes.fbusToSbusXType, driveClockFromMaster = None))) ) // For subsystem/Configs.scala diff --git a/scripts/build-toolchains.sh b/scripts/build-toolchains.sh index 2685872e..1897d157 100755 --- a/scripts/build-toolchains.sh +++ b/scripts/build-toolchains.sh @@ -20,6 +20,7 @@ usage() { echo "Options" echo " --prefix PREFIX : Install destination. If unset, defaults to $(pwd)/riscv-tools-install" echo " or $(pwd)/esp-tools-install" + echo " --ignore-qemu : Ignore installing QEMU" echo " --help -h : Display this message" exit "$1" } @@ -34,6 +35,7 @@ die() { TOOLCHAIN="riscv-tools" EC2FASTINSTALL="false" +IGNOREQEMU="" RISCV="" # getopts does not support long options, and is inflexible @@ -45,6 +47,9 @@ do -p | --prefix ) shift RISCV=$(realpath $1) ;; + --ignore-qemu ) + shift + IGNOREQEMU="true" ;; riscv-tools | esp-tools) TOOLCHAIN=$1 ;; ec2fast ) @@ -102,12 +107,16 @@ if [ "${EC2FASTINSTALL}" = true ] ; then git submodule deinit "${module}" || : else - "${MAKE}" --version | ( - read -r makever - case ${makever} in - 'GNU Make '[4-9]\.*|'GNU Make '[1-9][0-9]) ;; - *) false ;; - esac; ) || die 'obsolete make version; need GNU make 4.x or later' + MAKE_VER=$("${MAKE}" --version) || true + case ${MAKE_VER} in + 'GNU Make '[4-9]\.*) + ;; + 'GNU Make '[1-9][0-9]) + ;; + *) + die 'obsolete make version; need GNU make 4.x or later' + ;; + esac module_prepare riscv-gnu-toolchain qemu module_build riscv-gnu-toolchain --prefix="${RISCV}" --with-cmodel=medany @@ -128,7 +137,9 @@ module_all riscv-tests --prefix="${RISCV}/riscv64-unknown-elf" SRCDIR="$(pwd)/toolchains" module_all libgloss --prefix="${RISCV}/riscv64-unknown-elf" --host=riscv64-unknown-elf +if [ -z "$IGNOREQEMU" ] ; then SRCDIR="$(pwd)/toolchains" module_all qemu --prefix="${RISCV}" --target-list=riscv64-softmmu +fi # make Dromajo git submodule update --init $CHIPYARD_DIR/tools/dromajo/dromajo-src diff --git a/tools/dromajo/dromajo-src b/tools/dromajo/dromajo-src index 56e2ff46..09fbef45 160000 --- a/tools/dromajo/dromajo-src +++ b/tools/dromajo/dromajo-src @@ -1 +1 @@ -Subproject commit 56e2ff46b70521916c362799517f4ed8e67e9e88 +Subproject commit 09fbef4565429f641a7eb93f190ad0e45e11d7f8