aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Add support for cache coloringStefano Stabellini2022-06-172-1/+35
| | | | | | | | | | | 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>
* uboot-script-gen: Add DOMU_STATIC_MEMXenia Ragiadakou2022-06-162-2/+65
| | | | | | | | | | | | | | | | | | | | | Add a new config parameter to configure a dom0less VM with static allocation. DOMU_STATIC_MEM[number]="baseaddr1 size1 ... baseaddrN sizeN" The parameter specifies the host physical address regions to be statically allocated to the VM. Each region is defined by its start address and size. For instance, DOMU_STATIC_MEM[0]="0x30000000 0x10000000 0x50000000 0x20000000" indicates that the host memory regions [0x30000000, 0x40000000) and [0x50000000, 0x70000000) are statically allocated to the first dom0less VM. Since currently it is not possible for a VM to have a mix of both statically and non-statically allocated memory regions, when DOMU_STATIC_MEM is specified, adjust VM's memory size to equal the amount of statically allocated memory. [stefano: add check for DOMU_MEM != DOMU_STATIC_MEM] Signed-off-by: Xenia Ragiadakou <burzalodowa@gmail.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* handle correctly symlinks in parent directoriesStefano Stabellini2022-04-191-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | Commit b9e2809fce57 introduced support for symlinks when specified in the config file for one of the binaries, but it breaks if there is a symlink in one of the parent directories. This patch fixes the behavior by doing the following: - get the absolute "real" path of the target file using realpath, not resolving symlinks for the parameter path (parents still get resolved) - get the absolute "real" path of the current directory using realpath This is necessary so that the two paths match in terms of symlinks resolution. - strip the base directory from the absolute path. The result is the target file with a path relative to the current directory without symlink resolution, but correctly handling the case where symlinks are presents in the parent directories. Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com> Tested-by: Andrei Cherechesu <andrei.cherechesu@oss.nxp.com>
* Add CONTRIBUTING.mdStefano Stabellini2022-04-141-0/+11
| | | | | | | Add a CONTRIBUTING.md file to explain how to contribute patches to the project. Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* uboot-script-gen: Skip symbolic links resolvingAndrei Cherechesu2022-04-111-1/+1
| | | | | | | | | | | Skipped symbolic links resolving, since the file names that we pass via configs are symlinks, but we want the tool to generate a script with the exact same names that we pass to it. Signed-off-by: Andrei Cherechesu <andrei.cherechesu@nxp.com> Reviewed-by: Ayan Kumar Halder <ayankuma@xilinx.com> Acked-by: Stefano Stabellini <sstabellini@kernel.org>
* disk_image: use DOS partition table and FAT for the first partitionStefano Stabellini2022-04-062-16/+43
| | | | | | | | | | | This way, ImageBuilder can generate an SD card image with BOOT.BIN bootable on Xilinx ZCU102 systems. Retain the ability to generate a GPT partition table with a GPT config option. Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com> Tested-by: Andrea Stevanato <andrea.stevanato@santannapisa.it>
* If bootm, generate a u-boot Legacy uImage to bootStefano Stabellini2022-03-241-1/+22
| | | | | | | | | | | | | | | | If BOOT_CMD is specified as "bootm" it requires a uImage to boot. Automatically generate a $XEN.ub binary using mkimage and specifying the right loading address. Also remove "u-boot legacy uImage" from the allowed Xen binary types because we cannot easily check that the uImage was built with the right address. Note that "ARM OpenFirmware" is the type returned by certain versions of "file" utility for a Xen arm32 binary. Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com> Reviewed-by: Ayan Kumar Halder <ayankuma@xilinx.com>
* Add support for BOOT_CMDAyan Kumar Halder2022-03-182-18/+22
| | | | | | | | | | With BOOT_CMD, one can specify the boot command used by the imagebuilder. The valid values are 'booti', 'bootm' and 'bootefi'. Also, removed EFI option. This is now covered by BOOT_CMD. Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add support for uboot legacy imagesAyan Kumar Halder2022-03-181-1/+1
| | | | | | | | | | | | For armv7 based platforms, xen binary needs to be converted to uboot legacy image format. For example mkimage -A arm -T kernel -C none -a 0x40e00000 -e 0x40e00000 -d xen-4.17-unstable xen.ub Our uboot-script should be able to recognize these images. Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add support to load images via usbAyan Kumar Halder2022-03-142-8/+12
| | | | | | | | | | | With certain boards the only way possible to load the boot images, is from the usb partition which has been formatted with FAT filesystem. Thus, added support to load images from the usb device with a FAT partition. Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Added the lopper dts file to generate imagebuilder config from ↵Ayan Kumar Halder2022-01-212-0/+180
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | system-device-tree Lopper parses the device tree for a "xen" label. It parses the sub nodes to determine the DOM0_VCPUS, DOM0_MEM, NUM_DOMUS, DOMU_VCPUS[], DOMU_MEM[] and DOMU_PASSTHROUGH_PATHS[] As an example, consider the following snippet of system-device-tree xen: domain@2 { compatible = "openamp,domain-v1","openamp,hypervisor-v1"; cpus = <&cpus_a72 0x3 0x00000002>; memory = <0x0 0x500000 0x0 0x7fb00000>; dom0: domain@3 { compatible = "openamp,domain-v1","xen,domain-v2"; cpus = <&cpus_a72 0x3 0x00000001>; memory = <0x0 0x501000 0x0 0x3faff000>; }; linux1: domain@4 { compatible = "openamp,domain-v1","xen,domain-v2"; cpus = <&cpus_a72 0x3 0x00000001>; memory = <0x0 0x501000 0x0 0x3faff000>; access = <&mmc0 0x0>; }; linux2: domain@5 { compatible = "openamp,domain-v1","xen,domain-v2"; cpus = <&cpus_a72 0x3 0x00000001>; memory = <0x0 0x40000000 0x0 0x40000000>; firewallconfig = <&linux1 1 0>; }; }; python3 _path_to_/lopper.py -f --enhanced -i path_to_/lop-xen.dts device-trees/system-device-tree-xen.dts > config The contents of the 'config' will be as follows :- NUM_DOMUS=2 DOM0_VCPUS = 2 DOM0_MEM = 1018 DOMU_VCPUS[0] = 2 DOMU_MEM[0] = 1018 DOMU_PASSTHROUGH_PATHS[0] = "/bus@f1000000/sdhci@f1050000" DOMU_VCPUS[1] = 2 DOMU_MEM[1] = 1024 This is provided as the input configuration file for the imagebuilder. Signed-off-by: Bruce Ashfield <bruce.ashfield@xilinx.com> Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> [stefano: minor style and grammar fixes] Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Updated README.mdAyan Kumar Halder2022-01-201-1/+6
| | | | | | | | | | | Added some explanation for the usage of DOMU_PASSTHROUGH_PATHS[number]. This is valid the two cases: 1. DOMU_NOBOOT[number] is specified 2. PASSTHROUGH_DTS_REPO is specified Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Specify the memory and virtual cpu count for DOM0Ayan Kumar Halder2022-01-203-1/+27
| | | | | | | | | | | | | Introduced the new config options :- DOM0_MEM - To specify the amount of memory (in MB) that is assigned to Dom0. DOM0_VCPUS - To specify the count of virtual CPUs for Dom0. These options are used to set XEN_CMD. Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Check for the presence of DOMU_PASSTHROUGH_DTB before invoking update_domU_cfgAyan Kumar Halder2022-01-101-8/+11
| | | | | | | | | | It should be possible to run disk_image when the user has specified neither DOMU_PASSTHROUGH_PATHS nor DOMU_PASSTHROUGH_DTB. In such a scenario, the script should not update the relevant portions of domU.cfg. Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Update the generated domU.cfgAyan Kumar Halder2022-01-041-0/+297
| | | | | | | | | | | | | | | | | | | | domU.cfg has been updated with the following propereties:- 1. iomem - This corresponds to the "xen,reg" property. It obtains mfn, num_pages and gfn. 2. dtdev - This corresponds to the "xen,path" property. This is set only if "xen,force-assign-without-iommu" is not present. 3. irqs - This corresponds to the "interrupts" property. One needs to add 32 to the interrupt value. This is due to initial 32 interrupts being reserved by GIC for special purposes. The corresponding properties are obtained from partial dtb. Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Generate the domU partial dtb via disk_imageAyan Kumar Halder2021-12-211-12/+45
| | | | | | | | | | | | | | | | | | | | Similar to uboot-script-gen, disk_image invokes compile_merge_partial_dts to generate the domU partial dtbs. It copies the dtbs to /etc/xen. Added functions to cleanup the temporary files. Also removed 'set -e'. This was causing the script to terminate if any of the functions returned non zero. In our approach, the functions in common script will return 1 (on failure), and the caller (ie disk_image) will check the return code and do the appropriate cleanup. Moreover, 'set -e' cannot be relied upon to terminate the script if any function returns error. Thus, it is not very useful. Details :- https://www.gnu.org/software/bash/manual/html_node/The-Set-Builtin.html Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Avoid exiting the script from the commonAyan Kumar Halder2021-12-212-25/+36
| | | | | | | | | | | | | | | | | | | | | | | If there is any error in compile_merge_partial_dts() and sanity_check_partial_dts(), it should return 1 to the caller. The caller will then check the return and call cleanup_and_return_err() (which terminates the script). This is to prevent compile_merge_partial_dts() and sanity_check_partial_dts() terminating the script. The reason being these functions can get invoked from disk_image (in the future) which may require some additional cleanup. Also, moved cleanup_and_return_err() to uboot-script-gen as the cleanup is specific to the script. Ensure that we preseve the directory containing the partial dtbs only when the dtbs were generated successfully. Else, we delete it. Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Avoid making changes in the device trees from the repositoryAyan Kumar Halder2021-12-171-2/+10
| | | | | | | | | | | | | | One should copy the device tree to a temporary file and then make any change (so as to enable merging of multiple device trees). In this case, the change is to remove the marker (/dts-v1/;) from all the device trees except the first one to be merged. DTC expects the marker to be present only once. Also, i, j, tmpdts and file should be set to local. This will avoid name collision. Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Refactor uboot-script-genAyan Kumar Halder2021-12-172-154/+170
| | | | | | | | | | | | Extract some of the functions from uboot-script-gen into common. This will be sourced by disk_image(in subsequent patch) which will invoke the functions for generating dtb. common will have access to all the environment variables defined in the Imagebuilder config file as described in README.md Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Return an error if DOMU_KERNEL[] is not definedAyan Kumar Halder2021-12-151-0/+7
| | | | | | | | | | DOMU_KERNEL[] needs to be defined in the config file. If this is not defined, then the user has specified an incorrect number for NUM_DOMUS. Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add support for compiling and merging partial device treesAyan Kumar Halder2021-12-152-13/+179
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | One can specify the repository and the directory holding the partial device trees via the config option PASSTHROUGH_DTS_REPO. This can be either a git url or a local directory containing the partial device trees. Also, the passthrough devices for each DOMU are specified via DOMU_PASSTHROUGH_PATHS config option. Imagebuilder will compile the partial device trees. The underlying assumption is that the name of the partial device tree should match to the name of the device specified in DOMU_PASSTHROUGH_PATHS. For example (in case of git repo) :- PASSTHROUGH_DTS_REPO="git@github.com:Xilinx/xen-passthrough-device-trees.git device-trees-2021.2" DOMU_PASSTHROUGH_PATHS[0]="/axi/serial@ff010000 /axi/mmc@ff170000" (This tells imagebuilder to clone the repo and use serial@ff010000.dts and mmc@ff170000.dts from device-trees-2021.2 folder, to compile and generate a partial dtb for DOMU[0]. If the files are absent, it will give an error. Also, if the files mismatching values for #address-cells and #size-cells, it will give an error. Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Reviewed-by: Stefano Stabellini <stefano.stabellini@xilinx.com> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Enable setting xen,passthroughAyan Kumar Halder2021-11-102-0/+9
| | | | | | | | | | Add an option 'XEN_PASSTHROUGH_PATHS' to the imagebuilder config file. It takes a list of device paths (separated by spaces) which needs to be marked with xen,passthrough. Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Moved the default assignment of domU bootargsAyan Kumar Halder2021-11-091-4/+4
| | | | | | | | | | | The default assignment of domU bootargs has been moved from add_device_tree_kernel() to xen_config(). This is done to mantain consistency with other DomU defaults. Reported-by: Brian Woods <brian.woods@xilinx.com> Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Enable the user to override the bootargs for domUAyan Kumar Halder2021-11-052-5/+11
| | | | | | | | | | | | | | | | | | | | | The user can specify the bootargs for domU in the config file as follows:- DOMU_CMD[x]="<cmd line params>" As an example, DOMU_CMD[0]="console=ttyPS0 earlycon console=ttyPS0,115200 console=ttyAMA0 clk_ignore_unused rdinit=/sbin/init root=/dev/ram0 init=/bin/sh" If the user does not specify this, then the default command line param is:- "console=ttyAMA0" Also, updated the README.md. Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> [stefano: improve README] Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
* Add *.cpio to the list of know rootfs typesAyan Kumar Halder2021-10-281-6/+12
| | | | | | | | | | | Yocto generates *.cpio images. Thus, it can be a valid type of rootfs image. Also, when an invalid rootfs image is detected, the script should exit immediately Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add an option to specify the alignment for the imageAyan Kumar Halder2021-10-182-2/+32
| | | | | | | | | | "petalinux-boot --qemu" when used with a sd image, expects the image to be of size which is power of 2. Thus, one needs to provide an option to disk_image to create images aligned to the next power of two. Signed-off-by: Ayan Kumar Halder <ayankuma@xilinx.com> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
* Change Xen load order to enable Secure BootBrian Woods2021-09-221-5/+7
| | | | | | | | | | Secure boot on uboot expects the last PE image loaded be the signed image used. Simply move Xen to the bottom of the load order (other than device trees and bitstreams) and it enables Xen to boot. Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Clean up CLI argument override sectionBrian Woods2021-09-101-28/+14
| | | | | | Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add support for loading bitstreamsBrian Woods2021-09-103-0/+49
| | | | | | Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add baremetal Linux supportBrian Woods2021-09-102-108/+243
| | | | | | | | | | Make it possible to use imagebuilder with baremetal Linux. This allows baremetal Linux to be booted in the various ways Xen is now (individual files with a script, fit with a script and fit via a config). Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Restructure uboot-script-gen for Linux supportBrian Woods2021-09-031-273/+285
| | | | | | | | | For later add Linux support, restructure the code so it's easier to add various other OSs configurartions. Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add FIT signing options to configBrian Woods2021-09-032-3/+21
| | | | | | | | Also add [-f] to the help message as it was missing. Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add support for setting LOAD_CMD in the configBrian Woods2021-09-032-8/+24
| | | | | | | | | | Reducing what's needed in the CLI arguments to a minimum to streamline usage. The current behavior does not change and setting it on the CLI arguments will overwrite what's in the config file. Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add support for EFI in configBrian Woods2021-09-032-2/+12
| | | | | | | | | Make it so that EFI enablement can be configured in the config file for uboot-script gen. Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Change fit behavior for uboot-script-genBrian Woods2021-09-032-48/+58
| | | | | | | | | Add support for adding a field in the config file and add support in uboot-script-gen for it. Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Copy DT_OVERLAY to boot partitionVíctor Mayoral Vilches2021-09-031-1/+18
| | | | | | | | | | Copy the device tree overlays to the boot partition so that they can be located and applied directly while booting. Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com> Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add support for DOM0_RAMDISKVíctor Mayoral Vilches2021-09-031-0/+9
| | | | | | | Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com> Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Allow to generate non-Xen imagesVíctor Mayoral Vilches2021-09-031-5/+17
| | | | | | | | | | | This commit introduces several changes that allow the use of disk_image for the generation of non-Xen (e.g. plain vanilla kernel-based) raw images. Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com> Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Disable DomUs in disk_image if DOMU_NOBOOT is not setVictor Mayoral Vilches2021-09-031-25/+28
| | | | | | | Signed-off-by: Victor Mayoral Vilches <v.mayoralv@gmail.com> Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add support for including files in first partitionVictor Mayoral Vilches2021-09-032-0/+37
| | | | | | | | | | | Add NUM_BOOT_AUX_FILE and BOOT_AUX_FILE[n] so that the user can add a number of files to the first partition with disk_image. This is useful for firmware files etc. Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com> Signed-off-by: Brian Woods <brian.woods@gmail.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Fix error in uboot-script-gen help messageBrian Woods2021-09-031-2/+2
| | | | | | Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Fix delimiters for dt_setBrian Woods2021-09-031-15/+28
| | | | | | | | | There was a problem with delimiters and how it worked for both the uboot scripts and the edited device trees. Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add support for EFI in U-boot via bootefiBrian Woods2021-07-192-5/+16
| | | | | | | | | Also add "multiboot,module" compatible string for dom0 kernel and ramdisk, so that Xen can detect it and skip loading the xen.cfg file. Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add support for device tree overlaysBrian Woods2021-07-192-1/+59
| | | | | | | | | | | | Device tree overlaps support in u-boot means that adding overlay support at boot time is easy. Simply loading the files via tftp/scsi/fit etc and then applying the overlays before the normal imagebuilder fdt edits at boot time allows for applying overlays without changing the device tree files. Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add FIT signature supportBrian Woods2021-07-192-32/+65
| | | | | | | | Add support for signing FIT images. Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add FIT support with scriptBrian Woods2021-07-192-16/+64
| | | | | | | | | | | | Add a "fit" option that uses a script rather than a standard FIT format. This allows traditional imagerbuilder script support to be used with FIT images. Dom0less and everything else works and is free of the limitations that the standard FIT format of using configs has. Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Tested-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add support for creating a standard fit imageBrian Woods2021-07-192-6/+185
| | | | | | | | | | This allows the creation of a standard fit image without the use of a script. This also means that supporting dom0less configs is rather tricky since it uses bootm and not booti. Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add support for modding device treeBrian Woods2021-07-192-36/+93
| | | | | | | | | | Rather than using an uboot script to modify the device tree, allow an config option to be specified so that a device tree is generated as well. Making it to see what exactly is given to Xen. Signed-off-by: Brian Woods <brian.woods@xilinx.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
* Add a configurable SLACK parameter to set how many MB of free space are ↵Víctor Mayoral Vilches2021-05-171-3/+13
| | | | | | | | added to each partition. Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com> Reviewed-by: Brian Woods <brian.woods@xilinx.com>
* Account for rootfs compression and total sizeVíctor Mayoral Vilches2021-05-171-5/+23
| | | | | | | | | | | | A heuristic was used in the previous implementation for simplicity (*2) but when using bigger file systems size overflows. This patch uncompresses the archive in an auxiliary folder and calculates its total size in bytes instead. Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com> Reviewed-by: Brian Woods <brian.woods@xilinx.com>