aboutsummaryrefslogtreecommitdiffstats
path: root/meta-xilinx-bsp/recipes-graphics
AgeCommit message (Collapse)Author
2022-01-14Initial restructure/split of meta-xilinx-bspMark Hatle
Create a new meta-xilinx-core, move core functionality to the core, keeping board specific files in the bsp layer. zynqmp-generic changed from require <board> to include, so if meta-xilinx-bsp is not available it will not fail. Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
2021-11-02libmali-xlnx: Move branch to 2021.2 releaseMark Hatle
Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
2021-09-28Convert to new override syntaxSai Hari Chandana Kalluri
This is the result of automated script (0.9.0) conversion: oe-core/scripts/contrib/convert-overrides.py . converting the metadata to use ":" as the override character instead of "_". Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>
2021-07-14mesa-demos: Update libmali dependencyMark Hatle
Cleanup the mesa-demos to use the mali400 override instead of specific zynqmp variant overrides. Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
2021-07-14weston: The package uses different sources when build on zynqmpMark Hatle
Issue: CR-1099768 Combine two different weston bbappends to avoid confusion and conflicts between the two. Adjust the parameters of the original bbappend to use the mali400 override, as well as define a new zynqmp (non-mali) PACKAGE_ARCH due to the SRC_URI patch that is also zynqmp specific. The end result will be: not-zynqmp: TUNE_PKGARCH zynqmp w/o mali: SOC_FAMILY_ARCH zynqmp w/ mali: SOC_VARIANT_ARCH Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
2021-07-14libsdl2: Fix libmali package on zynqmp eg/evMark Hatle
Issue: CR-1099768 libmali is providing the mesa/opengl part for libsdl2. This is different on mali400 and all other architectures. Make sure to list these are SOC_VARIANT specific. Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
2021-07-14libepoxy: Fix libmali package on zynqmp eg/evMark Hatle
Issue: CR-1099768 libmali is providing the mesa/opengl part for libepoxy. This is different on mali400 and all other architectures. Make sure to list these are SOC_VARIANT specific. Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
2021-07-14cairo: Fix enabling egl and glesv2 on Mali400 platformsMark Hatle
Issue: CR-1099768 The original patch mistakenly tried to append for only zynqmp. However, it instead overwrote the original value. Make this clear that we are setting the value, not adding to an existing one. Additionally, as the items are all mali400 specific, we ensure that the dependency and PACKAGE_ARCH are set properly in this case. Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
2021-07-14qemu/virglrender: Fix libmali package arch on zynqmp eg/evMark Hatle
Issue: CR-1099895 libmali provides replacement items for standard mesa libraries. Mali also sets the soname to libMali.so, even when the requester is looking for a library like libgbm. This introduces an internal, unstated, dependency on the provider of the mesa components. Since this dependency change comes in from mali400, we need to change the PACKAGE_ARCH in these few cases to match. Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
2021-07-14libglu: Package introduced mali400 specific itemsMark Hatle
Issue: CR-1096936 libglu is used by a number of other recipes but changes the way it works based if the virtual/libgles2 is provided by libmali. We adjust the recipe to generate a SOC_VARIANT specific version to avoid different packages with different configurations of the same name. Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
2021-07-14kernel-module-*: Do not set PACKAGE_ARCH to something less specificMike Looijmans
Issue: CR-1098191 The kernel-module recipes set PACKAGE_ARCH = "${SOC_FAMILY_ARCH}" which is broken because kernel modules depend on the kernel which is MACHINE specific. The assignment claims that you could use a kernel module built for some other board for any other zynqmp board, which is not true since their kernel versions and configuration will differ. Remove the assignment so that the kernel module becomes MACHINE_ARCH again. This solves issues with kernel modules that refuse to install during the do_rootfs stage, and various setscene tasks running over and again when switching between MACHINEs. Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
2021-07-14libgles: libmali: Update the branch to 2021.1Madhurkiran Harikrishnan
The new update has the latest eglplatform header from khronos. Signed-off-by: Madhurkiran Harikrishnan <madhurkiran.harikrishnan@xilinx.com> Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>
2021-07-14Avoid warnings from bbappends to meta-openembeddedMark Hatle
Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
2021-07-14Kernel-module-mali: Update patch fix-ioremap to include all correct symbolsSai Hari Chandana Kalluri
Fix symbols for 0020-Fix-ioremap_nocache-deprecation-in-kernel-5.6.patch to fix do_patch failures Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>
2021-07-14kernel-module-mali: Update to compile with kernel v5.10Dylan Yip
Update patches to compile mali drivers with kernel v5.10 Signed-off-by: Dylan Yip <dylan.yip@xilinx.com> Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>
2021-07-14Updating machine overrides to match new formatJaewon Lee
Previously machine override for a soc variant was SOC_VARIANT appended to SOC_FAMILY. A '-' was included in between to align with how versal handles machine overrides. Updating machine overrides to match this format Signed-off-by: Jaewon Lee <jaewon.lee@xilinx.com>
2020-12-22weston: Update the weston patches to comply with weston-9.0Madhurkiran Harikrishnan
Removed the patch pertaining to eglconfig for pbuffer surfaces as it is merged in the mainline. Upadate the patch which removes the opaque substitute to comply with weston-9.0. Signed-off-by: Madhurkiran Harikrishnan <madhurkiran.harikrishnan@xilinx.com> Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>
2020-11-17Various: Packages using libGL may need to be declared SOC_VARIANT_ARCHMark Hatle
Issue: CR-1082769 libGL is either provided by mesa or libmali. Each of the modified recipes contains a direct library link to the provider of libGL. Due to this we need to specify precise dependencies and declare the package as the right architecture to break a potential install conflict. If we don't do this, the package will be generated as aarch64, but won't be installable as the dependency on libmali can't be satisfied unless the user has libmali, which is only available on zynqmpev and zyncmpeg. git cherry-pick 6c0b7e5 Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
2020-11-17libmali-xlnx: Fix the package archMark Hatle
Issue: CR-1082769 The package arch needs to be set to match the specific variants that we use in the overrides to enable this, specifically zynqmpev and zynqmpeg. Using SOC_VARIANT_ARCH instead of SOC_FAMILY_ARCH (zynqmp) is correct. git cherry-pick e7ce9ed Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
2020-10-23libmali-xlnx: Update the mali userspace libraries to 2020.2Madhurkiran Harikrishnan
Update the libraries to 2020.2 rel branch. Signed-off-by: Madhurkiran Harikrishnan <madhurkiran.harikrishnan@xilinx.com> Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>
2020-10-23weston.ini: Do not set hard requirement for input devicesMadhurkiran Harikrishnan
Remove the hard requirement to have the input devices "on" in the default weston configuration, which otherwise causes a segfault if the board is not connected to an input device. Signed-off-by: Madhurkiran Harikrishnan <madhurkiran.harikrishnan@xilinx.com> Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>
2020-08-11libmali-xlnx: Inherit features_check instead of distro_features_checkSai Hari Chandana Kalluri
distro_features_check is deprecated in dunfell, use features_check instead Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>
2020-04-29libmali: Fetch mali binaries from rel-v2020.1 branchMadhurkiran Harikrishnan
Update the mali userspace receipe to fetch the updated binary from rel-v2020.1 branch. Signed-off-by: Madhurkiran Harikrishnan <madhurkiran.harikrishnan@xilinx.com> Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>
2020-04-15xf86-video-armsoc: Bypass the exa layer to free the root pixmapMadhurkiran Harikrishnan
Since the root pixmap was allocated through miCreateScreenResources, the exa layer is not aware of the pixmap resulting in the assertion to fail. This patch fixes this. Signed-off-by: Madhurkiran Harikrishnan <madhurkiran.harikrishnan@xilinx.com> Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>
2020-04-06kernel-module-mali: WIPMark Hatle
Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
2020-03-16Revert "libmali-xlnx: Remove virtual provides"Mark Hatle
This reverts commit 7b930600decc08da3c14ff428f9c4bf70342af5e. This was the incorrect fix for the issues. Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
2020-03-13libmali-xlnx: Remove virtual providesMark Hatle
The virtual provides should be handled via PREFERRED_PROVIDER setting in the MACHINE and/or DISTRO configuration files. Setting them in the recipe ends up making them unconditional in some cases leading to incorrect dependencies for the users. Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
2020-03-13meta-xilinx-bsp: Update recipes to use SOC_FAMILY_ARCH and SOC_VARIANT_ARCHMark Hatle
Using the defaults will ensure that a machine or soc can override the default version. Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
2020-03-09libglu: Add build time dependency on glesv2 for zynqmpMadhurkiran Harikrishnan
For ZynqMP, the KHR headers comes from the gles provider (Mali 400), hence add build time dependency on gles. Signed-off-by: Madhurkiran Harikrishnan <madhurkiran.harikrishnan@xilinx.com> Signed-off-by: Jaewon Lee <jaewon.lee@xilinx.com>
2020-03-09cairo: For ZynqMP enable glesv2 packageconfigMadhurkiran Harikrishnan
Enable glesv2 packageconfig for cairo and leverage mali400 in zynqmp Signed-off-by: Madhurkiran Harikrishnan <madhurkiran.harikrishnan@xilinx.com> Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>
2020-03-09mesa: Do not provide KHR headersMadhurkiran Harikrishnan
KHR headers should be provided by the egl provider for zynqmp, as the egl headers have dependencies on it, which otherwise causes compilation error. Signed-off-by: Madhurkiran Harikrishnan <madhurkiran.harikrishnan@xilinx.com> Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>
2020-03-09Revert "libmali-xlnx: Dont provide KHR headers"Madhurkiran Harikrishnan
This reverts commit 9c2708913ab24d2697124b05bcb9d541a4903547. Mali EGL headers have dependencies on KHR headers and this should be coming from EGL provider rather than mesa. Because EGL application which have dependencies on EGL header, do not pull gl headers. Signed-off-by: Madhurkiran Harikrishnan <madhurkiran.harikrishnan@xilinx.com> Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>
2020-02-25kernel-module-mali: Make the driver compatible with kernel 5.4Madhurkiran Harikrishnan
The patch series makes the Mali400 kernel driver compatible with linux kernel 5.4 Signed-off-by: Madhurkiran Harikrishnan <madhurkiran.harikrishnan@xilinx.com> Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>
2020-02-12weston: Remove opaque substitute for ARGB8888 as ZynqMP DP does not supportMadhurkiran Harikrishnan
ARGB888 GBM format has XRGB8888 as opaque substitute, which ZynqMP DP avbuf subsytem does not support in gfx layer, causing a blank screen. By removing the opaque substitute, the default format will be used i.e. ARGB8888. Signed-off-by: Madhurkiran Harikrishnan <madhurkiran.harikrishnan@xilinx.com> Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>
2020-02-12weston: Migrate ZynqMP specific patches for weston to meta-xilinxMadhurkiran Harikrishnan
As these patches are ZynqMP specific migrate them from meta-petalinux to meta-xilinx-bsp. Signed-off-by: Madhurkiran Harikrishnan <madhurkiran.harikrishnan@xilinx.com> Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>
2019-12-16libmali-xlnx: Provide single shlib provider for libMali.so.9Sai Hari Chandana Kalluri
libmali-xlnx provides multiple shared libraries to support the update alternatives mechanism. For this, shared libraries with different backends are installed to the target and softlinked to libmali-xlnx.so. When do_package task runs, 1. It creates a pkgdata/libmali-xlnx file that generates a list of packages. In this case: PACKAGES: libmali-xlnx-src libmali-xlnx-dbg libmali-xlnx-staticdev libmali-xlnx-dev libmali-xlnx-doc libmali-xlnx-locale libmali-xlnx libmali-xlnx-x11 libmali-xlnx-fbdev libmali-xlnx-wayland libmali-xlnx-headless 2. It also tries to identify what are the shlibs files and creates a pkgdata/shlibs2/libmali-xlnx.list file. - The .list file contains a list of all shared object files being provided by a package. - This list is created by looking at list of packages from above one by one. - It creates a list of available .so files for target os and then uses objdump -p to get more info(NEEDED and SONAME) about the object files - Writes to .list file with list of .so files and the paths installed. - This is generated by only looking at the .so files in each package and not the defaiult backend being used in the recipe. In Zeus, with this commit f7d46843e93f1acb4872bd5bcc12ed734de5168b on package.bbclass, multiple shlib_providers for the same file error. Hence when packages like cairo, qtbase build they error out with the following error: Multiple shlib providers for libMali.so.9: libmali-xlnx, libmali-xlnx,libmali-xlnx, libmali-xlnx Why this error generates for packages using libmali-xlnx: When cairo/qtbase packages run do_package task, bitbake generates a shlibs_provider_map list containing information (soname,ldir,ver) for the given package using shlibs2/*.list files copied to pkgdata-sysroots. libmali-xlnx.list contains list of all .so files installed inspite default MALI_BACKEND_DEFAULT provider. Since the shlibs_provider_map contains more than one provider, bitbake generates the above error and fails. To fix the above issue, append to the do_package task to update the libmali-xlnx.list to specify only the MALI_BACKEND_DEFAULT provider shlib and discard the remaining unused shlibs. Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com> Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
2019-12-09kernel-module-mali: Upgrade the kernel space driver to r9p0Madhurkiran Harikrishnan
Upgrade the Mali-400 kernel space driver to r9p0. Key features: -Support linux kernel 4.19 -Added incremental features upgrade details for the DDk revision Signed-off-by: Madhurkiran Harikrishnan <madhurkiran.harikrishnan@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
2019-12-09kernel-module-mali: add patch to check dma_map_page errorJean-Francois Dagenais
This fixes an error when using the module in a kernel configured with the CONFIG_DMA_API_DEBUG flag. utgard fd4b0000.gpu: DMA-API: device driver failed to check map error[device address=0x00000000325b0000] [size=4096 bytes] [mapped as page] ... [<ffffff80082f72bc>] check_unmap+0x44c/0x7e8 [<ffffff80082f76b8>] debug_dma_unmap_page+0x60/0x68 [<ffffff8000622e60>] mali_mem_os_alloc_pages+0x230/0x498 [mali] ... Acked-by: Hyun Kwon <hyun.kwon@xilinx.com> Signed-off-by: Jean-Francois Dagenais <jeff.dagenais@gmail.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
2019-11-19libmali-xlnx: make version recognizableJean-Francois Dagenais
Build systems (like meson), will look for >= of gbm pkg-config. "r8p0" makes these systems choke and fail to recognize gbm completely. The other .pc files next to gbm.pc suffer the same problem but have not caused me problems yet. 17.3 is a best minimal guess when comparing gbm.h relative to the one in mesa. Signed-off-by: Jean-Francois Dagenais <jeff.dagenais@gmail.com> Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
2019-11-19libmali-xlnx: clean and fix FILESXTRAPATHSJean-Francois Dagenais
Normally, when the colon ':' separator is on the right, the assignment is meant to be prepended to the variable. Using the _append override with both colon and spaces is an incoherent use of the FILESEXTRAPATH variable: https://www.yoctoproject.org/docs/latest/mega-manual/mega-manual.html#var-FILESEXTRAPATHS Also removed the r9p0... path as it doesn't exist. Signed-off-by: Jean-Francois Dagenais <jeff.dagenais@gmail.com> Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
2019-11-19libmali-xlnx: Upgrade the userspace driver to r9p0Madhurkiran Harikrishnan
Upgrade the Mali-400 userspace driver to r9p0. Key features: -Minor bug fixes -Add user space support of GBM for MESA 17.3 -Supports Wayland > 1.15 Signed-off-by: Madhurkiran Harikrishnan <madhurkiran.harikrishnan@xilinx.com> Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
2019-11-19libmali-xlnx: modify version on egl.pc for compatibilityAlejandro Enedino Hernandez Samaniego
Other packages may be using pkg-config to check for a compatible egl version. Align with the supported GL version to avoid errors when running configure for such packages. Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
2019-11-19libmali-xlnx: Change version on gbm.pc to be compatible with mesaAlejandro Enedino Hernandez Samaniego
Other packages may be using pkg-config to check for a compatible gbm version, which usually comes from mesa. Align with the supported mesa version to avoid errors when running configure for such packages. Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
2019-11-19libmali-xlnx: Dont provide KHR headersAlejandro Enedino Hernandez Samaniego
Mesa-GL provides the KHR headers since 87c156183 (mesa) even if egl is not selected, assuming opengl is. This creates a conflict since when something DEPENDS on virtual/libgl and virtual/gles1, both dependencies will provide the same file. Dont provide KHR headers to avoid this conflict. Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
2019-11-19libmali-xlnx: Squash all monolithic library name into a variableMadhurkiran Harikrishnan
Create a variable for monolithic library as it will be easy to call/make changes for future revision upgrade. Signed-off-by: Madhurkiran Harikrishnan <madhurkiran.harikrishnan@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
2019-11-19libmali-xlnx: fix x11 headersAlejandro Enedino Hernandez Samaniego
Since we cant rely on the fact that apps will use pkgconfig correctly we need to set the x11 headers accordingly (depending on DISTRO_FEATURES), e.g. qtbase, or libepoxy Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
2019-11-19libmali-xlnx: only use and install dependencies that the DISTRO supportsAlejandro Enedino Hernandez Samaniego
Be less strict with dependencies, if a user doesnt want a certain backend dont use or install dependencies for that backend. While switching alternatives at runtime would technically work, specifically speaking, the link to the selected alternative would be created correctly, the backend itself wouldnt necessarly work for obvious reasons, unless the user has the correct DISTRO_FEATURES enabled in their DISTRO configuration, which would pull all the necessary runtime dependencies for that backend. Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
2019-11-19libmali-xlnx: modify REQUIRED_DISTRO_FEATURESAlejandro Enedino Hernandez Samaniego
Use ANY_OF_DISTRO_FEATURES instead of REQUIRED_DISTRO_FEATURES to avoid pulling unnecessary dependencies for users. If a user wants to use a different backend, they should modify their own conf to add the required DISTRO_FEATURE. Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
2019-11-19libmali-xlnx.bb: ABIs are made consistent for all backendsMadhurkiran Harikrishnan
Application binary interface are made consistent for all backends. GBM API support is now available for any libMali monolithic library. Signed-off-by: Madhurkiran Harikrishnan <madhurkiran.harikrishnan@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
2019-11-19libmali-xlnx: Use update-alternatives to switch between GL backendsAlejandro Enedino Hernandez Samaniego
libmali provides GL backends based on x11, fbdev and wayland, we should be able to switch between them at runtime since it is the same ABI, it should only be a matter of loading the correct shared library by the interpreter (dynamic linker). Use the update-alternatives class, to provide a way for the user to choose the desired backend at runtime, do this by setting priorities, the package with the highest priority will be chosen as default at build time, but it can easily be changed at runtime afterwards. This change implies that the libmali package will install all backends regardless of which one was chosen, but it will only use one as default. Use the x11 backend by default at build time; given that it is the same ABI, applications which depend on libmali, can build regardless of the chosen backend at build time. Update-alternatives uses a set of commands on the postinst scripts when creating the root filesystem, which basically create the soft link between the chosen alternative and the binary/library. This usually works seamlessly (for binaries), but it does not in the case of libraries, because ldconfig is run at the end of the do_rootfs task, and it removes the link that was just created, it is important to note that this is simply normal ldconfig behavior and its not something we can fix, so we defer execution of update-alternatives until the first boot, hence avoiding the link removal by ldconfig. Switching backends at build time will also help to avoid longer build times, since it will only invalidate the do_package task, rebuilding an image after switching a backend (at build time) should only execute the do_package task along with the do_rootfs task. Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>