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 mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EC75CC433F5 for ; Thu, 14 Oct 2021 18:48:37 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id 21F0960E78 for ; Thu, 14 Oct 2021 18:48:36 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 21F0960E78 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=chromium.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=lists.denx.de Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id D7CEC836AD; Thu, 14 Oct 2021 20:48:34 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; unprotected) header.d=chromium.org header.i=@chromium.org header.b="FmivAONS"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 9356283653; Thu, 14 Oct 2021 20:48:29 +0200 (CEST) Received: from mail-io1-xd2f.google.com (mail-io1-xd2f.google.com [IPv6:2607:f8b0:4864:20::d2f]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 196FB835C3 for ; Thu, 14 Oct 2021 20:48:25 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=sjg@chromium.org Received: by mail-io1-xd2f.google.com with SMTP id s17so4907041ioa.13 for ; Thu, 14 Oct 2021 11:48:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=gwRyu3+a9m1zGHwxWZS3c/bcjNUqHuVkJKfgM3fHuvU=; b=FmivAONSn/LsygjqwG3s8y3c3qeMka3B0xY0NybImeVbLaHg8OYgV3t02bDXo7ApuZ vARq1gTiKewKKm/tjL5g8UoAnv7JEVfVwxlihNH1nr/Wdz6PL5HnqMDrjKcs2v0Gl9tr ot0C2pXzgjk+8rbymubPH2oc1HM9eWohSoYk0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=gwRyu3+a9m1zGHwxWZS3c/bcjNUqHuVkJKfgM3fHuvU=; b=feStsT0VJBAYd1fQg8jzZfKlt6XQWtEfKvnjOCv6ab3p/KjRf5GELqIor0k5UonYvw /0iXZAWGlvzffmMDPB0UnzepG6IoHWwBnrA+Xbsn1gGMVhKEOwZstUL2Ye10EYiZf6qB b092QIUEXruJlzwp5UbDTpRlFyeOXkPwP3gOb2jLBjtO9GwDOZ28VO1YNghYWTKlWk5F TS6bvDZHW5oelLY3Drz9CpxO4j5y0cu8728XCSqPbjdM+n+WRvJL+Sk6vNW85WPWZU/X ZdmoZIDWO0NVx5pvRJbXl0+rLlpMr5QTJp9BVkO03d7w7h0Ujd5CguXLtn6vIweBF2jC K4sw== X-Gm-Message-State: AOAM530XwD6are1E2EJ6XOYw8SnW+WR6riRty6bRejRpp89vAlGbVs0i iSlwLuXdxV1bUUeclRy25uMiIgC54Lo= X-Google-Smtp-Source: ABdhPJy/ZK33qp6UN3MaeEVEiU6m0As0Wna3DZ3VNN+zULNOYlw5ibxGdZV1uyBom8KaiGBMlJQDtA== X-Received: by 2002:a05:6602:1651:: with SMTP id y17mr527701iow.114.1634237303642; Thu, 14 Oct 2021 11:48:23 -0700 (PDT) Received: from kiwi.bld.corp.google.com (c-67-190-101-114.hsd1.co.comcast.net. [67.190.101.114]) by smtp.gmail.com with ESMTPSA id w15sm1697625ill.23.2021.10.14.11.48.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 14 Oct 2021 11:48:22 -0700 (PDT) From: Simon Glass To: U-Boot Mailing List Cc: Patrice Chotard , Artem Lapkin , Tom Rini , Joe Hershberger , Heinrich Schuchardt , Peter Hoyes , Simon Glass Subject: [PATCH v3 00/18] pxe: Refactoring to tidy up and prepare for bootflow Date: Thu, 14 Oct 2021 12:47:53 -0600 Message-Id: <20211014184811.482560-1-sjg@chromium.org> X-Mailer: git-send-email 2.33.0.1079.g6e70778dc9-goog MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 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.2 at phobos.denx.de X-Virus-Status: Clean This collects together the patches previously sent relating to PXE. Firstly, it moves the boot code out of common/ and into a new boot/ directory. This helps to collect these related files in one place, as common/ is quite large. Secondly, it provides patache so clean up the PXE code and refactor it into something closer to a module that can be called, teasing apart its reliance on the command-line interpreter to access filesystems and the like. Also it now uses function arguments and its own context struct internally rather than environment variables, which is very hard to follow. No core functional change is intended. Changes in v3: - Rebase to -master Changes in v2: - Rebase to -next - Split out from the bootmethod patches Simon Glass (18): Create a new boot/ directory pxe: Move API comments to the header files pxe: Use a context pointer pxe: Move do_getfile() into the context pxe: Add a userdata field to the context pxe: Tidy up the is_pxe global pxe: Move pxe_utils files pxe: Tidy up some comments in pxe_utils pxe: Tidy up code style a little in pxe_utils pxe: Move common parsing coding into pxe_util pxe: Clean up the use of bootfile pxe: Drop get_bootfile_path() lib: Add tests for simple_itoa() lib: Add a function to convert a string to a hex value pxe: Return the file size from the getfile() function pxe: Refactor sysboot to have one helper doc: Move distro boot doc to rST pxe: Allow calling the pxe_get logic directly Kconfig | 2 + Makefile | 3 +- README | 1 + common/Kconfig.boot => boot/Kconfig | 0 boot/Makefile | 37 ++ {common => boot}/android_ab.c | 0 {common => boot}/boot_fit.c | 0 {common => boot}/bootm.c | 0 {common => boot}/bootm_os.c | 0 {common => boot}/bootretry.c | 0 {common => boot}/common_fit.c | 0 {common => boot}/fdt_region.c | 0 {common => boot}/image-android-dt.c | 0 {common => boot}/image-android.c | 0 {common => boot}/image-board.c | 0 {common => boot}/image-cipher.c | 0 {common => boot}/image-fdt.c | 0 {common => boot}/image-fit-sig.c | 0 {common => boot}/image-fit.c | 0 {common => boot}/image-host.c | 0 {common => boot}/image-sig.c | 0 {common => boot}/image.c | 0 {cmd => boot}/pxe_utils.c | 512 +++++++++++----------- cmd/Makefile | 4 +- cmd/pxe.c | 136 +++--- cmd/pxe_utils.h | 91 ---- cmd/sysboot.c | 114 +++-- common/Kconfig | 2 - common/Makefile | 22 - doc/android/boot-image.rst | 2 +- doc/{README.distro => develop/distro.rst} | 177 ++++---- doc/develop/index.rst | 1 + include/pxe_utils.h | 253 +++++++++++ include/vsprintf.h | 25 +- lib/vsprintf.c | 20 +- scripts/Makefile.spl | 4 +- test/print_ut.c | 41 ++ tools/Makefile | 18 +- 38 files changed, 874 insertions(+), 591 deletions(-) rename common/Kconfig.boot => boot/Kconfig (100%) create mode 100644 boot/Makefile rename {common => boot}/android_ab.c (100%) rename {common => boot}/boot_fit.c (100%) rename {common => boot}/bootm.c (100%) rename {common => boot}/bootm_os.c (100%) rename {common => boot}/bootretry.c (100%) rename {common => boot}/common_fit.c (100%) rename {common => boot}/fdt_region.c (100%) rename {common => boot}/image-android-dt.c (100%) rename {common => boot}/image-android.c (100%) rename {common => boot}/image-board.c (100%) rename {common => boot}/image-cipher.c (100%) rename {common => boot}/image-fdt.c (100%) rename {common => boot}/image-fit-sig.c (100%) rename {common => boot}/image-fit.c (100%) rename {common => boot}/image-host.c (100%) rename {common => boot}/image-sig.c (100%) rename {common => boot}/image.c (100%) rename {cmd => boot}/pxe_utils.c (74%) delete mode 100644 cmd/pxe_utils.h rename doc/{README.distro => develop/distro.rst} (76%) create mode 100644 include/pxe_utils.h -- 2.33.0.1079.g6e70778dc9-goog