66712c86119fec53e72285853e3bb4aff1befb18
[ls2.git] / coldboot / micron_n25q_flash.h
1 // © 2020 Raptor Engineering, LLC
2 //
3 // Released under the terms of the GPL v3
4 // See the LICENSE file for full details
5
6 uint32_t micron_n25q_spi_device_ids[] = { 0x20ba2010, 0x20ba2110 };
7
8 const char *micron_n25q_spi_device_names[] = { "Micron N25Q 512Mb", "Micron N25Q 1024Mb" };
9
10 #define MICRON_N25Q_SPI_FAST_READ_DUMMY_CLOCK_CYCLES 10
11
12 #define MICRON_N25Q_SPI_3BA_SPI_READ_CMD 0x03
13 #define MICRON_N25Q_SPI_4BA_SPI_READ_CMD 0x13
14
15 // NOTE: QSPI mode unavailable for single read, use Write Disable command as plaecholder
16 #define MICRON_N25Q_SPI_3BA_QSPI_READ_CMD 0x04
17 #define MICRON_N25Q_SPI_4BA_QSPI_READ_CMD 0x04
18
19 #define MICRON_N25Q_SPI_3BA_SPI_FAST_READ_CMD 0x0b
20 #define MICRON_N25Q_SPI_4BA_SPI_FAST_READ_CMD 0x0c
21 #define MICRON_N25Q_SPI_3BA_QSPI_FAST_READ_CMD 0xeb
22 #define MICRON_N25Q_SPI_4BA_QSPI_FAST_READ_CMD 0xec
23
24 // NOTE: The same command code is used for both QSPI 3BA and QSPI 4BA extended quad input writes, thus the device must be placed in either 3BA or 4BA mode prior
25 // to issuing PAGE PROGRAM
26 #define MICRON_N25Q_SPI_3BA_SPI_PAGE_PROGRAM_CMD 0x02
27 #define MICRON_N25Q_SPI_4BA_SPI_PAGE_PROGRAM_CMD 0x12
28 #define MICRON_N25Q_SPI_3BA_QSPI_PAGE_PROGRAM_CMD 0x38
29 #define MICRON_N25Q_SPI_4BA_QSPI_PAGE_PROGRAM_CMD 0x38