summaryrefslogtreecommitdiff
path: root/fw/fe310/eos/spi_dev.c
diff options
context:
space:
mode:
Diffstat (limited to 'fw/fe310/eos/spi_dev.c')
-rw-r--r--fw/fe310/eos/spi_dev.c77
1 files changed, 0 insertions, 77 deletions
diff --git a/fw/fe310/eos/spi_dev.c b/fw/fe310/eos/spi_dev.c
deleted file mode 100644
index 00b1a5b..0000000
--- a/fw/fe310/eos/spi_dev.c
+++ /dev/null
@@ -1,77 +0,0 @@
-#include <stdlib.h>
-#include <stdint.h>
-
-#include "encoding.h"
-#include "platform.h"
-
-#include "eos.h"
-#include "spi.h"
-#include "net.h"
-
-#include "spi_def.h"
-#include "spi_dev.h"
-
-
-#define SPI_DIV_DISP 16
-#define SPI_DIV_CARD 16
-#define SPI_DIV_CAM 16
-
-#define SPI_CSID_DISP 2
-#define SPI_CSID_CARD 0
-
-#define SPI_CSPIN_CAM 23
-
-static uint16_t spi_dev_div[EOS_DEV_MAX_DEV];
-
-int eos_spi_dev_select(unsigned char dev) {
- uint8_t spi_dev = eos_spi_dev();
- int rv = EOS_ERR;
-
- if (spi_dev) {
- int rv;
-
- rv = eos_spi_stop();
- if (rv) return rv;
- } else {
- eos_net_stop();
- }
- switch (dev) {
- case EOS_DEV_DISP:
- rv = eos_spi_start(dev, spi_dev_div[dev - 1], SPI_CSID_DISP, 0);
- break;
- case EOS_DEV_CARD:
- rv = eos_spi_start(dev, spi_dev_div[dev - 1], SPI_CSID_CARD, 0);
- break;
- case EOS_DEV_CAM:
- rv = eos_spi_start(dev, spi_dev_div[dev - 1], SPI_CSID_NONE, SPI_CSPIN_CAM);
- break;
- }
-
- return rv;
-}
-
-int eos_spi_dev_deselect(void) {
- int rv;
-
- rv = eos_spi_stop();
- if (rv) return rv;
- eos_net_start();
-
- return EOS_OK;
-}
-
-void eos_spi_dev_init(void) {
- spi_dev_div[EOS_DEV_DISP - 1] = SPI_DIV_DISP;
- spi_dev_div[EOS_DEV_CARD - 1] = SPI_DIV_CARD;
- spi_dev_div[EOS_DEV_CAM - 1] = SPI_DIV_CAM;
-
- GPIO_REG(GPIO_INPUT_EN) &= ~(1 << SPI_CSPIN_CAM);
- GPIO_REG(GPIO_OUTPUT_EN) |= (1 << SPI_CSPIN_CAM);
- GPIO_REG(GPIO_PULLUP_EN) &= ~(1 << SPI_CSPIN_CAM);
- GPIO_REG(GPIO_OUTPUT_XOR) &= ~(1 << SPI_CSPIN_CAM);
- GPIO_REG(GPIO_OUTPUT_VAL) |= (1 << SPI_CSPIN_CAM);
-}
-
-void eos_spi_dev_set_div(unsigned char dev, uint16_t div) {
- spi_dev_div[dev-1] = div;
-}