drv_spi.h 898 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #ifndef DRV_SPI_H
  2. #define DRV_SPI_H
  3. #include <rtthread.h>
  4. #include <rthw.h>
  5. #define RFEMPTY 1
  6. #define KSEG1_STORE8(addr,val) *(volatile char *)(0xffffffffa0000000 | addr) = val
  7. #define KSEG1_LOAD8(addr) *(volatile char *)(0xffffffffa0000000 | addr)
  8. #define APB_MAX_SPEED 125000000U
  9. #define APB_FREQSCALE (((KSEG1_LOAD8(0xffffffffbfe104d2)>>4)&0x7)+1)
  10. #define SPI_BASE 0x1fff0220
  11. #define PMON_ADDR 0xa1000000
  12. #define FLASH_ADDR 0x000000
  13. #define SPCR 0x0
  14. #define SPSR 0x1
  15. #define FIFO 0x2
  16. #define TXFIFO 0x2
  17. #define RXFIFO 0x2
  18. #define SPER 0x3
  19. #define PARAM 0x4
  20. #define SOFTCS 0x5
  21. #define PARAM2 0x6
  22. #define SET_SPI(addr,val) KSEG1_STORE8(SPI_BASE+addr,val)
  23. #define GET_SPI(addr) KSEG1_LOAD8(SPI_BASE+addr)
  24. //void spi_init(uint8_t ,uint8_t,uint8_t);
  25. //void spi_set_csn(uint8_t);
  26. //uint8_t spi_write_for_response(uint8_t);
  27. #endif