Hello Jean-Christophe,

Jean-Christophe PLAGNIOL-VILLARD wrote:
>>  
>>      /* start at the beginning of the partition */
>> -    while (offset < max) {
>> -            if ((oldoffset >> SPIN_BLKSIZE) != (offset >> SPIN_BLKSIZE)) {
>> -                    printf("\b\b%c ", spinner[counter++ % sizeof(spinner)]);
>> -                    oldoffset = offset;
>> -            }
>> +    for (i = 0; i < nr_sectors; i++) {
>> +            uint32_t sector_ofs = i * part->sector_size;
>> +            uint32_t buf_ofs = sector_ofs;
>> +            uint32_t buf_len = EMPTY_SCAN_SIZE(part->sector_size);
>> +            uint32_t ofs, prevofs;
>>  
>>              WATCHDOG_RESET();
>> +            get_fl_mem((u32)part->offset + buf_ofs, buf_len, buf);
>>  
>> -            node = (struct jffs2_unknown_node *) 
>> get_node_mem((u32)part->offset + offset);
>> -            if (node->magic == JFFS2_MAGIC_BITMASK && hdr_crc(node)) {
>> +            /* We temporarily use 'ofs' as a pointer into the buffer/jeb */
>> +            ofs = 0;
>> +
>> +            /* Scan only 4KiB of 0xFF before declaring it's empty */
>> +            while (ofs < EMPTY_SCAN_SIZE(part->sector_size) &&
>> +                            *(uint32_t *)(&buf[ofs]) == 0xFFFFFFFF)
>>     
> please use readx/writex
>   

Why? it's memory buffer actually.

Regards, Ilya.

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to