spi_sync
Prev | Chapter 29. Serial Peripheral Interface (SPI) | Next

## Name

spi_sync — blocking/synchronous SPI data transfers

## Synopsis

`int spi_sync (` | struct spi_device * | spi,
| struct spi_message * | message`)`;

## Arguments

`spi`

  device with which data will be exchanged

`message`

  describes the data transfers

## Context

can sleep

## Description

This call may only be used from a context that may sleep. The sleep is non-interruptible, and has no timeout. Low-overhead controller drivers may DMA directly into and out of the message buffers.

Note that the SPI device's chip select is active during the message, and then is normally disabled between messages. Drivers for some frequently-used devices may want to minimize costs of selecting a chip, by leaving it selected in anticipation that the next message will go to the same chip. (That may increase power usage.)

Also, the caller is guaranteeing that the memory associated with the message will not be freed before this call returns.

It returns zero on success, else a negative error code.

Prev | Up | Next
spi_busnum_to_master | Home | spi_write_then_read