From 85500fe0d01b691a9bdd8c2330d26d66bc2bc177 Mon Sep 17 00:00:00 2001 From: Uros Majstorovic Date: Fri, 18 Oct 2019 18:38:00 +0200 Subject: added spi driver --- code/fe310/eos/spi.h | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) (limited to 'code/fe310/eos/spi.h') diff --git a/code/fe310/eos/spi.h b/code/fe310/eos/spi.h index 9ef3745..b230924 100644 --- a/code/fe310/eos/spi.h +++ b/code/fe310/eos/spi.h @@ -1,8 +1,25 @@ #include -#include "encoding.h" -#include "platform.h" +#define EOS_SPI_DEV_NET 0 +#define EOS_SPI_DEV_DISP 1 +#define EOS_SPI_DEV_CARD 2 +#define EOS_SPI_DEV_CAM 3 -#include "spi_def.h" +#define EOS_SPI_MAX_DEV 3 -#define SPI_IOF_MASK (((uint32_t)1 << IOF_SPI1_SCK) | ((uint32_t)1 << IOF_SPI1_MOSI) | ((uint32_t)1 << IOF_SPI1_MISO)) +#define EOS_SPI_FLAG_TX 0x01 +#define EOS_SPI_FLAG_MORE 0x02 + +void eos_spi_init(void); +void eos_spi_dev_acquire(unsigned char dev); +void eos_spi_dev_release(void); + +void eos_spi_xchg(unsigned char *buffer, uint16_t len, uint8_t flags); +void eos_spi_xchg_handler(void); +void eos_spi_xchg_wait(void); + +uint8_t eos_spi_xchg8(uint8_t data, uint8_t flags); +uint16_t eos_spi_xchg16(uint16_t data, uint8_t flags); +uint32_t eos_spi_xchg32(uint32_t data, uint8_t flags); + +void eos_spi_set_handler(unsigned char dev, eos_evt_fptr_t handler); \ No newline at end of file -- cgit v1.2.3