Synopsis
typedef struct {
  int addr;
  void *extra;
  void (*select)(CTL_SPI_DEVICE_s *, int);
  CTL_SPI_DEVICE_s *__next;
  CTL_SPI_PROTOCOL_t __protocol;
  CTL_SPI_BUS_t *__bus;
} CTL_SPI_DEVICE_t;
Description

CTL_SPI_DEVICE_t defines the device selection method and protocol to use when communicating with a device on an SPI bus.

Structure
addr
Client-side data. If you are using a single method to select multiple devices, you can use the addr member of each SPI device structure to distinguish the device.
extra
Client-side data. You can use this member to point to additional data associated with the SPI device.
select
Method to select the device. When the API requires a device to become selected, it calls select with the appropriate SPI device instance and state as 0. When a device needs to be deselected, it calls select with the device instance and state non-zero.
__next
Private member that links SPI device instances attached to the same SPI bus.
__protocol
Private member that contains the SPI protocol associated with the device instance.
__bus
Private member that points to the bus the SPI device is attached to. If the device is not attached to a bus, this member is null.