| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
Fix the package config params to make it obvious what combinations are
allowed. Also, rework the way we are inheriting init related classes so
that we don't accidentally do any additional postinstall steps. While
we're at it, don't execute anything for the compile or configure stage.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We got a bit more time to do a proper migration this time. A discovery
period to see what actually works and boy, it wasn't much.
This update resolves issues with:
- Macro redefinition
- Sparse NPOT texture allocations
- vec4 reductions
- Mesa image extensions
- Buffer allocations under weston
- Devices with both a RENDER and PRIMARY display node
- Underprivileged users being unable to allocate buffers
- Removed call to drm_map_legacy
- Replace deprecated kernel calls
- Fix some cache attributes for userspace allocations
- About 40 other various errors and warnings
This core was never fully GLES2 conformant. In fact, if you try to run
cts on any of the older releases you'll find yourself in a hardware
recovery loop pretty quickly. We've gotten it to about 94.2% conformance
with these patches.
There are still dragons here, but they are at least a little more
manageable.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Migrate to version 23.3.6512818, this includes the stability updates
released in 23.2 as well as some additional modifications to help with
userspace application support, namely Chromium.
We're also dropping the x11 window system extensions from the Vulkan
libraries for now. Ideally, both x11 and wayland extensions will be
provided by mesa's vulkan-wsi-layer in the future, but currently x11
isn't supported and this just added extra complexity to the package in
Yocto.
Signed-off-by: Randolph Sapp <rs@ti.com>
Tested-by: Darren Etheridge <detheridge@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
| |
Bump the SRCREV to include some useful patches that:
- Fix the ROGUE segfault issue introduced by SGX (this was what
the old conditional logic was addressing)
- Fix destruction of event queue with proxies still attached
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bump SRCREV to include the following changes in UM and KM:
- Rebuild all releases with external memory wrap disabled due to
some incompatibility with certain Qt use cases.
- Add a watchdog change that prevents an occasional false
timeout when servicing long DM processes.
- Rely on snooping to perform certain cache operations and
results in decreased overhead for device -> cpu
communications.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
| |
Signed-off-by: Darren Etheridge <detheridge@ti.com>
Signed-off-by: Aniket Limaye <a-limaye@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
| |
Signed-off-by: Darren Etheridge <detheridge@ti.com>
Signed-off-by: Aniket Limaye <a-limaye@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
RPM does not accept '-' as a character in the PR/version and fails with:
| error: line 4: Illegal char '-' (0x2d) in: Release: sgxrgx-54fd9d7dea098b6f11c2a244b0c6763dc8c5690c.1
The correct approach is to reference SRCPV and not SRCREV and also add it
to PV and not PR. But PV is used in the branch to fetch the sources and
cannot be modified, so use SRCPV in PR w/o any illegal characters.
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A bug was introduced while trying to unify the Mesa version that is used
on SGX GPU's and Rogue GPU's. It manifests itself as an immediate segfault
whenever you try and run something like glmark2-es2-wayland or
weston-simple-egl on certain Rogue based platforms (specifically am62x).
Use different srcrev for Rogue GPU and SGX GPU platforms. The SGX GPU platforms
will use the latest commit. Rogue GPU platforms will use the last good working
commit before SGX related changes were introduced.
This change will be reverted once the issue is rootcaused and a common solution
is found for both Rogue and SGX based GPU platforms.
Signed-off-by: Darren Etheridge <detheridge@ti.com>
Signed-off-by: Anand Balagopalakrishnan <anandb@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add the configuration options for am62pxx-evm.
This also adds support for new devicetree properties to override the
clock value of the device. See the kernel module modifications [1] and
dt bindings for more information.
[1] https://git.ti.com/cgit/graphics/ti-img-rogue-driver/log/?h=linuxws/kirkstone/k6.1/23.2.6460340
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
| |
Move to the 23.2 release branch and bump SRCREV accordingly. This branch
has the proper implementation of the cache coherency fix along with some
other checks that address some system stability issues on Jacinto
devices.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
| |
Bump SRCREV to include some patches to better isolate SGX and PVR
components.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
| |
Bump the SRCREV to include the required changes to build for SGX now.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bump ti-sgx-ddk-um and ti-sgx-ddk-km to the new branch for Kirkstone and
mesa independent builds. This also sets up SGX to use the latest mesa
revision rogue uses.
Changelog:
- IMG Support has officially ended. This repo will not be getting
regular updates after this unless things are really broken.
- The Mesa patches which were previously being relicensed internally
were opened and combined with the unofficial rogue efforts on
freedesktop.
- Toolchains were upgraded and multiple warnings and issues were
addressed. Hardware recoveries work now, but there are still some
longstanding issues with SGX that remain to be addressed if further
resources are set aside for that.
- We moved to an lws-generic build target to avoid rebuilding external
components. As such, these external components must be patched as
needed. Libdrm is an example of this and the required patches can be
found in meta-ti.
Known bugs:
- Buffer allocations under Weston may misbehave
- GLSL macro redefinitions will cause errors regardless of whether or
not they are identical
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
| |
Only move directories which haven't already been moved.
This prevents a build error should a subsequent bitbake execution
rerun do_install where the sources to 'mv' no longer exist.
| mv: cannot stat 'ti-img-rogue-umlibs/23.1.6404501/git/targetfs/am62_linux/lws-generic/release/lib/firmware': No such file or directory
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
| |
There are a number of issues in gallium when moving to LLVM 17. These
patches fix those compile issues.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bump the SRCREV for the umlibs and driver package to include some fixes
for Jacinto devices. These patches do the following:
- Fix virtual memory addressing
- Resolve an issue with APM and debug requests
- Attempt to resolve most of the cache coherency related issues on
Jacinto devices
- Introduce some extra cache maintenance operations in the kernel
module
It also introduces the following known issues:
- Visual artifacting on the second-to-last EGL/GLES context on BXS
based devices (J721S2/J784S4)
We're still working on that last one, but the stability improvements
make this worth while for now.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
| |
Edit the file paths so they point at files in the source directory
explicitly. For some reason shell glob were previously only respected by
some machines.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use RRECOMMENDS for components. Apparently I made an resolvable
dependency cycle that Yocto silently clipped. My best guess at the
culprit was: mesa-megadriver (RR) -> rogue-km (RR) -> rogue-um (RD) ->
libgles1-rogue (RD) -> mesa-megadriver
That killed the ti-img-rogue-umlibs recipe during do_rootfs. The rogue
GLES libs do depend on mesa-megadriver at runtime but I guess the UM
components should only really recommend the rogue GLES components be
present at runtime to make the cycle resolvable by opkg.
Fixes:
1705f6d3 (ti-img-rogue-umlibs: make all components optional, 2023-06-21)
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bumping into the limitations of the binary_package class. This change
allows all rogue components to be optionally packaged without blowing
out the dependency chain.
Add a python function to fetch file paths from the FILE vars for each
component so we don't end up double tracking files. Add variables to
track component packages if things split up more later. Add a package
config string to set runtime dependencies and recommendations. Change
all logic to revolve around the PACKAGECONFIG instead of distro
features.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Well, flew a bit too close to the sun on that last patch. Apparently
there are a few hidden runtime dependencies on the API devlinks that
make things like EGL upset when they aren't present.
We may circle back to this at some point but for now we're fine shipping
the devlinks in the base API packages as these links don't step on any
other package.
Fixes: 1899f5ea (ti-img-rogue-umlibs: bump version and explicitly
package, 2023-06-01)
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bump the version and explicitly package all Khronos APIs separately.
This should be nice for those folks that want a headless opencl system
for tinkering and such.
This version includes experimental GEM support (for applications like
Chromium that like to poke at the render node) and a new Vulkan ICD
loader interface for better support with the Vulkan ICD loaders present
in Yocto.
This lifts a method from mesa used to force a common naming convention
for Vulkan, OpenCL, and OpenGLES libs to make things a little easier to
follow. Without it the target package names get scrambled based on the
shared object name.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
| |
Move recipes to new subdir since we offer more than just libgles now.
Reusing the naming convention of the subdirectory used for the km
components for now.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There are some unobvious issues with adding PVR support to Mesa
via a bbappend:
1. We need to mark mesa package as machine-specific, due to
differences in builds between SGX, Rogue and software-rendering
2. We also need to then mark mesa package as providing safe
ABIs (EGL/GLES/GBM) in order for all generic dependent packages
to not be treated as machine-specific, allowing their re-use
across different machines of the same architecture
But doing the above alters the upstream mesa package and changes
its signatures even when not building for TI platforms, which is
a Yocto Project compliance violation.
In order to resolve this issue, convert Mesa bbappend, that adds
PVR support, into its own standalone alternative provider, called
mesa-pvr and allow selecting it with PREFERRED_PROVIDER settings.
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
| |
Only include the ti-img-rogue-umlibs-vulkan package if the
DISTRO_FEATURES x11 is enabled. Right now, this recipe has a failed
build dependency on images without x11.
Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
Tested-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
| |
Split the firmware into it's own package so we can make the insane
checks a little more paranoid again.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Cairo can either be built for use with OpenGL or OpenGLES. By default it
assumes it can use OpenGL if X11 is provided as a distro feature. This
assumption is not true when using the proprietary SGX / Rogue drivers.
Vulkan libraries need some X libs at runtime now, so we need to manually
override the PACKAGECONFIG for cairo to use OpenGLES.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
| |
Add the required vulkan configuration options and the new PVR WSI file to
the corresponding package.
Also bump the PV to match the version of Mesa actually being shipped.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update the source revision for the following upstream changes:
- Drop the included ICD loader. Use the Mesa/Khronos one
instead.
- Enable all vulkan window system extensions
Separate the vulkan libs into their own package so people can choose to
ignore them if they want, considering the new runtime deps.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
| |
The "clean" target has been fixed along with some other issues that
caused us to need these set. Remove them now.
Signed-off-by: Andrew Davis <afd@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
| |
We no longer use libdrm-omap so remove it.
Signed-off-by: Andrew Davis <afd@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update the rogue graphics recipes to point at the new 23.1.6404501
release. This adds support for:
- kernel 6.1
- vulkan
- opencl (more testing needed)
- zink (more testing needed)
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update the pvr-mesa include to use the 22.3.5 patches from
oe-core/master and the branch for DDK version 23.1 on freedesktop.
Also remove the PACKAGECONFIG options elf-tls and xvmc as those
functions were dropped by the oe-core/master version of this package and
mesa package respectively.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Locally overlay verbatim copies of mesa 22.3.5 patches from
oe-core/master, so the same codebase works in kirkstone and master.
Also drop the old patches from 22.0 that were from the tip of
oe-core/kirkstone previously.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
When sysvinit is in DISTRO_FEATURES, the update-rc.d class must only be
inherited when the script referenced by INITSCRIPT_NAME actually exists,
or the update-rc.d command in the generated postinst script will fail.
Reported-by: Denys Dmytriyenko <denis@denix.org>
Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com>
Reviewed-by: Andrew Davis <afd@ti.com>
Acked-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
| |
The ti-img-rogue-umlibs package is not obeying usrmerge distro feature. /lib should be relocated to /usr. [usrmerge]
Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
| |
Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
| |
Patched mesa will now be configured based on what virtual/gpudriver
preferred provider is selected. The gpu drivers will now runtime
recommend the associated UM components.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
| |
Locally overlay verbatim copies of mesa 22.0 patches from oe-core/kirkstone,
so the same codebase works in kirkstone and master. Since upstream version
of mesa in master is now 22.3 and no longer carries these patches, but they
are still needed for 22.0-based PVR fork of mesa used with Rogue driver.
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
| |
Merged by accident.
This reverts commit 15417ca726f75881a2c51c08d258ea923803cbb9.
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
| |
Patched mesa will now be configured based on what virtual/gpudriver
preferred provider is selected. The gpu drivers will now runtime
recommend the associated um components.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The ti-sgx-ddk driver requires an additional userspace initialization
step after the kernel module has probed the device. Without this
initialization, no EGL context can be created and Weston etc. will fail to
start.
The driver package contains an init script, but this does not work on pure
systemd-based systems without sysvinit compat support (as provided by the
systemd-compat-units package). Introduce an enabled-by-default
PACKAGECONFIG that installs a udev rule instead to run the init command
automatically when the driver is loaded, solving the issue without
depending on a specific init system. On builds without udev, this
PACKAGECONFIG can be disabled, reverting to the old init script-based
solution.
udev reports several events when the pvrsrvkm module is loaded:
- add event for the kernel module
- add events for two DRM devices
- bind event for the GPU platform device
The DRM devices aren't nice to match on, and the kernel module add is
too early to run `pvrsrvctl --start`, so we trigger on the platform
device bind.
Tested with Weston 9.0.0 on the AM65x-based TQ-Systems MBa65xx.
Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
| |
These URIs have been updated in dunfell, but two instances were
forgotten in kirkstone/master.
Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
| |
Signed-off-by: Andrew Davis <afd@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Bump the graphics recipes source revision and remove the old BVNC
switch. The BVNC is now baked into the platform Makefile that is
selected with PVR_BUILD_DIR / TARGET_PRODUCT.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adding support for j784s4-evm:
- Add configurations.
- Add firmware.
- Add u-boot.
- Add gpu support.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Signed-off-by: Hari Nagalla <hnagalla@ti.com>
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
| |
We missed a spot when updating all of the git access for git.ti.com
to use HTTPS.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Stop using un-encrypted git:// protocol to access TI repositories.
This is inline with the same arguments as made by github in
https://github.blog/2021-09-01-improving-git-protocol-security-github/
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
| |
Pull in the GPU KM/UMLIBS that enable the unified 4K/64K page
firmware support in the IMG Rogue drivers.
Signed-off-by: Darren Etheridge <detheridge@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Enable the GPU for am62xx and j721s2 and use IMG DDK 1.15
Migrate Imagination DDK 1.13 to DDK 1.15 for J721e
Signed-off-by: Darren Etheridge <detheridge@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|