]> git.proxmox.com Git - mirror_edk2.git/blobdiff - OvmfPkg/VirtioNetDxe/VirtioNet.h
OvmfPkg/VirtioNetDxe: dynamically alloc transmit header
[mirror_edk2.git] / OvmfPkg / VirtioNetDxe / VirtioNet.h
index 2d3f3d87eb1121639ac1a2291d2ef54ac9ecdd35..027f75993e8e2f51120526b95d0bb622048fc474 100644 (file)
@@ -4,6 +4,7 @@
   Protocol instances for virtio-net devices.\r
 \r
   Copyright (C) 2013, Red Hat, Inc.\r
+  Copyright (c) 2017, AMD Inc, All rights reserved.<BR>\r
 \r
   This program and the accompanying materials are licensed and made available\r
   under the terms and conditions of the BSD License which accompanies this\r
@@ -82,14 +83,22 @@ typedef struct {
   EFI_HANDLE                  MacHandle;         // VirtioNetDriverBindingStart\r
 \r
   VRING                       RxRing;            // VirtioNetInitRing\r
+  VOID                        *RxRingMap;        // VirtioRingMap and\r
+                                                 // VirtioNetInitRing\r
   UINT8                       *RxBuf;            // VirtioNetInitRx\r
   UINT16                      RxLastUsed;        // VirtioNetInitRx\r
+  UINTN                       RxBufNrPages;      // VirtioNetInitRx\r
+  EFI_PHYSICAL_ADDRESS        RxBufDeviceBase;   // VirtioNetInitRx\r
+  VOID                        *RxBufMap;         // VirtioNetInitRx\r
 \r
   VRING                       TxRing;            // VirtioNetInitRing\r
+  VOID                        *TxRingMap;        // VirtioRingMap and\r
+                                                 // VirtioNetInitRing\r
   UINT16                      TxMaxPending;      // VirtioNetInitTx\r
   UINT16                      TxCurPending;      // VirtioNetInitTx\r
   UINT16                      *TxFreeStack;      // VirtioNetInitTx\r
-  VIRTIO_NET_REQ              TxSharedReq;       // VirtioNetInitTx\r
+  VIRTIO_1_0_NET_REQ          *TxSharedReq;      // VirtioNetInitTx\r
+  VOID                        *TxSharedReqMap;   // VirtioNetInitTx\r
   UINT16                      TxLastUsed;        // VirtioNetInitTx\r
 } VNET_DEV;\r
 \r
@@ -263,6 +272,14 @@ VirtioNetShutdownTx (
   IN OUT VNET_DEV *Dev\r
   );\r
 \r
+VOID\r
+EFIAPI\r
+VirtioNetUninitRing (\r
+  IN OUT VNET_DEV *Dev,\r
+  IN OUT VRING    *Ring,\r
+  IN     VOID     *RingMap\r
+  );\r
+\r
 //\r
 // event callbacks\r
 //\r