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

Video Input Module (VIN) driver – public API. More...

#include <stdint.h>
#include "ra8_err.h"
#include "ra8_vin_api.h"
#include "ra8_vin_regs.h"
#include "ra8_vin_types.h"
Include dependency graph for ra8_vin.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Detailed Description

Video Input Module (VIN) driver – public API.

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

/ Round-3 driver for the RA8D2 Video Input Module (VIN). The block sits between the MIPI CSI-2 receiver and external SDRAM and writes captured frames into one of three memory-base buffers (MB1..MB3). It optionally pre-clips, scales (UDS), look-up-table remaps, and colour-space converts the data en-route.

The public API mirrors the register surface documented in HUM Ch 67 "Video Input Module" p 3973-4031:

The driver enforces NASA Power-of-10 rules: every loop has a fixed upper bound, every public function returns an ra8_err_t, and pre/ post-condition checks run in both release and unit-test builds.

Umbrella header
This file is a thin umbrella. The driver declarations live in the concern-split sub-headers below and are pulled in verbatim; every consumer that #include "ra8_vin.h" continues to see the full API:
  • ra8_vin_types.h – typed enums, configuration descriptor, register-bundle / colour-space coefficient structs, decoded status views, and the event / frame-end callback typedefs.
  • ra8_vin_api.h – lifecycle, capture, geometry / scaling, LUT, colour conversion, DMR options, CSI-2 / framebuffers, status, IRQ path, power, and the dynamic-window / frame-end function prototypes.

Definition in file ra8_vin.h.