From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 84667C433F5 for ; Sun, 13 Mar 2022 15:47:47 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 1F1A88339D; Sun, 13 Mar 2022 16:47:44 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=fail (p=none dis=none) header.from=xs4all.nl Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Received: by phobos.denx.de (Postfix, from userid 109) id 86C4883260; Sun, 13 Mar 2022 16:47:41 +0100 (CET) Received: from sibelius.xs4all.nl (sibelius.xs4all.nl [83.163.83.176]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 5C334830F8 for ; Sun, 13 Mar 2022 16:47:38 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=fail (p=none dis=none) header.from=xs4all.nl Authentication-Results: phobos.denx.de; spf=fail smtp.mailfrom=mark.kettenis@xs4all.nl Received: from localhost (bloch.sibelius.xs4all.nl [local]) by bloch.sibelius.xs4all.nl (OpenSMTPD) with ESMTPA id d4c3f139; Sun, 13 Mar 2022 16:47:36 +0100 (CET) Date: Sun, 13 Mar 2022 16:47:36 +0100 (CET) From: Mark Kettenis To: Simon Glass Cc: u-boot@lists.denx.de, dennis@ausil.us, ilias.apalodimas@linaro.org, lukas.auer@aisec.fraunhofer.de, trini@konsulko.com, xypron.glpk@gmx.de, michal.simek@xilinx.com, daniel.schwierzeck@gmail.com, jaeckel-floss@eyet-services.de, sjg@chromium.org, jh80.chung@samsung.com, marex@denx.de, morpheus.ibis@gmail.com, peng.fan@nxp.com In-Reply-To: <20220306125016.3133737-1-sjg@chromium.org> (message from Simon Glass on Sun, 6 Mar 2022 05:49:43 -0700) Subject: Re: [PATCH v4 00/33] Initial implementation of standard boot References: <20220306125016.3133737-1-sjg@chromium.org> Message-ID: X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.5 at phobos.denx.de X-Virus-Status: Clean > From: Simon Glass > Date: Sun, 6 Mar 2022 05:49:43 -0700 > > The bootflow feature provide a built-in way for U-Boot to automatically > boot an Operating System without custom scripting and other customisation. > This is called 'standard boot' since it provides a standard way for > U-Boot to boot a distro, without scripting. > > It introduces the following concepts: > > - bootdev - a device which can hold a distro > - bootmeth - a method to scan a bootdev to find bootflows (owned by > U-Boot) > - bootflow - a description of how to boot (owned by the distro) > > This series provides an implementation of these, enabled to scan for > bootflows from MMC, USB and Ethernet. It supports the existing distro > boot as well as the EFI loader flow (bootefi/bootmgr). It works > similiarly to the existing script-based approach, but is native to > U-Boot. > > With this we can boot on a Raspberry Pi 3 with just one command: > > bootflow scan -lb > > which means to scan, listing (-l) each bootflow and trying to boot each > one (-b). The final patch shows this. > > With a standard way to identify boot devices, booting become easier. It > also should be possible to support U-Boot scripts, for backwards > compatibility only. For the record. In its current state this series breaks booting on Apple M1: Hit any key to stop autoboot: 0 Flags not supported: enable CONFIG_BOOTFLOW_FULL bootflow - Boot flows Usage: bootflow scan - boot first available bootflow => I'll see if I can actually convert this board to "standard boot". But I think this means that this breaks the majority of the boards currently in the tree.