RV32 SoC DS UG
High-Perf RV32 SoC DS UG
RV64 SoC DS UG API and Examples
Embedded IDE UG
Loading...
Searching...
No Matches
cam.h
Go to the documentation of this file.
1
2// Copyright (C) 2013-2026 Efinix Inc. All rights reserved.
3// Full license header bsp/efinix/EfxSapphireSocRV64/include/LICENSE.MD
5
6#ifndef SRC_CAM_H_
7#define SRC_CAM_H_
8
19
20#include "i2c/i2c.h"
21
22#ifdef __cplusplus
23extern "C" {
24#endif
25
67
68
69/* ========================================================================== */
70/* SUB-GROUP : Data Types */
71/* ========================================================================== */
72
79
85
86
90 typedef enum {
91 CAM_OK = 0,
92 CAM_ERR = 1,
96 // End of CAM_ENUM group
98
99
100/* ========================================================================== */
101/* SUB-GROUP : DATA STRUCTS */
102/* ========================================================================== */
135
138
150
163 // End of CAM_Types group
165
166/* ========================================================================== */
167/* SUB-GROUP: FUNCTIONS */
168/* ========================================================================== */
169
186 void cam_writeReg(cam_instance_t *cam, u16 reg, u8 data);
190 u8 cam_readReg(cam_instance_t *cam, u16 reg); // End of CAM Public API - String Based Functions group
192 // End of CAM_Funcs group
194
195/* ========================================================================== */
196/* SUB-GROUP: CAMERA CONFIGURATION */
197/* ========================================================================== */
198
200 #include "cam/cam_config.h"
201
202
203#ifdef __cplusplus
204}
205#endif // End of MAIN CAM Group
207
208#endif /* SRC_CAM_H_ */
Camera Configuration and Driver Selection.
cam_status_t
CAM Status List.
Definition cam.h:90
@ CAM_OK
Successful Operation *‍/.
Definition cam.h:91
@ CAM_SKIP
Skip the function *‍/.
Definition cam.h:94
@ CAM_USER_ERR
User provide wrong input *‍/.
Definition cam.h:93
@ CAM_ERR
Failed to retrieve/write value *‍/.
Definition cam.h:92
void cam_writeReg(cam_instance_t *cam, u16 reg, u8 data)
Write Data to specific register in camera.
Definition cam.c:36
u8 cam_readReg(cam_instance_t *cam, u16 reg)
Read Data from specific register in camera.
Definition cam.c:61
struct cam_instance cam_instance_t
Forward declaration of CAM instance.
Definition cam.h:137
I2C driver API definitions.
CAM API structure.
Definition cam.h:143
cam_status_t(* startStreaming)(cam_instance_t *cam)
Start Camera Streaming function pointer.
Definition cam.h:147
cam_status_t(* initCam)(cam_instance_t *cam)
Initialize Camera function pointer.
Definition cam.h:146
cam_status_t(* applyConfig)(cam_instance_t *cam)
Apply i2c config.
Definition cam.h:144
cam_status_t(* stopStreaming)(cam_instance_t *cam)
Stop Camera Streaming function pointer.
Definition cam.h:148
cam_status_t(* enableErrorInterrupt)(cam_instance_t *cam)
Enable error interrupt function pointer.
Definition cam.h:145
CAM instance structure.
Definition cam.h:159
const cam_api_t * drv
Pointer to CAM API structure *‍/.
Definition cam.h:161
i2c_instance_t * inst
Pointer to I2C instance *‍/.
Definition cam.h:160
I2C instance. Holds the software registers and hardware pointer.
Definition i2c.h:290
uint8_t u8
Definition type.h:30
uint16_t u16
Definition type.h:28