Kari Sipinen

MQX flashx 3.8.1 backwards compatibility problem with 3.8.0

Discussion created by Kari Sipinen on Sep 27, 2012

Hello,

Using MQX with K53.

 

Looks like fopen fails with IO_ERROR after upgrade from the 3.8.0 to 3.8.1. Our project doesn't necessarily need FLASHX so will disable the feature rather than trying to fix it. So please be aware if you have any product out using flashx 3.8.0 and are planning upgrade to 3.8.1.

 

IO_ERROR happens in flashx.c line 227

return IO_ERROR /* no intersection */

 

Without spending too much time think it is related to change in flash_ftfl.c function. In 3.8.1 zeroes were added to the block map and maybe that breaks backwards compatibility?!?! Just speculation on my part.

const FLASHX_BLOCK_INFO_STRUCT _flashx_kinetisN_block_map[] = {

    { BSP_INTERNAL_FLASH_SIZE / BSP_INTERNAL_FLASH_SECTOR_SIZE / 2,(_mem_size) BSP_INTERNAL_FLASH_BASE                              , BSP_INTERNAL_FLASH_SECTOR_SIZE, 0 },

    { BSP_INTERNAL_FLASH_SIZE / BSP_INTERNAL_FLASH_SECTOR_SIZE / 2,(_mem_size) BSP_INTERNAL_FLASH_BASE + BSP_INTERNAL_FLASH_SIZE / 2, BSP_INTERNAL_FLASH_SECTOR_SIZE, 0 },

    { 0, 0, 0 }

};

 

Hope this helps someone,

Kari

Outcomes