Find a file
Alyssa Rosenzweig 942bda7f2d asahi: Match PPP data structures with PowerVR
Looking at PowerVR's PPP definitions in tree in Mesa
(src/imagination/csbgen/), we find that AGX's "tagged" data structures
are actually sequences of state items prefixed by a header specifying
which state follows. Rather than hardcoding the sequences in which Apple's
driver chooses to bundle state, we need the XML to be flexible enough to
encode or decode any valid combination of state. That means reworking
the XML. While doing so, we find a number of fields that are identical
between RGX and AGX, and fix the names while at it (for example, the W
Clamp floating point).

Names are from the PowerVR code in Mesa where sensible.

Once we've reworked the XML, we need to rework the decoder.  Instead of
reading tags and printing the combined state packets, the decoder now
must unpack the header and print the individual state items specified by
the header, with slightly more complicated bounds checking.

Finally, state emission in the driver becomes much more flexible. To
prove the flexibility actually works, we now emit all PPP state (except for
viewport and scissor state) as a single PPP update. This works. After
this we can move onto more interesting arrangements of state for lower
driver overhead.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18421>
2022-09-06 21:01:28 +00:00
.github/workflows ci: rename GitHub CI workflow from ci to macos to be a bit more explicit about what it covers 2022-08-16 16:54:13 +00:00
.gitlab/issue_templates gitlab: ask that reporters don't include long logs in descriptions 2022-06-08 15:06:51 +00:00
.gitlab-ci ci: Make sure that the Crosvm control socket has been removed 2022-09-05 14:12:58 +02:00
android Android.mk: Provide a custom entry name to ensure meson checks succeed 2022-09-05 22:10:07 +00:00
bin bin/perf-annotate-jit.py: Update to Python 3. 2022-08-21 22:14:43 -07:00
build-support configure: commit test files 2017-10-16 16:32:43 -07:00
docs fix(FTBFS): meson: raise C++ standard to C++17 2022-09-06 20:34:17 +00:00
include ac/gpu_info: handle LPDDR4 and 5 in ac_memory_ops_per_clock 2022-09-05 08:59:59 +00:00
src asahi: Match PPP data structures with PowerVR 2022-09-06 21:01:28 +00:00
subprojects intel/ds: Update to Perfetto API v28.0 2022-08-19 18:09:43 +00:00
.dir-locals.el dir-locals.el: Adds White Space support 2016-11-14 19:17:49 +02:00
.editorconfig ci/vs2019: Update editorconfig for ps1 files 2022-06-14 21:14:33 +00:00
.gitattributes Add new rules to .gitattributes 2022-01-19 15:17:17 +00:00
.gitignore .gitignore: Qualify the path for the ignored build directory. 2022-06-09 22:53:37 +00:00
.gitlab-ci.yml Revert "ci: disable the freedreno farm." 2022-08-30 17:00:45 +00:00
.graphqlrc.yml ci/bin: Add utility to find jobs dependencies 2022-08-03 23:10:37 +00:00
.mailmap .mailmap: change spelling for Constantine Kharlamov 2022-08-12 13:11:03 +00:00
CODEOWNERS CODEOWNERS: evelikov renamed to xexaxo 2022-06-24 12:28:59 +00:00
meson.build fix(FTBFS): meson: raise C++ standard to C++17 2022-09-06 20:34:17 +00:00
meson_options.txt intel: add a hasvk vulkan driver 2022-09-02 09:40:45 +00:00
README.rst docs: promote #dri-devel on oftc over freenode 2021-05-24 09:21:48 +00:00
VERSION VERSION: bump 22.3.0-devel 2022-08-03 17:16:14 +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://mesa3d.org/install.html>`_), but the recommended way is to use
Meson (`docs/meson.rst <https://mesa3d.org/meson.html>`_):

.. code-block:: sh

  $ mkdir build
  $ cd build
  $ meson ..
  $ sudo ninja 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://mesa3d.org/bugs.html>`_).


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

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

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