SPRACY6 July   2021 DRA821U , DRA821U-Q1 , DRA829J , DRA829V , DRA829V-Q1 , TDA4VM , TDA4VM-Q1

 

  1.   Trademarks
  2. Introduction
    1. 1.1 SYSFW
    2. 1.2 TISCI
    3. 1.3 TISCI Client or SciClient
    4. 1.4 TISCI Server or SciServer
    5. 1.5 Acronyms Used in This Document
  3. Target Audience
  4. MCU1_0 Role in Jacinto7 SDK V7.1+
  5. TISCI Client and Server on TI-RTOS
    1. 4.1 J7 SDK Download
    2. 4.2 SciClient Driver Location
    3. 4.3 TISCI Server Initialization Example
    4. 4.4 Integration Guide
      1. 4.4.1 Semaphore
      2. 4.4.2 Interrupts Registration
      3. 4.4.3 Interrupts Handling
      4. 4.4.4 User Tasks Registration
      5. 4.4.5 User Tasks Processing
  6. Configurations in DaVinci
    1. 5.1 DaVinci Developer
    2. 5.2 DaVinci Configurator Pro
    3. 5.3 Resource
    4. 5.4 Events
      1. 5.4.1 Event for High Priority Requests
      2. 5.4.2 Event for Normal Priority Requests
    5. 5.5 SciServer User Tasks
      1. 5.5.1 High Priority User Task
      2. 5.5.2 Normal Priority UserTask
    6. 5.6 Synchronization Between Sciserver User Tasks
      1. 5.6.1 Configure the Resource for High Priority User Task
      2. 5.6.2 Configure the Resource for Normal Priority User Task
    7. 5.7 Sciserver Interrupts
      1. 5.7.1 MCU Domain Navigation System High Priority Interrupts
      2. 5.7.2 Main Domain Navigation System High Priority Interrupts
      3. 5.7.3 MCU Domain Navigation System Normal Priority Interrupts
      4. 5.7.4 Main Domain Navigation System Normal Priority Interrupts
  7. AUTOSAR TISCI Client
    1. 6.1 TISCI Client Registration in AUTOSAR
  8. AUTOSAR TISCI Interrupts Handling
    1. 7.1 MCU Domain Navigation System High Priority Interrupts
    2. 7.2 Main Domain Navigation System High Priority Interrupts
    3. 7.3 MCU Domain Navigation System Normal Priority Interrupts
    4. 7.4 Main Domain Navigation System Normal Priority Interrupts
  9. AUTOSAR TISCI User Tasks Processing
    1. 8.1 High Priority User Task Initialization
    2. 8.2 High Priority User Task Runnable
    3. 8.3 Normal Priority User Task Initialization
    4. 8.4 Normal Priority User Task Runnable
  10. TISCI Server Validation in AUTOSAR
    1. 9.1 Boot App
    2. 9.2 Boot Task Configuration
    3. 9.3 Boot App in AUTOSAR
      1. 9.3.1 Boot App Launch
      2. 9.3.2 Boot App Implementation
  11. 10PDK Libraries Used in AUTOSAR
  12. 11R5F Configurations Needed for AUTOSAR
    1. 11.1 Memory Layout for Cortex-R5F
    2. 11.2 R5F Cache Configuration

TISCI Client Registration in AUTOSAR

Below is the example of where we put the TISCI client registration (Board_sysInit()) in AUTOSAR.

void Brs_PreMainStartup(void)
{
  uint32 coreID;

  /* Relocate Vectors to ATCM, Please refer to Other Topics in this doc */
  memcpy((void *)0, (void *)_OS_EXCVEC_CORE0_CODE_START, _OS_EXCVEC_CORE0_CODE_LIMIT);

  /* some code are not shown here */

  Board_sysInit();

  main();
}

Where Board_sysInit() can be defined by taking reference from the implementation at $J7SDK/ti-processor-sdk-rtos-j721e-evm-xx_xx_xx_xx/pdk_jacinto_xx_xx_xx_xx/packages/ti/board/src/j721e_evm/board_init.c functionBoard_sysInit() and PDK’s public GIT here.

static int Board_sysInit(void)
{
    int status = 0;
    int ret;
    Sciclient_ConfigPrms_t config;

    if(gBoardSysInitDone == 0)
    {
        Sciclient_configPrmsInit(&config);

        ret = Sciclient_init(&config);
        if(ret != 0)
        {
            status = -1;
        }

        if(status == 0)
        {
            gBoardSysInitDone = 1;
        }
    }

    return status;
}