summaryrefslogtreecommitdiffstats
path: root/meta-xilinx-core/classes-recipe
Commit message (Collapse)AuthorAgeFilesLines
* various: Fix variable usageMark Hatle2024-11-211-2/+2
| | | | | | | | | | Remove most direct references to WORKDIR. S = "${WORKDIR}" is no longer allowed, adjust this to refer to UNPACKDIR ${WORKDIR}/package is also incorrect, adjust to ${PKGD}. Signed-off-by: Mark Hatle <mark.hatle@amd.com>
* dfx_user_dts: Fix copying fw files if input is absolute pathSandeep Gundlupet Raju2024-10-041-0/+18
| | | | | | | | | FW files are not copied to ${nonarch_base_libdir}/firmware/xilinx/${PN}/ if SRC_URI is absolute file path, So fix logic to copy the files to ${nonarch_base_libdir}/firmware/xilinx/${PN} directory. Signed-off-by: Sandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com> Signed-off-by: Mark Hatle <mark.hatle@amd.com>
* imgrcry: Rework image-recover recipeJohn Toomey2024-09-201-1/+1
| | | | | | | | | | | | Rework the image recover recipe to match image selector. imgrcry is now the top level recipe which will pull in the required version of image-recovery depending on build flow. This change also updates the output file name in a number of places and fixes an issue in image selector. Signed-off-by: John Toomey <john.toomey@amd.com> Signed-off-by: Mark Hatle <mark.hatle@amd.com>
* amd_spi_iamge: Fix image-selector manifest file nameJohn Toomey2024-08-271-1/+1
| | | | | Signed-off-by: John Toomey <john.toomey@amd.com> Signed-off-by: Mark Hatle <mark.hatle@amd.com>
* qemuboot-xilinx: Add QB_SD_DRIVE_INDEX variableSandeep Gundlupet Raju2024-08-021-6/+17
| | | | | | | | | | | | | | | | | | | | | | SD drive index value was fixed in bbclass for SD0 and SD1 device. With this if user is booting QEMU with eMMC0(secondary boot mode) or eMMC1 device then QEMU doesn't boot. Hence add QB_SD_DRIVE_INDEX variable where user can set the drive index to SD/eMMC device as shown below. SoC Device Drive Index ------------------------------------------------------------------- Zynq-7000, ZynqMP, Versal SD0 0 ZynqMP, Versal SD1 1 ZynqMP, Versal eMMC0(secondary boot only) 2 ZynqMP, Versal eMMC1 3 Also do not set drive index based on boot mode some boards may have primary boot mode as QSPI/OSPI which use QSPI/OSPI bin file for mtd and secondary boot mode as SD/eMMC. Signed-off-by: Sandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com> Signed-off-by: Mark Hatle <mark.hatle@amd.com>
* Tweaks to enable version string format changeJohn Toomey2024-06-171-6/+4
| | | | | | | | | | | Minor updates to the amd_spi_image bbclass and bootbin version files to support updated version strin format for Kria, SC and emb-plus Also fix an issue with IMAGE_NAME_SUFFIX being set to ".rootfs" by default Signed-off-by: John Toomey <john.toomey@amd.com> Signed-off-by: Mark Hatle <mark.hatle@amd.com>
* qemuboot-xilinx.bbclass: Rename QB_DEVICE_MODE to QB_BOOT_MODESandeep Gundlupet Raju2024-06-051-2/+2
| | | | | | | | Rename QB_DEVICE_MODE to QB_BOOT_MODE to align with TRM boot mode table. Signed-off-by: Sandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com> Signed-off-by: Mark Hatle <mark.hatle@amd.com>
* various: Remove SOC_VARIANT, split versal and versal-net, add machine_featuresMark Hatle2024-06-041-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | SOC_VARIANT has been remove, we are now only using the YP standard SOC_FAMILY configuration. The defined families are: zynq, zynqmp, versal and versal-net. Our decision of breaking up versal-net from versal, is based on the SoC CPU changes from cortexa72/r5 to cortexa78/r52, thus we're treating it as a different SoC family. In order to capture the individual capabilities that we used to handle via SOC_VARIANT, we have defined the following features (some may have been previously defined): - mali400 (zynqmp eg and ev) - vcu (zynqmp ev) - rfsoc (zynqmp dr RF capabiltiies) - aie - (versal ai & premium) - vdu - (versal ai) SOC_VARIANT_ARCH and SOC_FAMILY_ARCH are now obsolete and replaced by MACHINE_ARCH. This is based on the guideline that any recipes that use MACHINE_FEATURES should be MACHINE_ARCH specific. Signed-off-by: Mark Hatle <mark.hatle@amd.com>
* qemuboot-xilinx: Add QB_DEVICE_MODE optionJohn Toomey2024-05-221-2/+7
| | | | | | | | | | | Add QB_DEVICE_MODE variable to allow setting of QEMU boot mode - the default value is unchanged but can be modified per machine Signed-off-by: John Toomey <john.toomey@amd.com> Add zynqmp boot-mode reference Signed-off-by: Mark Hatle <mark.hatle@amd.com>
* dfx_user_dts.bbclass: Make bit or bin or pdi as required inputSandeep Gundlupet Raju2024-04-041-7/+14
| | | | | | | | | | | | | 1. Make bit or bin or pdi as required input for firmware recipes. If bit or bin or pdi of respective soc_family is not included then raise bitbake parse skip recipe errors. 2. Check for absolute dtbo/bin/bit path if any of these files exits in SRC_URI. 3. Skip recipe if both dtbo and dts/dtsi found in SRC_URI. 4. Fix logic to convert from bit to bin for zynqmp or zynq soc family. Signed-off-by: Sandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com> Signed-off-by: Mark Hatle <mark.hatle@amd.com>
* fw-package.bbclass: Create new bbclass for fw packagingSandeep Gundlupet Raju2024-02-131-0/+94
| | | | | | | | | | Create a new fw-package.bbclass which provides infrastructure to package and deploy firmware baremetal or freertos application elf or bin files to linux root filesystem under /lib/firmware(default) or /boot directory as per requirement. Signed-off-by: Sandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com> Signed-off-by: Mark Hatle <mark.hatle@amd.com>
* dfx_user_dts: Fix build issue if SRC_URI has only one fileSandeep Gundlupet Raju2024-02-091-50/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. If SRC_URI has only one file without any space as shown below SRC_URI = "file://vck190-dfx-static.pdi" With this it fails to detect input entries. This is due to current search logic doesn't work unless there is a space after end of file name or new line for each entry as shown below. SRC_URI = "file://vck190-dfx-static.pdi " or SRC_URI = " \ file://vck190-dfx-static.pdi \ " So rewrite the logic to split the SRC_URI enteries and then search key w/o the trailing space. 2. Remove get_dt_count function to avoid duplication. 3. Add docs for *_PATH variables. 4. Add warn message when multiple dtbo or bit or bin or pdi file is found. 5. Fix DTSI_PATH, BIT_PATH build issue when input files are absolute path. Signed-off-by: Sandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com> Signed-off-by: Mark Hatle <mark.hatle@amd.com>
* dfx_user_dts.bbclass: Fix build issue with bin and dtsi as inputSandeep Gundlupet Raju2024-01-031-1/+1
| | | | | | | | | | In dfx_user_dts.bbclass fix build issue with bin and dtsi as input file to firmware recipe. In case of bin file as input bootgen operation is not performed and directly copy from ${S} directory. Also remove check condition if dtbo with firmware-name doesn't exist which is not required in case of bin file as input. Signed-off-by: Sandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com>
* dfx_user_dts.bbclass: Add bit or bin or pdi only packagingSandeep Gundlupet Raju2023-12-201-48/+81
| | | | | | | | | | | | | | 1. Add support for packaging bit or bin or pdi only. 2. Fix logic for bit or bin found by adding space in search key, If user has .bit.bin file as input then both .bit and .bin was set to trun. In SRC_URI between two files there will be a space. 3. Remove versal soc family check condition and inverse the logic with zynq and zynqmp to support next generation silicon devices. 4. Fix UnboundLocalError: local variable 'dts_file' referenced before assignment. Signed-off-by: Sandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com> Signed-off-by: Mark Hatle <mark.hatle@amd.com>
* dfx_user_dts.bbclass: Make bitstream bin as default loadable fileSandeep Gundlupet Raju2023-12-081-21/+27
| | | | | | | | | | | | | | | | | Make bitstream bin as default loadable file for Zynq 7000(Full) and ZynqMP(Full, DFx) dynamic configurations. Below use case are covered as part this patch. 1. If user provides a .bin file as input to dfx_user_dts bbclass then deploy this bin file to lib/firmware directory without any conversion. 2. If user provides a .bit file as input to dfx_user_dts bbclass then convert .bit file to .bin file using bootgen tool and deploy this bin file to lib/firmware directory. 3. Refactor fpga-manager.bbclass with dfx_user_dts.bbclass. Signed-off-by: Sandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com> Signed-off-by: Mark Hatle <mark.hatle@amd.com>
* classes: Move classes to match bbclass scope functionalitySandeep Gundlupet Raju2023-12-087-0/+687
Move classes to classes-global or classes-recipe as appropriate to match bbclass scope functionality. Below is the list. classes-recipe: (inherited by recipes) amd_spi_image.bbclass dfx_user_dts.bbclass image-wic-utils.bbclass kernel-simpleimage.bbclass qemuboot-xilinx.bbclass xilinx-fetch-restricted.bbclass xilinx-platform-init.bbclass classes-global: (inherited globally) xilinx-microblaze.bbclass classes: (usage context is not clearly defined) gen-machine-conf.bbclass image-types-xilinx-qemu.bbclass xilinx-testimage.bbclass xilinx-vars.bbclass xilinx-deprecated.bbclass Signed-off-by: Sandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com> Signed-off-by: Mark Hatle <mark.hatle@amd.com>