From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ilias Apalodimas Date: Tue, 12 May 2020 07:02:55 +0300 Subject: [PATCH 3/5 v2] cmd: efidebug: Add support for querying UEFI variable storage In-Reply-To: References: <20200511181403.19448-1-ilias.apalodimas@linaro.org> <20200511181403.19448-4-ilias.apalodimas@linaro.org> Message-ID: <20200512040255.GA38441@apalos.home> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Mon, May 11, 2020 at 08:54:04PM +0200, Heinrich Schuchardt wrote: > On 5/11/20 8:14 PM, Ilias Apalodimas wrote: > > With the previous patches that use OP-TEE and StandAloneMM for UEFI > > variable storage we've added functionality for efi_query_variable_info. > > So let's add the relevant command to efidebug and retrieve information > > about the container used to store UEFI variables > > > > Signed-off-by: Ilias Apalodimas > > For now attributes (e.g. EFI_VARIABLE_NON_VOLATILE) cannot be passed to > the 'efidebug query' sub-command instead a fixed value is used. We can > add attributes on the command line later. Good point, I'll add it on the commit message for v3 > > > --- > > cmd/efidebug.c | 44 +++++++++++++++++++++++++++++++++++++++++++- > > 1 file changed, 43 insertions(+), 1 deletion(-) > > > > diff --git a/cmd/efidebug.c b/cmd/efidebug.c > > index d8a76d78a388..a3980772c934 100644 > > --- a/cmd/efidebug.c > > +++ b/cmd/efidebug.c > > @@ -1160,6 +1160,44 @@ static int do_efi_test(cmd_tbl_t *cmdtp, int flag, > > return cp->cmd(cmdtp, flag, argc, argv); > > } > > > > +/** > > + * do_efi_query_info() - QueryVariableInfo EFI service > > + * > > + * @cmdtp: Command table > > + * @flag: Command flag > > + * @argc: Number of arguments > > + * @argv: Argument array > > + * Return: CMD_RET_SUCCESS on success, > > + * CMD_RET_USAGE or CMD_RET_FAILURE on failure > > + * > > + * Implement efidebug "test" sub-command. > > + */ > > + > > +static int do_efi_query_info(cmd_tbl_t *cmdtp, int flag, > > + int argc, char * const argv[]) > > +{ > > + efi_status_t ret; > > + u32 attr = EFI_VARIABLE_BOOTSERVICE_ACCESS | > > + EFI_VARIABLE_RUNTIME_ACCESS | > > + EFI_VARIABLE_NON_VOLATILE; > > As we do not support variables at runtime currently shouldn't we remove > EFI_VARIABLE_RUNTIME_ACCESS from the default value? I could do that when > merging. We can still add variables marked as runtime in U-Boot's cmd line although we don't support those in Linux. So I'd keep that flag on the defaults. > > Otherwise: > > Reviewed-by: Heinrich Schuchardt > Regards /Ilias