OSDN Git Service

hw/nand.c: Fix nand erase operation
authorWendy Liang <wendy.liang@xilinx.com>
Wed, 3 Apr 2013 05:33:08 +0000 (15:33 +1000)
committerPeter Maydell <peter.maydell@linaro.org>
Fri, 5 Apr 2013 16:08:54 +0000 (17:08 +0100)
commit32aea752f47f30c00878dcc323ac4debf0c9e645
tree191d8cfe86a4e12d9e45ce8967ddf74d10d249fb
parent1db8b5efe0c2b5000e50691eea61264a615f43de
hw/nand.c: Fix nand erase operation

Usually, nand erase operation has only 2 or 3 address cycles.
We need to mask s->addr to zero unset stale high-order bytes in the nand address
before using it as the erase address.

This fixes the NAND erase operation in Linux.

[PC: Generalised to work for any number of address cycles rather than just 3]

Signed-off-by: Wendy Liang <jliang@xilinx.com>
Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
Message-id: 1364967188-26711-1-git-send-email-peter.crosthwaite@xilinx.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
hw/nand.c