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.

CCS doesn't find my custom platform definitions

Other Parts Discussed in Thread: OMAP-L138, SYSBIOS, OMAPL138, CCSTUDIO

I used CCS5.3's Platform wizard to create a custom RTSC platform definition.  It shows up in the default location CCS presented me when I created it (~/RTSC/platforms/PlatformName) and the contents of the generated package look reasonable (to me at least), but I can't seem to get CCS recognize it.  In the project's Properties -> General -> RTSC window if I click on the Platform pulldown I see a momentary dialog box pop up that says it's scanning ~/RTSC/platforms, but the platform I created doesn't show up in the list of available platforms.  I get the same behavoir when creating a new project.  The board is OMAP-L138 based, and the problem occurs when defining a custom platform for either the ARM or DSP the side.  I tried explicitly adding my home directory from the Package Repository Path Browser (Tools -> RTSC -> Path), but that didn't help.  Any insight into what I'm doing wrong would be greatly appreciated.

Thanks,

John Filo

  • John,

    I get a similar thing as you in my custom platform. However, in my case it is probably different: mine was created a long time ago and I have been using it with progressive releases of CCS - the last one was CCSv5.4. This in fact rendered it unusable with CCSv5.3 due to the newer tools.

    If you can think that at a certain point you used a newer set of tools with your platform, that may explain why you can't see it anymore in v5.3. Inside the package, check the file <package.mak> and see if the tool version is the same as the one installed. For example, the platform my CCSv5.3 does not recognize has:

    ifneq (clean,$(MAKECMDGOALS))
    C:/CCSv5_4_0_00091/xdctools_3_25_00_48/packages/xdc/utils.js:
    package.mak: C:/CCSv5_4_0_00091/xdctools_3_25_00_48/packages/xdc/utils.js

    I just created another one with v5.3 and it says:

    ifneq (clean,$(MAKECMDGOALS))
    C:/CCSv5_3_0_00090/xdctools_3_24_05_48/include/utils.tci:
    package.mak: C:/CCSv5_3_0_00090/xdctools_3_24_05_48/include/utils.tci

    The workaround would be to install a newer XDCtools that corresponds or supersedes the one used by the platform. Keep in mind that usually updates are also required for other components such as SYSBIOS, IPC, etc.

    Hope this helps,

    Rafael

  • Rafael,

    Thanks for the response.  I think I have an unrelated problem.  I was running 5.2 about a year ago, but I've been running 5.3 since shortly after it was released, and don't have any 5.2 workspaces lying around.  Furthermore, I don't have any platforms that were created using 5.2.  In fact, this is the first time I ever tried to create a custom platform.   If I look in the generated platform directory it seems like it generated successfully (a .zip file was generated that has what appears to contain all the by-products of the platform build).  But for some reason, when CCS generates its list of candidate platforms they don't show up.  I guess I'm wondering what CCS matches on when it generates the list of possible platforms?  The only items in the resulting Platform.xdc that seem like they would contribute to whatever matching algorithm is used are

     deviceName: "OMAPL138" and catalogName: "ti.catalog.arm."

    Given that I've never used much less generated a custom platform I guess it makes sense to confirm that my understanding of how I use one is correct.  Below is my understanding of how one creates/uses a new platform definition:

    1) go Tools -> RTSC -> Platform -> New

    2) Provide a package name (default is myBoard)

    3) Provide a Platform Package Repository (default is $HOME/RTSC/packages)

    4) I select "arm" for Device Family and "OMAPL138" for Device name, and click next

    5) Enter clock speed and custom memory configuration, click finish; A dialog box pops and says the platform package was successfully built.  

    At this point, I should be able to bring up the properties for an OMAPL138/ARM project, select General -> RTSC, click on the Platform pulldown and select "myBoard" right? 

    I should add that during the course of generating the package (when I clicked "Next" at the end of step 4 above), CCS emitted the following warning:

    RHINO USAGE WARNING: Missed Context.javaToJS() conversion:
    Rhino runtime detected object [org.eclipse.rtsc.xdctools.ui.wizards.platform.MemorySection@11b6ffa, org.eclipse.rtsc.xdctools.ui.wizards.platform.MemorySection@54aea9] of class java.util.ArrayList where it expected String, Number, Boolean or Scriptable instance. Please check your code for missing Context.javaToJS() call.

    I didn't notice this before because I wasn't running CCS from the command line.  I should also probably provide a few more details about my environment:

    CCS-5.3 on Linux

    SYS/BIOS 6.34.0.12

    XDCTools 3.24.02.30

    Any ideas?

  • Given that I was running an older version of CCS I decided to upgrade to 5.5 last night, and that seems to have resolved my RTSC Platform issue.  Not only can I create new platfrorms, but the old 5.3 based platforms that I created over the last few days now show up as well.

    I did run into what seemed to be a rather obscure error when trying to install other packages (e.g. IPC).  I installed IPC in the default location (under /opt/ti) as root (CCS was also installed as root).  When I started up CCS as myself, it auto-detected the new package, which I told to install, and it gave me the following error:

    An error occurred while installing the items   session context was:(profile=epp.package.cpp, phase=org.eclipse.equinox.internal.p2.engine.phases.Install, operand=null --> [R]com.ti.dvt.analysis.framework 3.5.0.201309051307, action=com.ti.ccstudio.p2.actions.RunCommandAction).   Command failed.

    When I restarted CCS as root and went through the same procedure, the problem went away, and everything is fine.  It does seem like an error message that said something about insufficient permission would have been useful in diagnosing the problem.