The Intel flash command set requires that a read operation after
doing a 'single byte write' command returns the status register;
add this case to pflash_read() so we return the correct information.
Similarly, the case for the 0x28 flavour of block erase was missing.

Signed-off-by: Peter Maydell <peter.mayd...@linaro.org>
Reviewed-by: Peter Crosthwaite <peter.crosthwa...@xilinx.com>
Tested-by: Peter Crosthwaite <peter.crosthwa...@xilinx.com>
Message-id: 1358777318-7579-2-git-send-email-peter.mayd...@linaro.org
---
 hw/pflash_cfi01.c |    3 +++
 1 file changed, 3 insertions(+)

diff --git a/hw/pflash_cfi01.c b/hw/pflash_cfi01.c
index 9e6ff52..c79e599 100644
--- a/hw/pflash_cfi01.c
+++ b/hw/pflash_cfi01.c
@@ -162,7 +162,10 @@ static uint32_t pflash_read (pflash_t *pfl, hwaddr offset,
         }
 
         break;
+    case 0x10: /* Single byte program */
     case 0x20: /* Block erase */
+    case 0x28: /* Block erase */
+    case 0x40: /* single byte program */
     case 0x50: /* Clear status register */
     case 0x60: /* Block /un)lock */
     case 0x70: /* Status Register */
-- 
1.7.9.5


Reply via email to