aboutsummaryrefslogtreecommitdiffstats
path: root/nvdebug.h
diff options
context:
space:
mode:
authorJoshua Bakita <bakitajoshua@gmail.com>2023-10-29 14:37:51 -0400
committerJoshua Bakita <bakitajoshua@gmail.com>2023-10-29 14:37:51 -0400
commitc3d6f2c852eb046e9d4f4f1e6527b52c746b2693 (patch)
tree8314d74496c914219f2bfa5cbf59039a377a250b /nvdebug.h
parentb70849d1ce67a58f9f69b37dc62122f789f4cdf7 (diff)
Print Ampere+ device_info fields with correct offsets/widthsarchive/bh4-wip
Everything now has been checked against how nvgpu handles it
Diffstat (limited to 'nvdebug.h')
-rw-r--r--nvdebug.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/nvdebug.h b/nvdebug.h
index e91763e..d882124 100644
--- a/nvdebug.h
+++ b/nvdebug.h
@@ -567,7 +567,9 @@ static const char* const ENGINE_TYPES_NAMES[ENGINE_TYPES_LEN] = {
567 "FLA: Fabric Logical Addressing", 567 "FLA: Fabric Logical Addressing",
568}; 568};
569 569
570// These field are from nvgpu/include/nvgpu/hw/ga100/hw_top_ga100.h
570typedef union { 571typedef union {
572 // _info type fields
571 struct { 573 struct {
572 uint32_t fault_id:11; 574 uint32_t fault_id:11;
573 uint32_t padding0:5; 575 uint32_t padding0:5;
@@ -575,22 +577,24 @@ typedef union {
575 enum ENGINE_TYPES engine_type:7; // "type_enum" 577 enum ENGINE_TYPES engine_type:7; // "type_enum"
576 bool has_next_entry:1; 578 bool has_next_entry:1;
577 } __attribute__((packed)); 579 } __attribute__((packed));
580 // _info2 type fields
578 struct { 581 struct {
579 uint32_t reset_enum:8; // "reset_id" 582 uint32_t reset_id:8;
580 uint32_t pri_base:18; // "device_pri_base" 583 uint32_t pri_base:18; // "device_pri_base"
581 uint32_t padding1:4; 584 uint32_t padding1:4;
582 uint32_t is_engine:1; 585 uint32_t is_engine:1;
583 uint32_t padding2:1; 586 uint32_t padding2:1;
584 } __attribute__((packed)); 587 } __attribute__((packed));
585 struct { 588 struct {
586 uint32_t engine_enum:2; // "rleng_id" 589 uint32_t rleng_id:2;
587 uint32_t padding3:8; 590 uint32_t padding3:8;
588 uint32_t runlist_enum:16; // "runlist_pri_base" 591 uint32_t runlist_pri_base:16;
589 uint32_t padding4:6; 592 uint32_t padding4:6;
590 } __attribute__((packed)); 593 } __attribute__((packed));
591 uint32_t raw; 594 uint32_t raw;
592} ptop_device_info_ga100_t; 595} ptop_device_info_ga100_t;
593 596
597// These field are from open-gpu-doc/manuals/volta/gv100/dev_top.ref.txt
594typedef union { 598typedef union {
595 // DATA type fields 599 // DATA type fields
596 struct { 600 struct {