This file contains a design example using the XCsiSs driver with interrupts.
On receiving a frame received interrupt, it will print frames received count. On receiving a short packet FIFO not empty interrupt, it will print the contents of the short packet received. On receiving DPHY, protocol or Packet level error, it will print the same On receiving any type of error interrupt the sub-system will reset
- Note
- This example requires an interrupt controller connected to the processor and the MIPI CSI Rx Subsystem in the system. The Camera Sensor may need some programming before via the IIC before it starts to send any video stream.
For this example to display output, the user need to implement initialization of the system (CsiSs_PlatformInit) and after MIPI CSI Rx subsystem start (XCsiSs_Start) is complete, implement configuration of the video stream source in order to provide the MIPI CSI Rx Subsystem HIP input. The functions CsiSs_PlatformInit and CsiSs_StreamSrc are declared and are left up to the user implement.
MODIFICATION HISTORY:
Ver Who Date Changes
1.0 vsa 07/21/15 Initial release
1.1 ms 01/23/17 Modified xil_printf statement in main function to
ensure that "Successfully ran" and "Failed" strings
are available in all examples. This is a fix for
CR-965028.
1.2 vsa 03/02/17 Added Word Count corruption interrupt
|
u32 | CsiSs_IntrExample (u32 DeviceId) |
| This function is the main entry point for the interrupt example using the XCsiSs driver. More...
|
|
u32 | CsiSs_PlatformInit (void) |
| This function initialize required platform-specifc peripherals. More...
|
|
u32 | CsiSs_CciInit (void) |
| This function initialize required IIC instance to configure and control the camera. More...
|
|
u32 | CsiSs_CciSetupIntrSystem (void) |
| This function setup interrupts of the IIC instance if used for the MIPI CSI Rx Subsystem. More...
|
|
u32 | CsiSs_SetupIntrSystem (void) |
| This function sets up the interrupt system so interrupts can occur for the MIPI CSI Rx Subsystem core. More...
|
|
void | CsiSs_DphyEventHandler (void *InstancePtr, u32 Mask) |
| This function is called when a DPHY level error event is received by the MIPI CSI Rx Subsystem core. More...
|
|
void | CsiSs_PktLvlEventHandler (void *InstancePtr, u32 Mask) |
| This function is called when a Packet level error event is received by the MIPI CSI Rx Subsystem core. More...
|
|
void | CsiSs_ProtLvlEventHandler (void *InstancePtr, u32 Mask) |
| This function is called when a Protocol decoding level error event is received by the MIPI CSI Rx Subsystem core. More...
|
|
void | CsiSs_SPktEventHandler (void *InstancePtr, u32 Mask) |
| This function is called when a Short Packet FIFO event is received by the MIPI CSI Rx Subsystem core. More...
|
|
void | CsiSs_ErrEventHandler (void *InstancePtr, u32 Mask) |
| This function is called when a Other errors event is received by the MIPI CSI Rx Subsystem core. More...
|
|
void | CsiSs_FrameRcvdEventHandler (void *InstancePtr, u32 Mask) |
| This function is called when a Frame is received by the MIPI CSI Rx Subsystem core. More...
|
|
void | Delay (u32 Seconds) |
| For Microblaze we use an assembly loop that is roughly the same regardless of optimization level, although caches and memory access time can make the delay vary. More...
|
|
int | main () |
| This is the main function for XCsiSs interrupt example. More...
|
|