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.

Using the latest NDK with a custom C6455 board

Other Parts Discussed in Thread: SYSBIOS

HI I have a question regarding using the latest NDK with a C6455 custom board in CCSv5.4.  I'm fairly new to sys\bios, ndk and the C6455.  I'm trying to get the NDK examples running on our custom C6455 board.  I'm having a little trouble understand which drivers I can use, have to modify, etc.

I understand that the NSP ships with drivers for the OMAP138.  Would it be enough to rebuild those using xdc and config.bld for the C64 target?

I've also found this post http://e2e.ti.com/support/embedded/bios/f/355/t/199858.aspx which talks about migrating from ndk 2.0 to ndk 2.21.  Would this be the correct approach to take?  Would there be functions in some of the other files that I would have to modify?  Would I have to rebuild the c6455 driver from ndk2.0.0.0 to work with sys\bios and the latest NDK?  How would that be done.

Thanks!

  • Hi Andrew Olson1,

    Andrew Olson1 said:
    I understand that the NSP ships with drivers for the OMAP138.  Would it be enough to rebuild those using xdc and config.bld for the C64 target?

    I'm not sure how different these 2 drivers are, they may be similar but I would recommend to stick with the 6455 driver from NDK 2.0.0 (that's the latest version of the 6455 driver).

    Andrew Olson1 said:
    I've also found this post http://e2e.ti.com/support/embedded/bios/f/355/t/199858.aspx which talks about migrating from ndk 2.0 to ndk 2.21.  Would this be the correct approach to take?  Would there be functions in some of the other files that I would have to modify?  Would I have to rebuild the c6455 driver from ndk2.0.0.0 to work with sys\bios and the latest NDK?  How would that be done.

    As you found in that post, you need to modify it and rebuild in order to use it with BIOS 6.x. I think the main issue is there are some BIOS 5.x APIs that are being referenced that are unneeded, and some interrupt related code that may need to change.

    You could use the NSP that you have to rebuild it and build it for C64 as you guessed.  You might run into some hurdles, but you can still try.

    Probably, the easiest way is to copy the files into your project and rebuild them like that.

    Andrew Olson1 said:
      I'm trying to get the NDK examples running on our custom C6455 board.

    One suggestion is to build and run the 6455 client example that ships in NDK 2.0.0.  The example will be for BIOS 5.x and will use the BIOS 5.x compatible driver that shipped in NDK 2.0.0.  this example works out of the box on a 6455 board, so doing this could help you validate that driver on your custom board.  Of course, it means that you would need to port the NDK 2.0.0 client project (made for CCS 3.x) to CCS 5.x (basically create a new project in CCS 5 and then bring all of the client example files, compiler and linker settings into the CCS 5.x project).

    ]Steve

  • Hi Steve,

    Thanks for the help. 

    Here's my understanding of your response.  In order to use the 6455 driver from ndk2.0.0 with bios 6 and the latest ndk, I should import the driver files into my project, change some of the APIs to the bios 6 equivalent, setup ndk not to use the omap driver and then build?  Would I have to rebuild the library(that is referenced in the post I linked) or does building my project handle that?

    And then for using the example straight from ndk2.0.0, I should import the example into ccs5, make the linker, compiler settings are correct, and then build?

    One more question.  Does the driver initialize the necessary hardware(EMAC,MDIO,etc) or do I need to create an initialize function that does that before sysbios is started?  It looks like there is a function in dsk6455.c that does this initial setup.  When I migrate to my board, should I add additional initialization to this function?

    Thanks again.

  • Andrew,

    As we discussed over private email, yes, the above understanding is correct.

    Steve