Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f953f0f8 authored by Kamal Dasu's avatar Kamal Dasu Committed by Boris Brezillon
Browse files

mtd: nand: brcmnand: Disable prefetch by default



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: default avatarKamal Dasu <kdasu.kdev@gmail.com>
Fixes: 27c5b17c ("mtd: nand: add NAND driver "library" for Broadcom STB NAND controller")
Cc: <stable@vger.kernel.org>
Acked-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
Signed-off-by: default avatarBoris Brezillon <boris.brezillon@free-electrons.com>
parent 069f0534
Loading
Loading
Loading
Loading
+3 −10
Original line number Diff line number Diff line
@@ -2200,16 +2200,9 @@ static int brcmnand_setup_dev(struct brcmnand_host *host)
	if (ctrl->nand_version >= 0x0702)
		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))
	if (ctrl->features & BRCMNAND_HAS_PREFETCH)
		tmp &= ~ACC_CONTROL_PREFETCH;
		else
			tmp |= ACC_CONTROL_PREFETCH;
	}

	nand_writereg(ctrl, offs, tmp);

	return 0;