| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
This image types class add the conversion type 'qemu-sd' to pad target
images such that their size aligns with a 256K boundary. This is
required due to how QEMU emulates SD cards from block devices, since
QEMU truncates the size to match the 256K multiple of which SD cards
advertise
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
|
|
| |
This is the default name that U-Boot SPL uses to load ATF from, so it
makes sense to deploy this by default instead of forcing all machines to
define IMAGE_BOOT_FILES with a rename.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
|
|
| |
u-boot-spl.bin is used for runqemu execution since boot.bin has a header
it cannot be loaded such that the boot.bin image content is at its load
address.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rework the do_compile from shell appends into a python task such that
special string content ('${..}' of u-boot environment vars) can be
handed cleanly.
Additionally rework some variables such that they can be overridden for
zynq/zynqmp specific values, as well as allowing custom overrides to
e.g. bootargs.
This also adds support for differing image load types include Image
(arm64), zImage, fitImage and the existing uImage. The u-boot cmd
(boot*) is automatically selected depending on the type of
KERNEL_IMAGETYPE.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The linux-xlnx kernel no longer has a zynqmp-zcu102.dtb target, use the
zynqmp-zcu102-rev1.0.dtb target for the default device tree.
Drop the revB device tree, this is no longer required for QEMU and
production boards are rev 1.0.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Reviewed-by: Alistair Francis <alistair.francis@xilinx.com>
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
|
| |
Build the rev 1.0 version of U-Boot and setup the deployment of
boot.bin.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update the arm-trusted-firmware, pmu-firmware, u-boot-xlnx, linux-xlnx,
qemu-xilinx and qemu-devicetrees recipes for to the 'xilinx-v2017.3'
release tags.
Drop/update existing patches where applicable.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Reviewed-by: Alistair Francis <alistair.francis@xilinx.com>
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
|
|
| |
Add support to provide the path of the PMU firmware to the U-Boot build
via the CONFIG_PMUFW_INIT_FILE config so that the binary can be embedded
into the boot.bin output where support is available (e.g. u-boot-xlnx).
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Change the include so that is adds a task for platform-init setup when
required. This avoids the need to modify the do_configure task which
prevents changes to its taskhash and avoids issues with taskhash
modification when the meta-xilinx layer is added but no configuration is
changed or used from it.
Improve the logic around how configs are detected such that
UBOOT_MACHINE can specify either the make target or the defconfig file
name (e.g. *_config or *_defconfig). U-Boot and u-boot.inc accept both
targets as valid configs since the values are passed directory to
U-Boot's kbuild/kconfig.
This change also drops compatibility with the older variable names
HAS_PS7INIT and FORCE_PS7INIT. Additionally the 'virtual/boot-bin'
provide logic was broken in most cases since SPL_BINARY =
"spl/boot.bin", so remove it.
Clean up use of tabs in python.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Setup COMPATIBLE_MACHINE for the device-tree recipe so that it is only
available to machines that have provided sources/device-trees.
The COMPATIBLE_MACHINE is defined by overrides to match any machine
('.*') which sets the targeted override. This allows for easy reuse of
sources across similar machines.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
|
|
|
| |
After reworking the kmeta data based on kernel-cache merge, these
configurations are not valid anymore. Delete the error causing kernel
fargments.
Reviewed-by: Nathan Rossi <nathan@nathanrossi.com>
Reviewed-by: Alistair Francis <alistair.francis@xilinx.com>
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
|
|
|
|
| |
On ZU+ machines, we set the default tune for the lib32 multilib
configuration.This allows users to select multilib by simply requiring
conf/multilib.conf in their build setups.
Signed-off-by: Cyril Chemparathy <cyril.chemparathy@xilinx.com>
Tested-by: Bhargava Sreekantappa Gayathri <bhargava.sreekantappa-gayathri@xilinx.com>
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
|
| |
Populate any built dtb's into the sysroot so that other recipes can use
the output products.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
| |
Update to use the v2017.3 ZCU102 BSP for pmu-rom binary.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
|
| |
There are instances when serial console check if required to disable
consoles when it is not defined by SERIAL_CONSOLES.
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
| |
Runtime PM suspend "put" results in addition of PM suspend API in work
queue. This barrier API will remove it from the work queue.
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
|
| |
Drop patches for the linux-yocto 4.4 kernel. This version of linux-yocto
does not have upstream configuration for meta-xilinx targets and is
superseded by 4.9 and newer kernels.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Reviewed-by: Alistair Francis <alistair.francis@xilinx.com>
|
|
|
|
|
|
|
|
|
| |
Consolidate the BSP specific configs for the ZYBO Linux-BD BSP.
Move Xilinx DRM fragment under bsp/xilinx/soc/drivers-drm, this fragment
is currently only useful for linux-xlnx targets.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
|
|
|
| |
KMACHINE is now set by the kernel recipe, this is due to different
kernels providing different kmeta sources which can provide one or more
different KMACHINEs for a specific machine.
Additionally linux-xlnx no longer uses KMACHINEs and is defaulted to
the linux-xlnx trees defconfigs.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change reworks how the linux-xlnx kernel is configured, instead of
using kmeta fragments as the base config the kernel is instead
configured with defconfigs from the vendor tree. This has been the
default for zcu102-zynqmp and now extends to Zynq and MicroBlaze
targets.
Since linux-yocto.inc is still included by the linux-xlnx.inc, it is
possible to still use kmeta like .scc/.cfg fragments separately as well
as from a kmeta source. This is used by default to get the KC705 and
ZYBO Linux-BD kernel configuration fragments. Though fragments are
limited to the current in layer provided fragments by default.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Rework meta-xilinx specific appends for linux-yocto to configure
specific KMACHINE -> MACHINE pairs as well as setting up the
xilinx-kmeta directory for additional fragments.
Additionally pull out the MicroBlaze specific DEPENDS modificaation for
common use.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Collapse the existing xilinx-* kmeta directories into a single kmeta
directory.
At the same time remove all linux-xlnx specific kmeta, it is no longer
required as linux-xlnx is using defconfigs as baseline kernel
configuration.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A large portion of the kmeta in xilinx-common and xilinx-machine was
upstreamed into the linux-yocto kernel-cache and is no longer needed in
the meta-xilinx layer.
This change removes any fragments that are in the yocto-kernel-cache,
and reworks remaining configs for use with linux-yocto. Compatibly with
linux-xlnx is dropped due to favouring defconfigs.
This includes Zynq and MicroBlaze machine configs (excluding kc705 and
Zybo Linux-BD BSP), board common bsp/ fragments and a number of feature
fragments that are already available in the yocto kernel cache.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
| |
Add bc-native as build time dependency
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
| |
OE-Core currently defaults to gnu-config_git which points at a
2015-07-28 revision. This includes the MicroBlaze patch.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
| |
GCC patch is applied as fix to avoid #ident and .sdata symbol/locations
issues when generating with debug symbols.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
| |
Update existing patches for GCC 7 (and use backports where available),
and drop merged patches whilst adding some additional patches to fix
specific bugs.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These recipes were primarily kept to make the transition for ZynqMP from
Non PMU Firmware to PMU Firmware easier for users. However these
releases are now outdated (by at least a year) and users should have
already transitioned or sorted out a long term strategy if not.
This change also drops any patches that were only used/available for
these recipes.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Acked-by: Alistair Francis <alistair.francis@xilinx.com>
|
|
|
|
|
|
|
|
|
| |
Restrict binutils and gcc to their -cross variant only. This prevents
world targets from selecting zynqmp-pmu-gcc/binutils which require more
dependencies.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Acked-by: Alistair Francis <alistair.francis@xilinx.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make the pmu-firmware recipe provide a non-prefixed
virtual/pmu-firmware. Due to the common use of a class extender the
PROVIDES variable will be remapped with the 'zynqmp-pmu-' prefix. In
order to ensure the provider is always without a prefix modify the
PROVIDES after the recipe has been parsed (and any class extender
mapping is already processed).
Additionally set the zcu102-zynqmp machine to use the
virtual/pmu-firmware target and set the zynqmp-pmu-pmu-firmware recipe
as the default provider.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
| |
Emulation Platform is no longer required, MPSoC is in production
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Reviewed-by: Alistair Francis <alistair.francis@xilinx.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a recipe that extracts the pmu-rom.elf from the PetaLinux ZCU102
BSP. This recipe cannot fetch the BSP, but uses the
xilinx-fetch-restricted class to handle error cases and providing
information on how to manually fetch.
This recipe is marked with the 'xilinx' license flag due to its use of
content that has licensing/legal requirements.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Tested-by: Alistair Francis <alistair.francis@xilinx.com>
Acked-by: Alistair Francis <alistair.francis@xilinx.com>
Acked-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This recipe was never updated when the rest of the configuration was
updated to be built for the PetaLinux v2016.3 BSP. This was due to
download access issues which were not resolved.
Instead of pointing at the old bitstream point at the download path on
Xilinx's servers which is restricted by account access, and using the
xilinx-fetch-restricted class to handle erroring properly and providing
user instructions for fetching the BSP file.
This recipe now also manually extracts the 'download.bit' from the BSP
and populates it into a package as well as the deploy directory.
The recipe is now marked with the 'xilinx' license flag due to its use
of content that has licensing/legal requirements.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Tested-by: Alistair Francis <alistair.francis@xilinx.com>
Acked-by: Alistair Francis <alistair.francis@xilinx.com>
Acked-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This class overrides the default fetch task available from base.bbclass.
This overridden task prevents the downloading from URLs that match
against the 'xilinx.com/member/forms/download' which require user
credentials and may require agreement with EULAs, licenses, export
compliance, etc.
The overridden task does however allow fetching from PREMIRRORs, which
allows for pre-downloaded content to be accessed in an automated way.
When attempting to fetch the non-accessible files the fetch task will
error and present the user with a message informing them that they need
to manually download the content and the url which to download the
content from.
The purpose of this is to reduce the reliance on manual documentation
and or processes which instruct users to complete manual steps which can
be error prone, ambiguous and or just tedious. This also aims to make
automation easier by allowing use of pre-downloaded content or user
PREMIRRORs to access downloads.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Tested-by: Alistair Francis <alistair.francis@xilinx.com>
Acked-by: Alistair Francis <alistair.francis@xilinx.com>
Acked-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This paragraph documents the existence of recipes that rely on closed or
otherwise restricted source content that can be used to compile images
for targets.
The content has specific licensing and legal requirements that are
outside the ability or sanity of enforcement in OpenEmbedded or Yocto
and as such is up to each individual user to review and comply with.
This might include EULA, Export Compliance, NDAs, Redistribution, etc.
Generally speaking this content is going to be protected by Xilinx's web
download service which requires an account.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Tested-by: Alistair Francis <alistair.francis@xilinx.com>
Acked-by: Alistair Francis <alistair.francis@xilinx.com>
Acked-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
|
|
|
|
|
|
|
|
| |
Update the patches that we are holding in Yocto to reflect the commits
that have been accepted by the mainline ATF project.
Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
linux-yocto 4.1 is no longer available in oe-core, so drop the append.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The SPL based flow needs a raw firmware image instead of an ELF executable. Though
probably any objcopy version can perform this, it's better to have the actual
microblaze tool do the conversion, hence its inclusion in this recipe.
With this addition, it is possible to create a bootloader for the zynqmp
platforms based op opensource tools.
Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This error is received while building
services/std_svc/psci/psci_common.c: In function 'psci_do_state_coordination':
services/std_svc/psci/psci_common.c:220:27: error: array subscript is above
array bounds [-Werror=array-bounds]
psci_req_local_pwr_states[pwrlvl - 1][cpu_idx] = req_pwr_state;
Patch 555ebb34db8f3424c1b394df2f10ecf9c1f70901 explains why the error
is seen and supposibly includes a fix. As the fix appears not to work,
let's disable the error checking.
Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
| |
Backport a mainline ATF patch to the Xilinx tree in order to fix the ATF
build.
Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
This patch is no longer required, the behaviour has been resolved.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
|
| |
Remove the glibc 2.25 appends for MicroBlaze, glibc does not require any
additional patches for MicroBlaze since 2.26. The pt-vfork issue was
resolved in glibc 2.26.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These versions of the MicroBlaze CPU are now considerably outdated and
were obsoleted in 2012. Additionally they were only available with the
big endian configuration. Remove the v7.30 tune feature.
The s3adsp1800-qemu-microblazeeb machine emulates a v7.10.d cpu version,
however QEMU does not limit the CPU being emulated and provides all CPU
instructions and features that are available, so build targeting v8.00
instead.
Also fix up the version formatting generated by
microblaze_current_version.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The endianess of a specific architecture could be either big or little,
there is not a third value, so let it default to be little endian, and
get rid of the tune feature 'little-endian' which is redundant to be
there, also change tune feature 'big-endian' to 'bigendian'.
With these changes, it will behave same with all other architectures in
openembedded-core layer.
Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
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>
|