Find a file
Connor Abbott 8ef64f2042 freedreno/fdl: Refactor and expose bank swizzling logic
For sparse, we will need to handle bank swizzling and macrotiles when
mapping sparse textures. However the functions for handling this were
leaking internal tiled_memcpy implementation details, like the concept
of a 256-byte "block" that doesn't really exist in the tiling (instead
everyone else deals with UBWC blocks, which may be 256 bytes or smaller,
and 4K macrotiles). Rewrite them to work in terms of macrotiles, and
take an fdl_layout.

In order to avoid having to pass an fdl_layout everywhere, pass around
the computed bank_mask and bank_swizzle everywhere. This also means that
we don't recompute several times.

Finally, expose a function to compute the macrotile size, which will
also be needed to work with bank swizzling.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32671>
2025-09-05 16:58:09 +00:00
.ci-farms Revert "ci: Disable vmware farm" 2025-08-22 17:19:58 +00:00
.ci-farms-disabled Revert "ci: Disable vmware farm" 2025-08-22 17:19:58 +00:00
.github/workflows meson: remove unused osmesa option 2025-06-23 06:42:50 +00:00
.gitlab docs: update gitlab docs urls 2025-02-23 00:31:59 +01:00
.gitlab-ci ci-tron: uprev b2c to v0.9.17 2025-09-02 07:48:53 +00:00
.marge/hooks ci: pipeline_message: reset empty errors 2025-01-07 05:08:10 +00:00
android android: Only include libdrm_intel for i915 as iris do not depend on it 2025-09-04 07:53:36 +00:00
bin ci_run_n_monitor: add --job-tags filter 2025-09-04 09:19:32 +00:00
build-support meson: move tsan-blacklist.txt to build-support with the other build support files 2024-05-01 07:05:12 +00:00
docs radv: mark RADV_DEBUG=nongg_gs as deprecated 2025-09-05 05:56:15 +00:00
include freedreno/drm: Import new UABI for VM_BIND 2025-08-25 20:11:57 +00:00
licenses licenses: add missing licenses 2025-01-08 20:37:51 +00:00
src freedreno/fdl: Refactor and expose bank swizzling logic 2025-09-05 16:58:09 +00:00
subprojects subprojects: fix ignore exception for files under packagefiles/ 2025-08-25 15:55:53 +00:00
.clang-format meson: enable the clang-format target 2023-05-29 11:57:08 +00:00
.clang-format-ignore ci: enforce formatting for RADV & ACO 2023-06-16 19:59:52 +00:00
.clang-format-include rocket: Initial commit of a driver for Rockchip's NPU 2025-07-28 08:06:38 +02:00
.dir-locals.el
.editorconfig editorconfig: move OpenCL configuration to root 2025-08-30 22:49:08 -07:00
.git-blame-ignore-revs freedreno: Add register renaming to .git-blame-ignore-revs 2025-07-03 12:50:04 +00:00
.gitattributes gitlab: Highlight .cl as C 2023-11-02 11:37:46 +00:00
.gitignore .gitignore: Add KDevelop *.kdev4 2025-07-24 16:12:10 +00:00
.gitlab-ci.yml ci/ci-tron: uprev the job submission template 2025-08-25 12:46:54 +00:00
.graphqlrc.yml
.mailmap mailmap: add Alyssa's Intel e-mail address 2025-08-29 14:11:10 +00:00
.mr-label-maker.yml mr-label-maker.yml: remove remaining osmesa occurrences 2025-06-23 06:42:50 +00:00
.shellcheckrc ci: move shellcheck options to .shellcheckrc 2024-10-24 22:43:03 +00:00
CODEOWNERS intel: update code owners 2025-08-31 15:38:27 +00:00
meson.build meson: handle dep_libdrm before the driver specific libdrm modules 2025-08-25 15:55:54 +00:00
meson.options zink: Add zink_check_requirements 2025-08-22 16:08:11 -04:00
README.rst docs: Match README installation guide with meson.rst 2024-07-27 11:53:53 +00:00
rustfmt.toml mesa: Add rustfmt.toml 2024-11-18 22:29:14 +00:00
VERSION VERSION: bump to 25.3 2025-07-16 13:50:24 +00:00

`Mesa <https://mesa3d.org>`_ - The 3D Graphics Library
======================================================


Source
------

This repository lives at https://gitlab.freedesktop.org/mesa/mesa.
Other repositories are likely forks, and code found there is not supported.


Build & install
---------------

You can find more information in our documentation (`docs/install.rst
<https://docs.mesa3d.org/install.html>`_), but the recommended way is to use
Meson (`docs/meson.rst <https://docs.mesa3d.org/meson.html>`_):

.. code-block:: sh

  $ meson setup build
  $ ninja -C build/
  $ sudo ninja -C build/ install

Support
-------

Many Mesa devs hang on IRC; if you're not sure which channel is
appropriate, you should ask your question on `OFTC's #dri-devel
<irc://irc.oftc.net/dri-devel>`_, someone will redirect you if
necessary.
Remember that not everyone is in the same timezone as you, so it might
take a while before someone qualified sees your question.
To figure out who you're talking to, or which nick to ping for your
question, check out `Who's Who on IRC
<https://dri.freedesktop.org/wiki/WhosWho/>`_.

The next best option is to ask your question in an email to the
mailing lists: `mesa-dev\@lists.freedesktop.org
<https://lists.freedesktop.org/mailman/listinfo/mesa-dev>`_


Bug reports
-----------

If you think something isn't working properly, please file a bug report
(`docs/bugs.rst <https://docs.mesa3d.org/bugs.html>`_).


Contributing
------------

Contributions are welcome, and step-by-step instructions can be found in our
documentation (`docs/submittingpatches.rst
<https://docs.mesa3d.org/submittingpatches.html>`_).

Note that Mesa uses gitlab for patches submission, review and discussions.