summaryrefslogtreecommitdiffstats
path: root/NetworkPkg/IScsiDxe/IScsiMisc.h
diff options
context:
space:
mode:
authorZhang Lubo <lubo.zhang@intel.com>2017-02-17 14:43:41 +0800
committerJiaxin Wu <jiaxin.wu@intel.com>2017-02-23 16:50:54 +0800
commit8d1f5e04168c1f140cd421fd95cff516a3629b72 (patch)
treecd8fd4073b3145bd4841faf06cba85dd658a9c4a /NetworkPkg/IScsiDxe/IScsiMisc.h
parent1d8cebf91040e74f6c82352edd5c5cccf6b69853 (diff)
downloadedk2-8d1f5e04168c1f140cd421fd95cff516a3629b72.tar.gz
edk2-8d1f5e04168c1f140cd421fd95cff516a3629b72.tar.bz2
edk2-8d1f5e04168c1f140cd421fd95cff516a3629b72.zip
NetworkPkg:Add scriptable configuration to iSCSI driver by leveraging x-UEFI.
v2: Add error handling if can not create Attempts in driver entry point. Since we support to define a macro be a PCD value, we enhance our code by modifying the structure in IFR_NVDATA. This effect code logic mainly in Creating Keywords,Convert IFR NvData To AttemptConfigData ByKeyword and reverse function. Fix typo errors and sync based on the latest code. Enable iSCSI keywords configuration based on x-UEFI name space. we introduce new PCD to control the attempt numbers which will be created in non activated state, besides the Attempt name is changed to READ_ONLY attribute in UI. We can invoke KEYWORD HANDLER Protocol to configure the related keywords. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Zhang Lubo <lubo.zhang@intel.com> Cc: Ye Ting <ting.ye@intel.com> Cc: Fu Siyuan <siyuan.fu@intel.com> Cc: Wu Jiaxin <jiaxin.wu@intel.com> Reviewed-by: Ye Ting <ting.ye@intel.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-by: Wu Jiaxin jiaxin.wu@intel.com
Diffstat (limited to 'NetworkPkg/IScsiDxe/IScsiMisc.h')
-rw-r--r--NetworkPkg/IScsiDxe/IScsiMisc.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/NetworkPkg/IScsiDxe/IScsiMisc.h b/NetworkPkg/IScsiDxe/IScsiMisc.h
index 2c0fe07fdb..caa2f94bb1 100644
--- a/NetworkPkg/IScsiDxe/IScsiMisc.h
+++ b/NetworkPkg/IScsiDxe/IScsiMisc.h
@@ -244,6 +244,44 @@ IScsiRemoveNic (
);
/**
+ Create and initialize the Attempts.
+
+ @param[in] AttemptNum The number of Attempts will be created.
+
+ @retval EFI_SUCCESS The Attempts have been created successfully.
+ @retval Others Failed to create the Attempt.
+
+**/
+EFI_STATUS
+IScsiCreateAttempts (
+ IN UINTN AttemptNum
+ );
+
+/**
+ Create the iSCSI configuration Keywords for each attempt.
+
+ @param[in] KeywordNum The number Sets of Keywords will be created.
+
+ @retval EFI_SUCCESS The operation is completed.
+ @retval Others Failed to create the Keywords.
+
+**/
+EFI_STATUS
+IScsiCreateKeywords (
+ IN UINTN KeywordNum
+ );
+
+/**
+
+ Free the attempt configure data variable.
+
+**/
+VOID
+IScsiCleanAttemptVariable (
+ IN VOID
+ );
+
+/**
Get the recorded NIC information from a global structure by the Index.
@param[in] NicIndex The index indicates the position of NIC info.