Some flash chips have additional page program opcode that takes only 4 byte address. This commit adds support for such command in Qemu.
Signed-off-by: Marcin Krzeminski <[email protected]> Reviewed-by: Edgar E. Iglesias <[email protected]> --- hw/block/m25p80.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/hw/block/m25p80.c b/hw/block/m25p80.c index e3c1166..6dff81b 100644 --- a/hw/block/m25p80.c +++ b/hw/block/m25p80.c @@ -326,6 +326,7 @@ typedef enum { PP4_4 = 0x3e, DPP = 0xa2, QPP = 0x32, + QPP_4 = 0x34, ERASE_4K = 0x20, ERASE4_4K = 0x21, @@ -574,6 +575,7 @@ static inline int get_addr_length(Flash *s) switch (s->cmd_in_progress) { case PP4: case PP4_4: + case QPP_4: case READ4: case QIOR4: case ERASE4_4K: @@ -607,6 +609,7 @@ static void complete_collecting_data(Flash *s) switch (s->cmd_in_progress) { case DPP: case QPP: + case QPP_4: case PP: case PP4: case PP4_4: @@ -874,6 +877,7 @@ static void decode_new_cmd(Flash *s, uint32_t value) case READ4: case DPP: case QPP: + case QPP_4: case PP: case PP4: case PP4_4: -- 2.9.3
