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.

RTOS/AM3352: Libraries verification

Part Number: AM3352
Other Parts Discussed in Thread: SYSBIOS

Tool/software: TI-RTOS

So i have been slowely making progress on my custom board, getting things working. however i reached the point where i need to get NDK and FATFS to work and things aren't going as smoothly as i thought they might. i would like some help verifying that i have all the right libraries installed for NDK via NIMU code, FATFS on SDCard via EDMA3. i put together a lot of this information based on example projects and wiki info

i am using

EDMA3LLD 2.12.1,

NDK 2.25.1.11,

SYSBIOS 6.46.2.47.

XDC tools 3.32.1.22 core

GNU compiler 4.9.3

AM335x PDK 1.0.3

my list of libraries are:

"c"
":ti.osal.aa8fg"
":ti.drv.emac.am335x.aa8fg"
":ti.drv.mmcsd.aa8fg"
":ti.transport.ndk.nimu.aa8fg"
":edma3_lld_rm_sample.aa8fg"
":edma3_lld_drv_sample.aa8fg"
":edma3_lld_drv.aa8fg"
":edma3_lld_rm.aa8fg"
":ti.fs.fatfs.aa8fg"
"gcc"
"m"
"nosys"
":os.aa8fg"
"soc"

my library search paths are:

"${NDK_INSTALL_DIR}/packages/ti/ndk/os/lib"
"${PDK_INSTALL_PATH}\ti\osal\lib\tirtos\am335x\a8\release"
"${PDK_INSTALL_PATH}\ti\drv\mmcsd\lib\am335x\a8\release"
"${PDK_INSTALL_PATH}\ti\drv\emac\lib\am335x\armv7"
"${EDMA3_LLD_INSTALL_DIR}\packages\ti\sdo\edma3\drv\sample\lib\am335x-evm\a8\release"
"${EDMA3_LLD_INSTALL_DIR}\packages\ti\sdo\edma3\rm\sample\lib\am335x-evm\a8\release"
"${EDMA3_LLD_INSTALL_DIR}\packages\ti\sdo\edma3\drv\lib\a8\release"
"${EDMA3_LLD_INSTALL_DIR}\packages\ti\sdo\edma3\rm\lib\am335x-evm\a8\release"
"${PDK_INSTALL_PATH}\ti\transport\ndk\nimu\lib\am335x\a8\release"
"${PDK_INSTALL_PATH}\ti\fs\fatfs\lib\a8\release"
"${BIOS_CG_ROOT}/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/fpu"
"$(BIOS_INSTALL_PATH)/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/fpu"
"${PDK_INSTALL_PATH}/ti/starterware/binary/soc/lib/am335x-evm/a8/release/gcc"

  • The RTOS team have been notified. They will respond here.

  • Hi cobsonchael,

    AM335x PDK 1.0.3 is quite old. The latest PDK 1.0.7 is available from Processor SDK 4.0, software-dl.ti.com/.../index_FDS.html

    The release note lists all dependent tools: processors.wiki.ti.com/.../Processor_SDK_RTOS_Release_Notes

    The libraries and paths are auto linked/found after you select Products and Repositories in CCS -> Properties ->CCS General ->RTSC.

    Regards, Garrett
  • when i first started this project that was what i found. i will update

    and i still need verification of what libraries i need and which i don't.

    when i first set this up, and i have the PDK checked in the RTSC tab, i was still getting a lot of linking errors until i specified the libraries listed and then it would link. is that expected with the older PDK and the new PDK fixes that or am i having some kind of issue with the PDK and any paths it sets up when installed?
  • I am not sure which exact directory the error points to, but yes CCSv7.x is essential as the release is not verified with CCSv6.1.3.

    Regards, Garrett
  • so how about taking a crack at answering this post:

    ...

    and i still need verification of what libraries i need and which i don't.

    when i first set this up, and i have the PDK checked in the RTSC tab, i was still getting a lot of linking errors until i specified the libraries listed and then it would link. is that expected with the older PDK and the new PDK fixes that or am i having some kind of issue with the PDK and any paths it sets up when installed?
  • Do you have PDK and other components installed in default c:/ti directory? if not, you need add the paths in CCS ->Window->Preference->Code Composer Studio->Products so they can be discovered.
  • i updated to CCSv7.2 and tried again to create projects and all i get is:

    Detected Test Project: MMCSD_FatfsConsole_skAM335x_DMA_armExampleProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MMCSD_bbbAM335x_armTestproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MMCSD_bbbAM335x_DMA_armTestproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MMCSD_bbbAM335x_EMMC_armTestproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MMCSD_bbbAM335x_EMMC_DMA_armTestproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MMCSD_evmAM335x_armTestProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MMCSD_evmAM335x_DMA_armTestProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MMCSD_icev2AM335x_armTestproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MMCSD_icev2AM335x_DMA_armTestproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MMCSD_skAM335x_armTestproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MMCSD_skAM335x_DMA_armTestproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MCSPI_BasicExample_icev2AM335x_armExampleProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MCSPI_SlaveMode_MasterExample_bbbAM335x_armExampleProject

    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MCSPI_SlaveMode_MasterExample_icev2AM335x_armExampleProje
    ct
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MCSPI_SlaveMode_SlaveExample_bbbAM335x_armExampleProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MCSPI_SlaveMode_SlaveExample_icev2AM335x_armExampleProjec
    t
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MCSPI_SlaveMode_MasterExample_iceAMIC110_armExampleProjec
    t
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MCSPI_SlaveMode_SlaveExample_iceAMIC110_armExampleProject

    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MCSPI_BasicExample_icev2AM335x_armTestProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MCSPI_SerialFlash_Dma_evmAM335x_armTestProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: UART_BasicExample_bbbAM335x_armExampleProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: UART_BasicExample_evmAM335x_armExampleProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: UART_BasicExample_icev2AM335x_armExampleProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: UART_BasicExample_skAM335x_armExampleProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: UART_BasicExample_iceAMIC110_armExampleProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: UART_BasicExample_bbbAM335x_armTestProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: UART_BasicExample_Dma_evmAM335x_armTestProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: UART_BasicExample_evmAM335x_armTestProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: UART_BasicExample_icev2AM335x_armTestProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: UART_BasicExample_skAM335x_armTestProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: UART_BasicExample_iceAMIC110_armTestProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: usb_dev_msc_evmAM335x_arm_project
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: usb_host_msc_evmAM335x_arm_project
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: FATFS_Console_evmAM335x_armExampleProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: FATFS_Console_icev2AM335x_armExampleProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: OSAL_BasicExample_evmAM335x_armTestProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_BasicExample_bbbAM335x_armExampleproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_BasicExample_evmAM335x_armExampleproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_BasicExample_icev2AM335x_armExampleproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_BasicExample_skAM335x_armExampleproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_CCLinkMaster_bbbAM335x_armExampleproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_CCLinkMaster_evmAM335x_armExampleproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_CCLinkMaster_icev2AM335x_armExampleproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_CCLinkMaster_skAM335x_armExampleproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_CCLinkSlave_bbbAM335x_armExampleproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_CCLinkSlave_evmAM335x_armExampleproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_CCLinkSlave_icev2AM335x_armExampleproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_CCLinkSlave_skAM335x_armExampleproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_FtpExample_bbbAM335x_armExampleproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_FtpExample_evmAM335x_armExampleproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_FtpExample_icev2AM335x_armExampleproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_FtpExample_skAM335x_armExampleproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_ICSS_BasicExample_icev2AM335x_wSoCLib_armExampleproj
    ect
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_ICSS_BasicExample_iceAMIC110_wSoCLib_armExampleproje
    ct
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_ICSS_CCLinkMaster_icev2AM335x_wSoCLib_armExampleproj
    ect
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_ICSS_CCLinkSlave_icev2AM335x_wSoCLib_armExampleproje
    ct
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: NIMU_ICSS_FtpExample_icev2AM335x_wSoCLib_armExampleprojec
    t
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    No projects detected
    Project generation complete
    *****************************************************************************
  • cobsonchael,

    Since you are using SYSBIOS/TI RTOS, I am wondering why you are not using the configuration file to include the modules and have opted to link the libraries manually to the project.  There are a couple of critical libraries that are missing in your configuration: The CSL library used by all drivers and the board library (that sets up the clock, prcm, pinmux) for the board.

    Whenever, you are porting to a new platform, we recommend that you first create your custom board library that setups the clocking, prcm and pinmux for the device so that it can access the peripherals/pins that you are trying to read and write from. This has been described in the article here:

     

    
    

    We recently created an application notes that described how to combine multiple drivers provided in Processor SDK RTOS which may be useful for your understanding.App Note for Integrating Multiple Processor SDK RTOS Examples Into One Application


    To include the right set of driver libraries and OSAL libraries using the following syntax in the configuration file :

    /* ================ Driver configuration ================ */
    /* Load the EDMA package */
    var Edma        	= xdc.loadPackage ("ti.sdo.edma3.drv.sample");
    var drv        		= xdc.loadPackage ("ti.sdo.edma3.drv");
    var rm        		= xdc.loadPackage ("ti.sdo.edma3.rm");
    
    
    // Add NDK modules as necessary 
    var Tcp = xdc.useModule('ti.ndk.config.Tcp');
    var Udp = xdc.useModule('ti.ndk.config.Udp');
    
    
    var socType          = "am335x";
    /*use CSL package*/
    var Csl = xdc.loadPackage('ti.csl');
    Csl.Settings.deviceType = socType;
    
    /* Load the Osal package */
    var osType           = "tirtos";
    var Osal             = xdc.loadPackage('ti.osal');
    Osal.Settings.osType = osType;
    Osal.Settings.socType = socType;
    
    /* Load the spi package */
    var I2C             = xdc.loadPackage('ti.drv.i2c');
    I2C.Settings.socType = socType;
    
    /* Load the board package */
    var Board = xdc.loadPackage('ti.board');
    Board.Settings.boardName = "evmAM335x"; // Use the board library for the custom board
    
    /* Load the uart package */
    var UartPackage = xdc.loadPackage('ti.drv.uart');
    
    /* Load the MMCSD package */
    var Mmcsd             = xdc.loadPackage('ti.drv.mmcsd');
    Mmcsd.Settings.socType = socType;
    
    /* Load the fatfs package */
    var Fatfs = xdc.loadPackage('ti.fs.fatfs');
    
    /* Load the emac package */
    var Emac = xdc.loadPackage('ti.drv.emac');
    Emac.Settings.socType = socType;
    
    /* Load the NIMU package */
    var Nimu 		= xdc.loadPackage('ti.transport.ndk.nimu');
    Nimu.Settings.socType  = socType;


  • cobsonchael said:
    i updated to CCSv7.2 and tried again to create projects and all i get is:

    Detected Test Project: MMCSD_FatfsConsole_skAM335x_DMA_armExampleProject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.
    Detected Test Project: MMCSD_bbbAM335x_armTestproject
    The system cannot find the path specified.
    Copying macro.ini
    The system cannot find the path specified.
    0 file(s) copied.

    this indicates that the script didnt locate CCS installation path. Please set environment variable TOOLS_INSTALL_PATH using

    set TOOLS_INSTALL_PATH=C:\ti

    
    

    Can you set TOOLS_INSTALL_PATH and then try again.

  • i am doing most of this without the starterware drivers. i have the clocking and pinmux set up just fine without a library. i have successfully set up the LCDC, UART, SPI, I2C, ECAP in PWM mode, RTC, GPIO, and i am working on the McASP (which i have working in receive at least). so far the only things i need the drivers for are the MMC/SD, FATFS, and ethernet/NDK. so it sounds like i need the CSL library? if i needed that why wouldn't i get any linking errors?

    as for the libraries i was following that article: How to create ARM baremetal CCS project that link to PDK driver libraries using GNU Linker? and it shows to manually include the drivers in the project properties.

    also thank you for the TOOLS_INSTALL_PATH fix, i don't know how i lost that environment variable but that seemed to fix it
  • cobsonchael,

    I am picking this up from where we left off on this issue. Have you been able to able to make progress after including the CSL library. CSL APIs are used by most of the LLD drivers we provide in the PDK package. you seem to have linked to the libraries statically but not invoked the driver which can explain why you don`t see any errors. If you include the headers and invoke the driver open call then the linker will try to link the symbols from the driver libraries when you will start seeing issues. While linking if the linker doesn`t see a need for a symbol it will not built it into the final application binary. Please note that when working with GCC compiler, the order in which the libraries get linked makes a difference.

    Another comment is if you are using TI RTOS and NDK, then your project is not ARM bare-metal CCS project so you don`t need to use the convention defined in that article. In TI RTOS, you can use the .CFG file included in the project and use the convention that I provided in my earlier response.

    Now that your CCS project creation using pdkProjectcreate is working after setting the TOOLS_INSTALL_PATH has been setup, you can setup the MMCSD FATFS project and NIMU example project to refer to how the drivers/Transport is linked and initialized inside the SDK.

    Regards,
    Rahul
  • i did not include the CSL library, as i do not get linking errors, which means i must not need it, as you stated. is the CSL library required to run the FATFS/SDCard drivers or the NIMU drivers? if so, why do i not get linking error when i try to build my project as i certainly have calls to the same setup routines that the PDK example projects do? i do not use any other drivers for the rest of the device.

    is there an error with statically including the libraries? should my project not still work even if the libraries are statically defined? if the order of linking matters, my additional question is: Are my libraries linked in the correct order?

    i have another thread discussing what needs to be done to get the PDK NIMU examples to work for our board. i follow the example for the FATFS/SDCard but i cannot get past:

    gEdmaHandle = (EDMA3_RM_Handle)edma3init(1, &edmaResult);

    if i used 0 as the first parameter i get an _exit, and when i use 1 the routine essentially passes through and i do not get a valid edma handle. this is what prompted me to first make this post.
  • MMCSD aand NIMU driver have CSL dependency. FATFS driver doesn`t have CSL dependency. Have you made calls yo MMCSD driver in your code. If not, as I mentioned the linker will not try link in the driver library or find symbols from CSL library. The link order depends on the way you choose to link the libraries. as you can see from the article in the Processor SDK RTOS FAQ:

    If you link the libraries using linker command file using the following syntax, the driver libraries that are invoked from application need to be linked in first and their dependencies need to be linked in later in the order.

    For Example:

    INPUT(
    
    "C:\ti\pdk_am335x_1_0_6\packages\ti\drv\gpio\test\led_blink\am335x\armv7\bios\src\sysbios\sysbios.aa8fg" "C:\ti\pdk_am335x_1_0_6\packages\ti\drv\gpio\lib\a8\release\ti.drv.gpio.profiling.aa8fg" "C:\ti\pdk_am335x_1_0_6\packages\ti\utils\profiling\lib\a8\release\ti.utils.profiling.aa8fg" "C:\ti\pdk_am335x_1_0_6\packages\ti\board\lib\icev2AM335x\a8\release\ti.board.aa8fg" "C:\ti\pdk_am335x_1_0_6\packages\ti\drv\i2c\lib\a8\release\ti.drv.i2c.aa8fg" "C:\ti\pdk_am335x_1_0_6\packages\ti\drv\uart\lib\a8\release\ti.drv.uart.aa8fg" "C:\ti\pdk_am335x_1_0_6\packages\ti\csl\lib\am335x\a8\release\ti.csl.aa8fg" "C:\ti\pdk_am335x_1_0_6\packages\ti\osal\lib\tirtos\a8\release\ti.osal.aa8fg" "C:\ti\bios_6_46_04_53\packages\gnu\targets\arm\rtsv7A\lib\gnu.targets.arm.rtsv7A.aa8fg" "C:\ti\bios_6_46_04_53\packages\gnu\targets\arm\rtsv7A\lib\boot.aa8fg" "C:\ti\bios_6_46_04_53\packages\gnu\targets\arm\rtsv7A\lib\syscalls.aa8fg" )

    If you are linking the libraries using the CCS project setting or in a make file, we usually add an option --start-group and  ---end-group so that the linker can look for the symbols in a circular manner so that the order doesn`t matter.

    -T $(LINKER_FILE) -Wl,--start-group -l"c" -lrdimon -l"m" -l"nosys" $(BOARD_LIB) $(PERIPHERAL_LIB) $(CSL_INIT_LIB) $(OSAL_LIB) $(ICSS_EMAC_LIB) $(PRUSS_LIB) $(GPIO_LIB) $(CSL_LIB) $(UART_LIB) $(I2C_LIB) $ (MMCSD_LIB) -Wl,--end-group

    Note : For CCS project, this need to be done manually by going to Build Properties- > GNU Linker  (edit flags)

    Please provide link to the other e2e when you want to get out attention. I have pinged the NIMU expert to comment on your question about that example. EDMA is a chip level resource so this should not be board specific issue. Have you tried the same on the EVM for which the example was created.

    Regards,

    Rahul

  • so i changed my project so the libraries are now in the .cfg file which looks like this:

    /* ================ Driver configuration ================ */
    /* Load the EDMA package */
    var Edma = xdc.loadPackage ("ti.sdo.edma3.drv.sample");
    var drv = xdc.loadPackage ("ti.sdo.edma3.drv");
    var rm = xdc.loadPackage ("ti.sdo.edma3.rm");

    var socType = "am335x";
    /*use CSL package*/
    var Csl = xdc.loadPackage('ti.csl');
    Csl.Settings.deviceType = socType;

    /* Load the Osal package */
    var osType = "tirtos";
    var Osal = xdc.loadPackage('ti.osal');
    Osal.Settings.osType = osType;
    Osal.Settings.socType = socType;

    /* Load the MMCSD package */
    var Mmcsd = xdc.loadPackage('ti.drv.mmcsd');
    Mmcsd.Settings.socType = socType;

    /* Load the fatfs package */
    var Fatfs = xdc.loadPackage('ti.fs.fatfs');

    /* Load the emac package */
    var Emac = xdc.loadPackage('ti.drv.emac');
    Emac.Settings.socType = socType;

    /* Load the NIMU package */
    var Nimu = xdc.loadPackage('ti.transport.ndk.nimu');
    Nimu.Settings.socType = socType;



    and my libraries in my project properties looks like this:
    ${TI_PDK_LIBRARIES}
    ${BIOS_LIBRARIES}
    ${NDK_LIBRARIES}
    ${EDMA3_LLD_LIBRARIES}
    c
    gcc
    ":os.aa8fg"
    m
    nosys
    soc

    include paths:
    "${TI_PDK_LIBRARY_PATH}"
    "${BIOS_CG_ROOT}/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/fpu"
    "${NDK_INSTALL_DIR}/packages/ti/ndk/os/lib"
    "${PDK_INSTALL_PATH}/ti/starterware/binary/soc/lib/am335x-evm/a8/release/gcc"
    "${BIOS_LIBRARY_PATH}"
    "${NDK_LIBRARY_PATH}"
    "${EDMA3_LLD_LIBRARY_PATH}"

    i put the os.aa8fg library in there because i am trying to get the NIMU project working and that is how it is in the example projects

    my NIMU post is: e2e.ti.com/.../610850 but that is currently me fighting to understand the function calls and how it works. currently i can't seem to get a straight answer on if my NIMU code is set up correctly (and if not, what do i need to change) to know if i have other issues related to libraries.

    i do not have the EVM board to test with. i am currently at a loss as to why my edma3init isn't working.
  • Hi,

    >> i follow the example for the FATFS/SDCard but i cannot get past:
    >>gEdmaHandle = (EDMA3_RM_Handle)edma3init(1, &edmaResult);
    >>if i used 0 as the first parameter i get an _exit, and when i use 1 the routine essentially passes through and i do not get a valid edma handle

    From the post, e2e.ti.com/.../389427 you should have looked deep into EDMA LLD in the past. It might gets more inputs if you open a new thread on EDMA initialization.

    For the NIMU post you referred, I have updated it and think you probably already resolved the PHY setup issue.

    Regards,
    Garrett
  • so it looks like i have my libraries and include paths correct for the features i want, yes? NDK, FATFS with SDCard and EDMA3? i need a verification or correction

    FYI my edma init has stopping giving me an abort since i implemented the libraries in this fashion, so i got that going for me, which is nice
  • >>so it looks like i have my libraries and include paths correct for the features i want, yes? NDK, FATFS with SDCard and EDMA3? i need a verification or correction
    That's correct. You have 'var socType = "am335x";' defined for each component in you cfg file, which will ensure you call correct libraries. You will see link error if any wrong include path.

    Regards,
    Garrett