Mistake on this page?
Report an issue in GitHub or email us
MX25LM51245G_config.h
1 /* mbed Microcontroller Library
2  * Copyright (c) 2018-2018 ARM Limited
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 #ifndef MBED_QSPI_FLASH_MX25LM51245G_H
17 #define MBED_QSPI_FLASH_MX25LM51245G_H
18 
19 
20 #define QSPI_FLASH_CHIP_STRING "macronix MX25LM51245G"
21 
22 // Command for reading status register
23 #define QSPI_CMD_RDSR 0x05
24 // Command for reading configuration register
25 #define QSPI_CMD_RDCR0 0x15
26 #define QSPI_CMD_RDCR1 0x71
27 // Command for writing status/configuration register
28 #define QSPI_CMD_WRSR 0x01
29 // Command for reading security register
30 #define QSPI_CMD_RDSCUR 0x2B
31 
32 // Command for setting Reset Enable
33 #define QSPI_CMD_RSTEN 0x66
34 // Command for setting Reset
35 #define QSPI_CMD_RST 0x99
36 
37 // Command for setting write enable
38 #define QSPI_CMD_WREN 0x06
39 // Command for setting write disable
40 #define QSPI_CMD_WRDI 0x04
41 
42 // WRSR operations max time [us] (datasheet max time + 15%)
43 #define QSPI_WRSR_MAX_TIME 34500 // 30ms
44 // general wait max time [us]
45 #define QSPI_WAIT_MAX_TIME 100000 // 100ms
46 
47 
48 // Commands for writing (page programming)
49 // Only single/octal mode supported with this memory
50 // So only single 1-1-1 mode in this QSPI config
51 #define QSPI_CMD_WRITE_1IO 0x02 // 1-1-1 mode
52 // write operations max time [us] (datasheet max time + 15%)
53 #define QSPI_PAGE_PROG_MAX_TIME 11500 // 10ms
54 
55 #define QSPI_PAGE_SIZE 256 // 256B
56 #define QSPI_SECTOR_SIZE 4096 // 4kB
57 #define QSPI_SECTOR_COUNT 2048
58 
59 // Commands for reading
60 // Only single/octal mode supported with this memory
61 // So only single 1-1-1 mode in this QSPI config
62 #define QSPI_CMD_READ_1IO_FAST 0x0B // 1-1-1 mode
63 #define QSPI_CMD_READ_1IO 0x03 // 1-1-1 mode
64 
65 #define QSPI_READ_1IO_DUMMY_CYCLE 0
66 #define QSPI_READ_FAST_DUMMY_CYCLE 8
67 
68 // Commands for erasing
69 #define QSPI_CMD_ERASE_SECTOR 0x20 // 4kB
70 //#define QSPI_CMD_ERASE_BLOCK_32 // not supported, only ersae block 64
71 #define QSPI_CMD_ERASE_BLOCK_64 0xD8 // 64kB
72 #define QSPI_CMD_ERASE_CHIP 0x60 // or 0xC7
73 
74 // erase operations max time [us] (datasheet max time + 15%)
75 #define QSPI_ERASE_SECTOR_MAX_TIME 480000 // 400 ms
76 #define QSPI_ERASE_BLOCK_64_MAX_TIME 2400000 // 2s
77 
78 // max frequency for basic rw operation (for fast mode)
79 #define QSPI_COMMON_MAX_FREQUENCY 1000000
80 
81 #define QSPI_STATUS_REG_SIZE 1 //2 ??
82 #define QSPI_CONFIG_REG_0_SIZE 1
83 #define QSPI_CONFIG_REG_1_SIZE 1
84 #define QSPI_SECURITY_REG_SIZE 1
85 #define QSPI_MAX_REG_SIZE 2
86 
87 // status register
88 #define STATUS_BIT_WIP (1 << 0) // write in progress bit
89 #define STATUS_BIT_WEL (1 << 1) // write enable latch
90 #define STATUS_BIT_BP0 (1 << 2) //
91 #define STATUS_BIT_BP1 (1 << 3) //
92 #define STATUS_BIT_BP2 (1 << 4) //
93 #define STATUS_BIT_BP3 (1 << 5) //
94 //#define STATUS_BIT_QE (1 << 6) // Not supported
95 //#define STATUS_BIT_SRWD (1 << 7) // Not supported
96 
97 // configuration register 0
98 // bit 0, 1, 2, 4, 5, 7 reserved
99 #define CONFIG0_BIT_TB (1 << 3) // Top/Bottom area protect
100 
101 #endif // MBED_QSPI_FLASH_MX25LM51245G_H
Important Information for this Arm website

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies. If you are not happy with the use of these cookies, please review our Cookie Policy to learn how they can be disabled. By disabling cookies, some features of the site will not work.