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

Commit 6a5a297c authored by Richard Purdie's avatar Richard Purdie Committed by David Woodhouse
Browse files

MTD: [NAND] Fix the sharpsl driver after breakage from a core conversion



The CNE bits are inverted on the device and writeb function is missing a
NOT operation.

Signed-off-by: default avatarRichard Purdie <rpurdie@rpsys.net>
Signed-off-by: default avatarDavid Woodhouse <dwmw2@infradead.org>
parent 8b0036ee
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -78,7 +78,7 @@ static struct mtd_partition sharpsl_nand_default_partition_info[] = {
/*
 *	hardware specific access to control-lines
 *	ctrl:
 *	NAND_CNE: bit 0 -> bit 0 & 4
 *	NAND_CNE: bit 0 -> ! bit 0 & 4
 *	NAND_CLE: bit 1 -> bit 1
 *	NAND_ALE: bit 2 -> bit 2
 *
@@ -92,7 +92,10 @@ static void sharpsl_nand_hwcontrol(struct mtd_info *mtd, int cmd,
		unsigned char bits = ctrl & 0x07;

		bits |= (ctrl & 0x01) << 4;
		writeb((readb(FLASHCTL) & 0x17) | bits, FLASHCTL);

		bits ^= 0x11;

		writeb((readb(FLASHCTL) & ~0x17) | bits, FLASHCTL);
	}

	if (cmd != NAND_CMD_NONE)