Intel® System Debugger User Guide

ID 648476
Date 06/13/2024
Confidential
Document Table of Contents

Appendix: Establishing Concurrent Debug Sessions

This section contains instructions on how to set up your systems and debug cables to establish concurrent debug sessions: Kernel* Mode Debugging (KMD) and debugging via Intel(R) Debug Extensions for WinDbg* over Intel(R) Direct Connect Interface (Intel(R) DCI).

Follow these instructions if you need to:

  • Debug targets (via KMD sessions) with JTAG via Intel DCI enabled on the UEFI.

  • Be able to have concurrent sessions for KMD and JTAG via Intel DCI debugging sessions over one or two cable connections ( for example, to be able to use JTAG via Intel DCI debugging when targets do es not react to KDM).

You can configure your system to run concurrent debug sessions with only one debug cable used. If this solution does not work for some reason, you can try two cables. See all instructions below.

  1. Choose cables.

    To run concurrent debug sessions via one cable, use USB type A-C cable . Connect the C- type end to the target and the A- type end to the host USB3.0 port.

    To establish connection via two cables (if the one-cable solution does not work), use the following cables:

    • USB type A-C or C-C cable for establishing KMD connection.

      Connect the C- type end to the target and the A- type end to the host USB3.0 port.

    • USB type A-A cable for establishing JTAG via Intel DCI connection

      Connect it to USB3.0 ports. Connect both cables at system boot or plug the type USB A-A cable after booting in the desktop.

  2. Configure BIOS. Go to Intel Advanced Menu > Debug Settings and set the following:

    • Enable Kernel Debug Patch

    • Set Platform Debug Consent to Manual

    • Inside Kernel/Platform Debug Support, enable DCI Enable and set USB DbC Enable Mode to USB2.

    • If you use USB type A-C or C-C, enable USB3 type-C UFP2DFP.

  3. Configure operating system.

    Run the following commands:

    bcdedit /debug on
    
    bcdedit /dbgsettings usb targetname:test
    
    bcdedit /set “{dbgsettings}” busparams 0.13.0
    

    where 0.13.0 is an example combination of the bus, device, and function number for the USB host controller. For more information, refer to Microsoft* documentation.