[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [ImageBuilder] [PATCH 2/2] uboot-script-gen: Enable direct mapping of statically allocated memory
On Sun, 19 Jun 2022, Xenia Ragiadakou wrote: > Direct mapping for dom0less VMs is disabled by default in XEN and can be > enabled through the 'direct-map' property. > Add a new config parameter DOMU_DIRECT_MAP to be able to enable or disable > direct mapping, i.e set to 1 for enabling and to 0 for disabling. > This parameter is optional. Direct mapping is enabled by default for all > dom0less VMs with static allocation. > > The property 'direct-map' is a boolean property. Boolean properties are true > if present and false if missing. > Add a new data_type 'bool' in function dt_set() to setup a boolean property. > > Signed-off-by: Xenia Ragiadakou <burzalodowa@xxxxxxxxx> Reviewed-by: Stefano Stabellini <sstabellini@xxxxxxxxxx> > --- > README.md | 4 ++++ > scripts/uboot-script-gen | 18 ++++++++++++++++++ > 2 files changed, 22 insertions(+) > > diff --git a/README.md b/README.md > index c52e4b9..17ff206 100644 > --- a/README.md > +++ b/README.md > @@ -168,6 +168,10 @@ Where: > if specified, indicates the host physical address regions > [baseaddr, baseaddr + size) to be reserved to the VM for static allocation. > > +- DOMU_DIRECT_MAP[number] can be set to 1 or 0. > + If set to 1, the VM is direct mapped. The default is 1. > + This is only applicable when DOMU_STATIC_MEM is specified. > + > - LINUX is optional but specifies the Linux kernel for when Xen is NOT > used. To enable this set any LINUX\_\* variables and do NOT set the > XEN variable. > diff --git a/scripts/uboot-script-gen b/scripts/uboot-script-gen > index bdc8a6b..e85c6ec 100755 > --- a/scripts/uboot-script-gen > +++ b/scripts/uboot-script-gen > @@ -27,6 +27,7 @@ function dt_mknode() > # hex > # str > # str_a > +# bool > function dt_set() > { > local path=$1 > @@ -49,6 +50,12 @@ function dt_set() > array+=" \"$element\"" > done > echo "fdt set $path $var $array" >> $UBOOT_SOURCE > + elif test $data_type = "bool" > + then > + if test "$data" -eq 1 > + then > + echo "fdt set $path $var" >> $UBOOT_SOURCE > + fi > else > echo "fdt set $path $var \"$data\"" >> $UBOOT_SOURCE > fi > @@ -65,6 +72,12 @@ function dt_set() > elif test $data_type = "str_a" > then > fdtput $FDTEDIT -p -t s $path $var $data > + elif test $data_type = "bool" > + then > + if test "$data" -eq 1 > + then > + fdtput $FDTEDIT -p $path $var > + fi > else > fdtput $FDTEDIT -p -t s $path $var "$data" > fi > @@ -206,6 +219,7 @@ function xen_device_tree_editing() > if test "${DOMU_STATIC_MEM[$i]}" > then > add_device_tree_static_mem "/chosen/domU$i" > "${DOMU_STATIC_MEM[$i]}" > + dt_set "/chosen/domU$i" "direct-map" "bool" > "${DOMU_DIRECT_MAP[$i]}" > fi > dt_set "/chosen/domU$i" "vpl011" "hex" "0x1" > if test "$DOM0_KERNEL" > @@ -470,6 +484,10 @@ function xen_config() > then > DOMU_CMD[$i]="console=ttyAMA0" > fi > + if test -z "${DOMU_DIRECT_MAP[$i]}" > + then > + DOMU_DIRECT_MAP[$i]=1 > + fi > i=$(( $i + 1 )) > done > } > -- > 2.34.1 >
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |