lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7f7804da-e431-f197-31b9-c98359b9151a@gmail.com>
Date:   Wed, 5 Jul 2017 11:15:01 -0700
From:   Florian Fainelli <f.fainelli@...il.com>
To:     Karl Beldan <karl.beldan@...il.com>, linux-mtd@...ts.infradead.org
Cc:     bcm-kernel-feedback-list@...adcom.com,
        linux-kernel@...r.kernel.org,
        Brian Norris <computersforpeace@...il.com>,
        Kamal Dasu <kdasu.kdev@...il.com>,
        Boris Brezillon <boris.brezillon@...e-electrons.com>,
        Richard Weinberger <richard@....at>,
        David Woodhouse <dwmw2@...radead.org>,
        Marek Vasut <marek.vasut@...il.com>,
        Cyrille Pitchen <cyrille.pitchen@...ev4u.fr>,
        Karl Beldan <karl.beldan+oss@...il.com>
Subject: Re: [PATCH] brcmnand: Fix up the flash cache register offset for
 older controllers

On 07/05/2017 10:46 AM, Karl Beldan wrote:
> From: Karl Beldan <karl.beldan-ext@...emcom.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@...il.com>
> Cc: Kamal Dasu <kdasu.kdev@...il.com>
> Cc: Boris Brezillon <boris.brezillon@...e-electrons.com>
> Cc: Richard Weinberger <richard@....at>
> Cc: David Woodhouse <dwmw2@...radead.org>
> Cc: Marek Vasut <marek.vasut@...il.com>
> Cc: Cyrille Pitchen <cyrille.pitchen@...ev4u.fr>
> Signed-off-by: Karl Beldan <karl.beldan-ext@...emcom.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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ