diff mbox series

[edk2,edk2-non-osi,v2,4/4] Silicon/Hisilicon/D06: Add Oem Shell libraries

Message ID 20180814080451.48845-5-ming.huang@linaro.org
State Superseded
Headers show
Series Upload D06 binary modules | expand

Commit Message

Ming Huang Aug. 14, 2018, 8:04 a.m. UTC
Add Hisilicon Oem Shell libraries for some commands,such as
biosupdate, getmac, setmac, provision, acpistartos, brdinfo,
sfpinfo.

biosupdate example:
ifconfig -s eth2 static 192.168.2.68 255.255.255.0 192.168.2.1
biosupdate serverIp -u user -p password -f D06.fd -m master

acpistartos example:
ifconfig -s eth2 static 192.168.2.69 255.255.255.0 192.168.2.1
provision serverIp -u user -p password -f os\Image -a 0x80000
2
provision serverIp -u user -p password -f os\minifs.cpio.gz -a
0x07000000
2
acpistartos

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ming Huang <ming.huang@linaro.org>

---
 Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.inf |  41 ++++++++++++++
 Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.inf              |  59 ++++++++++++++++++++
 Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.lib | Bin 0 -> 144880 bytes
 Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.lib              | Bin 0 -> 1109382 bytes
 4 files changed, 100 insertions(+)

diff --git a/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.lib b/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.lib
new file mode 100644
index 0000000..9ba14a2
Binary files /dev/null and b/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.lib differ
diff --git a/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.lib b/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.lib
new file mode 100644
index 0000000..d3ca398
Binary files /dev/null and b/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.lib differ
-- 
2.17.0

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Comments

Leif Lindholm Aug. 15, 2018, 3:22 p.m. UTC | #1
On Tue, Aug 14, 2018 at 04:04:51PM +0800, Ming Huang wrote:
> Add Hisilicon Oem Shell libraries for some commands,such as

> biosupdate, getmac, setmac, provision, acpistartos, brdinfo,

> sfpinfo.

> 

> biosupdate example:

> ifconfig -s eth2 static 192.168.2.68 255.255.255.0 192.168.2.1

> biosupdate serverIp -u user -p password -f D06.fd -m master


Is this expected to be used in reality?
There is capsule update and there is a BMC - why do you need a magic
platform-specific command in the Shell?
Is it a debug feature?

> acpistartos example:

> ifconfig -s eth2 static 192.168.2.69 255.255.255.0 192.168.2.1

> provision serverIp -u user -p password -f os\Image -a 0x80000

> 2

> provision serverIp -u user -p password -f os\minifs.cpio.gz -a

> 0x07000000

> 2

> acpistartos


Why is there a magic Shell comand to load a Linux kernel and
initramfs? This is the opposite of what UEFI is for.

/
    Leif

> Contributed-under: TianoCore Contribution Agreement 1.1

> Signed-off-by: Ming Huang <ming.huang@linaro.org>

> ---

>  Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.inf |  41 ++++++++++++++

>  Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.inf              |  59 ++++++++++++++++++++

>  Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.lib | Bin 0 -> 144880 bytes

>  Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.lib              | Bin 0 -> 1109382 bytes

>  4 files changed, 100 insertions(+)

> 

> diff --git a/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.inf b/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.inf

> new file mode 100644

> index 0000000..3dea3fb

> --- /dev/null

> +++ b/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.inf

> @@ -0,0 +1,41 @@

> +/** @file

> +*

> +*  Copyright (c) 2018, Hisilicon Limited. All rights reserved.

> +*  Copyright (c) 2018, Linaro Limited. All rights reserved.

> +*

> +*  This program and the accompanying materials

> +*  are licensed and made available under the terms and conditions of the BSD License

> +*  which accompanies this distribution.  The full text of the license may be found at

> +*  http://opensource.org/licenses/bsd-license.php

> +*

> +*  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,

> +*  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

> +*

> +**/

> +

> +

> +

> +[Defines]

> +  INF_VERSION                    = 0x0001001A

> +  BASE_NAME                      = HisiD06ShellCmdLib

> +  FILE_GUID                      = 41878264-1668-460f-b0bf-26bdc89d464c

> +  MODULE_TYPE                    = UEFI_APPLICATION

> +  VERSION_STRING                 = 1.0

> +  LIBRARY_CLASS                  = NULL|UEFI_APPLICATION UEFI_DRIVER

> +  CONSTRUCTOR                    = HisiD06ShellCmdLibConstructor

> +  DESTRUCTOR                     = HisiD06ShellCmdLibDestructor

> +

> +

> +[Binaries.AARCH64]

> +  LIB|HisiD06ShellCmdLib.lib|*

> +

> +[Packages]

> +  ShellPkg/ShellPkg.dec

> +  Silicon/Hisilicon/HisiPkg.dec

> +

> +[LibraryClasses]

> +  I2CLib

> +  ShellLib

> +

> +[Guids]

> +  HisiPlatformShellSampleHiiGuid                 ## CONSUMES ## HII

> diff --git a/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.inf b/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.inf

> new file mode 100644

> index 0000000..a81af92

> --- /dev/null

> +++ b/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.inf

> @@ -0,0 +1,59 @@

> +/** @file

> +*

> +*  Copyright (c) 2018, Hisilicon Limited. All rights reserved.

> +*  Copyright (c) 2018, Linaro Limited. All rights reserved.

> +*

> +*  This program and the accompanying materials

> +*  are licensed and made available under the terms and conditions of the BSD License

> +*  which accompanies this distribution.  The full text of the license may be found at

> +*  http://opensource.org/licenses/bsd-license.php

> +*

> +*  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,

> +*  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

> +*

> +**/

> +

> +

> +[Defines]

> +  INF_VERSION                    = 0x0001001A

> +  BASE_NAME                      = HisiShellCmdLib

> +  FILE_GUID                      = 88324505-C49D-4eac-8253-75D324457B88

> +  MODULE_TYPE                    = UEFI_APPLICATION

> +  VERSION_STRING                 = 1.0

> +  LIBRARY_CLASS                  = NULL|UEFI_APPLICATION UEFI_DRIVER

> +  CONSTRUCTOR                    = HisiShellCmdLibConstructor

> +  DESTRUCTOR                     = HisiShellCmdLibDestructor

> +

> +[Binaries.AARCH64]

> +  LIB|HisiShellCmdLib.lib|*

> +

> +[Packages]

> +  ArmPkg/ArmPkg.dec

> +  ShellPkg/ShellPkg.dec

> +  Silicon/Hisilicon/HisiPkg.dec

> +

> +[LibraryClasses]

> +  ArmSmcLib

> +  IpmiCmdLib

> +  PcdLib

> +  ShellCommandLib

> +  ShellLib

> +

> +[Pcd]

> +  gEfiShellPkgTokenSpaceGuid.PcdShellProfileMask ## CONSUMES

> +  gHisiTokenSpaceGuid.PcdMdioSubctrlAddress      ## CONSUMES

> +  gHisiTokenSpaceGuid.PcdStartOsParameter        ## CONSUMES

> +

> +[FixedPcd.common]

> +  gArmTokenSpaceGuid.PcdFdSize                    ## CONSUMES

> +  gHisiTokenSpaceGuid.PcdBaseBoardProductName     ## CONSUMES

> +  gHisiTokenSpaceGuid.PcdTrustedFirmwareEnable    ## CONSUMES

> +

> +[Protocols]

> +  gHisiSpiFlashProtocolGuid                       ## CONSUMES

> +  gOemNicProtocolGuid                             ## CONSUMES

> +  gUniNorFlashProtocolGuid                        ## CONSUMES

> +

> +[Guids]

> +  gVersionInfoHobGuid                             ## CONSUMES

> +  HisiShellSampleHiiGuid                          ## CONSUMES ## HII

> diff --git a/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.lib b/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.lib

> new file mode 100644

> index 0000000..9ba14a2

> Binary files /dev/null and b/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.lib differ

> diff --git a/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.lib b/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.lib

> new file mode 100644

> index 0000000..d3ca398

> Binary files /dev/null and b/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.lib differ

> -- 

> 2.17.0

> 

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Ming Huang Aug. 16, 2018, 2:08 a.m. UTC | #2
在 8/15/2018 11:22 PM, Leif Lindholm 写道:
> On Tue, Aug 14, 2018 at 04:04:51PM +0800, Ming Huang wrote:
>> Add Hisilicon Oem Shell libraries for some commands,such as
>> biosupdate, getmac, setmac, provision, acpistartos, brdinfo,
>> sfpinfo.
>>
>> biosupdate example:
>> ifconfig -s eth2 static 192.168.2.68 255.255.255.0 192.168.2.1
>> biosupdate serverIp -u user -p password -f D06.fd -m master
> 
> Is this expected to be used in reality?
> There is capsule update and there is a BMC - why do you need a magic
> platform-specific command in the Shell?
> Is it a debug feature?

Yes, it is a debug feature. Think about this case, we don't have a hpm file,
and only have fd file or .cap file.
for capsule update in uefi shell, ramdisk or USB disk is needed,
or we must boot to OS to update .cap.
It is convenient to update fd file in uefi shell.

> 
>> acpistartos example:
>> ifconfig -s eth2 static 192.168.2.69 255.255.255.0 192.168.2.1
>> provision serverIp -u user -p password -f os\Image -a 0x80000
>> 2
>> provision serverIp -u user -p password -f os\minifs.cpio.gz -a
>> 0x07000000
>> 2
>> acpistartos
> 
> Why is there a magic Shell comand to load a Linux kernel and
> initramfs? This is the opposite of what UEFI is for.

This is also for debug. It is convenient to boot OS while we don't
have disk in board and PXE setting.

> 
> /
>     Leif
> 
>> Contributed-under: TianoCore Contribution Agreement 1.1
>> Signed-off-by: Ming Huang <ming.huang@linaro.org>
>> ---
>>  Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.inf |  41 ++++++++++++++
>>  Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.inf              |  59 ++++++++++++++++++++
>>  Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.lib | Bin 0 -> 144880 bytes
>>  Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.lib              | Bin 0 -> 1109382 bytes
>>  4 files changed, 100 insertions(+)
>>
>> diff --git a/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.inf b/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.inf
>> new file mode 100644
>> index 0000000..3dea3fb
>> --- /dev/null
>> +++ b/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.inf
>> @@ -0,0 +1,41 @@
>> +/** @file
>> +*
>> +*  Copyright (c) 2018, Hisilicon Limited. All rights reserved.
>> +*  Copyright (c) 2018, Linaro Limited. All rights reserved.
>> +*
>> +*  This program and the accompanying materials
>> +*  are licensed and made available under the terms and conditions of the BSD License
>> +*  which accompanies this distribution.  The full text of the license may be found at
>> +*  http://opensource.org/licenses/bsd-license.php
>> +*
>> +*  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
>> +*  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
>> +*
>> +**/
>> +
>> +
>> +
>> +[Defines]
>> +  INF_VERSION                    = 0x0001001A
>> +  BASE_NAME                      = HisiD06ShellCmdLib
>> +  FILE_GUID                      = 41878264-1668-460f-b0bf-26bdc89d464c
>> +  MODULE_TYPE                    = UEFI_APPLICATION
>> +  VERSION_STRING                 = 1.0
>> +  LIBRARY_CLASS                  = NULL|UEFI_APPLICATION UEFI_DRIVER
>> +  CONSTRUCTOR                    = HisiD06ShellCmdLibConstructor
>> +  DESTRUCTOR                     = HisiD06ShellCmdLibDestructor
>> +
>> +
>> +[Binaries.AARCH64]
>> +  LIB|HisiD06ShellCmdLib.lib|*
>> +
>> +[Packages]
>> +  ShellPkg/ShellPkg.dec
>> +  Silicon/Hisilicon/HisiPkg.dec
>> +
>> +[LibraryClasses]
>> +  I2CLib
>> +  ShellLib
>> +
>> +[Guids]
>> +  HisiPlatformShellSampleHiiGuid                 ## CONSUMES ## HII
>> diff --git a/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.inf b/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.inf
>> new file mode 100644
>> index 0000000..a81af92
>> --- /dev/null
>> +++ b/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.inf
>> @@ -0,0 +1,59 @@
>> +/** @file
>> +*
>> +*  Copyright (c) 2018, Hisilicon Limited. All rights reserved.
>> +*  Copyright (c) 2018, Linaro Limited. All rights reserved.
>> +*
>> +*  This program and the accompanying materials
>> +*  are licensed and made available under the terms and conditions of the BSD License
>> +*  which accompanies this distribution.  The full text of the license may be found at
>> +*  http://opensource.org/licenses/bsd-license.php
>> +*
>> +*  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
>> +*  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
>> +*
>> +**/
>> +
>> +
>> +[Defines]
>> +  INF_VERSION                    = 0x0001001A
>> +  BASE_NAME                      = HisiShellCmdLib
>> +  FILE_GUID                      = 88324505-C49D-4eac-8253-75D324457B88
>> +  MODULE_TYPE                    = UEFI_APPLICATION
>> +  VERSION_STRING                 = 1.0
>> +  LIBRARY_CLASS                  = NULL|UEFI_APPLICATION UEFI_DRIVER
>> +  CONSTRUCTOR                    = HisiShellCmdLibConstructor
>> +  DESTRUCTOR                     = HisiShellCmdLibDestructor
>> +
>> +[Binaries.AARCH64]
>> +  LIB|HisiShellCmdLib.lib|*
>> +
>> +[Packages]
>> +  ArmPkg/ArmPkg.dec
>> +  ShellPkg/ShellPkg.dec
>> +  Silicon/Hisilicon/HisiPkg.dec
>> +
>> +[LibraryClasses]
>> +  ArmSmcLib
>> +  IpmiCmdLib
>> +  PcdLib
>> +  ShellCommandLib
>> +  ShellLib
>> +
>> +[Pcd]
>> +  gEfiShellPkgTokenSpaceGuid.PcdShellProfileMask ## CONSUMES
>> +  gHisiTokenSpaceGuid.PcdMdioSubctrlAddress      ## CONSUMES
>> +  gHisiTokenSpaceGuid.PcdStartOsParameter        ## CONSUMES
>> +
>> +[FixedPcd.common]
>> +  gArmTokenSpaceGuid.PcdFdSize                    ## CONSUMES
>> +  gHisiTokenSpaceGuid.PcdBaseBoardProductName     ## CONSUMES
>> +  gHisiTokenSpaceGuid.PcdTrustedFirmwareEnable    ## CONSUMES
>> +
>> +[Protocols]
>> +  gHisiSpiFlashProtocolGuid                       ## CONSUMES
>> +  gOemNicProtocolGuid                             ## CONSUMES
>> +  gUniNorFlashProtocolGuid                        ## CONSUMES
>> +
>> +[Guids]
>> +  gVersionInfoHobGuid                             ## CONSUMES
>> +  HisiShellSampleHiiGuid                          ## CONSUMES ## HII
>> diff --git a/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.lib b/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.lib
>> new file mode 100644
>> index 0000000..9ba14a2
>> Binary files /dev/null and b/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.lib differ
>> diff --git a/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.lib b/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.lib
>> new file mode 100644
>> index 0000000..d3ca398
>> Binary files /dev/null and b/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.lib differ
>> -- 
>> 2.17.0
>>
diff mbox series

Patch

diff --git a/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.inf b/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.inf
new file mode 100644
index 0000000..3dea3fb
--- /dev/null
+++ b/Silicon/Hisilicon/Hi1620/Library/HisiD06ShellCmdLib/HisiD06ShellCmdLib.inf
@@ -0,0 +1,41 @@ 
+/** @file
+*
+*  Copyright (c) 2018, Hisilicon Limited. All rights reserved.
+*  Copyright (c) 2018, Linaro Limited. All rights reserved.
+*
+*  This program and the accompanying materials
+*  are licensed and made available under the terms and conditions of the BSD License
+*  which accompanies this distribution.  The full text of the license may be found at
+*  http://opensource.org/licenses/bsd-license.php
+*
+*  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+*  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+*
+**/
+
+
+
+[Defines]
+  INF_VERSION                    = 0x0001001A
+  BASE_NAME                      = HisiD06ShellCmdLib
+  FILE_GUID                      = 41878264-1668-460f-b0bf-26bdc89d464c
+  MODULE_TYPE                    = UEFI_APPLICATION
+  VERSION_STRING                 = 1.0
+  LIBRARY_CLASS                  = NULL|UEFI_APPLICATION UEFI_DRIVER
+  CONSTRUCTOR                    = HisiD06ShellCmdLibConstructor
+  DESTRUCTOR                     = HisiD06ShellCmdLibDestructor
+
+
+[Binaries.AARCH64]
+  LIB|HisiD06ShellCmdLib.lib|*
+
+[Packages]
+  ShellPkg/ShellPkg.dec
+  Silicon/Hisilicon/HisiPkg.dec
+
+[LibraryClasses]
+  I2CLib
+  ShellLib
+
+[Guids]
+  HisiPlatformShellSampleHiiGuid                 ## CONSUMES ## HII
diff --git a/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.inf b/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.inf
new file mode 100644
index 0000000..a81af92
--- /dev/null
+++ b/Silicon/Hisilicon/Library/HisiShellCmdLib/HisiShellCmdLib.inf
@@ -0,0 +1,59 @@ 
+/** @file
+*
+*  Copyright (c) 2018, Hisilicon Limited. All rights reserved.
+*  Copyright (c) 2018, Linaro Limited. All rights reserved.
+*
+*  This program and the accompanying materials
+*  are licensed and made available under the terms and conditions of the BSD License
+*  which accompanies this distribution.  The full text of the license may be found at
+*  http://opensource.org/licenses/bsd-license.php
+*
+*  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+*  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+*
+**/
+
+
+[Defines]
+  INF_VERSION                    = 0x0001001A
+  BASE_NAME                      = HisiShellCmdLib
+  FILE_GUID                      = 88324505-C49D-4eac-8253-75D324457B88
+  MODULE_TYPE                    = UEFI_APPLICATION
+  VERSION_STRING                 = 1.0
+  LIBRARY_CLASS                  = NULL|UEFI_APPLICATION UEFI_DRIVER
+  CONSTRUCTOR                    = HisiShellCmdLibConstructor
+  DESTRUCTOR                     = HisiShellCmdLibDestructor
+
+[Binaries.AARCH64]
+  LIB|HisiShellCmdLib.lib|*
+
+[Packages]
+  ArmPkg/ArmPkg.dec
+  ShellPkg/ShellPkg.dec
+  Silicon/Hisilicon/HisiPkg.dec
+
+[LibraryClasses]
+  ArmSmcLib
+  IpmiCmdLib
+  PcdLib
+  ShellCommandLib
+  ShellLib
+
+[Pcd]
+  gEfiShellPkgTokenSpaceGuid.PcdShellProfileMask ## CONSUMES
+  gHisiTokenSpaceGuid.PcdMdioSubctrlAddress      ## CONSUMES
+  gHisiTokenSpaceGuid.PcdStartOsParameter        ## CONSUMES
+
+[FixedPcd.common]
+  gArmTokenSpaceGuid.PcdFdSize                    ## CONSUMES
+  gHisiTokenSpaceGuid.PcdBaseBoardProductName     ## CONSUMES
+  gHisiTokenSpaceGuid.PcdTrustedFirmwareEnable    ## CONSUMES
+
+[Protocols]
+  gHisiSpiFlashProtocolGuid                       ## CONSUMES
+  gOemNicProtocolGuid                             ## CONSUMES
+  gUniNorFlashProtocolGuid                        ## CONSUMES
+
+[Guids]
+  gVersionInfoHobGuid                             ## CONSUMES
+  HisiShellSampleHiiGuid                          ## CONSUMES ## HII