ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
ra8_esp_hosted_spi_internal.h
Go to the documentation of this file.
1
27
28#pragma once
29
30#include <stdint.h>
31
32#include "esp_hosted_os_abstraction.h"
33#include "ra8_attributes.h"
34#include "ra8_err.h"
35#include "ra8_io_spi_bus.h"
36#include "ra8_pin_interface.h"
37
65
96RA8_PRIV [[nodiscard]] ra8_err_t priv_ra8_esp_hosted_spi_bind(hosted_osi_funcs_t* out);
97
143RA8_PRIV [[nodiscard]] ra8_err_t
144priv_ra8_esp_hosted_spi_open(uint8_t sci_channel, uint32_t pclk_hz, uint32_t sck_hz);
145
176
205RA8_PRIV [[nodiscard]] bool priv_ra8_esp_hosted_spi_is_open(void);
206
238
Annotation-attribute framework macros for ra8-firmware.
#define RA8_PRIV
Module-private helper: shared across TUs but only inside one library.
Error Code Definitions for ra8-firmware.
ra8_err_codes_t ra8_err_t
Canonical error-return type used by every ra8-firmware API.
Definition ra8_err.h:546
ra8_err_t priv_ra8_esp_hosted_spi_close(void)
Close the SCI Simple-SPI channel and release every pin it took.
void priv_ra8_esp_hosted_spi_set_bus(const ra8_io_spi_bus_t *bus)
Replace the SPI bus the transfer slot clocks frames through.
ra8_err_t priv_ra8_esp_hosted_spi_bind(hosted_osi_funcs_t *out)
Populate the three transport slots of the OS-abstraction vtable.
bool priv_ra8_esp_hosted_spi_is_open(void)
Report whether the SCI Simple-SPI channel is currently open.
void priv_ra8_esp_hosted_spi_set_pin_interface(const ra8_pin_interface_t *iface)
Replace the pin driver the transfer slot drives chip select with.
ra8_err_t priv_ra8_esp_hosted_spi_open(uint8_t sci_channel, uint32_t pclk_hz, uint32_t sck_hz)
Route the Pmod1 SPI pins and open the SCI Simple-SPI channel.
ra8_esp_hosted_spi_limits_t
Fixed facts about the wire this transport drives.
@ k_ra8_esp_hosted_spi_channel_max
One past the highest SCI channel index the HAL accepts.
@ k_ra8_esp_hosted_spi_mode
Clock polarity/phase both high: the C6 image's CONFIG_ESP_SPI_MODE.
ra8_io SPI-bus facade – one controller-transfer vtable over thechip's two SPI implementations.
Abstract pin-driver interface for dependency injection.
Caller-allocated SPI-bus handle binding a backend to its context.
Vtable for a pin driver.