no-OS
Loading...
Searching...
No Matches
maxim_gpio_spi.c File Reference

Bit-banged (GPIO) SPI master for MAX78000, no_os_spi platform ops. More...

#include <errno.h>
#include "maxim_gpio_spi.h"
#include "no_os_alloc.h"
#include "no_os_delay.h"
#include "no_os_util.h"
#include "mxc_device.h"
#include "gpio_regs.h"
#include "gcr_regs.h"
Include dependency graph for maxim_gpio_spi.c:

Classes

struct  max_gpio_spi_state
 Resolved, per-descriptor register view cached at init so the bit loop does no lookups. Stored in no_os_spi_desc.extra. More...
 

Macros

#define MAX_GPIO_SPI_DELAYS_PER_BIT   3U
 
#define MAX_GPIO_SPI_LOOP_CYCLES   8U
 

Variables

const struct no_os_spi_platform_ops max_gpio_spi_ops
 Bit-banged SPI platform ops. See maxim_gpio_spi.h for the pin map and the single-driver bus-ownership contract.
 

Detailed Description

Bit-banged (GPIO) SPI master for MAX78000, no_os_spi platform ops.

Author
Victor Pascu (victo.nosp@m.r.pa.nosp@m.scu@a.nosp@m.nalo.nosp@m.g.com)

Copyright 2026(c) Analog Devices, Inc.

SPDX-License-Identifier: BSD-3-Clause

Macro Definition Documentation

◆ MAX_GPIO_SPI_DELAYS_PER_BIT

#define MAX_GPIO_SPI_DELAYS_PER_BIT   3U

◆ MAX_GPIO_SPI_LOOP_CYCLES

#define MAX_GPIO_SPI_LOOP_CYCLES   8U

Variable Documentation

◆ max_gpio_spi_ops

const struct no_os_spi_platform_ops max_gpio_spi_ops
Initial value:
= {
.init = max_gpio_spi_init,
.write_and_read = max_gpio_spi_write_and_read,
.transfer = max_gpio_spi_transfer,
.remove = max_gpio_spi_remove,
}

Bit-banged SPI platform ops. See maxim_gpio_spi.h for the pin map and the single-driver bus-ownership contract.

Bit-banged SPI platform ops (no_os_spi backend).