From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 8120B21A0483B for ; Wed, 19 Apr 2017 20:23:24 -0700 (PDT) Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga101.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 19 Apr 2017 20:23:24 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.37,223,1488873600"; d="scan'208";a="91962918" Received: from ray-dev.ccr.corp.intel.com ([10.239.9.25]) by fmsmga006.fm.intel.com with ESMTP; 19 Apr 2017 20:23:23 -0700 From: Ruiyu Ni To: edk2-devel@lists.01.org Cc: Fan Wang , Jiaxin Wu Date: Thu, 20 Apr 2017 11:23:21 +0800 Message-Id: <20170420032321.61692-1-ruiyu.ni@intel.com> X-Mailer: git-send-email 2.12.2.windows.2 Subject: [PATCH] MdeModulePKg/BDS: Build meaningful description for Wi-Fi boot option X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Apr 2017 03:23:24 -0000 Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni Cc: Fan Wang Cc: Jiaxin Wu --- .../Library/UefiBootManagerLib/BmBootDescription.c | 28 ++++++++++++++++++---- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/MdeModulePkg/Library/UefiBootManagerLib/BmBootDescription.c b/MdeModulePkg/Library/UefiBootManagerLib/BmBootDescription.c index 501a0cc255..6e69a1540a 100644 --- a/MdeModulePkg/Library/UefiBootManagerLib/BmBootDescription.c +++ b/MdeModulePkg/Library/UefiBootManagerLib/BmBootDescription.c @@ -382,13 +382,13 @@ BmGetNetworkDescription ( // // The PXE device path is like: - // ....../Mac(...)[/Vlan(...)] - // ....../Mac(...)[/Vlan(...)]/IPv4(...) - // ....../Mac(...)[/Vlan(...)]/IPv6(...) + // ....../Mac(...)[/Vlan(...)][/Wi-Fi(...)] + // ....../Mac(...)[/Vlan(...)][/Wi-Fi(...)]/IPv4(...) + // ....../Mac(...)[/Vlan(...)][/Wi-Fi(...)]/IPv6(...) // // The HTTP device path is like: - // ....../Mac(...)[/Vlan(...)]/IPv4(...)/Uri(...) - // ....../Mac(...)[/Vlan(...)]/IPv6(...)/Uri(...) + // ....../Mac(...)[/Vlan(...)][/Wi-Fi(...)]/IPv4(...)/Uri(...) + // ....../Mac(...)[/Vlan(...)][/Wi-Fi(...)]/IPv6(...)/Uri(...) // while (!IsDevicePathEnd (DevicePath) && ((DevicePathType (DevicePath) != MESSAGING_DEVICE_PATH) || @@ -404,6 +404,9 @@ BmGetNetworkDescription ( Mac = (MAC_ADDR_DEVICE_PATH *) DevicePath; DevicePath = NextDevicePathNode (DevicePath); + // + // Locate the optional Vlan node + // if ((DevicePathType (DevicePath) == MESSAGING_DEVICE_PATH) && (DevicePathSubType (DevicePath) == MSG_VLAN_DP) ) { @@ -413,6 +416,18 @@ BmGetNetworkDescription ( Vlan = NULL; } + // + // Skip the optional Wi-Fi node + // + if ((DevicePathType (DevicePath) == MESSAGING_DEVICE_PATH) && + (DevicePathSubType (DevicePath) == MSG_WIFI_DP) + ) { + DevicePath = NextDevicePathNode (DevicePath); + } + + // + // Locate the IP node + // if ((DevicePathType (DevicePath) == MESSAGING_DEVICE_PATH) && ((DevicePathSubType (DevicePath) == MSG_IPv4_DP) || (DevicePathSubType (DevicePath) == MSG_IPv6_DP)) @@ -423,6 +438,9 @@ BmGetNetworkDescription ( Ip = NULL; } + // + // Locate the URI node + // if ((DevicePathType (DevicePath) == MESSAGING_DEVICE_PATH) && (DevicePathSubType (DevicePath) == MSG_URI_DP) ) { -- 2.12.2.windows.2