All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 1/3] hw/net: e1000: Correct the initial value of VET register
@ 2021-07-02  9:24 Bin Meng
  2021-07-02  9:24 ` [PATCH v2 2/3] hw/net: e1000e: " Bin Meng
                   ` (2 more replies)
  0 siblings, 3 replies; 20+ messages in thread
From: Bin Meng @ 2021-07-02  9:24 UTC (permalink / raw)
  To: Jason Wang, qemu-devel; +Cc: Bin Meng, Christina Wang, Markus Carlstedt

From: Christina Wang <christina.wang@windriver.com>

The initial value of VLAN Ether Type (VET) register is 0x8100, as per
the manual and real hardware.

While Linux e1000 driver always writes VET register to 0x8100, it is
not always the case for everyone. Drivers relying on the reset value
of VET won't be able to transmit and receive VLAN frames in QEMU.

Reported-by: Markus Carlstedt <markus.carlstedt@windriver.com>
Signed-off-by: Christina Wang <christina.wang@windriver.com>
Signed-off-by: Bin Meng <bin.meng@windriver.com>
---

(no changes since v1)

 hw/net/e1000.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/hw/net/e1000.c b/hw/net/e1000.c
index 4f75b44cfc..20cbba6411 100644
--- a/hw/net/e1000.c
+++ b/hw/net/e1000.c
@@ -29,6 +29,7 @@
 #include "hw/pci/pci.h"
 #include "hw/qdev-properties.h"
 #include "migration/vmstate.h"
+#include "net/eth.h"
 #include "net/net.h"
 #include "net/checksum.h"
 #include "sysemu/sysemu.h"
@@ -254,6 +255,7 @@ static const uint32_t mac_reg_init[] = {
     [MANC]    = E1000_MANC_EN_MNG2HOST | E1000_MANC_RCV_TCO_EN |
                 E1000_MANC_ARP_EN | E1000_MANC_0298_EN |
                 E1000_MANC_RMCP_EN,
+    [VET]     = ETH_P_VLAN,
 };
 
 /* Helper function, *curr == 0 means the value is not set */
-- 
2.25.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2021-07-14  9:26 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-02  9:24 [PATCH v2 1/3] hw/net: e1000: Correct the initial value of VET register Bin Meng
2021-07-02  9:24 ` [PATCH v2 2/3] hw/net: e1000e: " Bin Meng
2021-07-02  9:24 ` [PATCH v2 3/3] hw/net: e1000e: Don't zero out the VLAN tag in the legacy RX descriptor Bin Meng
2021-07-05  4:21 ` [PATCH v2 1/3] hw/net: e1000: Correct the initial value of VET register Jason Wang
2021-07-05  5:57   ` Bin Meng
2021-07-12 23:06     ` Bin Meng
2021-07-13  7:03       ` Jason Wang
2021-07-13  8:36         ` Bin Meng
2021-07-13  9:02           ` Jason Wang
2021-07-13  9:11             ` Bin Meng
2021-07-14  3:10               ` Jason Wang
2021-07-14  3:42                 ` Bin Meng
2021-07-14  4:53                   ` Jason Wang
2021-07-14  6:04                     ` Bin Meng
2021-07-14  8:40                       ` Jason Wang
2021-07-14  9:05                         ` Bin Meng
2021-07-14  9:17                           ` Jason Wang
2021-07-14  9:00                   ` Peter Maydell
2021-07-14  9:14                     ` Bin Meng
2021-07-14  9:24                       ` Jason Wang

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.