drv_spi.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /*
  2. * Data Flash (non-linear)
  3. * -----------------------
  4. * |(0) KFC 64K |
  5. * ------------------------
  6. * |... |
  7. * -------------------------
  8. *
  9. *
  10. */
  11. #ifndef __SISSPI_INTERFACE_H
  12. #define __SISSPI_INTERFACE_H
  13. #include <linux/ioctl.h>
  14. #include <linux/types.h>
  15. #include <asm/mips-boards/drvmem.h>
  16. #include <drv_devices.h>
  17. #include <drv_spi_flashalloc_internal.h>
  18. #define DATAFLASH 0x200000
  19. #define CODEFLASH 0x100000
  20. ////////////
  21. extern int spi_write_flash(void *flashaddr, void *dramaddr, unsigned long size);
  22. extern bool spi_protect(__u32 addr);
  23. extern bool spi_unprotect(__u32 addr);
  24. extern void spi_cmd_rw_lock(void);
  25. extern void spi_cmd_rw_unlock(void);
  26. extern bool erase(int value,__u32 addr );
  27. extern __u8 spi_dmawrite(__u32 dest,__u32 src,__u32 size);
  28. extern int spi_read_flash(void *dramaddr, void *flashaddr, unsigned long size);
  29. extern int spi_sif_wqlis_empty(void);
  30. extern u32 lookup_flashtable_addr_bytag(char* sys_tag);
  31. extern int spi_update_module(char *module_name, char *update_data, u32 update_data_size);
  32. extern void SPI_Cmd_GPIOMode_RW(u16 writecnt, u8 *writebuf, u16 readcnt, u8 *readbuf);
  33. extern __u32 DetectRealFlashSize(void);
  34. extern __u32 GetNorFlashStatus(char *FlashID);
  35. extern void spi_encrypt_control(bool set_bit);
  36. #endif