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.

CAN driver for QNX on jacinto7 J721E/DRA829/TDA4VM Evaluation Module

Is there a CAN driver for the QNX BSP available from Jacinto7? There appears to be one CAN driver and sample apps available for the freeRTOS on QNX + RTOS build, under MCUSW. Is it possible to create the RTOS CAN driver alongside the QNX build so that we can send CAN data from MCU_1_0 or MCU_2_1 to QNX running on the A72 core through IPC?

  • Hi Neeraj,

    The TI SDKs do not offer a CAN driver on the A72 for QNX.  Any of the CAN driver code from MCUSW or PDK can be ported to the A72 as needed. 

    The QNX/Blackberry team can also be contacted for status of their support offered for A72 based CAN driver.

    Routing of CAN messaging to A72 is possible, I'll loop in another team member to comment.

    Regards,

    kb

  • Hello,

    Is it possible to create the RTOS CAN driver alongside the QNX build so that we can send CAN data from MCU_1_0 or MCU_2_1 to QNX running on the A72 core

    In SOC we cannot directly send the CAN data from MCU1_0 or MCU2_0 to A72 as they are not connected , have to use shared memory for this.

    Regards

    Tarun Mukesh

  • Hi Tarun & KB,

    Is it possible to replace the firmware in rootfs partition with the firmware build using MCUSW and run QNX from A72 along with the MCUSW build firmware on r5 cores?

    For eg: CAN loopback application build from MCUSW folder and renaming it to the specified firmware name (j7-main-r5f1_0-fw) and replacing the executable in rootfs/lib/firmware.

    Will QNX + this firmware boot up?

    Is there any additional build steps are required to build the application firmware from MCUSW and boot it along with QNX?

    Thanks &regards,

    Neeraj

  • Hi,

    No It doesn't work. That is how the IPC works but not CAN.

    Regards

    Tarun Mukesh

  • Hi Tarun,

    I got this link:

    https://software-dl.ti.com/jacinto7/esd/processor-sdk-rtos-jacinto7/08_06_00_12/exports/docs/mcusw/mcal_drv/docs/drv_docs/demo_boot_app_mcu_rtos_top.html

    The CAN response and Boot loader example application session in this documentation discusses conducting CAN loop back tests in R core while running QNX in A72 core. I created all of the necessary binaries and am attempting to use the SBL boot option with mmcsd.

    It is stated in this documentation that all that is required is to copy the indicated files to the SD card and it should boot; however, while I am able to obtain RTOS prints, I am unable to obtain QNX prints from the MPU.

    Is there anything else I should do, and are there any specific measures I should do to prepare the SD card?

    Best Regards,

    Neeraj.

  • Hi Neeraj,

    e2e.ti.com/.../4506588

    Can boot app is not working as per the document expectations and the team is modifying for the upcoming release.

    In future the expectation is that tertiary boot will be removed along with CAN profiling application and only early CAN response will be present.

    For CAN profiling we have a separate demo CAN profiling application.

    Regards

    Tarun Mukesh

  • Hi Tarun,

    Thanks for the response.

    We are trying to achieve the following:

    1) CAN driver and CAN data being received in R5 (running freeRTOS) either MCU_1_0 or MCU_2_0
    2) QNX running on A72 core
    3) Sharing CAN data between A72 and R5 using IPC mechanism.
    4) Once A72 running QNX receives the CAN data it will be passed on to the HMI application.

    What is available:
    1) IPC application which establish IPC communication between QNX on A72 and R5 cores.
    application path:
    QNX application : /ti-processor-sdk-rtos-j721e-evm-08_06_00_12/psdkqa/qnxfs/tibin/ipc-test

    RTOS application/firmware:/ti-processor-sdk-rtos-j721e-evm-08_06_00_12/targetfs/lib/firmware/pdk-ipc/ipc_echo_test_mcu2_1_release_strip.xer5f

     
    What we need to add:
    1) CAN driver and CAN data along with the IPC application working with QNX on A72 and FreeRTOS on r5.


    Could you help us in identifying the correct way to achieve this.
    1) bring up CAN driver / CAN application similar to IPC in "/ti-processor-sdk-rtos-j721e-evm-08_06_00_12/pdk_jacinto_08_06_00_31/packages/ti/drv/ipc"
    2) CAN and IPC is available as part of mcusw, will the firmware build in mcusw work along with QNX running on A72
    3) any other possible approach?

    Best regards,

    Neeraj.

  • Hello Neeraj,

    IPC is the only way the CAN data on R5 can be sent to A72. 

    1) bring up CAN driver / CAN application similar to IPC in "/ti-processor-sdk-rtos-j721e-evm-08_06_00_12/pdk_jacinto_08_06_00_31/packages/ti/drv/ipc"

    Yes,CAN application along with IPC functionality should meet your requirements. In IPC we have RPMsg end point based protocol to establish the communication between cores so once that needs to be taken care then after we can transmit/receive data between cores.

    other way is to have CAN driver on A72 .

    Regards

    Tarun Mukesh