📄 spirom.h
字号:
/*
* Copyright 2007 by Spectrum Digital Incorporated.
* All rights reserved. Property of Spectrum Digital Incorporated.
*/
/*
* SPI ROM header file
*
*/
#include "davincihd.h"
/* ------------------------------------------------------------------------ *
* SPI ROM Definitions *
* ------------------------------------------------------------------------ */
#define spirom_SIZE 0x00008000
#define spirom_BASE 0x00000000
#define spirom_PAGESIZE 32
#define spirom_PAGEMASK 0xffffffc0
/* ------------------------------------------------------------------------ *
* SPI ROM Commands *
* ------------------------------------------------------------------------ */
#define spirom_CMD_WREN 0x06
#define spirom_CMD_WRDI 0x04
#define spirom_CMD_RDSR 0x05
#define spirom_CMD_WRSR 0x01
#define spirom_CMD_READ 0x03
#define spirom_CMD_WRITE 0x02
/* ------------------------------------------------------------------------ *
* SPI Controller *
* ------------------------------------------------------------------------ */
#define SPI_BASE 0x01c66800
#define SPI_SPIGCR0 *( volatile Uint32* )( SPI_BASE + 0x0 )
#define SPI_SPIGCR1 *( volatile Uint32* )( SPI_BASE + 0x4 )
#define SPI_SPIINT *( volatile Uint32* )( SPI_BASE + 0x8 )
#define SPI_SPILVL *( volatile Uint32* )( SPI_BASE + 0xc )
#define SPI_SPIFLG *( volatile Uint32* )( SPI_BASE + 0x10 )
#define SPI_SPIPC0 *( volatile Uint32* )( SPI_BASE + 0x14 )
#define SPI_SPIPC2 *( volatile Uint32* )( SPI_BASE + 0x1c )
#define SPI_SPIDAT1_TOP *( volatile Uint16* )( SPI_BASE + 0x3c )
#define SPI_SPIDAT1 *( volatile Uint32* )( SPI_BASE + 0x3c )
#define SPI_SPIDAT1_PTR16 *( volatile Uint16* )( SPI_BASE + 0x3e )
#define SPI_SPIDAT1_PTR8 *( volatile Uint8* ) ( SPI_BASE + 0x3f )
#define SPI_SPIBUF *( volatile Uint32* )( SPI_BASE + 0x40 )
#define SPI_SPIBUF_PTR16 *( volatile Uint16* )( SPI_BASE + 0x42 )
#define SPI_SPIBUF_PTR8 *( volatile Uint8* ) ( SPI_BASE + 0x43 )
#define SPI_SPIEMU *( volatile Uint32* )( SPI_BASE + 0x44 )
#define SPI_SPIDELAY *( volatile Uint32* )( SPI_BASE + 0x48 )
#define SPI_SPIDEF *( volatile Uint32* )( SPI_BASE + 0x4c )
#define SPI_SPIFMT0 *( volatile Uint32* )( SPI_BASE + 0x50 )
#define SPI_SPIFMT1 *( volatile Uint32* )( SPI_BASE + 0x54 )
#define SPI_SPIFMT2 *( volatile Uint32* )( SPI_BASE + 0x58 )
#define SPI_SPIFMT3 *( volatile Uint32* )( SPI_BASE + 0x5c )
#define SPI_INTVEC0 *( volatile Uint32* )( SPI_BASE + 0x60 )
#define SPI_INTVEC1 *( volatile Uint32* )( SPI_BASE + 0x64 )
/* ------------------------------------------------------------------------ *
* Prototype *
* ------------------------------------------------------------------------ */
void spirom_init( );
void spirom_read( Uint16 src, Uint32 dst, Uint32 length );
void spirom_write( Uint32 src, Uint16 dst, Uint32 length );
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -