⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ar7100_flash.h

📁 TP-LINK公司TL-WR941N无线路由器的Bootloader U_BOOT源代码
💻 H
字号:
#ifndef _FLASH_H#define _FLASH_H#include "ar7100_soc.h"#define AR7100_SPI_FS           0x1f000000#define AR7100_SPI_CLOCK        0x1f000004#define AR7100_SPI_WRITE        0x1f000008#define AR7100_SPI_READ         0x1f000000#define AR7100_SPI_RD_STATUS    0x1f00000c#define AR7100_SPI_CS_DIS       0x70000#define AR7100_SPI_CE_LOW       0x60000#define AR7100_SPI_CE_HIGH      0x60100#define AR7100_SPI_CMD_WREN         0x06#define AR7100_SPI_CMD_RD_STATUS    0x05#define AR7100_SPI_CMD_FAST_READ    0x0b#define AR7100_SPI_CMD_PAGE_PROG    0x02#define AR7100_SPI_CMD_SECTOR_ERASE 0xd8#define AR7100_SPI_SECTOR_SIZE      (1024*64)#define AR7100_SPI_PAGE_SIZE        256#define display(_x)     ar7100_reg_wr_nf(0x18040008, (_x))/* * primitives */#define ar7100_be_msb(_val, _i) (((_val) & (1 << (7 - _i))) >> (7 - _i))#define ar7100_spi_bit_banger(_byte)  do {        \    int i;                                      \    for(i = 0; i < 8; i++) {                    \        ar7100_reg_wr_nf(AR7100_SPI_WRITE,      \                        AR7100_SPI_CE_LOW | ar7100_be_msb(_byte, i));  \        ar7100_reg_wr_nf(AR7100_SPI_WRITE,      \                        AR7100_SPI_CE_HIGH | ar7100_be_msb(_byte, i)); \    }       \}while(0);#define ar7100_spi_go() do {        \    ar7100_reg_wr_nf(AR7100_SPI_WRITE, AR7100_SPI_CE_LOW); \    ar7100_reg_wr_nf(AR7100_SPI_WRITE, AR7100_SPI_CS_DIS); \}while(0);#define ar7100_spi_send_addr(_addr) do {                    \    ar7100_spi_bit_banger(((addr & 0xff0000) >> 16));                 \    ar7100_spi_bit_banger(((addr & 0x00ff00) >> 8));                 \    ar7100_spi_bit_banger(addr & 0x0000ff);                 \}while(0);#define ar7100_spi_delay_8()    ar7100_spi_bit_banger(0)#define ar7100_spi_done()       ar7100_reg_wr_nf(AR7100_SPI_FS, 0)#endif /*_FLASH_H*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -