summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* machine-xilinx-default.inc: Remove image_types_ubootpyroAlistair Francis2017-11-141-1/+0
| | | | | | | | This has changed in the meta layer and breaks the build, as it appears it is no longer required just remove it. Signed-off-by: Alistair Francis <alistair.francis@xilinx.com> Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* zynqmp-pmu.bbclass: Fix issues with zynqmp-pmu and multilibNathan Rossi2017-08-271-0/+4
| | | | | | | | | | | | | | When using multilib the MULTILIB_VARIANTS variable is populated, this triggers differing code paths in certain recipes. These are not desired for the firmware building, since they modify the install paths. Also set the DEFAULTTUNE to avoid changes to BASELIB/baselib when multilib is used, as it attempts to set BASELIB based on 'tune-*' overrides. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Acked-by: Alistair Francis <alistair.francis@xilinx.com> Tested-by: Alistair Francis <alistair.francis@xilinx.com>
* zynqmp-pmu-config.inc: Limit to specific recipesNathan Rossi2017-08-271-2/+16
| | | | | | | | | | | | | | | | | | | | | | | Limit the appending/enabling of the zynqmp-pmu BBCLASSEXTEND to only specific recipes which are used for the building of pmu-firmware. This is just binutils, gcc, newlib, libgloss and pmu-firmware itself. The limiting is done based on the BPN of the recipe, which is not provided as an override so the conditional is tested with an inline python function. This change removes the need for the extender class to be enabled globally which can conflict with certain recipes that were not written to be extended by the BBCLASSEXTEND mechanism. This change also improves the parse time avoiding the need to parse all recipes for both target and zynqmp-pmu. Add comment for the PACKAGE_EXTRA_ARCHS setting, so it is clear why it is set. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Acked-by: Alistair Francis <alistair.francis@xilinx.com> Tested-by: Alistair Francis <alistair.francis@xilinx.com>
* kernel-module-mali.bb: Update source locationBhargava Sreekantappa Gayathri2017-07-111-1/+1
| | | | | | | | | | | MALI kernel sources seems to have been moved, update recipe to download source from a new location Signed-off-by: Bhargava Sreekantappa Gayathri <bhargava.sreekantappa-gayathri@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Reviewed-by: Luca Ceresoli <luca@lucaceresoli.net> Tested-by: Luca Ceresoli <luca@lucaceresoli.net>
* u-boot-zynq-uenv.bb: Enforce default load addressesNathan Rossi2017-06-201-0/+2
| | | | | | | | | | There is differences in the value of *_load_address environment variables between U-Boot versions (u-boot/u-boot-xlnx) as well as any environment stored in spi flash. Instead of relying on correct configuration being set, set the expected values in uEnv.txt to avoid issues. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* zybo-linux-bd-zynq7: Change gem0 phy to match kernel definitionNathan Rossi2017-06-081-3/+2
| | | | | | | | | Change the device tree for the gem0 phy to match that of the kernel device tree for ZYBO. This removes the compatible string and uses the phy address of 0 (broadcast). This lets the kernel auto detect the phy since there are no other devices on the MDIO bus for gem0. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* ep108-zynqmp: Re-enable 'qemuboot' image classNathan Rossi2017-06-031-0/+1
| | | | | | | | | | | Re-enable the 'qemuboot' image class which is used to generate qemuboot.conf for the ep108-zynqmp machine. This used to be set by machine-xilinx-qemu.inc but as of the 'qemuboot-xilinx.bbclass: Rework qemu-xilinx setup' commit is no longer set by default. The same commit setup other machines to use the 'qemuboot' image class directly but skipped this machine. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* u-boot-xlnx.inc: Remove redefinition of package archManjukumar Matha2017-06-031-2/+0
| | | | | | | | PACKAGE_ARCH = "${MACHINE_ARCH}" is defined in u-boot.inc. Remove the package arch here to be consistent with upstream Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> Reviewed-by: Nathan Rossi <nathan@nathanrossi.com>
* xf86-video-armsoc_git.bb: Correct the dependency on libx11Manjukumar Matha2017-06-031-1/+1
| | | | | | | Change the dependency to virtual/libx11 Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> Reviewed-by: Nathan Rossi <nathan@nathanrossi.com>
* zcu102-zynqmp: Remove pinning of older kernel, u-boot and atf versionsNathan Rossi2017-06-031-6/+0
| | | | | | | | | | Remove the version pinning to the older kernel, u-boot and arm-trusted-firmware versions. These versions are now functional as pmu-firmware can be built and executed for the zcu102 physical hardware as well as within QEMU. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Tested-by: Alistair Francis <alistair.francis@xilinx.com>
* zcu102-zynqmp: Setup the use of multiarch QEMUNathan Rossi2017-06-033-4/+28
| | | | | | | | | Setup the qemuboot variables and qemu-xilinx-helper-native environment to use the multiarch script to start a QEMU multiarch instance with the MicroBlaze PMU. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Tested-by: Alistair Francis <alistair.francis@xilinx.com>
* qemu-xilinx: Set the value of QEMU_TARGETS as opposed to defaultNathan Rossi2017-06-031-1/+1
| | | | | | | | | | | | | Some distro's set the value of QEMU_TARGETS with the '?=' operator, this takes precedence over value being set in qemu-xilinx. This is problematic as this can remove the MicroBlaze or AArch targets that are used. An example of a distro that sets this is poky. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Reviewed-by: Alistair Francis <alistair.francis@xilinx.com> Tested-by: Alistair Francis <alistair.francis@xilinx.com>
* qemu-xilinx-multiarch-helper-native: Recipe to provide a helper scriptNathan Rossi2017-06-032-0/+52
| | | | | | | | | | | This recipe provides a helper script which is executed instead of the main qemu-system-aarch64 binary. This script is used to configure a multiarch QEMU setup where a MicroBlaze PMU instance is running along side the ZynqMP AArch64 instance. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Reviewed-by: Alistair Francis <alistair.francis@xilinx.com> Tested-by: Alistair Francis <alistair.francis@xilinx.com>
* README.qemu.md: Add a README to detail PMU ROMNathan Rossi2017-06-031-0/+25
| | | | | | | | | | | | Add a README for QEMU documentation and specifically add information about the PMU ROM requirements for QEMU with ZynqMP/ZCU102. This details the reason for the PMU Firmware + PMU ROM requirement as well as documentation and link to get the PMU ROM in order to boot a ZCU102 QEMU with runqemu. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Reviewed-by: Alistair Francis <alistair.francis@xilinx.com> Tested-by: Alistair Francis <alistair.francis@xilinx.com>
* qemu-devicetrees: Deploying of MULTI_ARCH device treesNathan Rossi2017-06-031-8/+7
| | | | | | | | Deploy the MULTI_ARCH specific device trees for use with QEMU. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Reviewed-by: Alistair Francis <alistair.francis@xilinx.com> Tested-by: Alistair Francis <alistair.francis@xilinx.com>
* zcu102-zynqmp: Enable building of PMU recipes and build pmu firmwareNathan Rossi2017-06-032-1/+8
| | | | | | | | | Enable the building of 'zynqmp-pmu' recipes, and setup the pmu-firmware to be built for the image. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Tested-by: Alistair Francis <alistair.francis@xilinx.com> Tested-by: Koteswararao Nayudu <kotin@xilinx.com>
* classes/zynqmp-pmu.bbclass: Create a extender class for the ZynqMP PMUNathan Rossi2017-06-031-0/+118
| | | | | | | | | | | | | | | | | | | This class is an extender class similar to native/nativesdk/multilib that should be used with BBCLASSEXTEND. The purpose of this class is to allow the building of recipes for the ZynqMP PMU architecture along side building for the primary APU of the ZynqMP. Which allows for building the PMU firmware itself as well as its dependencies (e.g. newlib, libgloss). This class is intended for use with binutils-cross, gcc-cross, newlib, libgloss and pmu-firmware, but can be used globally. However there are limitations of this class and functional behaviour beyond the intended targets is not tested. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Tested-by: Alistair Francis <alistair.francis@xilinx.com> Tested-by: Koteswararao Nayudu <kotin@xilinx.com>
* pmu-firmware: Create a recipe for the PMU firmware for PMU on ZynqMPNathan Rossi2017-06-031-0/+85
| | | | | | | | | | | | | Create a recipe for the PMU firmware for the ZynqMP PMU. This firmware is provided by the embeddedsw repo, and specifically uses the 'zynqmp_pmufw' application of the repo. This build requires a MicroBlaze compiler with newlib, libgloss and libgcc. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Tested-by: Alistair Francis <alistair.francis@xilinx.com> Tested-by: Koteswararao Nayudu <kotin@xilinx.com>
* libgloss_2.5.0: Add libgloss recipeNathan Rossi2017-06-031-0/+18
| | | | | | | | | | | | Add a recipe for libgloss 2.5.0. This library is used to provide startup code, and IO for baremetal targets. This is used by newlib to provide a functional libc. This library is used by the Xilinx standalone libraries/applications. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Tested-by: Alistair Francis <alistair.francis@xilinx.com> Tested-by: Koteswararao Nayudu <kotin@xilinx.com>
* newlib_2.5.0: Add recipe for the newlib libcNathan Rossi2017-06-032-0/+70
| | | | | | | | | | Add a recipe for newlib version 2.5.0 which provides a libc for embedded targets. Specifically this is required for building programs using the Xilinx standalone drivers/applications. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Tested-by: Alistair Francis <alistair.francis@xilinx.com> Tested-by: Koteswararao Nayudu <kotin@xilinx.com>
* machine-xilinx-default.inc: Remove xserver-xorg-extension-glxManjukumar Matha2017-05-301-5/+1
| | | | | | | | | xserver-xorg-extension-glx is a software support, the performance is not validate on Xilinx platform. Instead convert application to depend on egl/gles1/gles2. MALI400 provides the required hardware acceleration Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> Reviewed-by: Nathan Rossi <nathan@nathanrossi.com>
* zcu102-zynqmp.conf: Remove mali as machine featureManjukumar Matha2017-05-302-5/+1
| | | | | | | | | | | | | | | Remove mali as machine feature. This is not required, any dependencies on mali userspace libraries should be resolved through gles1/gles2/egl preffered provider. for ex: PREFERRED_PROVIDER_virtual/libgles1_zynqmp = "libmali-xlnx" PREFERRED_PROVIDER_virtual/libgles2_zynqmp = "libmali-xlnx" PREFERRED_PROVIDER_virtual/egl_zynqmp = "libmali-xlnx" MALI userspace libraries inturn should depends on out-of-tree mali kernel module. Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> Reviewed-by: Nathan Rossi <nathan@nathanrossi.com>
* arm-trusted-firmware: deploy versioned imagesManjukumar Matha2017-05-301-3/+9
| | | | | | | | | This patch modifies the deployed content to use versioned image names,while retaining unversioned symlinks. Signed-off-by: Cyril Chemparathy <cyril.chemparathy@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> Reviewed-by: Nathan Rossi <nathan@nathanrossi.com>
* arm-trusted-firmware_git.bb: Make ATF machine independentManjukumar Matha2017-05-302-3/+3
| | | | | | | | Make arm-trusted-firmware machine independent Signed-off-by: Cyril Chemparathy <cyril.chemparathy@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> Reviewed-by: Nathan Rossi <nathan@nathanrossi.com>
* feature-microblaze-versions.inc: Simplify version formatting functionsNathan Rossi2017-05-301-22/+8
| | | | | | | Simplify the functions used to generate the TUNE_CCARGS and PKGARCH version strings. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* arch-microblaze.inc: Invert how the 'reorder' feature is used for v8.30Nathan Rossi2017-05-302-11/+7
| | | | | | | | | | | | | | | | | | | With Xilinx MicroBlaze v8.30 a configuration issue requires that the 'pattern-compare' feature is enable for the 'reorder' feature to be correctly functional. Previously the MicroBlaze tune setup would assume that 'pattern-compare' was available even when it may not actually be, and would force enable the 'pattern-compare' feature automatically. This behaviour is prone to issues and may emit broken binaries for a target when the user was not aware or expected that there target CPU was broken. This change inverts the behaviour such that instead of implicitly enabling the 'pattern-compare' feature it instead does not enable generation of reorder instructions for the compiler by setting '-mno-xl-reorder' in the same way as the case that the target does not have the feature enabled. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* zcu102-zynqmp: Enable all the zcu102 kernel device treesNathan Rossi2017-05-301-1/+1
| | | | | | | | | | | | Enable all of the available kernel device trees for the zcu102. This includes the 'zcu102-zynqmp.dtb'. The 'revB' device tree is kept as the first entry due to its use for QEMU. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Acked-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> Tested-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
* linux/config: Update zynqmp config fragmentsNathan Rossi2017-05-302-0/+35
| | | | | | | Update the zynqmp config fragments, adding new drivers available in linux-xlnx as well as some mainline available drivers. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* linux/config: Update zynq7 fragmentsNathan Rossi2017-05-303-0/+6
| | | | | | | Update the zynq7 fragments to include new configs available in linux-xlnx and mainline kernels. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* *-zynq7: Change some boards to mainline U-Boot by defaultNathan Rossi2017-05-303-0/+3
| | | | | | | | | | | Change the microzed-zynq7, picozed-zynq7 and zybo-zynq7 machines to use the mainline U-Boot by default. All these machines can be supported by the mainline U-Boot and do not require any of the drivers/features that are only provided in the Xilinx vendor tree (u-boot-xlnx). Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* kernel-module-mali.bb: Update MALI kernel module to r7p0Manjukumar Matha2017-05-1511-51/+441
| | | | | | | Update kernel-module-mali to r7p0 version Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> Reviewed-by: Nathan Rossi <nathan@nathanrossi.com>
* machine-xilinx-default.inc: Remove version pinning for linux-xlnxNathan Rossi2017-05-151-2/+0
| | | | | | | Remove the version pinning for linux-xlnx, this allows for using the newest version available without needing to change the include. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* zcu102-zynqmp: Pin to pre-v2017.1 versions of kernel, u-boot and atfNathan Rossi2017-05-151-0/+6
| | | | | | | | | | Pin the versions of linux-xlnx, u-boot-xlnx and arm-trusted-firmware to the version prior to xilinx-v2017.1. This is due to the added requirement of pmu-firmware for xilinx-v2017.1. Currently it is not possible to boot the zcu102-zynqmp machine in QEMU with the newer versions due to missing the pmu rom as well as the pmu firmware itself. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* arm-trusted-firmware: Add recipe for xilinx-v2017.1 releaseNathan Rossi2017-05-151-0/+7
| | | | | | | | Add a recipe for the xilinx-v2017.1 release of the Xilinx fork of arm-trusted-firmware. This release is based on 1.3 of ARM Trusted Firmware. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* arm-trusted-firmware_2016.3.bb: Rename the _git.bb to the actual releaseNathan Rossi2017-05-151-0/+0
| | | | | | | Rename the arm-trusted-firmware recipe so that the filename matches the release version of the recipe. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* arm-trusted-firmware: Split common build/config into includeNathan Rossi2017-05-152-54/+56
| | | | | | | | Split the common build/config/description/etc. of the recipe into an include file so that multiple versions can use the include instead of copying the recipe content. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* kc705-microblazeel: Pin to u-boot-xlnx at xilinx-v2016.4Nathan Rossi2017-05-151-0/+3
| | | | | | | | Pin the preferred provider and version of the kc705-microblazeel machine to u-boot-xlnx and Xilinx release version xilinx-v2016.4. This is due to patches only available for this version of u-boot-xlnx. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* u-boot-xlnx: Add recipe for xilinx-v2017.1 releaseNathan Rossi2017-05-154-3/+67
| | | | | | | | | | | Add a recipe for the u-boot-xlnx xilinx-v2017.1 release, this release is based on v2017.01 of U-Boot. Also add an updated version of the patches. This patch also moves the FILESEXTRAPATHS prepend to the u-boot-xlnx.inc due to common use. And a u-boot-xlnx/${XILINX_RELEASE_VERSION} subdir is added to the list for version specific patches. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* linux-xlnx: Add recipe for xilinx-v2017.1 releaseNathan Rossi2017-05-154-0/+983
| | | | | | | | | | Add a recipe for the xilinx-v2017.1 release, this release is based on kernel version 4.9. Also update the zybo-linux-bd-zynq related patches to apply for this version of the linux-xlnx kernel. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* qemu-xilinx-helper-native: Clean up preferred provider messageNathan Rossi2017-05-151-4/+9
| | | | | | | | | | | | | | | | | Due to this recipe being added there are two providers for qemu-helper-native, but by default one is never selected. This generates a message during the build that informs the user to select a provider. This is unnecessary as the only machines that care about setting the provider is currently zcu102-zynqmp due to its requirement for qemu-xilinx all other qemu machines should be using the qemu-helper-native recipe and non-qemu machines don't use the recipe. To prevent the message, only make the qemu-xilinx-helper-native recipe available when it is selected as the preferred provider otherwise skip it. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Acked-by: Alistair Francis <alistair.francis@xilinx.com>
* linux/config: Add debug-dyndbg kernel feature fragmentNathan Rossi2017-05-152-0/+15
| | | | | | | | The debug-dyndbg fragment enables CONFIG_DYNAMIC_DEBUG, which enables the building of pr_debug/etc. such that during execution the debug messages can be enabled dynamically. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* u-boot-xlnx_2016.4.bb: Add provided ZynqMP platform init configsNathan Rossi2017-05-151-0/+1
| | | | | | | Add the configs that have platform-init files already available in the u-boot-xlnx source. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* u-boot-zynq-uenv.bb: Add recipe to generate uEnv.txt environmentNathan Rossi2017-05-1511-18/+120
| | | | | | | | | | | | | | | Add a recipe to generate uEnv.txt environments for SD boot of Zynq targets. This replaces the existing uEnv.txt for zc702/zedboard that were manually created and populated only for u-boot-xlnx builds. The generated uEnv.txt files also support auto loading of the fpga bitstream before the kernel. Also enable the use of this recipe for all *-zynq7 machines that use U-Boot and have SD/eMMC available. And additionally setup IMAGE_BOOT_FILES for these machines. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* zybo-linux-bd-zynq7: Update to use FORCE_PLATFORM_INITNathan Rossi2017-04-281-1/+1
| | | | | | | Use FORCE_PLATFORM_INIT, setting it to "1" to force U-Boot to use the platform-init from a virtual/xilinx-platform-init provider. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* u-boot-spl-zynq-init.inc: Add support for ZynqMPNathan Rossi2017-04-283-28/+38
| | | | | | | | | | | | | | Update to using the xilinx-platform-init.bbclass and depending on the 'virtual/xilinx-platform-init' provider. This allows for more generic support of platform-init (between Zynq7, ZynqMP and any future targets). This change also renames some of the variables used for defining the source of the platform-init files for SPL. Specifically HAS_PS7INIT is renamed to HAS_PLATFORM_INIT, and FORCE_PS7INIT is renamed to FORCE_PLATFORM_INIT. However for compatibility the existing variables still function as expected. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* platform-init.bb: Update to xilinx-platform-initNathan Rossi2017-04-282-28/+22
| | | | | | | | | | | | | | Update to use xilinx-platform-init.bbclass. And change to providing the generic 'virtual/xilinx-platform-init' as opposed to a zynq7 specific one. Remove the 'zynq7-platform-init.inc' this include was only useful for recipes that provide/package only platform-init files. Which means it is no more useful that the platform-init.bb recipe itself. Layers that want to provide additional platform-init files can bbappend to the platform-init recipe. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* zybo-linux-bd.bb: Update to use xilinx-platform-init.bbclassNathan Rossi2017-04-281-10/+4
| | | | | | | | | | Update this recipe to use the new class, and change the virtual provider to the more generic 'virtual/xilinx-platform-init'. Additionally simplify the FILES_${PN}-platform-init paths, and take advantage of the PLATFORM_INIT_FILES variable. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* xilinx-platform-init.bbclass: Generic platform-init classNathan Rossi2017-04-282-4/+14
| | | | | | | | | | | | | Create a more generic platform init class for use with Zynq 7000, ZynqMP and or future targets that use the platform initialization code files configuration setup. This generic class defines the source files (which are defined per SoC) and the staging directory to populate with the source files. This class replaces zynq7-platform-paths.bbclass. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
* zcu102-zynqmp: Update QB_MEM to 4GB to match boardNathan Rossi2017-04-281-1/+1
| | | | | | | | | Update the QB_MEM value to match the size of memory that is expected to be emulated for the board. The ZCU102 board has 4GB of DRAM attached to the PS. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Reviewed-by: Alistair Francis <alistair.francis@xilinx.com>
* qemu: Update to the 2017.1 releaseAlistair Francis2017-04-282-2/+2
| | | | | | | Update the QEMU and QEMU device tree commit SHAs to the 2017.1 release. Signed-off-by: Alistair Francis <alistair.francis@xilinx.com> Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>