A10/NFC
From linux-sunxi
Contents |
NAND Flash Controller
Overview
NFC Registers
Timer Base address: 0x01c03000
Register Name | Offset | Size | Description |
---|---|---|---|
NFC_CTL | 0x0000 | 4 B | NFC control interface |
NFC_ST | 0x0004 | 4 B | NFC ST |
NFC_INT | 0x0008 | 4 B | NFC INT |
NFC_TIMING_CTL | 0x000c | 4 B | NFC timing control interface |
NFC_CTL | 0x0010 | 4 B | NFC timing configuration |
NFC_ADDR_LOW | 0x0014 | 4 B | NFC low byte of address |
NFC_ADDR_HIGH | 0x0018 | 4 B | NFC high byte of address |
NFC_SECTOR_NUM | 0x001c | 4 B | NFC sector number |
NFC_CNT | 0x0020 | 4 B | NFC count |
NFC_CMD | 0x0024 | 4 B | NFC command |
NFC_READ_CMD_SET | 0x0028 | 4 B | NFC set read command |
NFC_WRITE_CMD_SET | 0x002c | 4 B | NFC set write command |
NFC_IO_DATA | 0x0030 | 4 B | NFC I/O data |
NFC_ECC_CTL | 0x0034 | 4 B | NFC ECC control |
NFC_ECC_ST | 0x0038 | 4 B | NFC ECC ST |
NFC_DEBUG | 0x003c | 4 B | NFC debug |
NFC_ECC_CNT0 | 0x0040 | 4 B | NFC ECC count 0 |
NFC_ECC_CNT1 | 0x0044 | 4 B | NFC ECC count 1 |
NFC_ECC_CNT2 | 0x0048 | 4 B | NFC ECC count 2 |
NFC_ECC_CNT3 | 0x004c | 4 B | NFC ECC count 3 |
NFC_USER_DB | 0x0050 | 80 B | NFC user database |
NFC_SPARE_AREA | 0x00a0 | 864 B | NFC spare area |
NFC_RAM0 | 0x0400 | 1 kiB | NFC start of ram 0 |
NFC_RAM1 | 0x0800 | 1 kiB | NFC start of ram 1 |
NFC_CTL
Default value: unknown
Offset: 0x0000
Name | Bit | Read/Write | Default (Hex) | Values | Description |
---|---|---|---|---|---|
NFC_EN | 0 | Read/Write | {unknown} |
0 = disable 1 = enable |
Enable or disable the NAND flash controller |
NFC_RESET | 1 | Read/Write | {unknown} |
0 = no reset 1 = reset |
Reset the NAND flash controller |
NFC_BUS_WIDTH | 2 | Read/Write | {unknown} |
0 = ? 1 = ? |
NFC bus width |
NFC_RB_SEL | 3:? | Read/Write | {unknown} |
? |
NFC row b... select? |
NFC_CE_CTL0 | 6 | Read/Write | {unknown} |
? |
NFC collumn ... control 0? |
NFC_CE_CTL1 | 7 | Read/Write | {unknown} |
? |
NFC collumn ... control 1? |
NFC_PAGE_SIZE | 8:11 | Read/Write | {unknown} |
? |
NFC page size |
NFC_SAM | 12 | Read/Write | {unknown} |
? |
NFC SAM |
reserved | 13 | ||||
NFC_RAM_METHOD | 14 | Read/Write | {unknown} |
? |
NFC RAM method |
reserved | 15:23 | ||||
NFC_CE_SEL | 24:27 | Read/Write | {unknown} |
? |
NFC collumn ... select? |
reserved | 28:30 | ||||
NFC_DEBUG_CTL | 31 | Read/Write | {unknown} |
0 = disable 1 = enable {unconfirmed} |
NFC debug control |
NFC_ST
Default value: unknown
Offset: 0x0004
Name | Bit | Read/Write | Default (Hex) | Values | Description |
---|---|---|---|---|---|
NFC_RB_B2R | 0 | Read/Write | {unknown} |
0 = ? 1 = ? |
NFC ... |
NFC_CMD_INT_FLAG | 1 | Read/Write | {unknown} |
0 = ? 1 = ? |
NFC command interrupt flag |
NFC_CMD_INT_FLAG | 1 | Read/Write | {unknown} |
0 = ? 1 = ? |
NFC command interrupt flag |
NFC_DMA_INT_FLAG | 2 | Read/Write | {unknown} |
0 = ? 1 = ? |
NFC DMA interrupt flag |
NFC_CMD_FIFO_STAT | 3 | Read/Write | {unknown} |
0 = ? 1 = ? |
NFC command FIFO status |
NFC_STAT | 4 | Read/Write | {unknown} |
0 = ? 1 = ? |
NFC status |
NFC_MATCH_INT_FLAG | 5 | Read/Write | {unknown} |
0 = ? 1 = ? |
NFC command dma flag |
reserved | 6:7 | ||||
NFC_RB_STATE0 | 8 | Read/Write | {unknown} |
0 = ? 1 = ? |
NFC rb ... state 0 |
NFC_RB_STATE1 | 9 | Read/Write | {unknown} |
0 = ? 1 = ? |
NFC rb ... state 1 |
NFC_RB_STATE2 | 10 | Read/Write | {unknown} |
0 = ? 1 = ? |
NFC rb ... state 2 |
NFC_RB_STATE3 | 11 | Read/Write | {unknown} |
0 = ? 1 = ? |
NFC rb ... state 3 |
reserved | 12:31 |
NFC_INT
Default value: unknown
Offset: 0x0008
Name | Bit | Read/Write | Default (Hex) | Values | Description |
---|---|---|---|---|---|
NFC_B2R_INT_EN | 0 | Read/Write | {unknown} |
0 = disable 1 = enable |
NFC b2r interrupt enable |
NFC_CMD_INT_EN | 1 | Read/Write | {unknown} |
0 = disable 1 = enable |
NFC command interrupt enable |
NFC_DmA_INT_EN | 2 | Read/Write | {unknown} |
0 = disable 1 = enable |
NFC DMA interrupt enable |
reserved | 3:31 |
NFC_CMD
Default value: unknown
Offset: 0x0024
Name | Bit | Read/Write | Default (Hex) | Values | Description |
---|---|---|---|---|---|
NFC_CMD_LOW | 0:7 | Read/Write | {unknown} |
? |
NFC low byte command |
NFC_CMD_HIGH | 8:15 | Read/Write | {unknown} |
? |
NFC high byte command |
NFC_ADDR_NUM | 16:18 | Read/Write | {unknown} |
? |
NFC address number |
NFC_SEND_ADDR | 19 | Read/Write | {unknown} |
? |
NFC send address |
NFC_XS_DIR | 20 | Read/Write | {unknown} |
0 = ? 1 = ? |
NFC access direction |
NFC_DATA_TRANS | 21 | Read/Write | {unknown} |
? |
NFC data trans... |
NFC_SEND_CMD0 | 22 | Read/Write | {unknown} |
? |
NFC send command 0 |
NFC_WAIT_FLAG | 23 | Read/Write | {unknown} |
? |
NFC wait flag |
NFC_SEND_CMD1 | 24 | Read/Write | {unknown} |
? |
NFC send command 1 |
NFC_SEQ | 25 | Read/Write | {unknown} |
? |
NFC sequence? |
NFC_DATA_SWAP_METHOD | 26 | Read/Write | {unknown} |
? |
NFC data swap method |
NFC_ROW_AUTO_INC | 27 | Read/Write | {unknown} |
? |
NFC row auto increase |
NFC_SEND_CMD2 | 28 | Read/Write | {unknown} |
? |
NFC send command 2 |
NFC_SEND_CMD3 | 29 | Read/Write | {unknown} |
? |
NFC send command 3 |
NFC_CMD_TYPE | 30:31 | Read/Write | {unknown} |
? |
NFC command type |
NFC_READ_CMD_SET
Default value: unknown
Offset: 0x0028
Name | Bit | Read/Write | Default (Hex) | Values | Description |
---|---|---|---|---|---|
NFC_READ_CMD | 0:7 | Read/Write | {unknown} |
? |
NFC read command |
NFC_RANDOM_READ_CMD0 | 8:15 | Read/Write | {unknown} |
? |
NFC random read command 0 |
NFC_RANDOM_READ_CMD1 | 16:23 | Read/Write | {unknown} |
? |
NFC random read command 1 |
reserved | 24:31 |
NFC_WRITE_CMD_SET
Default value: unknown
Offset: 0x002c
Name | Bit | Read/Write | Default (Hex) | Values | Description |
---|---|---|---|---|---|
NFC_PROG_CMD | 0:7 | Read/Write | {unknown} |
? |
NFC program command |
NFC_RANDOM_WRITE_CMD | 8:15 | Read/Write | {unknown} |
? |
NFC random write command |
NFC_READ_CMD0 | 16:23 | Read/Write | {unknown} |
? |
NFC read command 0 |
NFC_READ_CMD1 | 24:31 | Read/Write | {unknown} |
? |
NFC read command 1 |
NFC_ECC_CTL
Default value: unknown
Offset: 0x0034
Name | Bit | Read/Write | Default (Hex) | Values | Description |
---|---|---|---|---|---|
NFC_ECC | 0 | Read/Write | {unknown} |
0 = disable 1 = enable |
NFC ECC enable or disable |
reserved/tt> | 1:2 | ||||
NFC_ECC_PIPELINE | 3 | Read/Write | {unknown} |
0 = ? 1 = ? |
NFC ECC pipeline |
NFC_ECC_EXCEPTION | 4 | Read/Write | {unknown} |
? |
NFC ECC exception |
NFC_ECC_BLOCK_SIZE | 5 | Read/Write | {unknown} |
? |
NFC ECC block size |
reserved/tt> | 6:8 | ||||
NFC_ECC_RANDOM | 9 | Read/Write | {unknown} |
0 = disabled 1 = enabled |
NFC random ecc |
NFC_ECC_RANDOM_DIR | 10 | Read/Write | {unknown} |
? |
NFC random ecc direction |
reserved/tt> | 11 | ||||
NFC_ECC_MODE | 12:14 | Read/Write | {unknown} |
? |
NFC random ecc mode |
reserved/tt> | 15 | ||||
NFC_ECC_RANDOM_SEED | 16:31 | Read/Write | {unknown} |
[01]* |
NFC ecc random seed |