MTD device with multiple regions & JFFS2
Angelos Manousarides
amanous at inaccessnetworks.com
Tue Jul 4 08:22:41 EDT 2006
Josh Boyer wrote:
> On 6/30/06, Angelos Manousarides <amanous at inaccessnetworks.com> wrote::
>
>>The code in mtdpart.c does not propagate erase region information to the
>>slave device. I have ckeched with the git repository online and it is
>>still the same. Here is the code I am talking about, it is the only reference
>>in regions in mtdpard.c:
>>
>> if (master->numeraseregions>1) {
>> /* Deal with variable erase size stuff */
>> int i;
>> struct mtd_erase_region_info *regions = master->eraseregions;
>>
>> /* Find the first erase regions which is part of this partition. */
>> for (i=0; i < master->numeraseregions && slave->offset >= regions[i].offset; i++)
>> ;
>>
>> for (i--; i < master->numeraseregions && slave->offset + slave->mtd.size > regions[i].offset; i++) {
>> if (slave->mtd.erasesize < regions[i].erasesize) {
>> slave->mtd.erasesize = regions[i].erasesize;
>> }
>> }
>> } else {
>> /* Single erase size */
>> slave->mtd.erasesize = master->erasesize;
>> }
>>
>>I have changed this to allocate slave->mtd.eraseregions and set
>>slave->mtd.numeraseregions properly.
>>
>>If this is not needed, then definately I am missing something here.
>
>
> It should really only make a difference if a partition actually spans
> two different erase regions. And even then I'm not sure it really
> matters much. But I suppose there is nothing bad about doing it
> correctly.
Here is the patch. Identation sucks, but it sucked in the original file
as well.
--
Angelos Manousaridis
-------------- next part --------------
A non-text attachment was scrubbed...
Name: l.patch
Type: text/x-patch
Size: 5380 bytes
Desc: not available
Url : http://lists.infradead.org/pipermail/linux-mtd/attachments/20060704/acf2cd84/attachment.bin
More information about the linux-mtd
mailing list