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.

AM2634: error in SYSCFG generated code with SDK 09_01_00_41

Part Number: AM2634

Hi, experts,

While using SYSCFG with SDK 09_01_00_41, in the generated code, the index of assigned array is null for IPC.

I have tested to get SYSCFG generated code in different ways, and get different results, as below.

1. Build ipc_rpmsg_echo_am263x-cc_r5fss0-0_freertos_ti-arm-clang in CCS, gIpcSharedMem is used for vring allocation, and correct index is assigned to each vring.

2. Build ipc_rpmsg_echo_am263x-cc_system_freertos_nortos in CCS,  gIpcSharedMem is used for vring allocation, and correct index is assigned to each vring.

3. Build r5fss0-0_freertos with makefile,  gIpcSharedMem is used for vring allocation, but no index is assigned to each vring, it is bland and the compiling stopped with error.

4. Build system_freertos_nortos with makefile, gIpcSharedMem is used for vring allocation, and correct index is assigned to each vring.

5. Open standalone SYSCFG in Windows, start a new design with SDK 09_01_00_41, add IPC, in the generated code, gIpcSharedMem is used for vring allocation, but no index is assigned to each vring, and no buffer is assigned to RX vrings.

6. Open standalone SYSCFG in Windows, start a new design with SDK 09_00_00_35, add IPC, in the generated code, gRPMessageVringMem is used for vring allocation, and correct index is assigned to each vring.

Please help check whether there is something need to be modified to make the generated code in different way consistency.

Thanks.


  • Hi Fan Zhang,

    I have started looking into the query. I will try the same on my end and get back with an update soon.

    Regards,

    Shaunak

  • Hi Fan Zhang,

    I confirmed it with the SDK team that this is the expected behavior.

    1. Build ipc_rpmsg_echo_am263x-cc_r5fss0-0_freertos_ti-arm-clang in CCS, gIpcSharedMem is used for vring allocation, and correct index is assigned to each vring.
    3. Build r5fss0-0_freertos with makefile,  gIpcSharedMem is used for vring allocation, but no index is assigned to each vring, it is bland and the compiling stopped with error

    Here, the systems projects are intended to be built as a multicore systems project rather than building them for single cores. When using makefiles, the command given below is expected to be used, instead of using the make command for R5Fss0-0 core only.

    make -s -C examples/drivers/ipc/ipc_rpmsg_echo/am263x-cc/system_freertos_nortos

    When building with CCS, when you import the project, you will be given 5 check-boxes, 4 for each R5F core and one for the system project. When you select the systems project, the other 4 get unchecked automatically. This is to ensure that the example gets built as a systems project.

    5. Open standalone SYSCFG in Windows, start a new design with SDK 09_01_00_41, add IPC, in the generated code, gIpcSharedMem is used for vring allocation, but no index is assigned to each vring, and no buffer is assigned to RX vrings.

    6. Open standalone SYSCFG in Windows, start a new design with SDK 09_00_00_35, add IPC, in the generated code, gRPMessageVringMem is used for vring allocation, and correct index is assigned to each vring.

    In the latest 09.01 SDK, IPC was updated and all the examples that were modified have been tested by the team before release. So customers shouldn't face any issues as far as functionality of the example is concerned.

    Regards,

    Shaunak

  • Hi, Shaunak,

    Thanks for the confirmation.

    5. Open standalone SYSCFG in Windows, start a new design with SDK 09_01_00_41, add IPC, in the generated code, gIpcSharedMem is used for vring allocation, but no index is assigned to each vring, and no buffer is assigned to RX vrings.

    6. Open standalone SYSCFG in Windows, start a new design with SDK 09_00_00_35, add IPC, in the generated code, gRPMessageVringMem is used for vring allocation, and correct index is assigned to each vring.

    In the latest 09.01 SDK, IPC was updated and all the examples that were modified have been tested by the team before release. So customers shouldn't face any issues as far as functionality of the example is concerned.

    Regarding to difference in SYSCFG GUI, how about customizing the configuration based on difference use cases? If starting a new configuration for a customer project, no index assigned will lead to compile error, as above test No, 5.

    Thanks.

  • Hi Fan Zhang,

    Regarding to difference in SYSCFG GUI, how about customizing the configuration based on difference use cases? If starting a new configuration for a customer project, no index assigned will lead to compile error, as above test No, 5.

    Yes you are right. I will raise a bug internally for the same (MCUSDK-12915). If a customer starts with an Empty project, to avoid this error, they will have to enable syscfg on all the cores, which shouldn't be the case. Thanks for pointing this out.

    Regards,

    Shaunak

  • Hi, Shaunak,

    Thanks.