[meta-ti] [PATCH 3/3] gdbc6x: Add version 1.1.0

Denys Dmytriyenko denys at ti.com
Mon May 18 10:54:09 PDT 2015


On Mon, May 18, 2015 at 01:32:56PM -0400, Jacob Stiffler wrote:
> * The gdbc6x utility provides remote gdb capabilities for C6x DSP
>   cores.
> 
> Signed-off-by: Jacob Stiffler <j-stiffler at ti.com>
> ---
>  recipes-devtools/gdbc6x/gdbc6x/init   |   48 +++++++++++++++++++++++++++++++++
>  recipes-devtools/gdbc6x/gdbc6x_git.bb |   48 +++++++++++++++++++++++++++++++++
>  2 files changed, 96 insertions(+)
>  create mode 100644 recipes-devtools/gdbc6x/gdbc6x/init
>  create mode 100644 recipes-devtools/gdbc6x/gdbc6x_git.bb
> 
> diff --git a/recipes-devtools/gdbc6x/gdbc6x/init b/recipes-devtools/gdbc6x/gdbc6x/init
> new file mode 100644
> index 0000000..90210b8
> --- /dev/null
> +++ b/recipes-devtools/gdbc6x/gdbc6x/init
> @@ -0,0 +1,48 @@
> +#!/bin/bash
> +
> +GDB_DEVICE_NAME='/dev/gdbtty$i'
> +DSP_FIRMWARE_NAME='/lib/firmware/dra7-dsp$[$i+1]-fw.xe66'
> +
> +DSP_L2_GLOBAL_OFFSET="40000000"
> +DSP_L2_GLOBAL_SHIFT="00800000"
> +
> +case "$1" in
> +  start)
> +
> +    dsp_core_l2_offset=$DSP_L2_GLOBAL_OFFSET
> +
> +    i=0
> +    while [ -c "`eval echo $GDB_DEVICE_NAME`" ]
> +    do
> +      dsp_firmware=`eval echo $DSP_FIRMWARE_NAME`
> +
> +      if [ -f "`eval echo $DSP_FIRMWARE_NAME`" ]
> +      then 
> +        eval echo "Initializing $GDB_DEVICE_NAME based on $DSP_FIRMWARE_NAME ..."
> +
> +        gdb_data_local=`eval readelf -s "$DSP_FIRMWARE_NAME" | \
> +                        grep 'gdb_globalData' | \
> +                        awk '{print $2}'`
> +
> +        echo "gdb_globalData (local)  = $gdb_data_local"
> +        printf "gdb_globalData (global) = %X\n" \
> +          $[0x$gdb_data_local + 0x$dsp_core_l2_offset]
> +
> +
> +        printf "%X\n" $[0x$gdb_data_local + 0x$dsp_core_l2_offset] \
> +          >> `eval echo $GDB_DEVICE_NAME`
> +      fi
> +      i=$[$i + 1]
> +      dsp_core_l2_offset=`printf "%X" $[0x$dsp_core_l2_offset + 0x$DSP_L2_GLOBAL_SHIFT]`
> +    done
> +  ;;
> +  stop)
> +    # Nothing to be done.
> +  ;;
> +  *)
> +    echo "Usage: $0 {start|stop}"
> +    exit 1
> +  ;;
> +esac
> +
> +
> diff --git a/recipes-devtools/gdbc6x/gdbc6x_git.bb b/recipes-devtools/gdbc6x/gdbc6x_git.bb
> new file mode 100644
> index 0000000..9fc95fe
> --- /dev/null
> +++ b/recipes-devtools/gdbc6x/gdbc6x_git.bb
> @@ -0,0 +1,48 @@
> +DESCRIPTION="GNU debugger for TI C6X DSP."
> +
> +LICENSE = "GPLv3+"

Have you run this GPLv3 instance by OSRB yet?


> +SECTION = "devel"
> +DEPENDS = "expat ncurses readline"
> +
> +LIC_FILES_CHKSUM = "file://debian/copyright;md5=bf0fe2872eb3dfeebb2cbe38206fe81f"

A bit of consistency with variable ordering, indentation etc. would be much 
appreciated. I don't require patches to be passed through oe-stylize script 
from meta-oe (yet), but please keep it neat. Thanks.


> +include gdbc6x.inc
> +
> +PR = "${INC_PR}.0"
> +
> +DEPENDS = "ncurses bison texinfo flex gettext"
> +
> +RDEPENDS_${PN}  = "gdbserver-c6x gdbserverproxy-module-drv"
> +
> +S = "${WORKDIR}/git/gdbc6x"
> +
> +SRC_URI_append = " \
> +    file://init \
> +"
> +
> +inherit update-rc.d
> +
> +INITSCRIPT_NAME = "gdbserverproxy"
> +INITSCRIPT_PARAMS = "defaults 95"
> +
> +inherit gettext
> +
> +PARALLEL_MAKE = ""
> +
> +do_configure () {
> +    cd ${S}
> +    ./configure --program-suffix=c6x --target=tic6x-elf-tirtos --host=${HOST_SYS} --prefix=${S}/install_gdb
> +}
> +
> +do_install () {
> +    make install
> +
> +    # Custom install to prevent conflict with standard GDB.
> +    install -d ${D}${bindir}
> +    install -d ${D}${includedir}
> +    install -m 755  ${S}/install_gdb/bin/gdbc6x ${D}${bindir} 
> +    cp -rf ${S}/install_gdb/include/* ${D}${includedir}
> +
> +    install -d ${D}${sysconfdir}/init.d
> +    install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/gdbserverproxy
> +}
> -- 
> 1.7.9.5
> 
> -- 
> _______________________________________________
> meta-ti mailing list
> meta-ti at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-ti


More information about the meta-ti mailing list