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.

MCU-PLUS-SDK-AM243X: AM64x-EVM FreeRtOS with FreeRtOS+FAT integration

Part Number: MCU-PLUS-SDK-AM243X
Other Parts Discussed in Thread: SYSCONFIG

Hello Chaehee Won,
hello Askash Kedia,
did you succeed with integration of FAT in FreeRtOS (e2e.ti.com/.../1123916)

My motivation is, I have similar problem with AM64xx: I need functionality of FreeRtOS+FAT for SD-Card access (see example 'SOC and Board Peripheral ...', 'MMCSD file IO' for SD-Card access using FAT) and of FreeRtOS for dual port ethernet access (see example networking, 'Enet ICSSG Time Aware Shaper').

  • Joerg,

    please follow the steps akash mentioned in the attached post.

    we do not support FreeRTOS+FAT out of the box.

    dual port ethernet access

    can you elaborate this.

    Regards

    Anshu

  • joerg,

    the latest MCU+SDK Documentation outlines usage of FreeRTOS+FAT, Extracts from the link below

    FreeRTOS+FAT is an open source, thread aware and scalable FAT12/FAT16/FAT32 DOS/Windows compatible embedded FAT file system for use with and without the RTOS. In the current integration, only the NO-RTOS form of the library is supported. The FreeRTOS support will be added in a subsequent release. Please refrain from using the FreeRTOS+FAT ported layer for file operations in an RTOS environment as the APIs will not be thread safe.

    In this SDK, FreeRTOS+FAT is integrated to work with the MMCSD driver. The porting layer supports any device (SD/eMMC) connected to the MMCSD ports 0 or 1. There is SysConfig support for the FreeRTOS+FAT integrated module. So, to use the FreeRTOS+FAT in your application, just add the FreeRTOS+FAT module under FILE SYSTEMS in the SysConfig. It will automatically add an MMCSD instance. The underlying media can be selected in the FreeRTOS+FAT SysConfig config. Currently "SD" and "EMMC" can be selected.

    Since the NO-RTOS version of the library is integrated, FreeRTOS+FAT is also used in the Secondary Bootloader application which uses SD card as boot media. You can refer to these examples here for API usage. Most of the initialization is done by the Sysconfig itself.

    https://software-dl.ti.com/mcu-plus-sdk/esd/AM64X/08_06_00_43/exports/docs/api_guide_am64x/FS_FREERTOS_FAT.html

    Hope this helps your development flow.

    Regards

    Anshu

  • Hi Joerg, Anshu,

    This week I saw a support request about FreeRTOS+FAT on the [FreeRTOS forum](https://forums.freertos.org/t/how-many-letters-is-filesystems-filename-allowed)

    I'm the developer/maintainer of the +FAT and the +TCP libraries.

    I was surprised to read that the "FreeRTOS FAT file system doesn't support FreeRTOS". +FAT can be used in a bare-metal stand-alone application, but usually developers will combine it with the FreeRTOS kernel. So that multiple tasks can have concurrent access to the same file systems.

    If your application already includes the FreeRTOS kernel, then it should be very easy to add FreeRTOS support to the +FAT driver: just add the module "ff_locking.c" to your project.

    FreeRTOS+TCP however can hardly be separated from the FreeRTOS kernel: is uses many features of the OS like semaphores and group events. See [+TCP on github](https://github.com/FreeRTOS/FreeRTOS-Plus-TCP)

    If you have any more questions or need for support, you can write a post to FreeRTOS's forum, or email me ( h [dot] tibosch [at] freertos [dot] org ).

    Regards

  • Thanks Hein for these details.