RTEMS 6.1-rc2
Loading...
Searching...
No Matches
Data Structures | Enumerator | Variables
Flexio_camera

Data Structures

struct  _flexio_camera_type
 Define structure of configuring the FlexIO Camera device. More...
 
struct  _flexio_camera_config
 Define FlexIO Camera user configuration structure. More...
 
struct  _flexio_camera_transfer
 Define FlexIO Camera transfer structure. More...
 

Variables

FLEXIO_Type_flexio_camera_type::flexioBase
 
uint32_t _flexio_camera_type::datPinStartIdx
 
uint32_t _flexio_camera_type::pclkPinIdx
 
uint32_t _flexio_camera_type::hrefPinIdx
 
uint32_t _flexio_camera_type::shifterStartIdx
 
uint32_t _flexio_camera_type::shifterCount
 
uint32_t _flexio_camera_type::timerIdx
 
bool _flexio_camera_config::enablecamera
 
bool _flexio_camera_config::enableInDoze
 
bool _flexio_camera_config::enableInDebug
 
bool _flexio_camera_config::enableFastAccess
 
uint32_t _flexio_camera_transfer::dataAddress
 
uint32_t _flexio_camera_transfer::dataNum
 

Driver version

enum  { kStatus_FLEXIO_CAMERA_RxBusy = MAKE_STATUS(kStatusGroup_FLEXIO_CAMERA, 0) , kStatus_FLEXIO_CAMERA_RxIdle = MAKE_STATUS(kStatusGroup_FLEXIO_CAMERA, 1) }
 Error codes for the Camera driver. More...
 
enum  _flexio_camera_status_flags { kFLEXIO_CAMERA_RxDataRegFullFlag = 0x1U , kFLEXIO_CAMERA_RxErrorFlag = 0x2U }
 Define FlexIO Camera status mask. More...
 
typedef struct _flexio_camera_type FLEXIO_CAMERA_Type
 Define structure of configuring the FlexIO Camera device.
 
typedef struct _flexio_camera_config flexio_camera_config_t
 Define FlexIO Camera user configuration structure.
 
typedef struct _flexio_camera_transfer flexio_camera_transfer_t
 Define FlexIO Camera transfer structure.
 
#define FSL_FLEXIO_CAMERA_DRIVER_VERSION   (MAKE_VERSION(2, 1, 3))
 FlexIO Camera driver version 2.1.3.
 
#define FLEXIO_CAMERA_PARALLEL_DATA_WIDTH   (8U)
 Define the Camera CPI interface is constantly 8-bit width.
 

Initialization and configuration

void FLEXIO_CAMERA_Init (FLEXIO_CAMERA_Type *base, const flexio_camera_config_t *config)
 Ungates the FlexIO clock, resets the FlexIO module, and configures the FlexIO Camera.
 
void FLEXIO_CAMERA_Deinit (FLEXIO_CAMERA_Type *base)
 Resets the FLEXIO_CAMERA shifer and timer config.
 
void FLEXIO_CAMERA_GetDefaultConfig (flexio_camera_config_t *config)
 Gets the default configuration to configure the FlexIO Camera. The configuration can be used directly for calling the FLEXIO_CAMERA_Init(). Example:
 

Status

uint32_t FLEXIO_CAMERA_GetStatusFlags (FLEXIO_CAMERA_Type *base)
 Gets the FlexIO Camera status flags.
 
void FLEXIO_CAMERA_ClearStatusFlags (FLEXIO_CAMERA_Type *base, uint32_t mask)
 Clears the receive buffer full flag manually.
 

Interrupts

void FLEXIO_CAMERA_EnableInterrupt (FLEXIO_CAMERA_Type *base)
 Switches on the interrupt for receive buffer full event.
 
void FLEXIO_CAMERA_DisableInterrupt (FLEXIO_CAMERA_Type *base)
 Switches off the interrupt for receive buffer full event.
 

Detailed Description

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

Error codes for the Camera driver.

Enumerator
kStatus_FLEXIO_CAMERA_RxBusy 

Receiver is busy.

kStatus_FLEXIO_CAMERA_RxIdle 

Camera receiver is idle.

◆ _flexio_camera_status_flags

Define FlexIO Camera status mask.

Enumerator
kFLEXIO_CAMERA_RxDataRegFullFlag 

Receive buffer full flag.

kFLEXIO_CAMERA_RxErrorFlag 

Receive buffer error flag.

Function Documentation

◆ FLEXIO_CAMERA_ClearStatusFlags()

void FLEXIO_CAMERA_ClearStatusFlags ( FLEXIO_CAMERA_Type base,
uint32_t  mask 
)

Clears the receive buffer full flag manually.

Parameters
basePointer to the device.
maskstatus flag The parameter can be any combination of the following values:
  • kFLEXIO_CAMERA_RxDataRegFullFlag
  • kFLEXIO_CAMERA_RxErrorFlag

◆ FLEXIO_CAMERA_Deinit()

void FLEXIO_CAMERA_Deinit ( FLEXIO_CAMERA_Type base)

Resets the FLEXIO_CAMERA shifer and timer config.

Note
After calling this API, call FLEXO_CAMERA_Init to use the FlexIO Camera module.
Parameters
basePointer to FLEXIO_CAMERA_Type structure

◆ FLEXIO_CAMERA_DisableInterrupt()

void FLEXIO_CAMERA_DisableInterrupt ( FLEXIO_CAMERA_Type base)

Switches off the interrupt for receive buffer full event.

Parameters
basePointer to the device.

◆ FLEXIO_CAMERA_EnableInterrupt()

void FLEXIO_CAMERA_EnableInterrupt ( FLEXIO_CAMERA_Type base)

Switches on the interrupt for receive buffer full event.

Parameters
basePointer to the device.

◆ FLEXIO_CAMERA_GetDefaultConfig()

void FLEXIO_CAMERA_GetDefaultConfig ( flexio_camera_config_t config)

Gets the default configuration to configure the FlexIO Camera. The configuration can be used directly for calling the FLEXIO_CAMERA_Init(). Example:

void FLEXIO_CAMERA_GetDefaultConfig(flexio_camera_config_t *config)
Gets the default configuration to configure the FlexIO Camera. The configuration can be used directly...
Define FlexIO Camera user configuration structure.
Definition: fsl_flexio_camera.h:65
Definition: deflate.c:114
Parameters
configPointer to the flexio_camera_config_t structure

◆ FLEXIO_CAMERA_GetStatusFlags()

uint32_t FLEXIO_CAMERA_GetStatusFlags ( FLEXIO_CAMERA_Type base)

Gets the FlexIO Camera status flags.

Parameters
basePointer to FLEXIO_CAMERA_Type structure
Returns
FlexIO shifter status flags
  • FLEXIO_SHIFTSTAT_SSF_MASK
  • 0

◆ FLEXIO_CAMERA_Init()

void FLEXIO_CAMERA_Init ( FLEXIO_CAMERA_Type base,
const flexio_camera_config_t config 
)

Ungates the FlexIO clock, resets the FlexIO module, and configures the FlexIO Camera.

Parameters
basePointer to FLEXIO_CAMERA_Type structure
configPointer to flexio_camera_config_t structure

Variable Documentation

◆ dataAddress

uint32_t _flexio_camera_transfer::dataAddress

Transfer buffer

◆ dataNum

uint32_t _flexio_camera_transfer::dataNum

Transfer num

◆ datPinStartIdx

uint32_t _flexio_camera_type::datPinStartIdx

First data pin (D0) index for flexio_camera. Then the successive following FLEXIO_CAMERA_DATA_WIDTH-1 pins are used as D1-D7.

◆ enablecamera

bool _flexio_camera_config::enablecamera

Enable/disable FlexIO Camera TX & RX.

◆ enableFastAccess

bool _flexio_camera_config::enableFastAccess

Enable/disable fast access to FlexIO registers, fast access requires the FlexIO clock to be at least twice the frequency of the bus clock.

◆ enableInDebug

bool _flexio_camera_config::enableInDebug

Enable/disable FlexIO operation in debug mode

◆ enableInDoze

bool _flexio_camera_config::enableInDoze

Enable/disable FlexIO operation in doze mode

◆ flexioBase

FLEXIO_Type* _flexio_camera_type::flexioBase

FlexIO module base address.

◆ hrefPinIdx

uint32_t _flexio_camera_type::hrefPinIdx

Horizontal sync pin (HREF) index for flexio_camera.

◆ pclkPinIdx

uint32_t _flexio_camera_type::pclkPinIdx

Pixel clock pin (PCLK) index for flexio_camera.

◆ shifterCount

uint32_t _flexio_camera_type::shifterCount

The count of shifters that are used as flexio_camera data FIFO.

◆ shifterStartIdx

uint32_t _flexio_camera_type::shifterStartIdx

First shifter index used for flexio_camera data FIFO.

◆ timerIdx

uint32_t _flexio_camera_type::timerIdx

Timer index used for flexio_camera in FlexIO.