summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorBin Meng <bin.meng@windriver.com>2021-03-06 14:01:52 +0800
committerAlistair Francis <alistair.francis@wdc.com>2021-03-22 21:54:40 -0400
commitaac8e46e9da6e6ad048d858ecb033c953753f31a (patch)
tree562f738512bf14ac408e2e73ea21368f2f528fe6
parentec352d0cab58a7bf66019057d0dfcffd9e7785a8 (diff)
downloadfocaccia-qemu-aac8e46e9da6e6ad048d858ecb033c953753f31a.tar.gz
focaccia-qemu-aac8e46e9da6e6ad048d858ecb033c953753f31a.zip
hw/block: m25p80: Support fast read for SST flashes
Per SST25VF016B datasheet [1], SST flash requires a dummy byte after
the address bytes. Note only SPI mode is supported by SST flashes.

[1] http://ww1.microchip.com/downloads/en/devicedoc/s71271_04.pdf

Signed-off-by: Bin Meng <bin.meng@windriver.com>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Message-id: 20210306060152.7250-1-bmeng.cn@gmail.com
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
-rw-r--r--hw/block/m25p80.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/hw/block/m25p80.c b/hw/block/m25p80.c
index 5f9471d83c..183d3f44c2 100644
--- a/hw/block/m25p80.c
+++ b/hw/block/m25p80.c
@@ -895,6 +895,9 @@ static void decode_fast_read_cmd(Flash *s)
     s->needed_bytes = get_addr_length(s);
     switch (get_man(s)) {
     /* Dummy cycles - modeled with bytes writes instead of bits */
+    case MAN_SST:
+        s->needed_bytes += 1;
+        break;
     case MAN_WINBOND:
         s->needed_bytes += 8;
         break;