How to dynamically adjust MC log level using restool

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to dynamically adjust MC log level using restool

How to dynamically adjust MC log level using restool

Prerequisites: The board should be running Linux and connected to terminal console.

Note: For log level debug support, the restool version should be LSDK-2003-RC1 or above and MC version should be 10.20.0 or above.

To check restool version:

$ root@localhost:~# restool -v
restool LSDK-20.04

To check MC version:

root@localhost:~# restool -m
MC firmware version: 10.24.0

For debugging, use the ls-debug script available in the LSDK rootfs. There is no need to create the debug object.

ls-debug -h 
ls-debug options
-h, --help ls-debug help information
-ts, --timestamp=X Enable/Disable timestamp printing, X is ON or OFF
-c, --console=X Enable/Disable printing in UART console, X is ON or OFF
-l, --log=X Enable/Disable printing in DDR log, X is ON or OF
-u, --uart=X Set UART ID of the console, X = [0 - 4], 0 = OFF
-ll, --level=X

Set logging level, X = [0 - 5]

  • 0: Global
  • 1: Debug
  • 2: Info
  • 3: Warning
  • 4: Error
  • 5: Critical
-m, mem, --memory

Dump information about memory modules available

dpxy.z

Dump information about MC respective object

 

For example, to enable logging in console with log level INFO:

$ ls-debug --log=on --console=on --level=2              
dpdbg.0 created
DDR log printing ON
UART console printing ON
Log level set to 2
$ root@localhost:~# ls-debug --memory
Memory dumped information available in MC log/console
$ root@localhost:~# cat `find /dev/ -name "*mc_console"`
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_get_obj for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dpdbg_open on DPDBG
[I, RESMAN]  Handling command: dpdbg_dump on DPDBG
[I, DPNI]  Memory info:
[I, DPNI]  MC DDR #1 cacheable memory
[I, DPNI]        Total: 134217728 bytes
[I, DPNI]        Used: 14802708 bytes
[I, DPNI]        Free: 119415020 bytes
[I, DPNI]  MC DDR #1 non-cacheable memory
[I, DPNI]        Total: 50331648 bytes
[I, DPNI]        Used: 27680 bytes
[I, DPNI]        Free: 50303968 bytes
[I, DPNI]  DMEM1 memory
[I, DPNI]        Total: 81920 bytes
[I, DPNI]        Used: 27168 bytes
[I, DPNI]        Free: 54752 bytes
[I, DPNI]  DMEM2 memory
[I, DPNI]        Total: 81920 bytes
[I, DPNI]        Used: 27168 bytes
[I, DPNI]        Free: 54752 bytes
[I, DPNI]  DDR #1 memory
[I, DPNI]        Total: 1610612736 bytes
[I, DPNI]        Used: 143163392 bytes
[I, DPNI]        Free: 1467449344 bytes
[I, DPNI]  PEB memory
[I, DPNI]        Total: 2097152 bytes
[I, DPNI]        Used: 524288 bytes
[I, DPNI]        Free: 1572864 bytes
[I, DPNI]  DP-DDR memory
[I, DPNI]        Total: 4294967296 bytes
[I, DPNI]        Used: 0 bytes
[I, DPNI]        Free: 4294967296 bytes
[I, RESMAN]  Handling command: dpdbg_close on DPDBG
[I, RESMAN]  Handling command: dprc_close for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_set_irq_mask for DPRC 1 on portal id 0
[I, RESMAN]  Handling command: dprc_set_irq_enable for DPRC 1 on portal id 0
root@localhost:~#
%3CLINGO-SUB%20id%3D%22lingo-sub-1178784%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EHow%20to%20dynamically%20adjust%20MC%20log%20level%20using%20restool%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1178784%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%0A%3CP%3E%3CSTRONG%3EPrerequisites%3A%3C%2FSTRONG%3E%26nbsp%3BThe%20board%20should%20be%20running%20Linux%20and%20connected%20to%20terminal%20console.%3C%2FP%3E%0A%3CP%3E%3CSTRONG%3ENote%3A%3C%2FSTRONG%3E%26nbsp%3BFor%20log%20level%20debug%20support%2C%20the%20restool%20version%20should%20be%20LSDK-2003-RC1%20or%20above%20and%20MC%20version%20should%20be%2010.20.0%20or%20above.%3C%2FP%3E%0A%3CP%3ETo%20check%20restool%20version%3A%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3E%24%20root%40localhost%3A~%23%20restool%20-v%0Arestool%20LSDK-20.04%0A%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3ETo%20check%20MC%20version%3A%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Eroot%40localhost%3A~%23%20restool%20-m%0AMC%20firmware%20version%3A%2010.24.0%0A%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3EFor%20debugging%2C%20use%26nbsp%3Bthe%20%3CFONT%20face%3D%22courier%20new%2Ccourier%22%3Els-debug%3C%2FFONT%3E%20script%20available%20in%20the%20LSDK%20rootfs.%20There%20is%20no%20need%20to%20create%20the%20debug%20object.%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Els-debug%20-h%20%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CTABLE%20class%3D%22lia-align-left%22%20style%3D%22height%3A%20380px%3B%20width%3A%20100%25%3B%22%20border%3D%221%22%20width%3D%22100%25%22%20style%3D%22text-align%20%3A%20left%3B%22%20style%3D%22text-align%20%3A%20left%3B%22%3E%3CCAPTION%3E%3CFONT%20face%3D%22courier%20new%2Ccourier%22%3Els-debug%3C%2FFONT%3E%20options%3C%2FCAPTION%3E%0A%3CTBODY%3E%0A%3CTR%3E%0A%3CTD%20width%3D%2225%25%22%20height%3D%2224px%22%3E-h%2C%20--help%3C%2FTD%3E%0A%3CTD%20width%3D%2275%25%22%20height%3D%2224px%22%3E%3CFONT%20face%3D%22courier%20new%2Ccourier%22%3Els-debug%3C%2FFONT%3E%20help%20information%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20width%3D%2225%25%22%20height%3D%2224px%22%3E-ts%2C%20--timestamp%3DX%3C%2FTD%3E%0A%3CTD%20width%3D%2275%25%22%20height%3D%2224px%22%3EEnable%2FDisable%20timestamp%20printing%2C%20X%20is%20ON%20or%20OFF%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20width%3D%2225%25%22%20height%3D%2224px%22%3E-c%2C%20--console%3DX%3C%2FTD%3E%0A%3CTD%20width%3D%2275%25%22%20height%3D%2224px%22%3EEnable%2FDisable%20printing%20in%20UART%20console%2C%20X%20is%20ON%20or%20OFF%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20width%3D%2225%25%22%20height%3D%2224px%22%3E-l%2C%20--log%3DX%3C%2FTD%3E%0A%3CTD%20width%3D%2275%25%22%20height%3D%2224px%22%3EEnable%2FDisable%20printing%20in%20DDR%20log%2C%20X%20is%20ON%20or%20OF%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20width%3D%2225%25%22%20height%3D%2224px%22%3E-u%2C%20--uart%3DX%3C%2FTD%3E%0A%3CTD%20width%3D%2275%25%22%20height%3D%2224px%22%3ESet%20UART%20ID%20of%20the%20console%2C%20X%20%3D%20%5B0%20-%204%5D%2C%200%20%3D%20OFF%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20width%3D%2225%25%22%20height%3D%22182px%22%3E-ll%2C%20--level%3DX%3C%2FTD%3E%0A%3CTD%20width%3D%2275%25%22%20height%3D%22182px%22%3E%0A%3CP%3ESet%20logging%20level%2C%20X%20%3D%20%5B0%20-%205%5D%3C%2FP%3E%0A%3CUL%3E%0A%3CLI%3E0%3A%20Global%3C%2FLI%3E%0A%3CLI%3E1%3A%20Debug%3C%2FLI%3E%0A%3CLI%3E2%3A%20Info%3C%2FLI%3E%0A%3CLI%3E3%3A%20Warning%3C%2FLI%3E%0A%3CLI%3E4%3A%20Error%3C%2FLI%3E%0A%3CLI%3E5%3A%20Critical%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20height%3D%2239px%22%3E-m%2C%20mem%2C%20--memory%3C%2FTD%3E%0A%3CTD%20height%3D%2239px%22%3E%0A%3CP%3EDump%20information%20about%20memory%20modules%20available%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20height%3D%2239px%22%3Edpxy.z%3C%2FTD%3E%0A%3CTD%20height%3D%2239px%22%3E%0A%3CP%3EDump%20information%20about%20MC%20respective%20object%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3C%2FTBODY%3E%0A%3C%2FTABLE%3E%0A%3CBR%20%2F%3E%0A%3CP%3EFor%20example%2C%20to%20enable%20logging%20in%20console%20with%20log%20level%20INFO%3A%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3E%24%20ls-debug%20--log%3Don%20--console%3Don%20--level%3D2%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0Adpdbg.0%20created%0ADDR%20log%20printing%20ON%0AUART%20console%20printing%20ON%0ALog%20level%20set%20to%202%0A%24%20root%40localhost%3A~%23%20ls-debug%20--memory%0AMemory%20dumped%20information%20available%20in%20MC%20log%2Fconsole%0A%24%20root%40localhost%3A~%23%20cat%20%60find%20%2Fdev%2F%20-name%20%22*mc_console%22%60%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_get_obj%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dpdbg_open%20on%20DPDBG%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dpdbg_dump%20on%20DPDBG%0A%5BI%2C%20DPNI%5D%20%20Memory%20info%3A%0A%5BI%2C%20DPNI%5D%20%20MC%20DDR%20%231%20cacheable%20memory%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Total%3A%20134217728%20bytes%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Used%3A%2014802708%20bytes%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Free%3A%20119415020%20bytes%0A%5BI%2C%20DPNI%5D%20%20MC%20DDR%20%231%20non-cacheable%20memory%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Total%3A%2050331648%20bytes%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Used%3A%2027680%20bytes%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Free%3A%2050303968%20bytes%0A%5BI%2C%20DPNI%5D%20%20DMEM1%20memory%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Total%3A%2081920%20bytes%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Used%3A%2027168%20bytes%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Free%3A%2054752%20bytes%0A%5BI%2C%20DPNI%5D%20%20DMEM2%20memory%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Total%3A%2081920%20bytes%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Used%3A%2027168%20bytes%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Free%3A%2054752%20bytes%0A%5BI%2C%20DPNI%5D%20%20DDR%20%231%20memory%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Total%3A%201610612736%20bytes%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Used%3A%20143163392%20bytes%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Free%3A%201467449344%20bytes%0A%5BI%2C%20DPNI%5D%20%20PEB%20memory%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Total%3A%202097152%20bytes%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Used%3A%20524288%20bytes%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Free%3A%201572864%20bytes%0A%5BI%2C%20DPNI%5D%20%20DP-DDR%20memory%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Total%3A%204294967296%20bytes%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Used%3A%200%20bytes%0A%5BI%2C%20DPNI%5D%20%20%20%20%20%20%20%20Free%3A%204294967296%20bytes%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dpdbg_close%20on%20DPDBG%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_close%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_set_irq_mask%20for%20DPRC%201%20on%20portal%20id%200%0A%5BI%2C%20RESMAN%5D%20%20Handling%20command%3A%20dprc_set_irq_enable%20for%20DPRC%201%20on%20portal%20id%200%0Aroot%40localhost%3A~%23%0A%3C%2FCODE%3E%3C%2FPRE%3E%3C%2FLINGO-BODY%3E
No ratings
Version history
Last update:
‎02-18-2021 03:54 AM
Updated by: