NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.

Keystone II Debug Tools

From Texas Instruments Wiki
Jump to: navigation, search



Ti stk 1c rev rgb png.png


KeyStone Multicore DSP+ARM
KeyStone II Debug Tools



NoteNote: This Guide is still under development and is in a DRAFT state. This label will be removed when the Guide is ready for use.

Overview The purpose of these Keystone 2 debug utilties are to help identify system level issues in the Keystone 2. They dump chip level configuration done by application software that may be required for debugging system level issues. It also dumps many run time useful information required for debugging.

These utilities can be used on the C66x CorePac and the ARM Cores as a GEL file from within Code Composer Studio (CCS) and on the ARM CorePac as a Linux binary executable.

Keystone II Platforms Supported

66AK2E02, 66AK2E05
66AK2H06, 66AK2H12

Debug Gel Script Downloads


Device Level Configruation Identification
The following systems have been implemented as of the current release:

  • PLL configuration - In PLL configuration, all device level PLL configuration registers will be read and device operating frequency and individual master operating frequency will be identified.
  • Bootstrap configuration - In Bootstrap configuration, all configurations decided by bootstrap pins at the device input pins will be read and boot level configuration will be identified.
  • Each core cache configuration - In cache configuration, the cache mode and cache sizes will be identified from cache configuration registers.
  • DDR configuration - In DDR configuration, the configuration registers of DDR controller will be read and DDR operating configuration will be identified.
  • Each master priority configuration - In Master priority configuration, each master’s priority at Teranet level will be identified from respective master’s registers.
  • XMC configuration - In XMC configuration, the application will read XMC registers to identify the memory mapping of different physical memories (DDR, EMIF16, MSMC) to logical memories and print those logical physical mapping details.

C66x CorePac GEL Getting Started


GEL files are always used from within CCS. If unfamiliar with CCS or GEL files, please consult the CCS Getting Started Guide.

It is assumed the GEL file will be used in the context of a pre-existing project.

Loading GEL file on C66x CorePac

  1. Open the Target Configurations panel:

    Step1 ccsedit.png

  2. From the Target Configurations panel, right-click on the desired target configuration and select Launch Selected Configuration (will open the debug perspective):

    Step2.png

  3. From the Debug panel, right-click on the TMS320C66x_0 core and select Open GEL Files View:

    Step3.png

  4. From the GEL Files View, right-click anywhere in the table and select Load GEL… Navigate to the path containing the downloaded Keystone II GEL file corresponding to the device under test; ensure the script status is ‘Success’:

    Step4.png

  5. Finally, from the Scripts menu, a complete list of tests are available:

    Step5.png


Usage Each top-level script option has individual components that can be dumped and complete snapshots that will dump all registers contained in the top-level script option. Additionally, there is an option to dump all registers covered by the GEL file, creating a comprehensive report.

All output is directed to the Console window, as seen below. If the Console window is missing, select View->Console

Example output:

Example output.png


ARM CorePac Linux Utility

ARM Linux command-line utility is used to list and interpret register values responsible for configuring the major peripheral blocks of the Keystone 2. The program is intended to be an enhancement over devmem2 by automatically deciphering the bit-fields of a collection of related registers. For users familiar with GEL files used in CCS, this provides much of the same diagnostic information in instances where JTAG or the CCS IDE is unavailable.

NoteNote: This utility does not provide the ability to read or write individual registers- devmem2 is still the best tool for that job. The base Arago filesystem provided by TI includes the devmem2 program.

Getting Started
The first step to using the Blackbox on the ARM CorePac is transferring the k2rd binary to the Keystone-II device file system. Instructions to transfer files over Ethernet are provided below.

Usage
Command: k2rd [option [arg1] [arg2] ]

Example output

# k2rd -b

Detected 66AK2Hx device.

Bootstrap Configuration (DEVSTAT)
Raw DEVSTAT: 0x00007F81 (0x02620020)
BOOT_MASTER: ARM initiates the boot sequence
ENDIAN[0]: Little Endian
BOOTMODE[3:1]: Sleep or No Boot Mode
PCIESSEN[17]: Initial state of the power domain and the clock domain for PCIE subsystem is Disabled
PCIESSMODE[16:15]: PCIE in End-point mode
PASSCLKSEL[18]: SYSCLK / ALTCORECLK (controlled by CORECLKSEL pin) is used as the input to PA_SS PLL

Tip for new Linux users: output can be redirected to a file using the '>' operator.

e.g.: # k2rd -b > bootmode.txt

NoteNote: multiple short arguments can be strung together to generate a single custom report.

Known issues

  1. Does not support querying the SERDES subsystem
  2. Does not support querying ARM CorePac cache configuration
  3. Does not allow turning on all power domains
E2e.jpg {{
  1. switchcategory:MultiCore=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article Keystone II Debug Tools here.

Keystone=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article Keystone II Debug Tools here.

C2000=For technical support on the C2000 please post your questions on The C2000 Forum. Please post only comments about the article Keystone II Debug Tools here. DaVinci=For technical support on DaVincoplease post your questions on The DaVinci Forum. Please post only comments about the article Keystone II Debug Tools here. MSP430=For technical support on MSP430 please post your questions on The MSP430 Forum. Please post only comments about the article Keystone II Debug Tools here. OMAP35x=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article Keystone II Debug Tools here. OMAPL1=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article Keystone II Debug Tools here. MAVRK=For technical support on MAVRK please post your questions on The MAVRK Toolbox Forum. Please post only comments about the article Keystone II Debug Tools here. For technical support please post your questions at http://e2e.ti.com. Please post only comments about the article Keystone II Debug Tools here.

}}

Hyperlink blue.png Links

Amplifiers & Linear
Audio
Broadband RF/IF & Digital Radio
Clocks & Timers
Data Converters

DLP & MEMS
High-Reliability
Interface
Logic
Power Management

Processors

Switches & Multiplexers
Temperature Sensors & Control ICs
Wireless Connectivity