From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-it0-x22b.google.com (mail-it0-x22b.google.com [IPv6:2607:f8b0:4001:c0b::22b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id D936181F27 for ; Wed, 16 Nov 2016 13:48:33 -0800 (PST) Received: by mail-it0-x22b.google.com with SMTP id l8so13244444iti.1 for ; Wed, 16 Nov 2016 13:48:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=semihalf-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=evHoPskR6qUibkoiTVEVxIyCuucr0L0QURZXOpW7pRI=; b=yHr+f7Nx9eETWAz7f9v40cQY1yw9Ig1NfVrENSuAOyE27DIwy2PzHrowvNe1WF0yjJ kz3obflhl5hVTuUNHNFs7wI57fwahIgrNbb1FSlxsrMjG1/RxCeWpbCaWW+GfOiN21/R kscc5K0lDLkRTZ14iK1czbxbwI1KqgIutizbe8WoDIRjmvOjXu/i0YVBftUrdz4cgHW5 aBOWmTOTnIObIlIU+veW0XoPIESfmOXXnPOEjNd8SlvFhPhNQf/723bxeReZXH99G+lP Lh9zOod+wUu1XNjTCfSdzRCyTnSxTk+cIrcna7oir4MJ9RvcH6IDB+d+9QouB5ZTdJn0 +Oqg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=evHoPskR6qUibkoiTVEVxIyCuucr0L0QURZXOpW7pRI=; b=bugZUjwS52M888uTr644fwsTKynoTNKNxrckpjzQ25BRvUPJQZAzkA0KMZqJuYnBOW bEcelH1yc7PgwHjxxAOFZNP/8JsdHtwdTnm+XoEPzUBPxMlIgyBFXk64SrbLVlx+CrX0 ZU+4jijn0Tf6o9MU6t01W0Q/3NZIxn7LKSuiG374gqr/I7XJjjS0lHEJQClmTohnjVqn oRnSQFs2zSS3cOpP/hnJPZ+kX6HWJF4KXSxInIpVp6ofzmW0dV7g5Mq0mdNl5J/eRqfC nbyfDTPZ5g5OHGLUktlo43J0xMwvHseSho2OSjnt440/n8rQ9LAXgg9alnqcscGBwVKQ qmMg== X-Gm-Message-State: ABUngve/97vg3BfsbRX6v5Ish9ZL8tFKYySbgDNNUhn8qCnKJEMkbHepEdxut5L3agwuX7WUx0xQ+PC1stY0eA== X-Received: by 10.36.225.75 with SMTP id n72mr287579ith.13.1479332917324; Wed, 16 Nov 2016 13:48:37 -0800 (PST) MIME-Version: 1.0 Received: by 10.107.25.140 with HTTP; Wed, 16 Nov 2016 13:48:36 -0800 (PST) In-Reply-To: References: <1468110107-18979-1-git-send-email-mw@semihalf.com> <1468110107-18979-22-git-send-email-mw@semihalf.com> <20161116173553.GB27644@bivouac.eciton.net> From: Marcin Wojtas Date: Wed, 16 Nov 2016 22:48:36 +0100 Message-ID: To: "Carsey, Jaben" Cc: Leif Lindholm , Ard Biesheuvel , linaro-uefi , Neta Zur Hershkovits , Yehuda Yitschak , Haim Boot , Jan Dabros , Bartosz Szczepanek , edk2-devel-01 , "Ni, Ruiyu" Subject: Re: [PATCH v6 21/23] Applications/FirmwareUpdate: Add 'fupdate' comand to shell X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 Nov 2016 21:48:34 -0000 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi Jaben, Thank you for your input. > > I agree on EBL, but I have very little experience with EBL so I don=E2=80= =99t want to discuss in detail as I am not the right person without more re= search. Specifically, my gut reaction is that needing a platform specific = boot loader indicates that something has already gone wrong on that platfor= m. > > However, this does not seem like a boot loader or an application at all. = this is an internal shell command. The goal here seems to be to create a N= ULL library to add a new internal command to the UEFI Shell. This library = gets compiled/linked into the shell itself. Indeed, it's nothing similar to the bootloader whatsoever. This command simply enables updating firmware in SPI flash directly from local path or from tftp. > > I feel that we have found a "new" use case that I encountered, but worked= around in the past because all previous cases involved commands in the sam= e library (there are interactions between Reconnect and Disconnect/Connect)= . Right, however Reconnect is easy, as it simply calls gBS callbacks, whose definition are also in the same location. > > I would say that a new API in the ShellCommandLib that links the UEFI She= ll Application to the NULL libraries that make up the internal commands wou= ld be my first choice for implementation. I would lean to something like t= he function that Marcin already called. Maybe this? > > EFIAPI > RunRegisteredCommand( > CHAR16* CommandLine, > EFI_STATUS *CommandReturnValue > ) I'll try this one and let know. Thanks, Marcin