]> git.proxmox.com Git - mirror_edk2.git/commit
NetworkPkg/SnpDxe: Add PCD to remove ExitBootServices event from SNP driver.
authorRabeda, Maciej <maciej.rabeda@intel.com>
Mon, 14 Oct 2019 12:37:28 +0000 (20:37 +0800)
committerSiyuan Fu <siyuan.fu@intel.com>
Mon, 21 Oct 2019 06:50:51 +0000 (14:50 +0800)
commit61bb6eeb4d93c0a34c1995d87914ab41398f9550
tree2a46263a4bc6667f455e9c59881fbad60bd14862
parent109197ee116b80f70acafe91e36e7172efcb9c6c
NetworkPkg/SnpDxe: Add PCD to remove ExitBootServices event from SNP driver.

Patch addresses Bugzilla #1974.

During ExitBootServices stage, drivers should not call any
functions known to use Memory Allocation Services. One of such
functions (as per UEFI spec) is UNDI->Shutdown().

Since UNDI drivers during ExitBootServices phase are expected
to put the adapter to such a state that it will not perform any DMA
operations, there is no need to interface UNDI by SNP driver during
that phase.

Finally, since ExitBootServices event notification function in SNP
only calls UNDI->Shutdown() and Stop() functions, there is no need
to create this event at all. Adding PCD to control creation of event
reacting to ExitBootServices() call so that systems with UNDIs relying
on SNP to call their Shutdown() and Stop() can still work.

Change-Id: Idd76f26d2e8ff7cf88b2d75e2d524c74211f2e89
Reviewed-by: Siyuan Fu <siyuan.fu@intel.com>
Signed-off-by: Maciej Rabeda <maciej.rabeda@intel.com>
Cc: Siyuan Fu <siyuan.fu@intel.com>
Cc: Jiaxin Wu <jiaxin.wu@intel.com>
NetworkPkg/NetworkPkg.dec
NetworkPkg/SnpDxe/Snp.c
NetworkPkg/SnpDxe/Snp.h
NetworkPkg/SnpDxe/SnpDxe.inf