PDK API Guide for J721E
|
This is CSIRX driver event related configuration parameters and API
Files | |
file | csirx_event.h |
CSIRX event related parameters and API. | |
Data Structures | |
struct | Csirx_EventPrms |
CSIRX event related parameters. More... | |
struct | Csirx_EventStatus |
CSIRX event status parameters. Instance of this structure will passed to the application call-back. More... | |
struct | CsirxDrv_EventObj |
CSIRX event object. More... | |
Functions | |
void | Csirx_eventPrmsInit (Csirx_EventPrms *eventPrms) |
Csirx_EventPrms structure init function. More... | |
int32_t | CsirxDrv_eventGroupRegister (Fdrv_Handle drvHandle, Csirx_EventPrms *eventPrms) |
CSIRX event group registration. More... | |
int32_t | CsirxDrv_eventGroupUnRegister (Fdrv_Handle drvHandle, uint32_t eventGroup) |
CSIRX unregister group event. More... | |
int32_t | CsirxDrv_eventEnable (Fdrv_Handle drvHandle, uint32_t eventGroup, uint32_t eventType) |
Enable the event in event group. More... | |
int32_t | CsirxDrv_eventDisable (Fdrv_Handle drvHandle, uint32_t eventGroup, uint32_t eventType) |
Disable the event in event group. More... | |
Typedefs | |
typedef void(* | CsirxDrv_EventCallback) (Csirx_EventStatus eventStatus, void *appData) |
CSIRX event callback function. More... | |
Macros | |
#define | CSIRX_EVENT_INVALID ((uint32_t) CSL_CSIRXP_NO_EVENT) |
Macro used to specify that event ID is invalid. More... | |
#define | CSIRX_INTR_INVALID ((uint32_t) 0xFFFF0000U) |
Macro used to specify that interrupt number is invalid. More... | |
CSIRX Event Group | |
CSIRX events groups per CSI instance supported. | |
#define | CSIRX_EVENT_GROUP_ERROR ((uint32_t) 0U) |
Event Group: Error Interrupts. Error interrupts event group. More... | |
#define | CSIRX_EVENT_GROUP_MAX |
#define CSIRX_EVENT_INVALID ((uint32_t) CSL_CSIRXP_NO_EVENT) |
Macro used to specify that event ID is invalid.
#define CSIRX_INTR_INVALID ((uint32_t) 0xFFFF0000U) |
Macro used to specify that interrupt number is invalid.
#define CSIRX_EVENT_GROUP_ERROR ((uint32_t) 0U) |
Event Group: Error Interrupts. Error interrupts event group.
#define CSIRX_EVENT_GROUP_MAX |
#define CSIRX_EVENT_TYPE_ERR_FIFO_OVERFLOW_FRONT (CSL_CSIRX_ERROR_IRQS_FRONT_FIFO_OVERFLOW_IRQ_MASK) |
Front FIFO Overflow.
#define CSIRX_EVENT_TYPE_ERR_PAYLOAD_CRC (CSL_CSIRX_ERROR_IRQS_PAYLOAD_CRC_IRQ_MASK) |
Payload CRC Error. CRC error is detected in payload/long packet.
#define CSIRX_EVENT_TYPE_ERR_HEADER_ECC (CSL_CSIRX_ERROR_IRQS_HEADER_ECC_IRQ_MASK) |
Header Un-corrected ECC Error. ECC error is detected in header packet.
#define CSIRX_EVENT_TYPE_ERR_HEADER_CORRECTED_ECC (CSL_CSIRX_ERROR_IRQS_HEADER_CORRECTED_ECC_IRQ_MASK) |
Header Corrected ECC Error. ECC error is detected and corrected in header packet.
#define CSIRX_EVENT_TYPE_ERR_DATA_ID (CSL_CSIRX_ERROR_IRQS_DATA_ID_IRQ_MASK) |
Data ID Error.
#define CSIRX_EVENT_TYPE_ERR_INVALID_ACCESS (CSL_CSIRX_ERROR_IRQS_INVALID_ACCESS_IRQ_MASK) |
Invalid access.
#define CSIRX_EVENT_TYPE_ERR_INVALID_SHORT_PACKET (CSL_CSIRX_ERROR_IRQS_SP_INVALID_RCVD_IRQ_MASK) |
Invalid short packet received.
#define CSIRX_EVENT_TYPE_ERR_LONG_PAYLOAD_NO_HEADER (CSL_CSIRX_ERROR_IRQS_FRONT_LP_NO_PAYLOAD_IRQ_MASK) |
Long packet header received w/o any payload.
#define CSIRX_EVENT_TYPE_ERR_PROT_TRUNCATED_HEADER (CSL_CSIRX_ERROR_IRQS_PROT_TRUNCATED_PACKET_IRQ_MASK) |
Long packet payload received with too or many bytes.
#define CSIRX_EVENT_TYPE_ERR_FRONT_TRUNCATED_HEADER (CSL_CSIRX_ERROR_IRQS_FRONT_TRUNC_HDR_IRQ_MASK) |
Truncated header received.
#define CSIRX_EVENT_TYPE_ERR_FIFO_OVERFLOW_STRM0 (CSL_CSIRX_ERROR_IRQS_STREAM0_FIFO_OVERFLOW_IRQ_MASK) |
Stream 0 FIFO Overflow.
#define CSIRX_EVENT_TYPE_ERR_FIFO_OVERFLOW_STRM1 (CSL_CSIRX_ERROR_IRQS_STREAM1_FIFO_OVERFLOW_IRQ_MASK) |
Stream 1 FIFO Overflow.
#define CSIRX_EVENT_TYPE_ERR_FIFO_OVERFLOW_STRM2 (CSL_CSIRX_ERROR_IRQS_STREAM2_FIFO_OVERFLOW_IRQ_MASK) |
Stream 2 FIFO Overflow.
#define CSIRX_EVENT_TYPE_ERR_FIFO_OVERFLOW_STRM3 (CSL_CSIRX_ERROR_IRQS_STREAM3_FIFO_OVERFLOW_IRQ_MASK) |
Stream 3 FIFO Overflow.
#define CSIRX_EVENT_TYPE_ERR_ALL |
All Error Group interrupts/events mask.
typedef void(* CsirxDrv_EventCallback) (Csirx_EventStatus eventStatus, void *appData) |
CSIRX event callback function.
eventType | Event that occurred |
appData | Callback pointer passed during event register |
void Csirx_eventPrmsInit | ( | Csirx_EventPrms * | eventPrms | ) |
Csirx_EventPrms structure init function.
Note: 'eventPrms' cannot be NULL while calling this function. Also, before call 'Csirx_eventPrmsInit()', 'eventGroup' from 'eventPrms' should be set.
eventPrms | Pointer to Csirx_EventPrms structure. |
int32_t CsirxDrv_eventGroupRegister | ( | Fdrv_Handle | drvHandle, |
Csirx_EventPrms * | eventPrms | ||
) |
CSIRX event group registration.
Register event based on CSIRX channel based and event parameters.
drvHandle | CSIRX driver handle pointer obtained during Fvid2_create() |
eventPrms | CSIRX event parameters. This parameter can't be NULL. |
int32_t CsirxDrv_eventGroupUnRegister | ( | Fdrv_Handle | drvHandle, |
uint32_t | eventGroup | ||
) |
CSIRX unregister group event.
Unregister the event and frees all associated resources.
drvHandle | CSIRX driver handle pointer obtained during Fvid2_create() |
eventGroup | CSIRX driver handle pointer passed during Fvid2_create() Note: This API/IOCTL has be called before calling 'Fvid2_delete()'. |
int32_t CsirxDrv_eventEnable | ( | Fdrv_Handle | drvHandle, |
uint32_t | eventGroup, | ||
uint32_t | eventType | ||
) |
Enable the event in event group.
drvHandle | CSIRX driver handle pointer obtained during Fvid2_create() |
eventGroup | Event group in which desired event is to be enabled. |
eventType | Event/s to be enabled. |
int32_t CsirxDrv_eventDisable | ( | Fdrv_Handle | drvHandle, |
uint32_t | eventGroup, | ||
uint32_t | eventType | ||
) |
Disable the event in event group.
drvHandle | CSIRX driver handle pointer obtained during Fvid2_create() |
eventGroup | Event group in which desired event is to be enabled. |
eventType | Event/s to be enabled. |