This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CCSv6 Message Que example without NDK

Other Parts Discussed in Thread: SYSBIOS

Hi

CCSv6.0.0.00190, ti.platforms.evm6472, stairstep example, System Analyzer 1.4.0.6, CGT 7.4.8, XDC 3.25.5.94, SYS/BIOS 6.37.2.27, IPC 3.20.0.06, XDS560v2 spectrum digital emulator.

I'm trying to change the C6472 message que example to use JTAG stop mode instead of the NDK. 

First, I changed the upload mode.

LoggingSetup.eventUploadMode = LoggingSetup.UploadMode_JTAGSTOPMODE;

But the system still wants to use UDP as transport.  See my post below for the screen shot of the system analyzer indicating UDP.

http://e2e.ti.com/support/development_tools/code_composer_studio/f/81/p/345127/1209014.aspx#1209014

Then I removed the following NDK lines from the wizard generated .cfg file

var NdkConfig = xdc.loadPackage('ti.ndk.config');
var Global = xdc.useModule('ti.ndk.config.Global');
var Ip = xdc.useModule('ti.ndk.config.Ip');
var Udp = xdc.useModule('ti.ndk.config.Udp');

Ip.dhcpClientMode = Ip.CIS_FLG_IFIDXVALID;

var ndkdrivers = xdc.loadPackage('ti.uia.examples.evm6472.ndkdrivers');

But I get the errors below  :(   It seems there is something that still wants to use the NDK transport.

undefined first referenced
symbol in file
--------- ----------------
_TaskSelf C:\ti\uia_1_04_00_06\packages\ti\uia\sysbios\lib\release\ti.uia.sysbios.a64P<TransportNdk.o64P>
_accept C:\ti\uia_1_04_00_06\packages\ti\uia\sysbios\lib\release\ti.uia.sysbios.a64P<TransportNdk.o64P>
_bind C:\ti\uia_1_04_00_06\packages\ti\uia\sysbios\lib\release\ti.uia.sysbios.a64P<TransportNdk.o64P>
_fdClose C:\ti\uia_1_04_00_06\packages\ti\uia\sysbios\lib\release\ti.uia.sysbios.a64P<TransportNdk.o64P>
_fdCloseSession C:\ti\uia_1_04_00_06\packages\ti\uia\sysbios\lib\release\ti.uia.sysbios.a64P<TransportNdk.o64P>
_fdError C:\ti\uia_1_04_00_06\packages\ti\uia\sysbios\lib\release\ti.uia.sysbios.a64P<TransportNdk.o64P>
_fdOpenSession C:\ti\uia_1_04_00_06\packages\ti\uia\sysbios\lib\release\ti.uia.sysbios.a64P<TransportNdk.o64P>

>> Compilation failure
_listen C:\ti\uia_1_04_00_06\packages\ti\uia\sysbios\lib\release\ti.uia.sysbios.a64P<TransportNdk.o64P>
_recv C:\ti\uia_1_04_00_06\packages\ti\uia\sysbios\lib\release\ti.uia.sysbios.a64P<TransportNdk.o64P>
_send C:\ti\uia_1_04_00_06\packages\ti\uia\sysbios\lib\release\ti.uia.sysbios.a64P<TransportNdk.o64P>
_sendto C:\ti\uia_1_04_00_06\packages\ti\uia\sysbios\lib\release\ti.uia.sysbios.a64P<TransportNdk.o64P>
_setsockopt C:\ti\uia_1_04_00_06\packages\ti\uia\sysbios\lib\release\ti.uia.sysbios.a64P<TransportNdk.o64P>
_socket C:\ti\uia_1_04_00_06\packages\ti\uia\sysbios\lib\release\ti.uia.sysbios.a64P<TransportNdk.o64P>

I tried cleaning the project and then rebuilding. I got the same above linker error.

So next I removed the following (it was just a guess since I could see anything NDKish in the .cfg file)

var ServiceMgr = xdc.useModule('ti.uia.runtime.ServiceMgr');
ServiceMgr.topology = ServiceMgr.Topology_MULTICORE;

/* The application is using the UIA benchmark events. */
var UIABenchmark = xdc.useModule('ti.uia.events.UIABenchmark');

and it built without errors.  :)

But the example no longer runs to completion  :(.  The output is below.

[C64XP_4] Start test
[C64XP_5] Start test
[C64XP] Start test
[C64XP_1] Start test
[C64XP_2] Start test
[C64XP_3] Start test
Starting BIOS
[C64XP] Starting BIOS
[C64XP_1] Starting BIOS
[C64XP_2] Starting BIOS
[C64XP_4] Starting BIOS
[C64XP_5] Starting BIOS

I also tried only commenting out these lines. It built, but the message queue example outputs the same as above.

var ServiceMgr = xdc.useModule('ti.uia.runtime.ServiceMgr');
ServiceMgr.topology = ServiceMgr.Topology_MULTICORE;

I've attached the project. Why does adding the ServiceMgr module result in the UIA needing the TransportNDK. What do I need to change to get this example to work without NDK?

6740.1488.C6472_msgQue_SysAnalyzer.zip

Many thanks

Cheers2u

 

  • I think I found the solution. Here's the steps:

     - open the .cfg

    - just under the message.cfg tab there is an arrow you click

    - then select UIA -> Services -> ServiceMgr

    - then change TransportType_ETHERNET to TransportType_FILE

    The following in bold is added to the .cfg file

    var ServiceMgr = xdc.useModule('ti.uia.runtime.ServiceMgr');

    ServiceMgr.topology = ServiceMgr.Topology_MULTICORE;

    ServiceMgr.transportType = ServiceMgr.TransportType_FILE;

    Now to see if it dumps the logs.

  • We’re closing out this old thread. If you feel there is more discussion on the topic, please feel free to "Reply".