mtd: nand: brcmnand: Disable prefetch by default
commit f953f0f89663c39f08f4baaa8a4a881401b65654 upstream. Brcm nand controller prefetch feature needs to be disabled by default. Enabling affects performance on random reads as well as dma reads. Signed-off-by: Kamal Dasu <kdasu.kdev@gmail.com> Fixes: 27c5b17cd1b1 ("mtd: nand: add NAND driver "library" for Broadcom STB NAND controller") Acked-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
b4b3ad0c8c
commit
eda72c8338
@ -1922,16 +1922,9 @@ static int brcmnand_setup_dev(struct brcmnand_host *host)
|
||||
tmp &= ~ACC_CONTROL_PARTIAL_PAGE;
|
||||
tmp &= ~ACC_CONTROL_RD_ERASED;
|
||||
tmp &= ~ACC_CONTROL_FAST_PGM_RDIN;
|
||||
if (ctrl->features & BRCMNAND_HAS_PREFETCH) {
|
||||
/*
|
||||
* FIXME: Flash DMA + prefetch may see spurious erased-page ECC
|
||||
* errors
|
||||
*/
|
||||
if (has_flash_dma(ctrl))
|
||||
tmp &= ~ACC_CONTROL_PREFETCH;
|
||||
else
|
||||
tmp |= ACC_CONTROL_PREFETCH;
|
||||
}
|
||||
if (ctrl->features & BRCMNAND_HAS_PREFETCH)
|
||||
tmp &= ~ACC_CONTROL_PREFETCH;
|
||||
|
||||
nand_writereg(ctrl, offs, tmp);
|
||||
|
||||
return 0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user