Lang Yu
f9629fa729
amd/common: add missing stuff for gfx11.5
...
Signed-off-by: Lang Yu <Lang.Yu@amd.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25836 >
2023-10-24 01:07:12 +00:00
Timur Kristóf
d7f5ff402a
ac: Add rudimentary implementation of printing SDMA IBs.
...
This isn't meant to be exhaustive and only prints the packets
and fields which were interesting to me during debugging the
RADV transfer queue implementation.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25769 >
2023-10-18 16:29:01 +00:00
Timur Kristóf
90455ac864
ac: Print IP type for IBs.
...
This makes it clearer what is what when reading IBs
for debugging purposes.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25769 >
2023-10-18 16:29:01 +00:00
Timur Kristóf
05d74265dc
ac: Rename ac_do_parse_ib to parse_pkt3_ib.
...
This function only parses PKT3 packets, not other types.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25769 >
2023-10-18 16:29:01 +00:00
Timur Kristóf
dfcb8d4784
ac: Add amd_ip_type argument to ac_parse_ib and ac_parse_ib_chunk.
...
The current parser only supports PKT3 packets, but not all HW IP
types use this format. This makes it possible to support more
than one format depending on the IP type.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25769 >
2023-10-18 16:29:01 +00:00
Marek Olšák
176ef72ff5
ac: improve the IB parser
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759 >
2023-08-19 19:36:55 +00:00
Marek Olšák
05e7bf471c
ac: change offsets of DMA_DATA dwords to prevent reg offset conflicts
...
Use non-multiples of 4.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759 >
2023-08-19 19:36:55 +00:00
Marek Olšák
c8efd2b2cf
amd: add a new helper that prints all non-shadowed regs
...
for validating our tables against register definitions
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23687 >
2023-06-17 23:42:21 +00:00
Marek Olšák
789a3b24c1
amd: improve the IB parser, parse more packets
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23687 >
2023-06-17 23:42:20 +00:00
Marek Olšák
e18344dd24
ac,radeonsi,winsyses: switch to SPDX-License-Identifier: MIT
...
excluding: aco, radv, addrlib
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Acked-by: David Heidelberg <david.heidelberg@collabora.com >
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23113 >
2023-05-24 21:48:19 +00:00
Timur Kristóf
948a122f30
amd: Rename INDIRECT_BUFFER_CIK to just INDIRECT_BUFFER.
...
This packet is supported on GFX6 too, its name should relect that.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22406 >
2023-04-13 23:58:48 +00:00
Harri Nieminen
f85f511a38
amd: fix typos in code
...
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22432 >
2023-04-13 23:08:22 +00:00
Marek Olšák
d3b03fedd8
amd: add initial code for gfx940
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22158 >
2023-04-06 15:00:53 +00:00
Marek Olšák
ca29d9a67c
ac: fix IB parsing for Stoney
...
We need to pass the family to register parsing functions.
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19419 >
2022-11-04 00:42:08 +00:00
Marek Olšák
ee7150da79
amd/gfx11: add PixelWaitSync packet fields
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16990 >
2022-06-15 20:52:42 +00:00
Marek Olšák
39800f0fa3
amd: change chip_class naming to "enum amd_gfx_level gfx_level"
...
This aligns the naming with PAL.
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Acked-by: Pierre-Eric Pellou-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16469 >
2022-05-13 14:56:22 -04:00
Marek Olšák
980b7f75e8
amd: enable gfx11 in header generator, fix drivers with renamed gfx6-10 defs
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16328 >
2022-05-10 04:29:54 +00:00
Marek Olšák
ff9e4409c1
ac: parse SET_SH_REG_INDEX packet
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15209 >
2022-03-01 22:30:24 +00:00
Marek Olšák
46cb3bb4d1
ac/debug: add an option to disable colors for printed IBs
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12656 >
2021-09-01 00:42:58 +00:00
Samuel Pitoiset
9f7e63e12a
ac/debug: fix color printing PKT3 when count in header is too low
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11211 >
2021-06-08 11:19:00 +02:00
Marek Olšák
b3e7c77f13
amd: fix parsing the last dword of DMA_DATA packets
...
It was parsing it as SQ_WAVE_GPR_ALLOC instead of COMMAND.
Change the offset to an odd number to work around it.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9795 >
2021-04-02 12:05:00 +00:00
Pierre-Eric Pelloux-Prayer
148a24f305
amd/ac: update fallthrough comments
...
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7747 >
2020-12-01 10:04:41 +01:00
James Park
3ad8ac38c7
amd: Stub sections that don't have _WIN32 support
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7791 >
2020-11-27 20:49:00 -08:00
James Park
af8d488ea5
util,ac,aco,radv: Cross-platform memstream API
...
POSIX memstream is not available on Windows.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7143 >
2020-10-19 03:37:42 -07:00
James Park
28d02b9d3e
ac,amd/llvm,radv: Initialize structs with {0}
...
Necessary to compile with MSVC.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7123 >
2020-10-14 12:15:23 +00:00
Pierre-Eric Pelloux-Prayer
e5fb9dca2a
amd/common: switch to 3-spaces style
...
Follow-up of !4319 using the same clang-format config.
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5310 >
2020-09-07 10:00:29 +02:00
Marek Olšák
dc3dade475
ac: add helper ac_get_register_name
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5798 >
2020-07-22 12:08:19 -04:00
Marek Olšák
556f4458fe
amd: add proper definitions for NOP packets
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5603 >
2020-06-26 07:02:57 +00:00
Eric Engestrom
51569e525a
amd: fix empty-body issues
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Fixes: 8d43e2b2de ("meson: add -Werror=empty-body to disallow `if(x);`")
Reviewed-By: Timur Kristóf <timur.kristof@gmail.com >
2019-12-27 22:09:00 +00:00
Eric Engestrom
09a8a39940
util: use standard name for strchrnul()
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2019-07-19 22:39:38 +01:00
Samuel Pitoiset
49e5136887
ac: select the GFX ring when halting waves with UMR on GFX10
...
GFX10 has two rings, so UMR want to know which one to halt.
Select the first one by default.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
2019-07-08 09:10:57 +02:00
Nicolai Hähnle
6d416ac7e1
amd/common/gfx10: print gfx10 registers in debug dumps
...
Acked-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
2019-07-03 15:51:12 -04:00
Nicolai Hähnle
4c364c89e2
amd/common/gfx10: print out GCR_CNTL as part of {ACQUIRE,RELEASE}_MEM
...
Acked-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
2019-07-03 15:51:12 -04:00
Marek Olšák
b2bbd1a27b
ac/registers: don't use the si, cik, vi names, use gfxN
...
trivial
2019-06-03 20:06:41 -04:00
Nicolai Hähnle
f480b8aaa4
amd/common: use generated register header
2019-06-03 20:05:20 -04:00
Nicolai Hähnle
e04215815e
amd/common: rename R_3F2_CONTROL to IB_CONTROL for disambiguation
...
This "register" name collides with R_370_CONTROL.
This aligns the definitions with what will be generated from the
register JSON.
2019-06-03 20:05:20 -04:00
Nicolai Hähnle
ef6ef098af
amd/common: derive ac_debug tables from register JSON
2019-06-03 20:05:20 -04:00
Marek Olšák
ccfcb9d818
ac: rename SI-CIK-VI to GFX6-GFX7-GFX8
...
Acked-by: Dave Airlie <airlied@redhat.com >
We already use GFX9 and I don't want us to have confusing naming
in the driver. GFXn naming is better from the driver perspective,
because it's the real version of the gfx portion of the hw. Also,
CIK means Bonaire-Kaveri-Kabini, it doesn't mean CI.
It shouldn't confuse our SDMA, UVD, VCE etc. code much. Those have
nothing to do with GFXn and they have their own version numbers.
2019-05-15 20:54:10 -04:00
Nicolai Hähnle
23af72af25
radeonsi/gfx9: use SET_UCONFIG_REG_INDEX packets when available
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
2018-12-19 12:01:32 +01:00
Nicolai Hähnle
0630e52c9e
radeonsi: pass -O halt_waves to umr for hang debugging
...
This will give us meaningful wave information in the case of a hang where
shaders are still running in an infinite loop.
Note that we call umr multiple times for different sections of the ddebug
hang dump, and so the wave information will not necessarily match up
between sections.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
2018-04-11 12:44:24 +02:00
Marek Olšák
529cdce799
radeonsi: remove 'Authors:' comments
...
It's inaccurate. Instead, see the copyright and use "git log" and
"git blame" to know the authorship.
Acked-by: Nicolai Hähnle <nicolai.haehnle@amd.com >
2017-11-02 18:19:03 +01:00
Samuel Pitoiset
f0d09d9012
radeonsi: move si_get_wave_info() to AMD common code
...
This will allow us to use it from radv.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
2017-09-14 10:37:57 +02:00
Nicolai Hähnle
552aaa11ed
ac/debug: take ASIC generation into account when printing registers
...
There were some overlapping changes in gfx9 especially in the CB/DB
blocks which made register dumps rather misleading.
The split is along the lines of the header files, so we'll print VI-only
fields on SI and CI, for example, but we won't print GFX9 fields on
SI/CI/VI, and we won't print SI/CI/VI fields on GFX9.
Acked-by: Marek Olšák <marek.olsak@amd.com >
2017-09-06 09:59:19 +02:00
Nicolai Hähnle
274f1dace7
amd/common: pass chip_class to ac_dump_reg
...
Acked-by: Marek Olšák <marek.olsak@amd.com >
2017-09-06 09:59:17 +02:00
Samuel Pitoiset
12cbd9a13f
radeonsi: move si_vm_fault_occured() to AMD common code
...
For radv, in order to report VM faults when detected.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
2017-09-01 09:46:32 +02:00
Bas Nieuwenhuizen
46dd30d08f
ac/debug: Support multiple trace ids for nested IBs.
...
Signed-off-by: Bas Nieuwenhuizen <basni@google.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
2017-08-29 23:05:59 +02:00
Mauro Rossi
725741f10d
ac/debug: use util_strchrnul() to fix android build error
...
Similar to e09d04cd56 "radeonsi: use util_strchrnul() to fix android build error"
Android Bionic does not support strchrnul() string function,
gallium auxiliary util/u_string.h provides util_strchrnul()
This change avoids the following warning and error:
external/mesa/src/amd/common/ac_debug.c:501:15: warning: implicit declaration of function 'strchrnul' is invalid in C99
char *end = strchrnul(out, '\n');
^
external/mesa/src/amd/common/ac_debug.c:501:9: error: incompatible integer to pointer conversion initializing 'char *' with an expression of type 'int'
char *end = strchrnul(out, '\n');
^ ~~~~~~~~~~~~~~~~~~~~
1 warning and 1 error generated.
Fixes: c2c3912410 "ac/debug: annotate IB dumps with the raw values"
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Signed-off-by: Rob Herring <robh@kernel.org >
2017-08-24 17:23:24 -05:00
Nicolai Hähnle
8937ac9a13
ac/debug: invoke valgrind checks while parsing IBs
...
Help catch garbage data written into IBs.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
2017-08-23 13:54:07 +02:00
Nicolai Hähnle
c2c3912410
ac/debug: annotate IB dumps with the raw values
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
2017-08-23 13:54:05 +02:00
Nicolai Hähnle
cfb3824c23
ac/debug: use an explicit getter for fetching words from the IB
...
Guard against out-of-bounds accesses, and prepare for upcoming changes.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
2017-08-23 13:54:03 +02:00