diff options
author | Stefano Stabellini | 2022-06-17 18:19:33 -0700 |
---|---|---|
committer | Stefano Stabellini | 2022-06-17 18:19:33 -0700 |
commit | 6f5ecb4a9d780378ed3733a7c838b10e5d0a832d (patch) | |
tree | de5974f42af4406abb348cafea950a785dd420c1 /scripts/uboot-script-gen | |
parent | 66b9bd9f5e20c168ebcad4b08ac29cf6a90b666d (diff) |
Add support for cache coloring
Generate the coloring information for Xen, dom0 and domUs based on
information on the config file.
Cache coloring is not upstreaming but it was published to xen-devel
already. It is very useful to be able to provide a cache coloring
configuration via config file instead of manually editing boot.source.
Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
Diffstat (limited to 'scripts/uboot-script-gen')
-rwxr-xr-x | scripts/uboot-script-gen | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/scripts/uboot-script-gen b/scripts/uboot-script-gen index 001f6ed..48b36a3 100755 --- a/scripts/uboot-script-gen +++ b/scripts/uboot-script-gen @@ -203,6 +203,21 @@ function xen_device_tree_editing() add_device_tree_static_mem "/chosen/domU$i" "${DOMU_STATIC_MEM[$i]}" fi dt_set "/chosen/domU$i" "vpl011" "hex" "0x1" + + if test "${DOMU_COLORS[$i]}" + then + local startcolor=$(echo "${DOMU_COLORS[$i]}" | cut -d "-" -f 1) + local endcolor=$(echo "${DOMU_COLORS[$i]}" | cut -d "-" -f 2) + local bitcolors=0 + local bit=$startcolor + while test $bit -le $endcolor + do + bitcolors=$(( $bitcolors | $(( 1 << $bit)) )) + bit=$(( $bit + 1 )) + done + dt_set "/chosen/domU$i" "colors" "hex" "$(printf "0x%x" $bitcolors)" + fi + add_device_tree_kernel "/chosen/domU$i" ${domU_kernel_addr[$i]} ${domU_kernel_size[$i]} "${DOMU_CMD[$i]}" if test "${domU_ramdisk_addr[$i]}" then @@ -384,7 +399,16 @@ function xen_config() DOM0_VCPUS="1" fi - XEN_CMD="console=dtuart dtuart=serial0 dom0_mem=${DOM0_MEM}M dom0_max_vcpus=${DOM0_VCPUS} bootscrub=0 vwfi=native sched=null" + if test "$DOM0_COLORS" + then + DOM0_COLORS="dom0_colors=$DOM0_COLORS" + fi + if test "$XEN_COLORS" + then + XEN_COLORS="xen_colors=$XEN_COLORS" + fi + + XEN_CMD="console=dtuart dtuart=serial0 dom0_mem=${DOM0_MEM}M dom0_max_vcpus=${DOM0_VCPUS} bootscrub=0 vwfi=native sched=null $XEN_COLORS $DOM0_COLORS" else if [ "$DOM0_MEM" ] || [ "$DOM0_VCPUS" ] then |