Srio_Socket Struct Reference

The structure describes the SRIO SOCKET. More...

Data Fields

Srio_ListNode links
 Links to other sockets.
Srio_SocketState state
 Socket Valid.
Srio_SocketType type
 Socket type.
uint16_t isRawSocket
 The flag indicates if the socket is operating in RAW or NORMAL Mode.
Srio_DriverInstptr_SrioDrvInst
 Pointer to the SRIO driver instance.
void * semHandle
 Semaphore Handle associated with the socket.
uint16_t blockingSocket
 Sockets can be made blocking or non-blocking. By default all sockets are blocking unless modified through the socket options API.
uint16_t sockIndex
 Socket Index which points to the corresponding entry in the GLOBAL SRIO MCB which had been allocated for this purpose.
uint16_t mapIndex
 Map Index. Each SOCKET is mapped to an entry in the MAP table. which maps incomming message to the appropriate CPPI queue.
Srio_SockAddrInfo addrInfo
 Local binding information.
uint16_t maxPendingPackets
 This is the max number of pending packets which can be enqueued in the SRIO socket. Packets received after this limit is exceeded are dropped.
SRIO_LSU_TRANSFER lsuTransfer
 LSU Transfer Information: This is applicable only for DIO sockets.
SRIO_LSU_TRANSFER doorbellTransfer
 Doorbell LSU Transfer Information: This is applicable only for DIO sockets.
uint8_t dioTransId
 DIO Transaction Identifier: Applicable only for DIO sockets. A value of 0xFF implies that there is no outstanding transaction pending.
uint8_t dioContext
 DIO Context Bit: Applicable only for DIO sockets. A value of 0xFF implies that there is no outstanding transaction pending.
uint8_t dioCompletionCode
 DIO Completion Code: This is the completion code for the last pending transaction.
Srio_SockDataPacketpendingPkts
 List of all pending data packets available on the socket.
Srio_SockDataPacketfreePkts
 List of all free data packets available on the socket. This list is initialized when is a socket is created with all the memory upfront. Packets received are dequeued from this list and placed into the pendingPkts list above.
void(* rawRxFreeDrvBuffer )(Srio_DrvBuffer hDrvBuffer)
 Raw Receive Driver Buffer cleanup API to be called if driver buffers associated with the socket need to be cleaned up. This can happen in the case of errors or if the sockets are getting closed and there is still some pending data available in the socket lists.
uint32_t ccRxErrorCounter
 Completion Code Error Counter. This counter is incremented to keep track of error counters detected in the buffer descriptor when a packet is received.
uint32_t rxBufferOverrun
 Receive buffer overrun counters are valid only for normal mode sockets and are incremented because the OSAL layer was unable to allocate memory for the received packet.
uint32_t sockRxOverrun
 Each socket is programmed to keep only a "configurable" number of packets. This error counter indicates that the socket receive buffers were overrun and there was no place to receive the new packet.

Detailed Description

The structure describes the SRIO SOCKET.

The structure is used to store all the SRIO socket information which is required to send and receive data.


The documentation for this struct was generated from the following file:

Copyright 2012, Texas Instruments Incorporated