1 LevelX 2 3For version 6 and higher, please refer to the release notes on GitHub at https://github.com/eclipse-threadx/levelx/releases. 4Below is the revision history for 5.x. 5 6 708/15/2019 LevelX generic code version 5.6. This release includes the 8 following major features: 9 10 Files are modified to fix compiler warnings: 11 demo_filex_nand_flash.c 12 demo_filex_nor_flash.c 13 lx_nand_flash_256byte_ecc_check.c 14 lx_nand_flash_256byte_ecc_compute.c 15 16 1710/10/2018 LevelX generic code version 5.5. This release includes the following 18 modifications: 19 20 lx_api.h Removed compiler warnings, added extended NOR cache 21 support, new APIs, and new constants. 22 lx_nand_flash_256byte_ecc_check.c Removed compiler warnings. 23 lx_nand_flash_256byte_ecc_compute.c Removed compiler warnings. 24 lx_nand_flash_block_obsoleted_check.c Added logic to mark the beginning of block erase. 25 lx_nand_flash_block_reclaim.c Removed compiler warnings, and added logic to mark 26 the beginning of block erase. 27 lx_nand_flash_logical_sector_find.c Removed compiler warnings, and added logic to use 28 and maintain the last found page. 29 lx_nand_flash_next_block_to_erase_find.c Removed compiler warnings. 30 lx_nand_flash_open.c Added logic to detect start of a block erase that 31 was interrupted, removed system error call for more 32 than one page being obsoleted since this can happen 33 normally, removed compiler warnings, and added logic 34 to initialize the last found page. 35 lx_nand_flash_partial_defragment.c Added file in this release. 36 lx_nand_flash_sector_release.c Removed compiler warnings. 37 lx_nand_flash_sector_write.c Removed compiler warnings. 38 lx_nor_flash_block_reclaim.c Removed direct driver access for erases/reads/writes, 39 removed compiler warnings, and added logic to mark 40 the beginning of block erase. 41 lx_nor_flash_driver_block_erase.c Added file in this release. 42 lx_nor_flash_driver_read.c Added file in this release. 43 lx_nor_flash_driver_write.c Added file in this release. 44 lx_nor_flash_extended_cache_enable.c Added file in this release. 45 lx_nor_flash_logical_sector_find.c Removed direct driver access for reads, removed compiler 46 warnings, and added logic to use and maintain the last 47 found sector/block. 48 lx_nor_flash_next_block_to_erase_find.c Removed compiler warnings, and removed direct driver 49 access for reads. 50 lx_nor_flash_open.c Removed direct driver access for erases/reads/writes, 51 added logic to detect start of a block erase that was 52 interrupted, removed system error call for more than 53 one page being obsoleted since this can happen normally, 54 removed compiler warnings, and added logic to initialize 55 the last found sector/block. 56 lx_nor_flash_partial_defragment.c Added file in this release. 57 lx_nor_flash_physical_sector_allocate.c Removed direct driver access for reads/writes. 58 lx_nor_flash_sector_read.c Removed direct driver access for reads/writes. 59 lx_nor_flash_sector_release.c Removed direct driver access for reads/writes. 60 lx_nor_flash_sector_write.c Removed direct driver access for reads/writes. 61 lx_nor_flash_simulator.c Removed compiler warnings. 62 lx*.c Changed comments and copyright header, and added 63 conditional around disabling ThreadX error checking. 64 lx*.h Changed comments and copyright header. 65 6605/01/2018 LevelX generic code version 5.4. This release includes the following 67 modifications: 68 69 lx_api.h Added NOR flash RAM buffer, added bit constant 70 for both NOR and NAND flash to indicate when 71 mapping write is valid, added diagnostic counter 72 for tracking when incomplete mapping is detected 73 on open, add added new error code when driver 74 does not supply a sector/page RAM buffer. 75 fx_nand_flash_simulated_driver.c Added error checking, and corrected sector 76 read/write processing. 77 fx_nor_flash_simulator_driver.c Added error checking. 78 lx_nand_flash_block_reclaim.c Added clearing of additional bit to indicate when 79 mapping is valid, and corrected logic that could 80 cause a newly mapped sector to be erased. 81 lx_nand_flash_logical_sector_find.c Added logic to make sure the sector mapping is valid. 82 lx_nand_flash_next_block_to_erase_find.c Added logic to improve search for free sectors. 83 lx_nand_flash_open.c Added logic to detect and handle a mapping entry 84 interrupted before completion, and added logic to 85 ensure there is a page buffer supplied by the 86 driver. 87 lx_nand_flash_sector_release.c Added reclaim logic to help increase free sectors. 88 lx_nand_flash_sector_write.c Added clearing of additional bit to indicate when 89 mapping is valid. 90 lx_nor_flash_block_reclaim.c Added clearing of additional bit to indicate when 91 mapping is valid, added logic to read NOR sector 92 into RAM buffer if direct NOR access is not possible, 93 and corrected logic that could cause a newly mapped 94 sector to be erased. 95 lx_nor_flash_logical_sector_find.c Added logic to make sure the sector mapping is valid. 96 lx_nor_flash_next_block_to_erase_find.c Added logic to improve search for free sectors. 97 lx_nor_flash_open.c Added logic to detect and handle a mapping entry 98 interrupted before completion, and added logic to 99 ensure there is a sector buffer supplied by the 100 driver if LX_DIRECT_READ is not specified. 101 lx_nor_flash_sector_release.c Added reclaim logic to help increase free sectors. 102 lx_nor_flash_sector_write.c Added clearing of additional bit to indicate when 103 mapping is valid, and removed optimization to ensure 104 atomic sector write. 105 lx_nor_flash_simulator.c Added logic to supply RAM buffer for reading 106 sector when LX_DIRECT_READ is not specified, 107 and removed write attempt to already written 108 sector, since this is no longer required. 109 fx*.c Changed comments and copyright header. 110 lx*.c Changed comments and copyright header. 111 lx*.h Changed comments and copyright header. 112 11311/01/2017 LevelX generic code version 5.3. This release includes the following 114 modifications: 115 116 lx_nand_flash_block_full_update.c Added check to make sure the block is 117 actually full. 118 lx_nand_flash_block_reclaim.c Added support for direct logical sector 119 cache. 120 lx_nand_flash_logical_sector_find.c Added adjustment of mapped sectors when 121 examining the mapped list, added support 122 for direct logical sector cache. 123 lx_nand_flash_open.c Added support for direct logical sector cache, 124 and updated diagnostics. 125 lx_nand_flash_physical_page_allocate.c Added adjustment of the search pointer for 126 next allocate request. 127 lx_nand_flash_sector_mapping_cache_invalidate.c Added support for direct logical sector cache. 128 lx_nand_flash_sector_release.c Added logic to update the page 0 mapping list 129 if present. 130 lx_nand_flash_sector_write.c Added logic to update the page 0 mapping list 131 if present, and added check to make sure the 132 new mapping wasn't moved, added direct logical 133 sector cache. 134 fx*.c Changed comments and copyright header. 135 lx*.c Changed comments and copyright header. 136 lx*.h Changed comments and copyright header. 137 13803/01/2017 LevelX generic code version 5.2. This release includes the following 139 modifications: 140 141 lx_nand_flash_block_full_update.c Reduced the number of words accessed in 142 page 0, added driver interface layer, 143 and modified the extra bytes usage in 144 page 0 to support block valid-full-empty. 145 lx_nand_flash_block_obsoleted_check.c Added file in this release. 146 lx_nand_flash_block_reclaim.c Added logic to update page 0 on a full 147 block update, added driver interface layer, 148 and added additional diagnostic information. 149 lx_nand_flash_driver_block_erase.c Added file in this release. 150 lx_nand_flash_driver_block_erased_verify.c Added file in this release. 151 lx_nand_flash_driver_block_status_get.c Added file in this release. 152 lx_nand_flash_driver_block_status_set.c Added file in this release. 153 lx_nand_flash_driver_extra_bytes_get.c Added file in this release. 154 lx_nand_flash_driver_extra_bytes_set.c Added file in this release. 155 lx_nand_flash_driver_page_erased_verify.c Added file in this release. 156 lx_nand_flash_driver_read.c Added file in this release. 157 lx_nand_flash_driver_write.c Added file in this release. 158 lx_nand_flash_extended_cache_enable.c Added file in this release. 159 lx_nand_flash_logical_sector_find.c Reduced the number of words accessed in 160 page 0, corrected check for valid sector 161 mapping list, added max mapped sector logic, 162 added driver interface layer, and added logic 163 to use and maintain the last found sector block. 164 lx_nand_flash_next_block_to_erase_find.c Reduced the number of words accessed in page 0, 165 and added driver interface layer. 166 lx_nand_flash_open.c Reduced the number of words accessed in page 0, 167 added driver interface layer, added additional 168 diagnostic information, added logic to initialize 169 the maximum mapped logical sector, and added 170 initialization of the last found sector block. 171 lx_nand_flash_physical_page_allocate.c Reduced the number of words accessed in page 0, 172 added driver interface layer, and added logic 173 to use page 0's extra bytes to determine if 174 block has available pages. 175 lx_nand_flash_sector_read.c Added driver interface layer. 176 lx_nand_flash_sector_release.c Added logic to maintain the maximum mapped 177 sector, and added driver interface layer. 178 lx_nand_flash_sector_write.c Added call to see if the block is completely 179 obsoleted, added logic to remember the maximum 180 mapped sector, and added driver interface layer. 181 fx_nand_flash_simulator_driver.c Removed sector packing by requiring sector and 182 cluster size to match, and added release sector 183 support. 184 fx*.c Changed comments and copyright header. 185 lx*.c Changed comments and copyright header. 186 lx*.h Changed comments and copyright header. 187 18808/01/2016 LevelX generic code version 5.1. This release includes the following 189 modifications: 190 191 lx_nor_flash_physical_sector_allocate.c Corrected problem with more than 32 sectors per 192 flash block. 193 fx*.c Changed comments and copyright header. 194 lx*.c Changed comments and copyright header. 195 lx*.h Changed comments and copyright header. 196 19701/22/2015 Initial LevelX generic code version 5.0.