diff options
3 files changed, 144 insertions, 0 deletions
diff --git a/meta-oe/recipes-devtools/openocd/openocd/0001-tcl-board-ti_-_swd_native.cfg-Add-support-for-direct.patch b/meta-oe/recipes-devtools/openocd/openocd/0001-tcl-board-ti_-_swd_native.cfg-Add-support-for-direct.patch new file mode 100644 index 0000000000..8a3b72321f --- /dev/null +++ b/meta-oe/recipes-devtools/openocd/openocd/0001-tcl-board-ti_-_swd_native.cfg-Add-support-for-direct.patch | |||
| @@ -0,0 +1,77 @@ | |||
| 1 | From 5c55d79ecfecc4a1b5a5ebcf649227ca1e1bf38e Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Joao Lima <joao.lima@hbkworld.com> | ||
| 3 | Date: Tue, 30 Sep 2025 12:13:04 +0000 | ||
| 4 | Subject: [PATCH 1/2] tcl/board/ti_*_swd_native.cfg: Add support for direct | ||
| 5 | memory access via SW | ||
| 6 | |||
| 7 | Add support for SWD emulation as a transport method for | ||
| 8 | direct memory operations of boards TI AM64x and TI J784s4 | ||
| 9 | |||
| 10 | Upstream-Status: Submitted [http://openocd.zylin.com/#/c/9020/] | ||
| 11 | |||
| 12 | Change-Id: I17fe9b2bef5c58886625bfdb88d92645ba4d7da7 | ||
| 13 | Signed-off-by: Joao Lima <joao.lima@hbkworld.com> | ||
| 14 | --- | ||
| 15 | tcl/board/ti_am64xx_swd_native.cfg | 23 +++++++++++++++++++++++ | ||
| 16 | tcl/board/ti_j784s4_swd_native.cfg | 22 ++++++++++++++++++++++ | ||
| 17 | 2 files changed, 45 insertions(+) | ||
| 18 | create mode 100644 tcl/board/ti_am64xx_swd_native.cfg | ||
| 19 | create mode 100644 tcl/board/ti_j784s4_swd_native.cfg | ||
| 20 | |||
| 21 | diff --git a/tcl/board/ti_am64xx_swd_native.cfg b/tcl/board/ti_am64xx_swd_native.cfg | ||
| 22 | new file mode 100644 | ||
| 23 | index 000000000..d3727149e | ||
| 24 | --- /dev/null | ||
| 25 | +++ b/tcl/board/ti_am64xx_swd_native.cfg | ||
| 26 | @@ -0,0 +1,23 @@ | ||
| 27 | +# SPDX-License-Identifier: GPL-2.0-or-later | ||
| 28 | +# Copyright (C) 2022-2023 Texas Instruments Incorporated - http://www.ti.com/ | ||
| 29 | +# | ||
| 30 | +# Texas Instruments am642 | ||
| 31 | +# Link: https://www.ti.com/product/AM642 | ||
| 32 | +# | ||
| 33 | +# This configuration file is used as a self hosted debug configuration that | ||
| 34 | +# works on every AM642 platform based on firewall configuration permitted | ||
| 35 | +# in the system. | ||
| 36 | +# | ||
| 37 | +# In this system openOCD runs on one of the CPUs inside AM625 and provides | ||
| 38 | +# network ports that can then be used to debug the microcontrollers on the | ||
| 39 | +# SoC - either self hosted IDE OR remotely. | ||
| 40 | + | ||
| 41 | +# We are using dmem, which uses dapdirect_swd transport | ||
| 42 | +adapter driver dmem | ||
| 43 | +transport select swd | ||
| 44 | + | ||
| 45 | +if { ![info exists SOC] } { | ||
| 46 | + set SOC am642 | ||
| 47 | +} | ||
| 48 | + | ||
| 49 | +source [find target/ti_k3.cfg] | ||
| 50 | diff --git a/tcl/board/ti_j784s4_swd_native.cfg b/tcl/board/ti_j784s4_swd_native.cfg | ||
| 51 | new file mode 100644 | ||
| 52 | index 000000000..13b2ac3b8 | ||
| 53 | --- /dev/null | ||
| 54 | +++ b/tcl/board/ti_j784s4_swd_native.cfg | ||
| 55 | @@ -0,0 +1,22 @@ | ||
| 56 | +# SPDX-License-Identifier: GPL-2.0-or-later | ||
| 57 | +# Copyright (C) 2022-2023 Texas Instruments Incorporated - http://www.ti.com/ | ||
| 58 | +# | ||
| 59 | +# Texas Instruments TDA4VM/J721E | ||
| 60 | +# Link: https://www.ti.com/product/TDA4VM | ||
| 61 | +# | ||
| 62 | +# This configuration file is used as a self hosted debug configuration that | ||
| 63 | +# works on every TDA4VM platform based on firewall configuration permitted | ||
| 64 | +# in the system. | ||
| 65 | +# | ||
| 66 | +# In this system openOCD runs on one of the CPUs inside TDA4VM and provides | ||
| 67 | +# network ports that can then be used to debug the microcontrollers on the | ||
| 68 | +# SoC - either self hosted IDE OR remotely. | ||
| 69 | + | ||
| 70 | +# We are using dmem, which uses dapdirect_swd transport | ||
| 71 | +adapter driver dmem | ||
| 72 | +transport select swd | ||
| 73 | + | ||
| 74 | +if { ![info exists SOC] } { | ||
| 75 | + set SOC j784s4 | ||
| 76 | +} | ||
| 77 | +source [find target/ti_k3.cfg] | ||
diff --git a/meta-oe/recipes-devtools/openocd/openocd/0002-tcl-target-ti_k3.cfg-Add-support-for-direct-memory-a.patch b/meta-oe/recipes-devtools/openocd/openocd/0002-tcl-target-ti_k3.cfg-Add-support-for-direct-memory-a.patch new file mode 100644 index 0000000000..c879696ef5 --- /dev/null +++ b/meta-oe/recipes-devtools/openocd/openocd/0002-tcl-target-ti_k3.cfg-Add-support-for-direct-memory-a.patch | |||
| @@ -0,0 +1,65 @@ | |||
| 1 | From 39bc4461642eaaf993d0a6cf772d51cdde8c0ae8 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Joao Lima <joao.lima@hbkworld.com> | ||
| 3 | Date: Tue, 30 Sep 2025 12:13:30 +0000 | ||
| 4 | Subject: [PATCH 2/2] tcl/target/ti_k3.cfg: Add support for direct memory | ||
| 5 | access via SWD | ||
| 6 | |||
| 7 | Adds support for direct memory access via SWD emulation for AM64x and | ||
| 8 | J784s4 boards, configuring addresses and parameters required for | ||
| 9 | direct memory operations. | ||
| 10 | |||
| 11 | Upstream-Status: Submitted [http://openocd.zylin.com/#/c/9021/] | ||
| 12 | |||
| 13 | Change-Id: Iebc16612b3990b2ef19ddc4143b66ab1bcbfe0f3 | ||
| 14 | Signed-off-by: Joao Lima <joao.lima@hbkworld.com> | ||
| 15 | --- | ||
| 16 | tcl/target/ti_k3.cfg | 22 +++++++++++++++++++++- | ||
| 17 | 1 file changed, 21 insertions(+), 1 deletion(-) | ||
| 18 | |||
| 19 | diff --git a/tcl/target/ti_k3.cfg b/tcl/target/ti_k3.cfg | ||
| 20 | index 0dee74e5e..6b0ac2e52 100644 | ||
| 21 | --- a/tcl/target/ti_k3.cfg | ||
| 22 | +++ b/tcl/target/ti_k3.cfg | ||
| 23 | @@ -176,6 +176,16 @@ switch $_soc { | ||
| 24 | # Uses the same JTAG ID | ||
| 25 | set _armv8_cores 0 | ||
| 26 | } | ||
| 27 | + | ||
| 28 | + # Setup DMEM access descriptions | ||
| 29 | + # DAPBUS (Debugger) description | ||
| 30 | + set _dmem_base_address 0x740002000 | ||
| 31 | + set _dmem_ap_address_offset 0x100 | ||
| 32 | + set _dmem_max_aps 10 | ||
| 33 | + # Emulated AP description | ||
| 34 | + set _dmem_emu_base_address 0x760000000 | ||
| 35 | + set _dmem_emu_base_address_map_to 0x1d500000 | ||
| 36 | + set _dmem_emu_ap_list 1 | ||
| 37 | } | ||
| 38 | am625 { | ||
| 39 | set _K3_DAP_TAPID 0x0bb7e02f | ||
| 40 | @@ -333,7 +343,7 @@ switch $_soc { | ||
| 41 | set ARMV8_CTIBASE {0x90420000 0x90520000 0x90620000 0x90720000 | ||
| 42 | 0x90820000 0x90920000 0x90a20000 0x90b20000} | ||
| 43 | |||
| 44 | - # J721s2 has 4 clusters of 2 R5 cores each. | ||
| 45 | + # J784s4 has 4 clusters of 2 R5 cores each. | ||
| 46 | set _r5_cores 8 | ||
| 47 | set R5_DBGBASE {0x9d010000 0x9d012000 | ||
| 48 | 0x9d410000 0x9d412000 | ||
| 49 | @@ -348,6 +358,16 @@ switch $_soc { | ||
| 50 | main1_r5.0 main1_r5.1 | ||
| 51 | main2_r5.0 main2_r5.1} | ||
| 52 | |||
| 53 | + # Setup DMEM access descriptions | ||
| 54 | + # DAPBUS (Debugger) description | ||
| 55 | + set _dmem_base_address 0x4c40002000 | ||
| 56 | + set _dmem_ap_address_offset 0x100 | ||
| 57 | + set _dmem_max_aps 8 | ||
| 58 | + # Emulated AP description | ||
| 59 | + set _dmem_emu_base_address 0x4c60000000 | ||
| 60 | + set _dmem_emu_base_address_map_to 0x1d600000 | ||
| 61 | + set _dmem_emu_ap_list 1 | ||
| 62 | + | ||
| 63 | # sysctrl CTI base | ||
| 64 | set CM3_CTIBASE {0x20001000} | ||
| 65 | # Sysctrl power-ap unlock offsets | ||
diff --git a/meta-oe/recipes-devtools/openocd/openocd_git.bb b/meta-oe/recipes-devtools/openocd/openocd_git.bb index eb6ca888ab..b0c509988c 100644 --- a/meta-oe/recipes-devtools/openocd/openocd_git.bb +++ b/meta-oe/recipes-devtools/openocd/openocd_git.bb | |||
| @@ -9,6 +9,8 @@ SRC_URI = " \ | |||
| 9 | git://repo.or.cz/r/git2cl.git;protocol=http;destsuffix=tools/git2cl;name=git2cl;branch=master \ | 9 | git://repo.or.cz/r/git2cl.git;protocol=http;destsuffix=tools/git2cl;name=git2cl;branch=master \ |
| 10 | git://github.com/msteveb/jimtcl.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/jimtcl;name=jimtcl;branch=master \ | 10 | git://github.com/msteveb/jimtcl.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/jimtcl;name=jimtcl;branch=master \ |
| 11 | git://repo.or.cz/r/libjaylink.git;protocol=http;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/src/jtag/drivers/libjaylink;name=libjaylink;branch=master \ | 11 | git://repo.or.cz/r/libjaylink.git;protocol=http;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/src/jtag/drivers/libjaylink;name=libjaylink;branch=master \ |
| 12 | file://0001-tcl-board-ti_-_swd_native.cfg-Add-support-for-direct.patch \ | ||
| 13 | file://0002-tcl-target-ti_k3.cfg-Add-support-for-direct-memory-a.patch \ | ||
| 12 | " | 14 | " |
| 13 | 15 | ||
| 14 | SRCREV_FORMAT = "openocd" | 16 | SRCREV_FORMAT = "openocd" |
