Level X Error Question

JohnR 21 Reputation points
2022-02-05T18:00:06.6+00:00

We are using Azure ThreadX & FileX along with LevelX on a Winbond 1Gbit SLC NAND. File X version is 6.1 and Level X is 6.1.9.

We have noticed that during start-up, in the function _lx_nand_flash_open() , LX_SYSTEM_INVALID_FORMAT error(s) are being detected and logged. See attached screenshots showing the state of LX_NAND_FLASH data structure on error and soon after init.

It appears this error is not considered fatal by Level X as the process continues and eventually, the function returns LX_SUCCESS.

Is this error something to be concerned about?

What may be causing the error?

Thank you.

171564-pic1.png171594-pic2.png

Azure RTOS
Azure RTOS
An Azure embedded development suite including a small but powerful operating system for resource-constrained devices.
324 questions
{count} votes

3 answers

Sort by: Most helpful
  1. JohnR 21 Reputation points
    2022-02-26T10:05:03.03+00:00

    Based on another issue I ran into, I now see why LevelX has issues with HW ECC. This is just one example, there may be more.

    Due to a bug/design flaw in LevelX, this causes an issue when the _lx_nand_flash_block_reclaim() runs and attempts to "Write the erased started indication."

    Basically what LevelX attempts to do is a read modify write of the NAND, without an erase, changing the value of a memory cell to LX_BLOCK_ERASE_STARTED. Since LX_BLOCK_ERASE_STARTED == 0 this would normally be OK, but the problem is the HW ECC for the sector has already been written based on the existing values. When verification is done after the write of LX_BLOCK_ERASE_STARTED, the verification fails because the return values are not correct. This is because the HW ECC attempts to correct what it assumes are errors.

    1 person found this answer helpful.

  2. Christian Sander 1 Reputation point
    2022-09-16T07:19:43.373+00:00

    Any updates on this and similar issues? When can an implementation that doesn't do multiple writes per page be expected?
    Is there any public implementation of FileX+LevelX+NAND that is usable in industrial environments?


  3. Tiejun Zhou 1,126 Reputation points Microsoft Employee
    2022-09-19T01:37:14.387+00:00

    We are working on level nand fix to resolve the ECC issue and are currently in process of testing the new updates. The fix should be available soon.

    0 comments No comments