[U-Boot] [U-Boot,PATCHv4] Optimized nand_read_buf for kirkwood

Holger Brunck holger.brunck at keymile.com
Thu Nov 14 09:18:41 CET 2013


Hi Scott,

On 11/14/2013 02:31 AM, Scott Wood wrote:
> On Mon, Aug 26, 2013 at 02:10:56PM +0200, Phil Sutter wrote:
>> From: Nico Erfurth <ne at erfurth.eu>
>>
>> The basic idea is taken from the linux-kernel, but further optimized.
>>
>> First align the buffer to 8 bytes, then use ldrd/strd to read and store
>> in 8 byte quantities, then do the final bytes.
>>
>> Tested using: 'date ; nand read.raw 0xE00000 0x0 0x10000 ; date'.
>> Without this patch, NAND read of 132MB took 49s (~2.69MB/s). With this
>> patch in place, reading the same amount of data was done in 27s
>> (~4.89MB/s). So read performance is increased by ~80%!
>>
>> Signed-off-by: Nico Erfurth <ne at erfurth.eu>
>> Tested-by: Phil Sutter <phil.sutter at viprinet.com>
>> Cc: Prafulla Wadaskar <prafulla at marvell.com>
>>
>> ---
>> Changed since V3:
>> - fixed author
>> ---
>>  drivers/mtd/nand/kirkwood_nand.c | 32 ++++++++++++++++++++++++++++++++
>>  1 file changed, 32 insertions(+)
> 
> I tried to build-test this, and I couldn't find any board that defines
> CONFIG_NAND_KIRKWOOD.
> 

it's not in board specific code defined it's defined in a common kirkwood header:

arch/arm/include/asm/arch-kirkwood/config.h:58:#define CONFIG_NAND_KIRKWOOD

> The patch that removed it was commit
> b5befd8211b54ae2d2fca3fbed061c879951ceaa ("arm/km: fix u-boot.kwb build
> breakage"), over two years ago.  It's not clear whether the removal was
> intentional.
>

yes it was. We include this common header and therefore we don't need to
redefine it in our board setup.

Regards
Holger



More information about the U-Boot mailing list