On Fri, Oct 21, 2016 at 1:58 AM, Ezequiel Garcia <[email protected]> wrote: > On 20 October 2016 at 01:31, Chris Packham <[email protected]> wrote: >> The initial buffer is used for the initial commands used to detect >> a flash device (STATUS, READID and PARAM). >> >> ONFI param page is 256 bytes, and there are three redundant copies >> to be read. JEDEC param page is 512 bytes, and there are also three >> redundant copies to be read. Hence this buffer should be at least >> 512 x 3. This commits rounds the buffer size to 2048. >> > > Hey Chris, > > So you are basically picking the commit and commit log from Linux: > > http://lists.infradead.org/pipermail/linux-mtd/2015-August/060721.html > > Shouldn't you mention that somewhere?
Indeed. I mentioned it here http://lists.denx.de/pipermail/u-boot/2016-October/270605.html and that was the intent of the Cc line below. I should probably set the From: line to the original author and call out the Linux commit sha1. I wasn't sure of the usual u-boot practice, I could equally squash these all together and say "sync with linux". > >> Cc: Ezequiel Garcia <[email protected]> >> Signed-off-by: Chris Packham <[email protected]> >> --- >> >> drivers/mtd/nand/pxa3xx_nand.c | 16 ++++++++++------ >> 1 file changed, 10 insertions(+), 6 deletions(-) >> >> diff --git a/drivers/mtd/nand/pxa3xx_nand.c b/drivers/mtd/nand/pxa3xx_nand.c >> index dfe8966b56b6..ea0a6f3778bd 100644 >> --- a/drivers/mtd/nand/pxa3xx_nand.c >> +++ b/drivers/mtd/nand/pxa3xx_nand.c >> @@ -26,10 +26,13 @@ >> >> /* >> * Define a buffer size for the initial command that detects the flash >> device: >> - * STATUS, READID and PARAM. The largest of these is the PARAM command, >> - * needing 256 bytes. >> + * STATUS, READID and PARAM. >> + * ONFI param page is 256 bytes, and there are three redundant copies >> + * to be read. JEDEC param page is 512 bytes, and there are also three >> + * redundant copies to be read. >> + * Hence this buffer should be at least 512 x 3. Let's pick 2048. >> */ >> -#define INIT_BUFFER_SIZE 256 >> +#define INIT_BUFFER_SIZE 2048 >> >> /* registers and bit definitions */ >> #define NDCR (0x00) /* Control register */ >> @@ -838,14 +841,14 @@ static int prepare_set_command(struct pxa3xx_nand_info >> *info, int command, >> break; >> >> case NAND_CMD_PARAM: >> - info->buf_count = 256; >> + info->buf_count = INIT_BUFFER_SIZE; >> info->ndcb0 |= NDCB0_CMD_TYPE(0) >> | NDCB0_ADDR_CYC(1) >> | NDCB0_LEN_OVRD >> | command; >> info->ndcb1 = (column & 0xFF); >> - info->ndcb3 = 256; >> - info->data_size = 256; >> + info->ndcb3 = INIT_BUFFER_SIZE; >> + info->data_size = INIT_BUFFER_SIZE; >> break; >> >> case NAND_CMD_READID: >> @@ -1468,6 +1471,7 @@ KEEP_CONFIG: >> host->row_addr_cycles = 3; >> else >> host->row_addr_cycles = 2; >> + > > Spurious change. I suggest to drop it. > Will do. >> return nand_scan_tail(mtd); >> } >> >> -- >> 2.10.0.479.g7c56b16 >> > > > > -- > Ezequiel GarcĂa, VanguardiaSur > www.vanguardiasur.com.ar _______________________________________________ U-Boot mailing list [email protected] http://lists.denx.de/mailman/listinfo/u-boot

