resourceparse Utility
The resourceparse tool parses and prints data segments content. The parser's output is used by NVIDIA representatives for debugging and troubleshooting.
This tool parses the output of the "resourcedump" tool. There are several parsing methods (see --parser):
ABD:
This parsing method receives an ADB file and parses each segment data according to the ADB layout of the node with the segment_id attribute corresponding to the segment.
Map:
This parsing method assumes that the provided resource-segments represent a memory map by DWORD pairs of address-value, and outputs each pair in a new line (similar to mstdump).
The tool applicable inputs for parsing can be the resourcedump outputs (bin file or the “human readable” format”), or the devlink json format output.
To parse the segments data in the most efficient way, the user must use the most suitable adb file. For the adb file, please contact Support.
resourceparse -d DUMP_FILE [-p RESOURCE_PARSER] [--version] [-o OUT] [-v] -a ADB_FILE [-r]
where
-d, --dump-file | Location of the dump file used for parsing |
-p, --parser | RESOURCE_PARSER: Available options: ['adb', 'map']. Default: 'adb'. see Parsing Methods. |
-a, --adb-file | Location of the ADB file |
-h, --help | Shows this help message and exit |
--version | Shows the tool's version and exit |
-o, --out | Location of the output file |
--out-dir | Location of the output directory, a separate file is created for each segment |
-r, --raw | Prints the raw data in addition to the parsed data |
--hide-segment-header | Hide segment header during printing |
-v | Verbosity notice |
Examples:
How to run basic parsing:
# resourceparse --dump-file notice.txt --adb-file fw-
4119-rel-16_23_2008.adb Parse4segments: -------------------------------------------------------------------------------- Segment - segment_info (0xfffe) segment_header.segment_type =0xfffesegment_header.length_dw =0x4dump_version =0x0hw_version =0x0fw_version =0x1063232c-------------------------------------------------------------------------------- Segment - segment_command (0xfffa) segment_header.segment_type =0xfffasegment_header.length_dw =0x5vhca_id =0x0segment_called =0x2000index1 =0x21index2 =0x0num_of_obj1 =0x0num_of_obj2 =0x0-------------------------------------------------------------------------------- Segment - segment_notice (0xfff9) segment_header.segment_type =0xfff9segment_header.length_dw =0xcsyndrome_id =0x211notice[0] =0x2000notice[1] =0x21notice[2] =0x0notice[3] =0x0notice[4] =0x496e7661notice[5] =0x6c696420notice[6] =0x52657300notice[7] =0x0notice msg = !Invalid Res -------------------------------------------------------------------------------- Segment - segment_terminate (0xfffb) segment_header.segment_type =0xfffbsegment_header.length_dw =0x1--------------------------------------------------------------------------------How to run parsing with ‘raw’ and ‘verbosity’ options:
# resourceparse --dump-file notice.txt --adb-file fw-
4119-rel-16_23_2008.adb –raw -v Notice - adb fw version16.23.2008is usedforparsingwhiledump fw version is16.99.9004Parse4segments: -------------------------------------------------------------------------------- Segment - segment_info (0xfffe) segment_header.segment_type =0xfffesegment_header.length_dw =0x4dump_version =0x0hw_version =0x0fw_version =0x1063232cRAW DATA: DWORD [0-3] :0x0004FFFE0x000000000x000000000x1063232C-------------------------------------------------------------------------------- Segment - segment_command (0xfffa) segment_header.segment_type =0xfffasegment_header.length_dw =0x5vhca_id =0x0segment_called =0x2000index1 =0x21index2 =0x0num_of_obj1 =0x0num_of_obj2 =0x0RAW DATA: DWORD [0-3] :0x0005FFFA0x200000000x000000210x00000000DWORD [4] :0x00000000-------------------------------------------------------------------------------- Segment - segment_notice (0xfff9) segment_header.segment_type =0xfff9segment_header.length_dw =0xcsyndrome_id =0x211notice[0] =0x2000notice[1] =0x21notice[2] =0x0notice[3] =0x0notice[4] =0x496e7661notice[5] =0x6c696420notice[6] =0x52657300notice[7] =0x0RAW DATA: DWORD [0-3] :0x000CFFF90x000002110x000000000x00000000DWORD [4-7] :0x000020000x000000210x000000000x00000000DWORD [8-11] :0x496E76610x6C6964200x526573000x00000000notice msg = !Invalid Res -------------------------------------------------------------------------------- Segment - segment_terminate (0xfffb) segment_header.segment_type =0xfffbsegment_header.length_dw =0x1RAW DATA: DWORD [0] :0x0001FFFB--------------------------------------------------------------------------------How to run parsing and save it into a file:
# resourceparse --dump-file notice.txt --adb-file fw-
4119-rel-16_23_2008.adb –out out_flie.txt write to file: out_flie.txt