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.

TMS320C6678: Switch between two ports with one LSU and SRIO LLD DIO Socket

Part Number: TMS320C6678

Hallo,

is it posible to change the OutportID in SRIO LLD driver from a DIO socket after binding to this socket.

I got the problem that i create a socket and after binding to this socket i reserve a LSU for the DIO communication. I have 8 LSUs (one for every Core) but now the core must be able to switch between port0 and port2.

how can i realise this do you have any ideas?

Thanks 

  • Fatih,

    Essentially OutputID is set in LSU register 4, which corresponds to

    CSL_SRIO_SetLSUReg4 (gSRIODriverMCB.SRIO_GLOBAL_HANDLE, ptr_srioSocket->mapIndex,
                                ptr_DioAddrInfo->dstID,
                                ptr_srioSocket->lsuTransfer.srcIDMap,
                                ptr_srioSocket->lsuTransfer.idSize,
                                ptr_srioSocket->lsuTransfer.outPortID,
                                ptr_srioSocket->lsuTransfer.priority,
                                ptr_srioSocket->lsuTransfer.xambs,
                                ptr_srioSocket->lsuTransfer.supInt,
                                ptr_srioSocket->lsuTransfer.intrRequest);
    in Srio_sockSend_DIO().

    Have you tried below to update the OutportID after it's bound to the socket:

       Srio_SockHandle        srioSocket[SRIO_DIO_LSU_ISR_NUM_SOCKETS];

       Srio_Socket*        ptr_srioSocket;

       ptr_srioSocket = (Srio_Socket *)srioSock[sockIdx];

       ptr_srioSocket->lsuTransfer.outPortID = newOutportID;

       Srio_sockSend_DIO(srioSocket[sockIdx], srcDataBufPtr[srcDstBufIdx], SIZE_DIO_PACKET, (Srio_SockAddrInfo*)&to)

    Regards,
    Garrett