no-OS
Loading...
Searching...
No Matches
ftd2xx_spi.c File Reference
#include <errno.h>
#include "no_os_spi.h"
#include "no_os_alloc.h"
#include "no_os_print_log.h"
#include "ftd2xx_spi.h"
#include "ftd2xx_platform.h"
#include "libmpsse_spi.h"
Include dependency graph for ftd2xx_spi.c:

Functions

int ftd2xx_spi_init (struct no_os_spi_desc **desc, const struct no_os_spi_init_param *param)
 Initialize the SPI communication peripheral.
 
int ftd2xx_spi_remove (struct no_os_spi_desc *desc)
 Free the resources allocated by no_os_spi_init().
 
int ftd2xx_spi_write_and_read (struct no_os_spi_desc *desc, uint8_t *data, uint16_t bytes_number)
 Write and read data to/from SPI.
 
int ftd2xx_spi_transfer (struct no_os_spi_desc *desc, struct no_os_spi_msg *xfer, uint32_t len)
 Write/read multiple messages to/from SPI.
 

Variables

const struct no_os_spi_platform_ops ftd2xx_spi_ops
 ftd2xx platform specific SPI platform ops structure
 

Function Documentation

◆ ftd2xx_spi_init()

int ftd2xx_spi_init ( struct no_os_spi_desc ** desc,
const struct no_os_spi_init_param * param )

Initialize the SPI communication peripheral.

Parameters
desc- The SPI descriptor.
param- The structure that contains the SPI parameters.
Returns
0 in case of success, -1 otherwise.

◆ ftd2xx_spi_remove()

int ftd2xx_spi_remove ( struct no_os_spi_desc * desc)

Free the resources allocated by no_os_spi_init().

Parameters
desc- The SPI descriptor.
Returns
0 in case of success, -1 otherwise.

◆ ftd2xx_spi_transfer()

int ftd2xx_spi_transfer ( struct no_os_spi_desc * desc,
struct no_os_spi_msg * xfer,
uint32_t len )

Write/read multiple messages to/from SPI.

Parameters
desc- The SPI descriptor.
xfer- The messages array.
len- Number of messages.
Returns
0 in case of success, errno codes otherwise.

◆ ftd2xx_spi_write_and_read()

int ftd2xx_spi_write_and_read ( struct no_os_spi_desc * desc,
uint8_t * data,
uint16_t bytes_number )

Write and read data to/from SPI.

Parameters
desc- The SPI descriptor.
data- The buffer with the transmitted/received data.
bytes_number- Number of bytes to write/read.
Returns
0 in case of success, -1 otherwise.

Variable Documentation

◆ ftd2xx_spi_ops

const struct no_os_spi_platform_ops ftd2xx_spi_ops
Initial value:
= {
.init = &ftd2xx_spi_init,
.remove = &ftd2xx_spi_remove,
.write_and_read = &ftd2xx_spi_write_and_read,
.transfer = &ftd2xx_spi_transfer,
}
int ftd2xx_spi_write_and_read(struct no_os_spi_desc *desc, uint8_t *data, uint16_t bytes_number)
Write and read data to/from SPI.
Definition ftd2xx_spi.c:153
int ftd2xx_spi_remove(struct no_os_spi_desc *desc)
Free the resources allocated by no_os_spi_init().
Definition ftd2xx_spi.c:131
int ftd2xx_spi_transfer(struct no_os_spi_desc *desc, struct no_os_spi_msg *xfer, uint32_t len)
Write/read multiple messages to/from SPI.
Definition ftd2xx_spi.c:184
Structure holding the initialization parameters for ftd2xx platform specific SPI parameters.
Definition ftd2xx_spi.h:45

ftd2xx platform specific SPI platform ops structure

ftd2xx specific SPI platform ops structure