@@ -97,6 +97,10 @@ Where:
- XEN_CMD specifies the command line arguments used for Xen. If not
set, the default one will be used.
+- XEN_STATIC_HEAP="baseaddr1 size1 ... baseaddrN sizeN"
+ if specified, indicates the host physical address regions
+ [baseaddr, baseaddr + size) to be reserved as Xen static heap.
+
- PASSTHROUGH_DTS_REPO specifies the git repository and/or the directory
which contains the partial device trees. This is optional. However, if
this is specified, then DOMU_PASSTHROUGH_PATHS[number] need to be specified.
@@ -189,6 +189,21 @@ function add_device_tree_static_mem()
dt_set "$path" "xen,static-mem" "hex" "${cells[*]}"
}
+function add_device_tree_xen_static_heap()
+{
+ local path=$1
+ local regions=$2
+ local cells=()
+ local val
+
+ for val in ${regions[@]}
+ do
+ cells+=("$(split_value $val)")
+ done
+
+ dt_set "$path" "xen,static-heap" "hex" "${cells[*]}"
+}
+
function add_device_tree_cpupools()
{
local cpu
@@ -344,6 +359,11 @@ function xen_device_tree_editing()
then
add_device_tree_cpupools
fi
+
+ if test "${XEN_STATIC_HEAP}"
+ then
+ add_device_tree_xen_static_heap "/chosen" "${XEN_STATIC_HEAP}"
+ fi
}
function linux_device_tree_editing()