ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
ra8_mipi_csi_types.h File Reference

MIPI CSI-2 receiver HAL driver – public types. More...

#include <stdint.h>
#include "ra8_err.h"
#include "ra8_mipi_csi_regs.h"
Include dependency graph for ra8_mipi_csi_types.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  ra8_mipi_csi_config_t
 Configuration descriptor for ra8_mipi_csi_init. More...
struct  ra8_mipi_csi_short_packet_t
 One drained generic short-packet header. More...
struct  ra8_mipi_csi_module_info_t
 Decoded MCG (Module Configuration) RO snapshot. More...
struct  ra8_mipi_csi_error_report_t
 One ECC / CRC error notification from the receiver. More...

Typedefs

typedef void(* ra8_mipi_csi_event_fn_t) (void *ctx, uint32_t rxst_mask)
 MIPI CSI receive-status event callback.
typedef void(* ra8_mipi_csi_dl_event_fn_t) (void *ctx, uint8_t lane, uint32_t dlst)
 Data-lane IRQ callback.
typedef void(* ra8_mipi_csi_vc_event_fn_t) (void *ctx, uint8_t vc, uint32_t vcst)
 Per-virtual-channel IRQ callback.
typedef void(* ra8_mipi_csi_pm_event_fn_t) (void *ctx, uint32_t pmst)
 Power-management IRQ callback.
typedef void(* ra8_mipi_csi_short_event_fn_t) (void *ctx, uint32_t gsst)
 Generic-short-packet FIFO IRQ callback.
typedef void(* ra8_mipi_csi_error_fn_t) (void *ctx, const ra8_mipi_csi_error_report_t *report)
 Callback invoked when the receiver reports an ECC or CRC error.

Enumerations

enum  ra8_mipi_csi_lanes_t : uint8_t {
  k_ra8_mipi_csi_lanes_1 = 1U ,
  k_ra8_mipi_csi_lanes_2 = 2U
}
 Number of D-PHY data lanes the receiver should bring up. More...
enum  ra8_mipi_csi_data_format_t : uint8_t {
  k_ra8_mipi_csi_format_off = 0U ,
  k_ra8_mipi_csi_format_yuv422_8 = 0x1EU ,
  k_ra8_mipi_csi_format_yuv422_10 = 0x1FU ,
  k_ra8_mipi_csi_format_rgb888 = 0x24U ,
  k_ra8_mipi_csi_format_raw8 = 0x2AU ,
  k_ra8_mipi_csi_format_raw10 = 0x2BU ,
  k_ra8_mipi_csi_format_yuv420 = 0x18U
}
 Per-virtual-channel payload format used by ra8_mipi_csi_set_data_format. More...

Detailed Description

MIPI CSI-2 receiver HAL driver – public types.

Tag
[Ring 3 / HAL] {World: NS}

Public enums, configuration descriptor, callback typedefs, and decoded-snapshot structs for the RA8D2 MIPI CSI-2 receiver HAL. Split out of ra8_mipi_csi.h so the umbrella header stays under the per-file line budget; consumers continue to include ra8_mipi_csi.h.

Since
0.1.0

Definition in file ra8_mipi_csi_types.h.

Typedef Documentation

◆ ra8_mipi_csi_dl_event_fn_t

typedef void(* ra8_mipi_csi_dl_event_fn_t) (void *ctx, uint8_t lane, uint32_t dlst)

Data-lane IRQ callback.

Parameters
[in]ctxCaller context.
[in]laneData lane index (0..1) that fired.
[in]dlstDLST(N) snapshot delivered to the callback.

Definition at line 109 of file ra8_mipi_csi_types.h.

◆ ra8_mipi_csi_error_fn_t

typedef void(* ra8_mipi_csi_error_fn_t) (void *ctx, const ra8_mipi_csi_error_report_t *report)

Callback invoked when the receiver reports an ECC or CRC error.

Parameters
[in]ctxCaller context registered with ra8_mipi_csi_attach_error_handler.
[in]reportDecoded error descriptor (only valid for the call).

Definition at line 207 of file ra8_mipi_csi_types.h.

◆ ra8_mipi_csi_event_fn_t

typedef void(* ra8_mipi_csi_event_fn_t) (void *ctx, uint32_t rxst_mask)

MIPI CSI receive-status event callback.

Parameters
[in]ctxCaller context passed to attach_handler.
[in]rxst_maskThe RXST register value at dispatch time.

Definition at line 100 of file ra8_mipi_csi_types.h.

◆ ra8_mipi_csi_pm_event_fn_t

typedef void(* ra8_mipi_csi_pm_event_fn_t) (void *ctx, uint32_t pmst)

Power-management IRQ callback.

Parameters
[in]ctxCaller context.
[in]pmstPMST snapshot delivered to the callback.

Definition at line 127 of file ra8_mipi_csi_types.h.

◆ ra8_mipi_csi_short_event_fn_t

typedef void(* ra8_mipi_csi_short_event_fn_t) (void *ctx, uint32_t gsst)

Generic-short-packet FIFO IRQ callback.

Parameters
[in]ctxCaller context.
[in]gsstGSST snapshot delivered to the callback.

Definition at line 135 of file ra8_mipi_csi_types.h.

◆ ra8_mipi_csi_vc_event_fn_t

typedef void(* ra8_mipi_csi_vc_event_fn_t) (void *ctx, uint8_t vc, uint32_t vcst)

Per-virtual-channel IRQ callback.

Parameters
[in]ctxCaller context.
[in]vcVirtual channel index (0..15) or 0xFF if generic.
[in]vcstVCST(M) snapshot for the channel; for generic events (vc == 0xFF) only MLF + ECD bits are set.

Definition at line 119 of file ra8_mipi_csi_types.h.

Enumeration Type Documentation

◆ ra8_mipi_csi_data_format_t

Per-virtual-channel payload format used by ra8_mipi_csi_set_data_format.

Maps onto the CSI-2 data-type byte (HUM Ch 66.3.10 "DTEL" p 3943 and 66.3.11 "DTEH" p 3944). Selecting a format on a VC sets the matching bit in DTEL/DTEH so the receiver accepts that format within the CSI-2 packet header. Selecting k_ra8_mipi_csi_format_off removes the contribution that VC made, allowing graceful narrowing.

Enumerator
k_ra8_mipi_csi_format_off 

Disable – accept nothing for VC.

k_ra8_mipi_csi_format_yuv422_8 

CSI-2 DT 0x1E – YUV 4:2:2 8-bit.

k_ra8_mipi_csi_format_yuv422_10 

CSI-2 DT 0x1F – YUV 4:2:2 10-bit.

k_ra8_mipi_csi_format_rgb888 

CSI-2 DT 0x24 – RGB888.

k_ra8_mipi_csi_format_raw8 

CSI-2 DT 0x2A – RAW8.

k_ra8_mipi_csi_format_raw10 

CSI-2 DT 0x2B – RAW10 (FSP-only).

k_ra8_mipi_csi_format_yuv420 

CSI-2 DT 0x18 – YUV 4:2:0 8-bit.

Definition at line 173 of file ra8_mipi_csi_types.h.

◆ ra8_mipi_csi_lanes_t

enum ra8_mipi_csi_lanes_t : uint8_t

Number of D-PHY data lanes the receiver should bring up.

Maps directly onto MCT0.VDLN[3:0]. The HUM (Ch 66.3.2 p 3936) permits values 0x1 (one lane) and 0x2 (two lanes) only; any other value is "Setting prohibited".

Enumerator
k_ra8_mipi_csi_lanes_1 

Single-lane D-PHY operation.

k_ra8_mipi_csi_lanes_2 

Dual-lane D-PHY operation.

Definition at line 36 of file ra8_mipi_csi_types.h.