diff options
| author | Olivier Certner <olce@FreeBSD.org> | 2026-09-17 13:38:57 +0000 |
|---|---|---|
| committer | Olivier Certner <olce@FreeBSD.org> | 2026-09-18 13:25:59 +0000 |
| commit | 8aab12ca1898e3fe62a85c39aa1921950d739284 (patch) | |
| tree | 71b739c7e6bbdc504b965977dbee9b13216a5ed7 /sys/contrib/dev/athk/ath11k/debugfs_htt_stats.c | |
| parent | e6454ec1e7d711b3ef51db86c6172cbc43705716 (diff) | |
For Krackan Point, CPU-model-specific matching would not work because
amdsmu_match() browses amdsmu_products[] in order and returns the first
match, and the Krackan Point's 'struct amdsmu_product' object variant
with a 'model' field of 0, indicating that any model matches, is listed
before the variant with model 0x70 in amdsmu_products[].
In practice, this means that reporting of IP blocks for Krackan Point
model 0x70 only was broken. Specifically, not all the existing blocks
were reported and most statistics were not attributed to the right
blocks.
Fix this by making amdsmu_match() parse amdsmu_products[] in reverse, so
CPU-model-generic entries can continue to appear first and new specific
ones can be added after them, which is the expected chronological order
of additions.
While here, since the CPU model is between 0 and 255, change the type
used for CPU models to an 'int' and use the special value -1 to skip
model match, as there exist CPUs reporting 0 as the model (even if, to
our knowledge, only old CPUs seem to be doing that).
While here, fix alignement and whitespace in amdsmu_products[]'s
initializers.
Reviewed by: obiwac
Fixes: 9c77fb6aaa36 ("amdsmu: Add Krackan Point support")
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D59788
Diffstat (limited to 'sys/contrib/dev/athk/ath11k/debugfs_htt_stats.c')
0 files changed, 0 insertions, 0 deletions
