• TI Thinks Resolved

CCS/TMDXIDK5718: UART baremetal example for IPU and DSP

Intellectual 315 points

Replies: 6

Views: 102

Part Number: TMDXIDK5718

Tool/software: Code Composer Studio

Hi,

Can some tell me how to create and run bare metal UART/GPIO example for IPU(M4) and DSP cores in AM5718IDK.

Regards,

Naveen.

  • Hi Naveen,

    Please refer to UART and GPIO user guides:

    For how to create examples, refer to below user guide:


    For baremetal tests, you need to undef USE_BIOS. Check below e2e threads for details:

    Regards,
    Pavel



  • In reply to Pavel Botev:

    Hi Pavel,

    I have tried the all the suggestion earlier. The csl library is supporting for ti rtos not for bare metalk, I suppose.
    I tried to create baremetal application but landed in errors, the diagnostic software is designed for A15 not for M4 and DSP cores.

    Can you tell me how to enable the cache.

  • In reply to Naveen B:

    Naveen,

    Naveen B
    Can you tell me how to enable the cache.

    This section 3.2.3.4 explains about running diagnostic test on Cortex-A15 core 1 (as by default run on Cortex-A15 core 0). This is not applicable for C66X DSP and/or Cortex-M4 IPU.

    A15 is the boot master, and the intend of diagnostic is letting customer to check the HW by simply booting/running a test from master core. If you need to run these diagnostic tests on DSP/IPU, you need to port the code. Refer to below e2e threads for details:

    Check also below user guides for berametal examples on DSP/IPU:

    Regards,
    Pavel



  • In reply to Pavel Botev:

    From the examples, I would suggest you to check below AM571x IDK GPIO C66x example:

    pdk_am57xx_1_0_15/packages/ti/drv/gpio/test/led_blink/am571x/c66/bios/GPIO_LedBlink_idkAM571x_c66xTestProject.txt

    pdk_am57xx_1_0_15/packages/ti/drv/gpio/test/led_blink/src/main_led_blink.c

    pdk_am57xx_1_0_15/packages/ti/drv/gpio/test/led_blink/makefile

    You can try to remove the USE_BIOS flag, thus you will make it berametal example.


    The same is valid for below UART examples:

    pdk_am57xx_1_0_15/packages/ti/drv/uart/test/src/main_uart_test.c

    pdk_am57xx_1_0_15/packages/ti/drv/uart/test/makefile

    pdk_am57xx_1_0_15/packages/ti/drv/uart/example/sample/am57x/c66/bios/UART_BasicExample_idkAM571x_c66xExampleProject.txt

    pdk_am57xx_1_0_15/packages/ti/drv/uart/test/am57x/c66/bios/UART_BasicExample_idkAM571x_c66xTestProject.txt

    pdk_am57xx_1_0_15/packages/ti/drv/uart/test/am57x/c66/bios/UART_BasicExample_idkAM571x_DMA_c66xTestProject.txt

    Regards,
    Pavel



  • In reply to Pavel Botev:

    Dear Pavel,

    I got confused by your response. From last 2 weeks I am working on TI-RTOS SDK for creating the real bare-metal application for Cortex M4 (IPU) and DSP cores. I already tested the basic hello world and TI-RTOS examples. Can you please guide me with the steps, I lost my way with CCS and makefiles. My ultimate goal to is implement bare-metal IPC mechanism on IPU and DSP cores,

    1. How to create bare-metal example(not the hello wolrd) for IPU M4 core

    2. How to create bare-metal example(not the hello wolrd) for DSP core.

    Regards,

    Naveen.

  • In reply to Naveen B:

    Naveen B
    2. How to create bare-metal example(not the hello wolrd) for DSP core.

    You can refer to below GPIO/UART examples and undef USE_BIOS

    GPIO_LedBlink_idkAM571x_c66xTestProject

    UART_BasicExample_idkAM571x_c66xTestProject

    These projects are created with below commands:

    pdk_am57xx_1_0_15/packages$ ./pdkProjectCreate.sh AM571x idkAM571x little gpio all dsp

    pdk_am57xx_1_0_15/packages$ ./pdkProjectCreate.sh AM571x idkAM571x little uart all dsp



    Naveen B
    1. How to create bare-metal example(not the hello wolrd) for IPU M4 core

    Bare-metal examples for IPU M4 are available at:

    pdk_am57xx_1_0_15\packages\ti\csl\example

    Refer to below pointers for more info:

    Regards,
    Pavel