Hello Folks
I’m integrating FileX on a system that uses MX25L6433F which is a 64Mbit, SPI Flash where the minimum erasable block is 4K while the minimum programming page is 256byte.
The driver I use to write and read from/to the flash is something we’re successfully using since 5years, so the integration with LX driver has been done quite easy.
I would need some clarification on what really needs to be used as init parameters for the
fx_media_format. More specifically if any of the following parameters need to respect some ratio or some physical configuration of the external flash (or are they just logical?)
/* number_of_fats Number of FAT tables */
I assume this should be 1, found in all examples both in ST and Renesas folders.
/* directory_entries Number of directory entries */
32. I think this is more related to the FAT structure, so nothing care about flash physical characteristics. Right?
/* hidden_sectors Number of hidden sectors */
0, Same as before.
/* total_sectors Total number of sectors */
Shall this be related to the flash physical configuration?
I.e., if my flash is 64 MBIT = 8192KB, shall this respect the number of 4K sector available ? (8192KB/4KB = 2048 )
Or shall be based on the minimum page write size capability (256 byte) ?
/* bytes_per_sector Number of bytes per sector */
Same consideration as before. Is this related to physical characteristic ?( so I assume 4096byte in case we consider the minimum erasable capability of the flash)
Or is something logical that does not care about physical flash feature?
/* sectors_per_cluster Number of sectors per cluster */
1, assume this is just logical
/* heads Number of heads */
1, assume this is just logical
/* sectors_per_track Number of sectors per track */
1, assume this is just logical
Furthermore (promise, this is the last question): The define LX_NOR_SECTOR_SIZE , shall respect the minimum erasable sector of the flash ? I see examples that takes values starting from 256 to 512 byte.
/* Define the logical sector size for NOR flash. The sector size is in units of 32-bit words.
This sector size should match the sector size used in file system. */
/*
#define LX_NOR_SECTOR_SIZE (512/sizeof(ULONG))
Thanks in advance to ll for the time spent for reading my email,
Regards
Davide