45 #include "issdk_hal.h" 46 #include "gpio_driver.h" 52 #define SPI_COUNT (sizeof(spiBases) / sizeof(void *)) 67 void SPI0_SignalEvent_t(uint32_t event)
69 if (event != ARM_SPI_EVENT_TRANSFER_COMPLETE)
79 void SPI1_SignalEvent_t(uint32_t event)
81 if (event != ARM_SPI_EVENT_TRANSFER_COMPLETE)
91 void SPI2_SignalEvent_t(uint32_t event)
93 if (event != ARM_SPI_EVENT_TRANSFER_COMPLETE)
103 void SPI3_SignalEvent_t(uint32_t event)
105 if (event != ARM_SPI_EVENT_TRANSFER_COMPLETE)
115 void SPI4_SignalEvent_t(uint32_t event)
117 if (event != ARM_SPI_EVENT_TRANSFER_COMPLETE)
127 void SPI5_SignalEvent_t(uint32_t event)
129 if (event != ARM_SPI_EVENT_TRANSFER_COMPLETE)
139 void SPI6_SignalEvent_t(uint32_t event)
141 if (event != ARM_SPI_EVENT_TRANSFER_COMPLETE)
151 void SPI7_SignalEvent_t(uint32_t event)
153 if (event != ARM_SPI_EVENT_TRANSFER_COMPLETE)
179 const uint8_t *pBuffer,
180 uint8_t bytesToWrite)
192 .
cmdCode = ARM_SPI_SS_INACTIVE,
197 pSlaveParams->
pWritePreprocessFN(&slaveWriteCmd, offset, bytesToWrite, (
void *)pBuffer);
203 if (ARM_DRIVER_OK == status)
219 status = ARM_DRIVER_ERROR;
220 pCommDrv->Control(ARM_SPI_ABORT_TRANSFER, 0);
247 .
cmdCode = ARM_SPI_SS_INACTIVE,
262 if (ARM_DRIVER_OK == status)
278 status = ARM_DRIVER_ERROR;
279 pCommDrv->Control(ARM_SPI_ABORT_TRANSFER, 0);
286 regValue = (regValue & ~mask) | value;
300 if (ARM_DRIVER_OK == status)
316 status = ARM_DRIVER_ERROR;
317 pCommDrv->Control(ARM_SPI_ABORT_TRANSFER, 0);
343 .
cmdCode = ARM_SPI_SS_INACTIVE,
354 if (ARM_DRIVER_OK == status)
370 status = ARM_DRIVER_ERROR;
371 pCommDrv->Control(ARM_SPI_ABORT_TRANSFER, 0);
fpSpiWritePreprocessFn_t pWritePreprocessFN
registeridlefunction_t idleFunction
volatile bool b_SPI_CompletionFlag[SPI_COUNT]
volatile uint32_t g_SPI_ErrorEvent[SPI_COUNT]
int32_t Register_SPI_BlockWrite(ARM_DRIVER_SPI *pCommDrv, registerDeviceInfo_t *devInfo, void *pWriteParams, uint8_t offset, const uint8_t *pBuffer, uint8_t bytesToWrite)
The interface function to block write to a sensor register.
GENERIC_DRIVER_GPIO * pDspiGpioDriver
SPI_Type *const spiBases[]
void(* set_pin)(pinID_t aPinId)
void(* clr_pin)(pinID_t aPinId)
The SPI Slave Transfer Command Params SDK2.0 Driver.
void register_spi_control(spiControlParams_t *ssControl)
GENERIC_DRIVER_GPIO Driver_GPIO_KSDK
Access structure of the GPIO Driver.
int32_t Register_SPI_Read(ARM_DRIVER_SPI *pCommDrv, registerDeviceInfo_t *devInfo, void *pReadParams, uint8_t offset, uint8_t length, uint8_t *pOutBuffer)
The interface function to read a sensor register.
The SPI Slave Control Command Params SDK2.0 Driver.
This structure defines the device specific info required by register I/O.
This structure defines the spi slave command format.
The register_io_spi.h file declares low-level interface functions for reading and writing sensor regi...
fpSpiReadPreprocessFn_t pReadPreprocessFN
int32_t Register_SPI_Write(ARM_DRIVER_SPI *pCommDrv, registerDeviceInfo_t *devInfo, void *pWriteParams, uint8_t offset, uint8_t value, uint8_t mask)
The interface function to write a sensor register.