EUD code dump

Squash the history to reduce all the noise when rebasing.

Readme correction

Changes to support QUTS-openOCD

Changes to support QUTS-openOCD

Hexagon debug changes

License headers addition

config file update for lanai

Jimtcl submodule version correction

QUTS install instructions

Eud QPM version update in readme

EUD QPM name correction

Removed QUTS library code for EUD Service
Updated hexagon support
Added EUD submodule
Updated makefiles to compile EUD codebase with openocd
Use --enable-eud with configure command to compile with EUD
Added Qualcomm QCS6490 configuration file

Removed QUTS library code for EUD Service
Updated hexagon support
Added EUD submodule
Updated makefiles to compile EUD codebase with openocd if --enable-eud option is added with configure command
Added Qualcomm QCS6490 configuration file

Changes to read and print EUD Revision information

Signed-off-by: Ashi Gupta <quic_ashig@quicinc.com>

Added EUD Adapter option in qcs6490.cfg and updated license information

Signed-off-by: Ashi Gupta <quic_ashig@quicinc.com>

Updated the EUD submodule link and removed the newline character (\) from the target create command in the qcs6490.cfg configuration file

Signed-off-by: Ashi Gupta <quic_ashig@quicinc.com>
This commit is contained in:
Ravinuthala, Sarath
2023-08-08 12:20:52 +05:30
committed by Caleb Connolly
parent 169d463a3d
commit a72a269efb
27 changed files with 23746 additions and 48 deletions
+5
View File
@@ -0,0 +1,5 @@
# SPDX-License-Identifier: GPL-2.0-or-later or BSD-3-Clause-Clear
#
# QUALCOMM Embedded USB Debug
#
adapter driver eud
+61
View File
@@ -0,0 +1,61 @@
# SPDX-License-Identifier: GPL-2.0-or-later or BSD-3-Clause-Clear
#
# The QCS6490/QCM6490 is a 6nm processor designed for enterprise and Internet of Things (IOT) applications,
# featuring global 5G and Wi-Fi 6E support
#
# Product Page:
# https://www.qualcomm.com/products/internet-of-things/industrial/building-enterprise/qcs6490
# https://www.qualcomm.com/products/internet-of-things/industrial/building-enterprise/qcm6490
#
# Notes:
# QCS6490/QCM6490 devices support both JTAG and SWD protocols.
# Debug has been tested with the following debug adapters/dongles
# 1. Embedded USB Debug (EUD) (supports only SWD)
# 2. Olimex FTDI ARM-USB-OCD-H (supports only JTAG) - If JTAG port is enabled on hardware
# 3. Segger J-Link Plus (supports both JTAG and SWD) - If JTAG port is enabled on hardware
#
# Example command lines
# 1. EUD
# openocd -f tcl/interface/eud.cfg -f tcl/target/qualcomm/qcs6490.cfg
#
# 2. Olimex(ARM-USB-OCD-H)
# openocd -f tcl/interface/ftdi/olimex-arm-usb-ocd-h.cfg -f tcl/target/qualcomm/qcs6490.cfg
#
# 3. Segger J-Link Plus
# openocd -f tcl/interface/jlink.cfg -f tcl/target/qualcomm/qcs6490.cfg
if { [info exists CHIPNAME] } {
set _CHIPNAME $CHIPNAME
} else {
set _CHIPNAME QCS6490
}
if { [info exists ENDIAN] } {
set _ENDIAN $ENDIAN
} else {
set _ENDIAN little
}
# Change _PROTOCOL based on debug adapter in use
set _PROTOCOL swd
transport select $_PROTOCOL
adapter speed 500
reset_config trst_and_srst
# Create DAP/TAP based on Protocol selection
if {$_PROTOCOL == "swd"} {
swd newdap $_CHIPNAME cpu -irlen 15 -expected-id 0x5ba02477
} elseif {$_PROTOCOL == "jtag"} {
jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 1 -expected-id 0x5ba00477
}
dap create $_CHIPNAME.dap -chain-position $_CHIPNAME.cpu -ignore-syspwrupack
cti create CTI_APSS -dap $_CHIPNAME.dap -baseaddr 0x87020000 -ap-num 1
target create $_CHIPNAME.cpu0 aarch64 -endian $_ENDIAN -dap $_CHIPNAME.dap -coreid 0 -dbgbase 0x87010000 -cti CTI_APSS -event reset-assert-post { dap init }
$_CHIPNAME.cpu0 configure -event examine-end {
eval $_CHIPNAME.cpu0 arp_halt
}
# Default breakpoints to hardware breakpoints
gdb_breakpoint_override hard