 |
J722S MCU+ SDK
09.02.00
|
|
Go to the documentation of this file.
67 #include <drivers/hw_include/csl_csirx.h>
69 #include <drivers/csirx/v1/soc/csirx_soc.h>
70 #include <drivers/csirx/v1/include/csirx_cfg.h>
71 #include <drivers/csirx/v1/include/csirx_event.h>
83 #define CSIRX_CAPT_DRV_ID (FVID2_CSIRX_DRV_BASE + 0x00000000U)
101 #define IOCTL_CSIRX_GET_INST_STATUS (FVID2_CSIRX_DRV_IOCTL_BASE + 0x0000U)
116 #define IOCTL_CSIRX_PRINT_DEBUG_LOGS (FVID2_CSIRX_DRV_IOCTL_BASE + 0x0100U)
129 #define IOCTL_CSIRX_SET_DPHY_CONFIG (FVID2_CSIRX_DRV_IOCTL_BASE + 0x0200U)
145 #define IOCTL_CSIRX_REGISTER_EVENT (FVID2_CSIRX_DRV_IOCTL_BASE + 0x0300U)
161 #define IOCTL_CSIRX_UNREGISTER_EVENT (FVID2_CSIRX_DRV_IOCTL_BASE + 0x0400U)
178 #define IOCTL_CSIRX_GET_INST_CH_NUM (FVID2_CSIRX_DRV_IOCTL_BASE + 0x0500U)
194 #define IOCTL_CSIRX_CH_START (FVID2_CSIRX_DRV_IOCTL_BASE + 0x0600U)
210 #define IOCTL_CSIRX_CH_STOP (FVID2_CSIRX_DRV_IOCTL_BASE + 0x0700U)
222 #define CSIRX_CH_TYPE_CAPT ((uint32_t) 0x0U)
225 #define CSIRX_CH_TYPE_OTF ((uint32_t) 0x1U)
228 #define CSIRX_CH_TYPE_LPBK ((uint32_t) 0x2U)
240 #define CSIRX_CAPT_STREAM_ID ((uint32_t) 0x0U)
243 #define CSIRX_LPBK_STREAM_ID ((uint32_t) 0x1U)
246 #define CSIRX_OTF_STREAM0_ID ((uint32_t) 0x2U)
249 #define CSIRX_OTF_STREAM1_ID ((uint32_t) 0x3U)
253 #define CSIRX_BUF_ALIGNMENT (UDMA_CACHELINE_ALIGNMENT)
338 uint32_t dataLanesMap[CSIRX_CAPT_DATA_LANES_MAX];
382 uint32_t enableStrm[CSIRX_NUM_STREAM_MAX];
447 uint32_t queueCount[CSIRX_NUM_CH];
451 uint32_t dequeueCount[CSIRX_NUM_CH];
455 uint32_t dropCount[CSIRX_NUM_CH];
459 uint32_t errorFrameCount[CSIRX_NUM_CH];
500 uint32_t strmFIFOOvflCount[CSIRX_NUM_STREAM_MAX];
587 if (
NULL != createPrms)
589 createPrms->
numCh = 0U;
590 for (loopCnt = 0U ; loopCnt < CSIRX_NUM_CH ; loopCnt++)
603 chCfgPrms->
chId = CSIRX_CH_ID_DEFAULT;
605 chCfgPrms->
vcNum = CSIRX_VC_NUM_DEFAULT;
633 for(loopCnt = 0U ; loopCnt < CSIRX_CAPT_DATA_LANES_MAX ; loopCnt++)
637 for(loopCnt = 0U ; loopCnt < CSIRX_NUM_STREAM ; loopCnt++)
645 uint32_t loopCnt, strmIdx;
657 for (strmIdx = 0U ; strmIdx < CSIRX_NUM_STREAM ; strmIdx++)
661 for(loopCnt = 0U ; loopCnt < CSIRX_NUM_CH ; loopCnt++)
uint32_t frontFIFOOvflCount
Definition: csirx/v1/csirx.h:471
uint32_t eccCount
Definition: csirx/v1/csirx.h:479
int32_t retVal
Definition: csirx/v1/csirx.h:438
uint32_t enableChDq
Definition: csirx/v1/csirx.h:413
uint32_t numPixelsStrm0
Definition: csirx/v1/csirx.h:351
uint32_t enableStrm[CSIRX_NUM_STREAM_MAX]
Definition: csirx/v1/csirx.h:382
#define UDMA_CH_TYPE_RX_TR
RX channel type.
Definition: udma_ch.h:179
uint8_t ringOrderId
Definition: csirx/v1/csirx.h:318
uint32_t overflowCount
Definition: csirx/v1/csirx.h:463
static void Csirx_chCfgInit(Csirx_ChCfg *chCfg)
Csirx_ChCfg structure init function.
Definition: csirx/v1/csirx.h:601
UDMA RX channel parameters.
Definition: udma_ch.h:385
uint32_t correctedEccCount
Definition: csirx/v1/csirx.h:483
#define NULL
Define NULL if not defined.
Definition: csl_types.h:100
uint32_t chId
Definition: csirx/v1/csirx.h:264
static void Fvid2Format_init(Fvid2_Format *fmt)
Fvid2_Format structure init function.
Definition: fvid2_dataTypes.h:2195
Structure containing Channels configurations.
Definition: csirx/v1/csirx.h:263
uint64_t frameDropBuf
Definition: csirx/v1/csirx.h:405
uint32_t strmFIFOOvflCount[CSIRX_NUM_STREAM_MAX]
Definition: csirx/v1/csirx.h:500
uint32_t crcCount
Definition: csirx/v1/csirx.h:475
uint8_t busPriority
Definition: udma_ch.h:395
Capture driver create status. Returned after calling Fvid2_create().
Definition: csirx/v1/csirx.h:437
uint32_t spuriousUdmaIntrCount
Definition: csirx/v1/csirx.h:467
uint32_t enableErrbypass
Definition: csirx/v1/csirx.h:345
static void Csirx_instStatusInit(Csirx_InstStatus *status)
Csirx_InstStatus structure init function.
Definition: csirx/v1/csirx.h:643
Csirx_InstCfg instCfg
Definition: csirx/v1/csirx.h:402
static void Csirx_createParamsInit(Csirx_CreateParams *createPrms)
Csirx_CreateParams structure init function.
Definition: csirx/v1/csirx.h:583
Udma_DrvHandle drvHandle
Definition: csirx/v1/csirx.h:429
#define CSIRX_CH_TYPE_CAPT
Stream type: capture mode, frames will captured to internal memory or DDR.
Definition: csirx/v1/csirx.h:222
static void Csirx_initParamsInit(Csirx_InitParams *initPrms)
Csirx_InitParams structure init function.
Definition: csirx/v1/csirx.h:578
int32_t Csirx_deInit(void)
CSIRX Driver de-Init function.
Udma_ChRxPrms rxChParams
Definition: csirx/v1/csirx.h:316
Structure containing csirx module initialization arguments.
Definition: csirx/v1/csirx.h:327
uint32_t invalidAccessCount
Definition: csirx/v1/csirx.h:491
Capture status structure used to get the current status.
Definition: csirx/v1/csirx.h:446
void UdmaChRxPrms_init(Udma_ChRxPrms *rxPrms, uint32_t chType)
Udma_ChRxPrms structure init function.
Fvid2_Format outFmt
Definition: csirx/v1/csirx.h:277
uint8_t dmaPriority
Definition: udma_ch.h:401
#define TRUE
Definition: csl_types.h:61
uint32_t dataLanesMap[CSIRX_CAPT_DATA_LANES_MAX]
Definition: csirx/v1/csirx.h:338
UDMA Driver API/interface file.
#define TISCI_MSG_VALUE_RM_UDMAP_CH_SCHED_PRIOR_HIGH
Definition: tisci_rm_udmap.h:210
uint32_t enableCsiv2p0Support
Definition: csirx/v1/csirx.h:328
void * Udma_DrvHandle
UDMA driver handle.
Definition: udma_types.h:65
uint32_t dataIdErrorCount
Definition: csirx/v1/csirx.h:487
uint32_t numDataLanes
Definition: csirx/v1/csirx.h:336
Capture driver create arguments, used when calling Fvid2_create(). Structure containing Streams confi...
Definition: csirx/v1/csirx.h:428
int32_t Csirx_init(const Csirx_InitParams *initParams)
CSIRX Driver Init function.
uint32_t vcNum
Definition: csirx/v1/csirx.h:271
uint32_t queueCount[CSIRX_NUM_CH]
Definition: csirx/v1/csirx.h:447
uint32_t chType
Definition: csirx/v1/csirx.h:268
uint32_t numCh
Definition: csirx/v1/csirx.h:397
static void Csirx_instCfgInit(Csirx_InstCfg *instCfg)
Csirx_InstCfg structure init function.
Definition: csirx/v1/csirx.h:625
uint8_t busOrderId
Definition: udma_ch.h:399
Capture driver create arguments, used when calling Fvid2_create(). Structure containing Streams confi...
Definition: csirx/v1/csirx.h:396
uint32_t invalidSpCount
Definition: csirx/v1/csirx.h:495
uint32_t frameDropBufLen
Definition: csirx/v1/csirx.h:410
uint32_t dropCount[CSIRX_NUM_CH]
Definition: csirx/v1/csirx.h:455
uint32_t dequeueCount[CSIRX_NUM_CH]
Definition: csirx/v1/csirx.h:451
uint32_t inCsiDataType
Definition: csirx/v1/csirx.h:275
uint32_t errorFrameCount[CSIRX_NUM_CH]
Definition: csirx/v1/csirx.h:459
uint8_t busQos
Definition: udma_ch.h:397
Csirx_ChCfg chCfg[CSIRX_NUM_CH]
Definition: csirx/v1/csirx.h:400