• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Digital Signal Processors (DSP) » C6000 Multicore DSP » C64x Multicore DSP Forum » CSL_srioLsuSetup and SRIO
Share
C6000 Multicore DSP
  • Forums
  • Announcements
Options
  • Subscribe via RSS
Training Available
TI provides self-paced online training that introduces the primary components of the KeyStone II family of SoC devices.

  • KeyStone II SoC Overview >
  • KeyStone II Software Overview >
  • KeyStone II ARM Cortex-A15 Corepac Overview >
  • More Information >
  • Check out
    Multicore Mix blog
    • $core_v2_blog.Current.Name

      It’s our second anniversary, but you get the present!

      Posted 5 days ago
      by Lindsey Bare
      It’s hard to believe it’s already been two years...
    • $core_v2_blog.Current.Name

      Limited time offer: Save $100 on Keystone-based EVM!

      Posted 17 days ago
      by tscheck
      Have you been thinking about ordering a TI Keystone-based EVM...
    • $core_v2_blog.Current.Name

      Imagine the impact…TI’s KeyStone SoC + HP Moonshot

      Posted 29 days ago
      by Sanjay35057
      Last week, market leader Hewlett Packard announced a huge change...

    Forums

    CSL_srioLsuSetup and SRIO

    This question is answered
    Joshua Hintze
    Posted by Joshua Hintze
    on May 11 2009 13:19 PM
    Intellectual370 points

    I have a C6474 evm board with two seperate CPU that are connected together through SRIO Port 1. I have found a pretty nice example of doing Direct I/O using the CSL API that I understand pretty much everything in it now (at a high level of course). One thing that I don't quite understand is this section of code...

     

        for(index=0; index<0x10000; index++) {
        /* Configure the LSU1 and start transmission */
        lsu_no = SELECTED_LSU;
        CSL_srioLsuSetup (hSrio, &lsu_conf, lsu_no);

        /* Wait for the completion of transfer */
        response.index = lsu_no;
        do {
            CSL_srioGetHwStatus (hSrio, CSL_SRIO_QUERY_LSU_BSY_STAT, &response);
        }while(response.data == 1);
        }

     

    Notice the for loop goes 0x10000 times. I figured this meant that it was sending the message 0x10000 times. So when I removed the for loop (or reduced it to 1) the transfer is never received on the Target side. Anybody have any insight on why the transfer wouldn't make it across the link without sending it a couple times. I've noticed that I can reduce the for loop to 5 times and then it will make it but anything less it doesn't.

     

    Thanks,

    Josh

     

    SRIO C6474 CSL
    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    All Replies
    • Eddie3909
      Posted by Eddie3909
      on Feb 17 2010 10:36 AM
      Verified Answer
      Verified by TimHarron
      Mastermind8070 points

      Hi Josh

      I was able to set the loop to 0x1 and have it work. Check your memory map. Mine had the shared buffer pointer set as

      #define DST ((Uint8 *)0x1088d000)

      Then look at your .map file. In my build, L2 is almost used up and may have overflowed into the memory used for the target SRIO buffer 0x1088d000. You may have to move that buffer to a new location if you added more code.

       

               name            origin    length      used     unused   attr    fill
      ----------------------  --------  ---------  --------  --------  ----  --------
        VECS                  00e00000   00000200  00000000  00000200  RWIX
        L1P                   00e00200   00007dff  00000000  00007dff  RWIX
        L1D                   00f00000   00007fff  00000000  00007fff  RWIX
        L2                    10880000   001effff  0000cd20  001e32df  RWIX
        SDRAM                 80000000   00800000  00000000  00800000  RWIX

      I changed the link.cmd to seperate all sections from the L2 used for the SRIO buffer.

         /* Use global addresses for L2 */
         L2:      o=0x10800000 l=0x0080000   // core 0 L2
         L2_SRIO: o=0x10880000 l=0x0080000   // core 0 L2 For SRIO buffers.

      Cheers

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Joshua Hintze
      Posted by Joshua Hintze
      on Feb 17 2010 13:15 PM
      Intellectual370 points

      Thank you,

       

      I haven't looked at this problem for a long time, but its good to know you got it working.

       

      Josh

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • tarik taro
      Posted by tarik taro
      on Apr 12 2010 09:53 AM
      Prodigy80 points

      dear community

      i m really in SRIO and i don't know how to handle a real difficult situation.in fact, i wanted to  create a library and i ve added 3 file .c but when i build the project

      i have this error and i don't know what does it mean!!

      ----------------------------  tarik.pjt - Debug  -----------------------------
      [LSU_configtrans.c] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -pdsw225 -fr"C:/CCStudio_v3.3/boards/evmc6474_v1/csl_C64742/example/srio/essai/tarik/Debug" -d"_DEBUG" -mv6400 -@"../../essai/tarik/Debug.lkf" "LSU_configtrans.c"
      "C:/CCStudio_v3.3/C6000/csl/include/csl_chiphal.h", line 267: fatal error: #error NO CHIP DEFINED (use -dCHIP_XXXX where XXXX is chip number, i.e. 6201)
      1 fatal error detected in the compilation of "LSU_configtrans.c".
      Compilation terminated.

       

      what can i do to overcome this situation?

       

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Eddie3909
      Posted by Eddie3909
      on Apr 13 2010 10:44 AM
      Mastermind8070 points

      Hi

      What its meant to me is that CCS pre-processor includes are not pointing to the CSL package for your device.

      Also check to see what device is defined. i.e. CHIP_C6474, CHIP_C6472, etc.

      Cheers

      Eddie

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • tarik taro
      Posted by tarik taro
      on Apr 13 2010 17:16 PM
      Prodigy80 points

      HI

      thanks for your advice,the probleme is resolved.in fact ,the CCS pre-processor was not pointing to the CSL package.

      cheers

      tarik

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • le oanh
      Posted by le oanh
      on Mar 23 2012 05:23 AM
      Prodigy100 points

      Hi!

      how to configure BIOS/DSP for c6474 by using rtdx and srio. Example of CSL srio c6474 does not includes BIOS/DSP configure, I want to use new configure and link.cmd for RTDX, BIOS.

      if i use configure BIOS/DSP of swi examples at C:\CCStudio_v3.3\bios_5_33_01\packages\ti\bios\examples\basic\swi\evm6747, the SRIO is not to work.

      Thank

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Eddie3909
      Posted by Eddie3909
      on Mar 23 2012 11:14 AM
      Mastermind8070 points

      Hi Le

      Use the DIO library instead. Its pretty easy to use.

      http://processors.wiki.ti.com/index.php/DIO_Library

      There are examples that are very helpful in the lib. Also check the DIO library html documentation in \doc\html\main.html and click on the modules tab, then select TST. You'll get a complete list of the example code.

      Cheers

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    TI E2E™ Community
    • Support Forums
    • Blogs
    • Videos
    • Groups
    • Site Support & Feedback
    • Settings
    TI E2E™ Community Groups
    • TI University Program
    • Make the Switch
    • Microcontroller Projects
    • Motor Drive & Control
    Other Communities
    • Deyisupport
    • Designsomething.org
    • beagleboard.org
    • TI on Element 14
    • TI on TechXchangeSM
    Other Technical & Support Resources
    • WEBENCH® Design Center
    • Product Information Centers
    • Technical Documents
    • TI Design Network
    • TI Technical Articles
    • TI Training

    All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.

    Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

    Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
    TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

    TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
    embedded processors, along with software, tools and the industry’s largest sales/support staff.

    © Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
    Trademarks | Privacy Policy | Terms of Use