public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: Ruiyu Ni <ruiyu.ni@intel.com>
To: edk2-devel@lists.01.org
Subject: [PATCH v2 0/3] Convert from NULL class library to Dynamic Command
Date: Mon, 27 Nov 2017 13:55:29 +0800	[thread overview]
Message-ID: <20171127055532.320556-1-ruiyu.ni@intel.com> (raw)

UEFI Shell spec defines Shell Dynamic Command protocol which is just for the purpose to extend internal command.
So tftp and dp are changed from NULL class library to be drivers producing DynamicCommand protocol.

The guideline is:
1. Only use NULL class library for Shell spec defined commands.
2. New commands can be provided as not only a standalone application
   but also a dynamic command. So it can be used either as an
   internal command, but also as a standalone application.

v2:
   Fix GCC build failures
   Completely remove Dp library reference from DSC file.
   Set PcdShellLibAutoInitialize to TRUE for DP and TFTP.

Ruiyu Ni (3):
  ShellPkg/ShellLib: Constructor doesn't depend on ShellParameters
  ShellPkg/tftp: Convert from NULL class library to Dynamic Command
  ShellPkg/dp: Convert from NULL class library to Dynamic Command

 .../DpDynamicCommand}/Dp.c                         | 100 +++++++----
 .../DpDynamicCommand}/Dp.h                         |  63 ++++++-
 .../DpDynamicCommand/Dp.uni}                       |   0
 ShellPkg/DynamicCommand/DpDynamicCommand/DpApp.c   |  53 ++++++
 ShellPkg/DynamicCommand/DpDynamicCommand/DpApp.inf |  73 +++++++++
 .../DpDynamicCommand/DpDynamicCommand.c            | 130 +++++++++++++++
 .../DpDynamicCommand/DpDynamicCommand.inf          |  78 +++++++++
 .../DpDynamicCommand}/DpInternal.h                 |   2 +-
 .../DpDynamicCommand}/DpProfile.c                  |  34 ++--
 .../DpDynamicCommand}/DpTrace.c                    | 182 ++++++++++-----------
 .../DpDynamicCommand}/DpUtilities.c                |  44 +++--
 .../DpDynamicCommand}/Literals.c                   |   0
 .../DpDynamicCommand}/Literals.h                   |   0
 .../DpDynamicCommand}/PerformanceTokens.h          |   0
 .../TftpDynamicCommand}/Tftp.c                     |  92 ++++++++---
 .../TftpDynamicCommand/Tftp.h}                     |  40 +++--
 .../TftpDynamicCommand/Tftp.uni}                   |   0
 .../DynamicCommand/TftpDynamicCommand/TftpApp.c    |  54 ++++++
 .../TftpDynamicCommand/TftpApp.inf}                |  34 ++--
 .../TftpDynamicCommand/TftpDynamicCommand.c        | 131 +++++++++++++++
 .../TftpDynamicCommand/TftpDynamicCommand.inf}     |  39 +++--
 ShellPkg/Library/UefiDpLib/Readme.txt              |   2 -
 ShellPkg/Library/UefiDpLib/UefiDpLib.c             | 101 ------------
 ShellPkg/Library/UefiDpLib/UefiDpLib.h             |  64 --------
 ShellPkg/Library/UefiDpLib/UefiDpLib.inf           |  77 ---------
 ShellPkg/Library/UefiShellLib/UefiShellLib.c       |  12 +-
 .../UefiShellTftpCommandLib.c                      |  97 -----------
 ShellPkg/ShellPkg.dsc                              |  28 ++--
 28 files changed, 938 insertions(+), 592 deletions(-)
 rename ShellPkg/{Library/UefiDpLib => DynamicCommand/DpDynamicCommand}/Dp.c (84%)
 rename ShellPkg/{Library/UefiDpLib => DynamicCommand/DpDynamicCommand}/Dp.h (70%)
 rename ShellPkg/{Library/UefiDpLib/UefiDpLib.uni => DynamicCommand/DpDynamicCommand/Dp.uni} (100%)
 create mode 100644 ShellPkg/DynamicCommand/DpDynamicCommand/DpApp.c
 create mode 100644 ShellPkg/DynamicCommand/DpDynamicCommand/DpApp.inf
 create mode 100644 ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.c
 create mode 100644 ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.inf
 rename ShellPkg/{Library/UefiDpLib => DynamicCommand/DpDynamicCommand}/DpInternal.h (96%)
 rename ShellPkg/{Library/UefiDpLib => DynamicCommand/DpDynamicCommand}/DpProfile.c (87%)
 rename ShellPkg/{Library/UefiDpLib => DynamicCommand/DpDynamicCommand}/DpTrace.c (89%)
 rename ShellPkg/{Library/UefiDpLib => DynamicCommand/DpDynamicCommand}/DpUtilities.c (87%)
 rename ShellPkg/{Library/UefiDpLib => DynamicCommand/DpDynamicCommand}/Literals.c (100%)
 rename ShellPkg/{Library/UefiDpLib => DynamicCommand/DpDynamicCommand}/Literals.h (100%)
 rename ShellPkg/{Library/UefiDpLib => DynamicCommand/DpDynamicCommand}/PerformanceTokens.h (100%)
 rename ShellPkg/{Library/UefiShellTftpCommandLib => DynamicCommand/TftpDynamicCommand}/Tftp.c (91%)
 mode change 100755 => 100644
 rename ShellPkg/{Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.h => DynamicCommand/TftpDynamicCommand/Tftp.h} (56%)
 rename ShellPkg/{Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.uni => DynamicCommand/TftpDynamicCommand/Tftp.uni} (100%)
 create mode 100644 ShellPkg/DynamicCommand/TftpDynamicCommand/TftpApp.c
 copy ShellPkg/{Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.inf => DynamicCommand/TftpDynamicCommand/TftpApp.inf} (59%)
 create mode 100644 ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.c
 rename ShellPkg/{Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.inf => DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf} (55%)
 delete mode 100644 ShellPkg/Library/UefiDpLib/Readme.txt
 delete mode 100644 ShellPkg/Library/UefiDpLib/UefiDpLib.c
 delete mode 100644 ShellPkg/Library/UefiDpLib/UefiDpLib.h
 delete mode 100644 ShellPkg/Library/UefiDpLib/UefiDpLib.inf
 delete mode 100644 ShellPkg/Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.c

-- 
2.15.0.gvfs.1.preview.4



             reply	other threads:[~2017-11-27  5:51 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-27  5:55 Ruiyu Ni [this message]
2017-11-27  5:55 ` [PATCH v2 1/3] ShellPkg/ShellLib: Constructor doesn't depend on ShellParameters Ruiyu Ni
2017-11-27  5:55 ` [PATCH v2 2/3] ShellPkg/tftp: Convert from NULL class library to Dynamic Command Ruiyu Ni
2017-11-28  7:34   ` Ard Biesheuvel
2017-11-28  7:40     ` Ni, Ruiyu
2017-11-27  5:55 ` [PATCH v2 3/3] ShellPkg/dp: " Ruiyu Ni
2017-11-27 14:59   ` Carsey, Jaben

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20171127055532.320556-1-ruiyu.ni@intel.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox