summaryrefslogtreecommitdiff
path: root/firmware/target/mips/ingenic_x1000/nand-x1000.c
diff options
context:
space:
mode:
authorAidan MacDonald <amachronic@protonmail.com>2022-07-11 21:08:40 +0100
committerAidan MacDonald <amachronic@protonmail.com>2022-07-21 11:39:19 +0100
commit4101aeac54ded9591c52ac03a1b765afc394d6c0 (patch)
treead845c30964efdf55c32fd43fb066ccfc3c7796c /firmware/target/mips/ingenic_x1000/nand-x1000.c
parent9ab5d311cba93ce9fe1409b9dbb6ed2da24830c9 (diff)
downloadrockbox-4101aeac54ded9591c52ac03a1b765afc394d6c0.tar.gz
rockbox-4101aeac54ded9591c52ac03a1b765afc394d6c0.zip
x1000: simplify NAND command macros
There is actually no need to parameterize most commands with row or column cycles, usually the opcode and row/column address width are linked. When this is not the case we can use raw SFC commands or define new macros. Change-Id: I22459d732dc01012e6a8ae026c4fb85495d372b4
Diffstat (limited to 'firmware/target/mips/ingenic_x1000/nand-x1000.c')
-rw-r--r--firmware/target/mips/ingenic_x1000/nand-x1000.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/firmware/target/mips/ingenic_x1000/nand-x1000.c b/firmware/target/mips/ingenic_x1000/nand-x1000.c
index 896ac97d28..827a79ebce 100644
--- a/firmware/target/mips/ingenic_x1000/nand-x1000.c
+++ b/firmware/target/mips/ingenic_x1000/nand-x1000.c
@@ -44,11 +44,11 @@ const struct nand_chip supported_nand_chips[] = {
44 STA_TYPE_V(1BYTE), CMD_TYPE_V(8BITS), 44 STA_TYPE_V(1BYTE), CMD_TYPE_V(8BITS),
45 SMP_DELAY(1)), 45 SMP_DELAY(1)),
46 .flags = NAND_CHIPFLAG_QUAD | NAND_CHIPFLAG_HAS_QE_BIT, 46 .flags = NAND_CHIPFLAG_QUAD | NAND_CHIPFLAG_HAS_QE_BIT,
47 .cmd_page_read = NANDCMD_PAGE_READ(3), 47 .cmd_page_read = NANDCMD_PAGE_READ,
48 .cmd_program_execute = NANDCMD_PROGRAM_EXECUTE(3), 48 .cmd_program_execute = NANDCMD_PROGRAM_EXECUTE,
49 .cmd_block_erase = NANDCMD_BLOCK_ERASE(3), 49 .cmd_block_erase = NANDCMD_BLOCK_ERASE,
50 .cmd_read_cache = NANDCMD_READ_CACHE_x4(2), 50 .cmd_read_cache = NANDCMD_READ_CACHE_x4,
51 .cmd_program_load = NANDCMD_PROGRAM_LOAD_x4(2), 51 .cmd_program_load = NANDCMD_PROGRAM_LOAD_x4,
52 }, 52 },
53#else 53#else
54 { 0 }, 54 { 0 },
@@ -103,7 +103,7 @@ static bool identify_chip(struct nand_drv* drv)
103 * 103 *
104 * Currently we use the 2nd method, aka. address read ID. 104 * Currently we use the 2nd method, aka. address read ID.
105 */ 105 */
106 sfc_exec(NANDCMD_READID(1, 0), 0, drv->scratch_buf, 4|SFC_READ); 106 sfc_exec(NANDCMD_READID_ADDR, 0, drv->scratch_buf, 4|SFC_READ);
107 drv->mf_id = drv->scratch_buf[0]; 107 drv->mf_id = drv->scratch_buf[0];
108 drv->dev_id = drv->scratch_buf[1]; 108 drv->dev_id = drv->scratch_buf[1];
109 drv->dev_id2 = drv->scratch_buf[2]; 109 drv->dev_id2 = drv->scratch_buf[2];