Patchwork [U-Boot,v2] m28evk/mx28evk: fix nand_update_full

login
register
mail settings
Submitter Eric Benard
Date Dec. 11, 2012, 9:36 p.m.
Message ID <1355261781-3701-1-git-send-email-eric@eukrea.com>
Download mbox | patch
Permalink /patch/205303/
State Accepted
Delegated to: Scott Wood
Headers show

Comments

Eric Benard - Dec. 11, 2012, 9:36 p.m.
- since commit 418396e212b59bf907dbccad997ff50f7eb61b16 nand write.raw
can take the number of page to be written as an argument. nand_update_full
is passing the size (in bytes) to nand write.raw. This value was previously
ignored but now breaks the write.
- this patch updates the default environment of these boards to provide a
pagecount instead of a size to nand write.raw.
- tested on a mx28evk with a 4k page NAND and on a custom board with a
2k page NAND.

Signed-off-by: Eric Bénard <eric@eukrea.com>
Cc: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
---
 include/configs/m28evk.h  |    2 +-
 include/configs/mx28evk.h |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
Scott Wood - Dec. 11, 2012, 11:25 p.m.
On 12/11/2012 03:36:21 PM, Eric Bénard wrote:
> - since commit 418396e212b59bf907dbccad997ff50f7eb61b16 nand write.raw
> can take the number of page to be written as an argument.  
> nand_update_full
> is passing the size (in bytes) to nand write.raw. This value was  
> previously
> ignored but now breaks the write.
> - this patch updates the default environment of these boards to  
> provide a
> pagecount instead of a size to nand write.raw.
> - tested on a mx28evk with a 4k page NAND and on a custom board with a
> 2k page NAND.
> 
> Signed-off-by: Eric Bénard <eric@eukrea.com>
> Cc: Marek Vasut <marex@denx.de>
> Cc: Fabio Estevam <fabio.estevam@freescale.com>
> ---
>  include/configs/m28evk.h  |    2 +-
>  include/configs/mx28evk.h |    2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)

Marek, can you ack this?

There is still a change in behavior in that before  
418396e212b59bf907dbccad997ff50f7eb61b16 it only wrote one page (since  
that's all the write.raw command ever did) but with this patch it will  
write ${fcb_sz} pages.  I assume the new behavior is correct?

-Scott
Marek Vasut - Dec. 12, 2012, 3:05 a.m.
Dear Scott Wood,

> On 12/11/2012 03:36:21 PM, Eric Bénard wrote:
> > - since commit 418396e212b59bf907dbccad997ff50f7eb61b16 nand write.raw
> > can take the number of page to be written as an argument.
> > nand_update_full
> > is passing the size (in bytes) to nand write.raw. This value was
> > previously
> > ignored but now breaks the write.
> > - this patch updates the default environment of these boards to
> > provide a
> > pagecount instead of a size to nand write.raw.
> > - tested on a mx28evk with a 4k page NAND and on a custom board with a
> > 2k page NAND.
> > 
> > Signed-off-by: Eric Bénard <eric@eukrea.com>
> > Cc: Marek Vasut <marex@denx.de>
> > Cc: Fabio Estevam <fabio.estevam@freescale.com>
> > ---
> > 
> >  include/configs/m28evk.h  |    2 +-
> >  include/configs/mx28evk.h |    2 +-
> >  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> Marek, can you ack this?
> 
> There is still a change in behavior in that before
> 418396e212b59bf907dbccad997ff50f7eb61b16 it only wrote one page (since
> that's all the write.raw command ever did) but with this patch it will
> write ${fcb_sz} pages.  I assume the new behavior is correct?

Yes, it's correct

Acked-by: Marek Vasut <marex@denx.de>

Best regards,
Marek Vasut

Patch

diff --git a/include/configs/m28evk.h b/include/configs/m28evk.h
index b49ec8c..3f37e84 100644
--- a/include/configs/m28evk.h
+++ b/include/configs/m28evk.h
@@ -297,7 +297,7 @@ 
 		"if tftp ${update_nand_full_filename} ; then "		\
 		"run update_nand_get_fcb_size ; "			\
 		"nand scrub -y 0x0 ${filesize} ; "			\
-		"nand write.raw ${loadaddr} 0x0 ${update_nand_fcb} ; "	\
+		"nand write.raw ${loadaddr} 0x0 ${fcb_sz} ; "	\
 		"setexpr update_off ${loadaddr} + ${update_nand_fcb} ; " \
 		"setexpr update_sz ${filesize} - ${update_nand_fcb} ; " \
 		"nand write ${update_off} ${update_nand_fcb} ${update_sz} ; " \
diff --git a/include/configs/mx28evk.h b/include/configs/mx28evk.h
index 0511cd1..d474a92 100644
--- a/include/configs/mx28evk.h
+++ b/include/configs/mx28evk.h
@@ -264,7 +264,7 @@ 
 		"if tftp ${update_nand_full_filename} ; then " \
 		"run update_nand_get_fcb_size ; " \
 		"nand scrub -y 0x0 ${filesize} ; " \
-		"nand write.raw ${loadaddr} 0x0 ${update_nand_fcb} ; " \
+		"nand write.raw ${loadaddr} 0x0 ${fcb_sz} ; " \
 		"setexpr update_off ${loadaddr} + ${update_nand_fcb} ; " \
 		"setexpr update_sz ${filesize} - ${update_nand_fcb} ; " \
 		"nand write ${update_off} ${update_nand_fcb} ${update_sz} ; " \