summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/qemu/qemu/smc91c111_fix3.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/qemu/qemu/smc91c111_fix3.patch')
-rw-r--r--meta/recipes-devtools/qemu/qemu/smc91c111_fix3.patch33
1 files changed, 33 insertions, 0 deletions
diff --git a/meta/recipes-devtools/qemu/qemu/smc91c111_fix3.patch b/meta/recipes-devtools/qemu/qemu/smc91c111_fix3.patch
new file mode 100644
index 0000000000..9e865f7f09
--- /dev/null
+++ b/meta/recipes-devtools/qemu/qemu/smc91c111_fix3.patch
@@ -0,0 +1,33 @@
1From: Peter Crosthwaite <crosthwaitepeter@gmail.com>
2To: qemu-devel@nongnu.org
3Cc: peter.maydell@linaro.org, richard.purdie@linuxfoundation.org
4Subject: [RFT PATCH v1 3/3] net: smc91c111: flush packets on RCR register
5 changes
6Date: Thu, 10 Sep 2015 21:24:12 -0700
7
8The SOFT_RST or RXEN in the control register can be used as a condition
9to unblock the net layer via can_receive(). So check for possible
10flushes on RCR changes. This will drop all pending packets on soft
11reset or disable which is the functional intent of the can_receive()
12logic.
13
14Signed-off-by: Peter Crosthwaite <crosthwaite.peter@gmail.com>
15
16Upstream-Status: Submitted
17---
18
19 hw/net/smc91c111.c | 1 +
20 1 file changed, 1 insertion(+)
21
22Index: qemu-2.4.0/hw/net/smc91c111.c
23===================================================================
24--- qemu-2.4.0.orig/hw/net/smc91c111.c
25+++ qemu-2.4.0/hw/net/smc91c111.c
26@@ -331,6 +331,7 @@ static void smc91c111_writeb(void *opaqu
27 if (s->rcr & RCR_SOFT_RST) {
28 smc91c111_reset(DEVICE(s));
29 }
30+ smc91c111_flush_queued_packets(s);
31 return;
32 case 10: case 11: /* RPCR */
33 /* Ignored */