All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] brcmnand: Fix up the flash cache register offset for older controllers
@ 2017-07-05 17:46 Karl Beldan
  2017-07-05 18:15 ` Florian Fainelli
  0 siblings, 1 reply; 4+ messages in thread
From: Karl Beldan @ 2017-07-05 17:46 UTC (permalink / raw)
  To: linux-mtd
  Cc: bcm-kernel-feedback-list, linux-kernel, Brian Norris, Kamal Dasu,
	Boris Brezillon, Richard Weinberger, David Woodhouse, Marek Vasut,
	Cyrille Pitchen, Karl Beldan

From: Karl Beldan <karl.beldan-ext@sagemcom.com>

Tested on BCM{63138,6838,63268} and cross checked with the various
*_map_part.h which the brcmnand_regs_v* in brcmnand.c have historically
been derived from.

Cc: Brian Norris <computersforpeace@gmail.com>
Cc: Kamal Dasu <kdasu.kdev@gmail.com>
Cc: Boris Brezillon <boris.brezillon@free-electrons.com>
Cc: Richard Weinberger <richard@nod.at>
Cc: David Woodhouse <dwmw2@infradead.org>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Cyrille Pitchen <cyrille.pitchen@wedev4u.fr>
Signed-off-by: Karl Beldan <karl.beldan-ext@sagemcom.com>
---
 drivers/mtd/nand/brcmnand/brcmnand.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/mtd/nand/brcmnand/brcmnand.c b/drivers/mtd/nand/brcmnand/brcmnand.c
index 7419c5c..e6371ff6 100644
--- a/drivers/mtd/nand/brcmnand/brcmnand.c
+++ b/drivers/mtd/nand/brcmnand/brcmnand.c
@@ -250,7 +250,7 @@ static const u16 brcmnand_regs_v40[] = {
 	[BRCMNAND_OOB_READ_10_BASE]	= 0x130,
 	[BRCMNAND_OOB_WRITE_BASE]	=  0x30,
 	[BRCMNAND_OOB_WRITE_10_BASE]	=     0,
-	[BRCMNAND_FC_BASE]		= 0x200,
+	[BRCMNAND_FC_BASE]		= 0x400,
 };
 
 /* BRCMNAND v5.0 */
@@ -280,7 +280,7 @@ static const u16 brcmnand_regs_v50[] = {
 	[BRCMNAND_OOB_READ_10_BASE]	= 0x130,
 	[BRCMNAND_OOB_WRITE_BASE]	=  0x30,
 	[BRCMNAND_OOB_WRITE_10_BASE]	= 0x140,
-	[BRCMNAND_FC_BASE]		= 0x200,
+	[BRCMNAND_FC_BASE]		= 0x400,
 };
 
 /* BRCMNAND v6.0 - v7.1 */
-- 
2.10.1

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] brcmnand: Fix up the flash cache register offset for older controllers
  2017-07-05 17:46 [PATCH] brcmnand: Fix up the flash cache register offset for older controllers Karl Beldan
@ 2017-07-05 18:15 ` Florian Fainelli
  2017-07-05 18:18   ` Brian Norris
  2017-07-05 20:57   ` Karl Beldan
  0 siblings, 2 replies; 4+ messages in thread
From: Florian Fainelli @ 2017-07-05 18:15 UTC (permalink / raw)
  To: Karl Beldan, linux-mtd
  Cc: bcm-kernel-feedback-list, linux-kernel, Brian Norris, Kamal Dasu,
	Boris Brezillon, Richard Weinberger, David Woodhouse, Marek Vasut,
	Cyrille Pitchen, Karl Beldan

On 07/05/2017 10:46 AM, Karl Beldan wrote:
> From: Karl Beldan <karl.beldan-ext@sagemcom.com>
> 
> Tested on BCM{63138,6838,63268} and cross checked with the various
> *_map_part.h which the brcmnand_regs_v* in brcmnand.c have historically
> been derived from.

BCM63138 is using a 7.0 controller, 6838 uses a 5.0 controller, but has
a separate flash cache register which does indeed end up at 0x400 bytes
off the main FLASH block, and finally 63268 does have a v4.0 controller
and the flash cache is also in a separate register that makes it end up
at 0x400.

Your change, as proposed would break chips like 7425 which use 5.0
controller with the flash cache at 0x200 bytes.

The binding describes an optional flash-cache register cell that you can
specify, so that's probably what you want to do here?

> 
> Cc: Brian Norris <computersforpeace@gmail.com>
> Cc: Kamal Dasu <kdasu.kdev@gmail.com>
> Cc: Boris Brezillon <boris.brezillon@free-electrons.com>
> Cc: Richard Weinberger <richard@nod.at>
> Cc: David Woodhouse <dwmw2@infradead.org>
> Cc: Marek Vasut <marek.vasut@gmail.com>
> Cc: Cyrille Pitchen <cyrille.pitchen@wedev4u.fr>
> Signed-off-by: Karl Beldan <karl.beldan-ext@sagemcom.com>
> ---
>  drivers/mtd/nand/brcmnand/brcmnand.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/mtd/nand/brcmnand/brcmnand.c b/drivers/mtd/nand/brcmnand/brcmnand.c
> index 7419c5c..e6371ff6 100644
> --- a/drivers/mtd/nand/brcmnand/brcmnand.c
> +++ b/drivers/mtd/nand/brcmnand/brcmnand.c
> @@ -250,7 +250,7 @@ static const u16 brcmnand_regs_v40[] = {
>  	[BRCMNAND_OOB_READ_10_BASE]	= 0x130,
>  	[BRCMNAND_OOB_WRITE_BASE]	=  0x30,
>  	[BRCMNAND_OOB_WRITE_10_BASE]	=     0,
> -	[BRCMNAND_FC_BASE]		= 0x200,
> +	[BRCMNAND_FC_BASE]		= 0x400,
>  };
>  
>  /* BRCMNAND v5.0 */
> @@ -280,7 +280,7 @@ static const u16 brcmnand_regs_v50[] = {
>  	[BRCMNAND_OOB_READ_10_BASE]	= 0x130,
>  	[BRCMNAND_OOB_WRITE_BASE]	=  0x30,
>  	[BRCMNAND_OOB_WRITE_10_BASE]	= 0x140,
> -	[BRCMNAND_FC_BASE]		= 0x200,
> +	[BRCMNAND_FC_BASE]		= 0x400,
>  };
>  
>  /* BRCMNAND v6.0 - v7.1 */
> 


-- 
Florian

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] brcmnand: Fix up the flash cache register offset for older controllers
  2017-07-05 18:15 ` Florian Fainelli
@ 2017-07-05 18:18   ` Brian Norris
  2017-07-05 20:57   ` Karl Beldan
  1 sibling, 0 replies; 4+ messages in thread
From: Brian Norris @ 2017-07-05 18:18 UTC (permalink / raw)
  To: Florian Fainelli
  Cc: Karl Beldan, linux-mtd, bcm-kernel-feedback-list, linux-kernel,
	Kamal Dasu, Boris Brezillon, Richard Weinberger, David Woodhouse,
	Marek Vasut, Cyrille Pitchen, Karl Beldan

Ha, I was in the middle of writing essentially this :)

On Wed, Jul 05, 2017 at 11:15:01AM -0700, Florian Fainelli wrote:
> On 07/05/2017 10:46 AM, Karl Beldan wrote:
> > From: Karl Beldan <karl.beldan-ext@sagemcom.com>
> > 
> > Tested on BCM{63138,6838,63268} and cross checked with the various
> > *_map_part.h which the brcmnand_regs_v* in brcmnand.c have historically
> > been derived from.
> 
> BCM63138 is using a 7.0 controller, 6838 uses a 5.0 controller, but has
> a separate flash cache register which does indeed end up at 0x400 bytes
> off the main FLASH block, and finally 63268 does have a v4.0 controller
> and the flash cache is also in a separate register that makes it end up
> at 0x400.

The joy of arbitrarily-changing IP, since of course business units
within a company (or even divisions within the same business unit) would
never want to share software...

> Your change, as proposed would break chips like 7425 which use 5.0
> controller with the flash cache at 0x200 bytes.
> 
> The binding describes an optional flash-cache register cell that you can
> specify, so that's probably what you want to do here?

What he said ^^^

The "nand-cache" register range sounds like what you're looking for.

Brian

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] brcmnand: Fix up the flash cache register offset for older controllers
  2017-07-05 18:15 ` Florian Fainelli
  2017-07-05 18:18   ` Brian Norris
@ 2017-07-05 20:57   ` Karl Beldan
  1 sibling, 0 replies; 4+ messages in thread
From: Karl Beldan @ 2017-07-05 20:57 UTC (permalink / raw)
  To: Florian Fainelli
  Cc: linux-mtd, bcm-kernel-feedback-list, linux-kernel, Brian Norris,
	Kamal Dasu, Boris Brezillon, Richard Weinberger, David Woodhouse,
	Marek Vasut, Cyrille Pitchen, Karl Beldan

On Wed, Jul 05, 2017 at 11:15:01AM -0700, Florian Fainelli wrote:
> On 07/05/2017 10:46 AM, Karl Beldan wrote:
> > From: Karl Beldan <karl.beldan-ext@sagemcom.com>
> > 
> > Tested on BCM{63138,6838,63268} and cross checked with the various
> > *_map_part.h which the brcmnand_regs_v* in brcmnand.c have historically
> > been derived from.
> 
> BCM63138 is using a 7.0 controller, 6838 uses a 5.0 controller, but has
> a separate flash cache register which does indeed end up at 0x400 bytes
> off the main FLASH block, and finally 63268 does have a v4.0 controller
> and the flash cache is also in a separate register that makes it end up
> at 0x400.
> 
> Your change, as proposed would break chips like 7425 which use 5.0
> controller with the flash cache at 0x200 bytes.
> 
> The binding describes an optional flash-cache register cell that you can
> specify, so that's probably what you want to do here?
> 

I wasn't aware the flash cache offset was variable but the flash-cache
binding you are pointing to makes it obvious ;). 
 
Karl

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-07-05 20:58 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-07-05 17:46 [PATCH] brcmnand: Fix up the flash cache register offset for older controllers Karl Beldan
2017-07-05 18:15 ` Florian Fainelli
2017-07-05 18:18   ` Brian Norris
2017-07-05 20:57   ` Karl Beldan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.