On Wed, Sep 6, 2023 at 2:31 PM Gundlupet Raju, Sandeep < [email protected]> wrote:
> Hi Bruce, > > Sorry I totally missed replying to this email. > > On 8/27/2023 7:23 AM, Bruce Ashfield wrote: > > In message: [meta-virtualization][master][PATCH 1/2] xen-boot-cmd: Add > xen variable as addendum > > on 25/08/2023 Sandeep Gundlupet Raju wrote: > > > >> Signed-off-by: Sandeep Gundlupet Raju <[email protected]> > >> --- > >> .../xilinx/recipes-bsp/u-boot/xen-boot-cmd.inc | 12 ++++++++++++ > >> 1 file changed, 12 insertions(+) > >> > >> diff --git a/dynamic-layers/xilinx/recipes-bsp/u-boot/xen-boot-cmd.inc > b/dynamic-layers/xilinx/recipes-bsp/u-boot/xen-boot-cmd.inc > >> index b2b76120..6d113c9a 100644 > >> --- a/dynamic-layers/xilinx/recipes-bsp/u-boot/xen-boot-cmd.inc > >> +++ b/dynamic-layers/xilinx/recipes-bsp/u-boot/xen-boot-cmd.inc > >> @@ -36,3 +36,15 @@ XEN_CMDLINE_APPEND ?= "" > >> # Specify the max number of vcpus for dom0 > >> # Example usage: DOM0_MAX_VCPUS = "2" or DOM0_MAX_VCPUS = "2-4" > >> DOM0_MAX_VCPUS ?= "1" > >> + > >> +# Add xen variables as addendum. > >> +# Variable SCRIPT_SED_ADDENDUM id defined in meta-xilinx and set to > null by > >> +# default and enable only for xen builds. > > s/id/is/ > > > > This really entangles the meta-virt dynamic layer with the xilinx > > layers. You need to have an understanding of one, to really understand > > the other. > [Sandeep]: I understand the problem is there is no standard way of doing > this. > > If we are setting or appending to a variable, it really should be > > defined in meta-virtualization. > > > > Is there a way to move the functions that are using this variable > > into the main Xen meta-virt recipes, in such a way that this is > > a generic way to customize the boot ? > > [Sandeep]: We can move the xen specific variables(such as DOM0_MEM, > XEN_CMDLINE_APPEND, DOM0_MAX_VCPUS etc...) to main xen meta-virt > inclusion files. Then using SCRIPT_SED_ADDEDUM approach in dynamic layer > we can append to existing soc vendor boot script recipe do_compile task > or a separate xen boot script recipe similar to RPI. I will prepare a > RFC patch and send it for review. > > I'm open if you have any better idea or way of handling this. > Hi all, sorry for my slow response on this thread. I am interested in seeing if we can better incorporate board support for Xen into the main recipes and u-boot configuration, and wondering if it could be beneficial to see if we could have a single u-boot script for Xen to go into meta-virtualization/recipes-bsp/u-boot. As a starting point, it could be built from combining the two scripts are currently in meta-virt's dynamic layers: dynamic-layers/xilinx/recipes-bsp/u-boot/u-boot-xlnx-scr/boot.cmd.xen dynamic-layers/raspberrypi/recipes-bsp/xen-rpi-u-boot-scr/files/ boot.cmd.xen.in with refactoring to preserve the existing behaviour for each board. Both those files are already parameter driven -- ie. they do variable substitution on the input template to generate the deployed final script. If we do this, it should be a reasonable starting point for booting Xen on other Arm boards just by configuring variables in the BSP layer and we might be able to simplify meta-virtualization's dynamic layers a bit. Before getting to that though, one thing that wasn't clear to me is why the Xilinx dynamic layer Xen u-boot script is currently packaged via a bbappend, rather than a standalone recipe bb, as the raspberry pi one is. If you change to follow that raspberry pi example then you can switch your boot-Xen-or-not behaviour by setting the PREFERRED_PROVIDER_u-boot-default-script variable (to use either your meta-xilinx non-Xen u-boot script recipe, or your meta-virtualization Xen-enabled one) and avoid the need for the second patch that adds the new control variable in this series. Could that be a viable approach? Christopher > > We can also explore on image builder tool > https://gitlab.com/ViryaOS/imagebuilder/-/tree/master, We can create a > imagebuilder.bbclass and user can input the cfg and generate the right > u-boot scripts. It's VERY unclear to me that this is useful for anyone? > we need to better understand this component, how it's configured and > it's general purpose usage. > > > Bruce > > > >> +SCRIPT_SED_ADDENDUM += "-e 's/@@XEN_IMAGE_NAME@@/${XEN_IMAGE_NAME}/' \ > >> + -e 's/@@XEN_OFFSET@@/${XEN_OFFSET}/' \ > >> + -e 's/@@XEN_LOAD_ADDRESS@@/${XEN_LOAD_ADDRESS}/' \ > >> + -e 's/@@DOM0_MEM@@/${DOM0_MEM}/' \ > >> + -e 's/@@DOM0_MAX_VCPUS@@/${DOM0_MAX_VCPUS}/' \ > >> + -e 's:@@XEN_SERIAL_CONSOLES@@:${XEN_SERIAL_CONSOLES}:' \ > >> + -e 's:@@XEN_CMDLINE_APPEND@@:${XEN_CMDLINE_APPEND}:' \ > >> +" > >> \ No newline at end of file > >> -- > >> 2.34.1 > >> >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#8287): https://lists.yoctoproject.org/g/meta-virtualization/message/8287 Mute This Topic: https://lists.yoctoproject.org/mt/100961342/21656 Group Owner: [email protected] Unsubscribe: https://lists.yoctoproject.org/g/meta-virtualization/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
