|
ChibiOS 21.11.4
|
Template of SNOR Macronix MX25 source. More...
#include <string.h>Go to the source code of this file.
Macros | |
| #define | PAGE_SIZE 256U |
| #define | PAGE_MASK (PAGE_SIZE - 1U) |
Command codes, SPI mode | |
| #define | CMD_SPI_READ3B 0x03U |
| #define | CMD_SPI_FAST_READ3B 0x0BU |
| #define | CMD_SPI_PP3B 0x02U |
| #define | CMD_SPI_SE3B 0x20U |
| #define | CMD_SPI_BE3B 0xD8U |
| #define | CMD_SPI_CE 0xC7U |
| #define | CMD_SPI_READ4B 0x13U |
| #define | CMD_SPI_FAST_READ4B 0x0CU |
| #define | CMD_SPI_PP4B 0x12U |
| #define | CMD_SPI_SE4B 0x21U |
| #define | CMD_SPI_BE4B 0xDCU |
| #define | CMD_SPI_WREN 0x06U |
| #define | CMD_SPI_WRDI 0x04U |
| #define | CMD_SPI_PE_SUSPEND 0xB0U |
| #define | CMD_SPI_PE_RESUME 0x30U |
| #define | CMD_SPI_DP 0xB9U |
| #define | CMD_SPI_SBL 0xC0U |
| #define | CMD_SPI_ENSO 0xB1U |
| #define | CMD_SPI_EXSO 0xC1U |
| #define | CMD_SPI_NOP 0x00U |
| #define | CMD_SPI_RSTEN 0x66U |
| #define | CMD_SPI_RST 0x99U |
| #define | CMD_SPI_RDID 0x9FU |
| #define | CMD_SPI_RDSFDP 0x5AU |
| #define | CMD_SPI_RDSR 0x05U |
| #define | CMD_SPI_RDCR 0x15U |
| #define | CMD_SPI_WRSR 0x01U |
| #define | CMD_SPI_RDCR2 0x71U |
| #define | CMD_SPI_WRCR2 0x72U |
| #define | CMD_SPI_RDFBR 0x16U |
| #define | CMD_SPI_WRFBR 0x17U |
| #define | CMD_SPI_ESFBR 0x18U |
| #define | CMD_SPI_RDSCUR 0x2BU |
| #define | CMD_SPI_WRSCUR 0x2FU |
| #define | CMD_SPI_WRLR 0x2CU |
| #define | CMD_SPI_RDLR 0x2DU |
| #define | CMD_SPI_WRSPB 0xE3U |
| #define | CMD_SPI_ESSPB 0xE4U |
| #define | CMD_SPI_RDSPB 0xE2U |
| #define | CMD_SPI_WRDPB 0xE1U |
| #define | CMD_SPI_RDDPB 0xE0U |
| #define | CMD_SPI_WPSEL 0x68U |
| #define | CMD_SPI_GBLK 0x7EU |
| #define | CMD_SPI_GBULK 0x98U |
| #define | CMD_SPI_RDPASS 0x27U |
| #define | CMD_SPI_WRPASS 0x28U |
| #define | CMD_SPI_PASSULK 0x29U |
Command codes, OPI mode | |
| #define | CMD_OPI_8READ 0xEC13U |
| #define | CMD_OPI_8DTRD 0xEE11U |
| #define | CMD_OPI_RDID 0x9F60U |
| #define | CMD_OPI_RDSFDP 0x5AA5U |
| #define | CMD_OPI_PP 0x12EDU |
| #define | CMD_OPI_SE 0x21DEU |
| #define | CMD_OPI_BE 0xDC23U |
| #define | CMD_OPI_CE 0xC738U |
| #define | CMD_OPI_WREN 0x06F9U |
| #define | CMD_OPI_WRDI 0x04FBU |
| #define | CMD_OPI_PE_SUSPEND 0xB04FU |
| #define | CMD_OPI_PE_RESUME 0x30CFU |
| #define | CMD_OPI_DP 0xB946U |
| #define | CMD_OPI_SBL 0xC03FU |
| #define | CMD_OPI_ENSO 0xB14EU |
| #define | CMD_OPI_EXSO 0xC13EU |
| #define | CMD_OPI_NOP 0x00FFU |
| #define | CMD_OPI_RSTEN 0x6699U |
| #define | CMD_OPI_RST 0x9966U |
| #define | CMD_OPI_RDSR 0x05FAU |
| #define | CMD_OPI_RDCR 0x15EAU |
| #define | CMD_OPI_WRSR 0x01FEU |
| #define | CMD_OPI_WRCR 0x01FEU |
| #define | CMD_OPI_RDCR2 0x718EU |
| #define | CMD_OPI_WRCR2 0x728DU |
| #define | CMD_OPI_RDFBR 0x16E9U |
| #define | CMD_OPI_WRFBR 0x17E8U |
| #define | CMD_OPI_ESFBR 0x18E7U |
| #define | CMD_OPI_RDSCUR 0x2BD4U |
| #define | CMD_OPI_WRSCUR 0x2FD0U |
| #define | CMD_OPI_WRLR 0x2CD3U |
| #define | CMD_OPI_RDLR 0x2DD2U |
| #define | CMD_OPI_WRSPB 0xE31CU |
| #define | CMD_OPI_ESSPB 0xE41BU |
| #define | CMD_OPI_RDSPB 0xE21DU |
| #define | CMD_OPI_WRDPB 0xE11EU |
| #define | CMD_OPI_RDDPB 0xE01FU |
| #define | CMD_OPI_WPSEL 0x6897U |
| #define | CMD_OPI_GBLK 0x7E81U |
| #define | CMD_OPI_GBULK 0x9867U |
| #define | CMD_OPI_RDPASS 0x27D8U |
| #define | CMD_OPI_WRPASS 0x28D7U |
| #define | CMD_OPI_PASSULK 0x29D6U |
Flags status register bits | |
| #define | FLAGS_WPSEL 0x80U |
| #define | FLAGS_E_FAIL 0x40U |
| #define | FLAGS_P_FAIL 0x20U |
| #define | FLAGS_ESB 0x08U |
| #define | FLAGS_PSB 0x04U |
| #define | FLAGS_LDSO 0x02U |
| #define | FLAGS_SECURED_OTP 0x01U |
| #define | FLAGS_ALL_ERRORS (FLAGS_E_FAIL | FLAGS_P_FAIL) |
MX25-required transfer modes | |
| #define | CFG_C8_SPI |
| #define | CFG_C16_8STR |
| #define | CFG_C16_8DTR |
| #define | CFG_C8_A32_SPI |
| #define | CFG_C16_A32_8STR |
| #define | CFG_C16_A32_8DTR |
| #define | CFG_C8_DATA_SPI |
| #define | CFG_C16_DATA_8STR |
| #define | CFG_C16_DATA_8DTR |
| #define | CFG_C8_A32_DATA_SPI |
| #define | CFG_C16_A32_DATA_8STR |
| #define | CFG_C16_A32_DATA_8DTR |
Functions | |
| static bool | mx25_find_id (const uint8_t *set, size_t size, uint8_t element) |
| static flash_error_t | mx25_poll_status (hal_xsnor_macronix_mx25_c *self) |
| static void | mx25_reset_memory (hal_xsnor_macronix_mx25_c *self) |
| static void | mx25_read_id (hal_xsnor_macronix_mx25_c *self, uint8_t *buf) |
| static void | mx25_write_cr2 (hal_xsnor_macronix_mx25_c *self, uint32_t addr, const uint8_t *value) |
Methods implementations of hal_xsnor_macronix_mx25_c | |
| void * | __mx25_objinit_impl (void *ip, const void *vmt) |
| Implementation of object creation. | |
| void | __mx25_dispose_impl (void *ip) |
| Implementation of object finalization. | |
| flash_error_t | __mx25_init_impl (void *ip) |
Override of method xsnor_device_init(). | |
| flash_error_t | __mx25_read_impl (void *ip, flash_offset_t offset, size_t n, uint8_t *rp) |
Override of method xsnor_device_read(). | |
| flash_error_t | __mx25_program_impl (void *ip, flash_offset_t offset, size_t n, const uint8_t *pp) |
Override of method xsnor_device_program(). | |
| flash_error_t | __mx25_start_erase_all_impl (void *ip) |
Override of method xsnor_device_start_erase_all(). | |
| flash_error_t | __mx25_start_erase_sector_impl (void *ip, flash_sector_t sector) |
Override of method xsnor_device_start_erase_sector(). | |
| flash_error_t | __mx25_query_erase_impl (void *ip, unsigned *msec) |
Override of method xsnor_device_query_erase(). | |
| flash_error_t | __mx25_verify_erase_impl (void *ip, flash_sector_t sector) |
Override of method xsnor_device_verify_erase(). | |
| flash_error_t | __mx25_mmap_on_impl (void *ip, uint8_t **addrp) |
Override of method xsnor_device_mmap_on(). | |
| void | __mx25_mmap_off_impl (void *ip) |
Override of method xsnor_device_mmap_off(). | |
Variables | |
| static const xsnor_commands_t | cmd_spi |
| static const xsnor_commands_t | cmd_8str |
| static const xsnor_commands_t | cmd_8dtr |
| static const wspi_command_t | cmd_reset_enable_spi |
| static const wspi_command_t | cmd_reset_memory_spi |
| static const wspi_command_t | cmd_reset_enable_8str |
| static const wspi_command_t | cmd_reset_memory_8str |
| static const wspi_command_t | cmd_reset_enable_8dtr |
| static const wspi_command_t | cmd_reset_memory_8dtr |
| static const uint8_t | mx25_manufacturer_ids [] = {0xC2} |
| static const uint8_t | mx25_memory_type_ids [] = {0x85} |
| const struct hal_xsnor_macronix_mx25_vmt | __hal_xsnor_macronix_mx25_vmt |
| VMT structure of SNOR Macronix MX25 driver class. | |
Template of SNOR Macronix MX25 source.
Definition in file hal_xsnor_macronix_mx25_impl.inc.