From patchwork Fri Apr 11 15:03:34 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Caleb Connolly X-Patchwork-Id: 880167 Delivered-To: patch@linaro.org Received: by 2002:a5d:4882:0:b0:38f:210b:807b with SMTP id g2csp811683wrq; Fri, 11 Apr 2025 08:03:55 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCVTmhOlgSheIGO7f8eKBXByaC5of2ZR3OrKqCB0F/kEk5SO76R0hMn2OVKgzI4r3V7aKEvWJQ==@linaro.org X-Google-Smtp-Source: AGHT+IFHtCAzEGxzWblCZKlatel9U83ROK5FZe+ClrkyOQZe8uvm20OybfI526aQ4IPdsEe/n4Is X-Received: by 2002:a05:6102:370e:b0:4bb:b809:36c6 with SMTP id ada2fe7eead31-4c9e4f1150fmr2256049137.11.1744383834975; Fri, 11 Apr 2025 08:03:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1744383834; cv=none; d=google.com; s=arc-20240605; b=Ldxdi1kso72TpkJ6zyV3YMRXCQwp5uIwocTb7sLNSYIxDBXrCQtVPMVVv0cdGcgvUF BOFJddNJLFjD9S29pArg0m9KHgHpZhmxU6lvy6I/0qblxYyoonWovhoXy+3kltVi2OBN vCfzFxPZ43Q4eIHFdoq2rBvrRGazv9qiE2Ajv+B/OJkUAgcoYQoCi7kn98IGhuIb5WFA mQgfPbzirj21bUGFquY3m3eOnfpKrwUuh/3a1NXEIRBVx75kUcicQrouaz8phdykIzI0 CT3mf55vcojxgL12aeqxPfpFn0JNYCZgJw6I17SRyVR4I+owh6QuPDB3/m8U0yQ7Nu8I 6JVQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:cc:to:in-reply-to:references :message-id:content-transfer-encoding:mime-version:subject:date:from :dkim-signature; bh=FSa5QNB53S+69Dbruhd9xlOrJA2Nu+cbfcsov0S7PQI=; fh=cE2vi2WTrfnxBSH9Zfz+qxpJ1Jcti7qGPja2dy1zHnk=; b=G1kkU5pStD9u69u75mDc6IHyO8hym4ilZR5onIPoNuM31F/ZJxu2A0hAT1M2adIL3h z9KZ+fiOLuE8f2u+gcxyTHotattcMBZ0mjkTbuP+0CMk/ljxidbkIqEMOb4BG7kU9y53 3OwgIbauxiW5HN5df8tEn+0/sfIjavYhFOj4qGchTZz1KBMscanMvC3/MRppXXyMcgqx iWRiKWUD4n/BgrlzYkgE+WNsncAK9QKeHmt+KeUszW6JJ/RyWPW1Jvi4BFJLV4xPcktq Za3CZZ9k4KYmIFnnruHflMuA8L2SwVF+zQ+TyGhSD/AKLq5Z9jerllc+D302s46LZ1Qd Y/GA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=SpTlOOQk; spf=pass (google.com: domain of u-boot-bounces@lists.denx.de designates 2a01:238:438b:c500:173d:9f52:ddab:ee01 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from phobos.denx.de (phobos.denx.de. [2a01:238:438b:c500:173d:9f52:ddab:ee01]) by mx.google.com with ESMTPS id ada2fe7eead31-4c9c9890ea5si2250462137.330.2025.04.11.08.03.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 11 Apr 2025 08:03:54 -0700 (PDT) Received-SPF: pass (google.com: domain of u-boot-bounces@lists.denx.de designates 2a01:238:438b:c500:173d:9f52:ddab:ee01 as permitted sender) client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=SpTlOOQk; spf=pass (google.com: domain of u-boot-bounces@lists.denx.de designates 2a01:238:438b:c500:173d:9f52:ddab:ee01 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 5C7438413A; Fri, 11 Apr 2025 17:03:47 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.b="SpTlOOQk"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id EFB6A84148; Fri, 11 Apr 2025 17:03:44 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.2 Received: from mail-wm1-x332.google.com (mail-wm1-x332.google.com [IPv6:2a00:1450:4864:20::332]) (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 D52FC84143 for ; Fri, 11 Apr 2025 17:03:42 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=caleb.connolly@linaro.org Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-43cfebc343dso15992095e9.2 for ; Fri, 11 Apr 2025 08:03:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1744383822; x=1744988622; darn=lists.denx.de; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=FSa5QNB53S+69Dbruhd9xlOrJA2Nu+cbfcsov0S7PQI=; b=SpTlOOQkoHeb2oDzFUnwmWy5djIBr9ylNamBFfEvSCqe5Xp+ZgLQha5wCiKAFBwtof cwuGHiOQ6m5IeeqJ5zzAgdk56175JNaucttmzaZVpvmjz4aMu7BAEg7DnW3ztMS80NAs JK4PwoKjqYfOqPoKjHvlpYomUsLLBOmqnU7R8jn5r+4wgFB1MfAsZa4GQD4R+HlOVLto BtJg9Ej+kdQTxtiwgoK4MWvzSGyAjjVWGcbQlIwfAOB0JdDBlQYbTI1YjFlEqGIEfXIh iyUEuksDgeam3gpDRdoKzeRiYST4ILmTx4Yjx2VMk/0tVUXqYA+s3Hs/Ob1cVdeSHEAS w62A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744383822; x=1744988622; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=FSa5QNB53S+69Dbruhd9xlOrJA2Nu+cbfcsov0S7PQI=; b=SBdnvTfA9+Onf3VKq9e11iFW7WB3CLLenzjnJXOVTeVSKIU9WqdJ3EBkFSThehVIMa gWpBUGLuRgh0XJjni6UEFzBPI4ERe71gYytHlZrNzyp1AIqnDH/UJT6eFWbgEFsjyxZ0 O0+AJKIPecn6qJXplfo4zS9PHXt2BxlEiReYTwTHZEfSUc1z05e4FeJHxFDK9f0+/6EW G9Xht+2jsuXrRfZXlPOC/BbbE9IB5ZnPVoGnN7kGDoZff8ZUB39rdVEsHL7nrZj4bKOD jiTbsLSGAu87EOdYOvt3hf+PuxxD2tyBIQUEYtSJNikwijkidG5l4uRimqNT1Y4mUjD9 YF8g== X-Gm-Message-State: AOJu0Yz0QlNJ8AhWVad8wWePl9wy5aQCJPdmK+cWfI6AKu6W8wPvf7p/ fBdvlj3i4tMRa7wiOHrMWRvRIQHTq9i4qpatfcbsXXUO+WuZCvuwRuJFabiRVVlD7eojZ2bQkKi XvhM= X-Gm-Gg: ASbGncuk7xyMAuQuqLD7esUNjtWLXHOSAzjkkvHZdPMBO0X7PQduwaG9qFkvmisnjat NRD169IJWmTXlItrk+3/wJiv1qaHeakqVrVN2955Fbx5bI8K8Mj1zBmRo9bKrChPaoDQIzWGYg/ lJCcaub+nmQY9MJAaYvQWoJBJRkwd1znrdyjHv4rgTYNP+peH8gTS4ER/nbhrwUOMwNXfwMHwHO Iq3v3u2dRvmWsjmBcpvM+r6cq8WpY2e2L6PpLR1G5fpAtCfjg5o7aBlniwMGNHoGhJaftJzzihT bG7CZTWz9zL95YqKjk7d8wtessaKpUXOCsU+szNAFCUoY4DYKAMmMQ54gRxmNgH9CPJiFtvOAch XbvJ5OqJ0QXW0aDnuow== X-Received: by 2002:a05:6000:18ac:b0:39c:142d:c0a with SMTP id ffacd0b85a97d-39ea52037f9mr2504199f8f.19.1744383821492; Fri, 11 Apr 2025 08:03:41 -0700 (PDT) Received: from toyger.tail248178.ts.net (35-60-142-46.pool.kielnet.net. [46.142.60.35]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39eaf445270sm2201005f8f.81.2025.04.11.08.03.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 11 Apr 2025 08:03:40 -0700 (PDT) From: Caleb Connolly Date: Fri, 11 Apr 2025 17:03:34 +0200 Subject: [PATCH v2 1/4] mach-snapdragon: track boot source MIME-Version: 1.0 Message-Id: <20250411-b4-qcom-capsule-update-improvements-v2-1-27f6b2fcc4a9@linaro.org> References: <20250411-b4-qcom-capsule-update-improvements-v2-0-27f6b2fcc4a9@linaro.org> In-Reply-To: <20250411-b4-qcom-capsule-update-improvements-v2-0-27f6b2fcc4a9@linaro.org> To: Lukasz Majewski , Tom Rini , Caleb Connolly , Neil Armstrong , Sumit Garg , Mattijs Korpershoek Cc: u-boot@lists.denx.de, u-boot-qcom@groups.io X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=3177; i=caleb.connolly@linaro.org; h=from:subject:message-id; bh=KPSwS7EDhp0UhWBnLFtWO/msI1anYMpSnbXCoVWHpdw=; b=owEBbQKS/ZANAwAKAQWDMSsZX2S2AcsmYgBn+S9JpBCo1/xkUWJKOoguY4CBNr53G+2YnXrPp cCHl48NSkuJAjMEAAEKAB0WIQS2UaFGPGq+0GkMVc0FgzErGV9ktgUCZ/kvSQAKCRAFgzErGV9k tr7aD/9x5NVbYZp0+2WumkBasGWG5wRL3PI5nluolNZzsr40lEEEDhy2HQXjMTF5ufQLzOgS1MC fP/fyFgBCQ10LJ/mOF1mnYVDA6lU/D6Z/6V8s7/VDMxm8zeK9CGj9x/8KRb453MIK/qLtO5SV9K IxN9MmaQe6gYFQ+D+C9fT542apa5ChAEEc4cD3Ty2mxetml/81ilVJyfjmpJQHoeXLJgXLPUZb6 wi2l/FohyeDO4IK3bJwsGSQJQaRgWwgxZJLqIEc4NYv4DbC/qf8EK67WRGPzEDENgJwcwbyx3Pq hNPU+xajOdkVTHSN7Yb4SSLp69K5hyRGQNiICtwXh8z8V5BXQDLkNeye2FCOR79A95uyZTp7vdx U8RApljx9Zj/SKtJU5eNSQJyT2Cec6QeKrDCNiSmowmiH0awthRKfYg65W/vofCS6pxTuu3RuQY bVuswFRPfST7vmDLlgIRWqQRRi1qhHWGaXYFlDRjaGDxwvPM/x3If9GTbb3DxNcXtmYdy3DHrEK Re7Lm9R2FwglY+H++/ciYW8ih7YZNoC5fcsbCnmql2SXHzh1M5zzsnQOa4tJs0utvS/Zrr9Qmli 91fvHN5/5HgWXpocJH042TEz/JkLlNQ7lkPYI+lBFRgGM8YvZYNHFuC27/tV6Q2/OFNBJCjwIn7 6zxZ1SnT8E+WMIA== X-Developer-Key: i=caleb.connolly@linaro.org; a=openpgp; fpr=83B24DA7FE145076BC38BB250CD904EB673A7C47 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.8 at phobos.denx.de X-Virus-Status: Clean Keep track of whether we were loaded via ABL or if U-Boot is running as a first-stage bootloader. For now we set this based on if we have a valid external FDT or not, since it isn't possible to chainload U-Boot from ABL without there being an external FDT. This will be used to inform the capsule update logic which partition U-Boot is flashed to. Signed-off-by: Caleb Connolly --- arch/arm/mach-snapdragon/board.c | 26 ++++++++++++++++++++++++++ arch/arm/mach-snapdragon/qcom-priv.h | 14 ++++++++++++++ 2 files changed, 40 insertions(+) diff --git a/arch/arm/mach-snapdragon/board.c b/arch/arm/mach-snapdragon/board.c index deae4d323789eab75d5fe735159b4cd820c02c45..34e37ab083f20b70660f2ab90a2995a4dfb33f8e 100644 --- a/arch/arm/mach-snapdragon/board.c +++ b/arch/arm/mach-snapdragon/board.c @@ -36,8 +36,10 @@ #include "qcom-priv.h" DECLARE_GLOBAL_DATA_PTR; +enum qcom_boot_source qcom_boot_source __section(".data") = 0; + static struct mm_region rbx_mem_map[CONFIG_NR_DRAM_BANKS + 2] = { { 0 } }; struct mm_region *mem_map = rbx_mem_map; @@ -237,8 +239,14 @@ int board_fdt_blob_setup(void **fdtp) if (ret < 0) panic("No valid memory ranges found!\n"); + /* If we have an external FDT, it can only have come from the Android bootloader. */ + if (external_valid) + qcom_boot_source = QCOM_BOOT_SOURCE_ANDROID; + else + qcom_boot_source = QCOM_BOOT_SOURCE_XBL; + debug("ram_base = %#011lx, ram_size = %#011llx\n", gd->ram_base, gd->ram_size); if (internal_valid) { @@ -472,8 +480,25 @@ static void configure_env(void) qcom_set_serialno(); } +void qcom_show_boot_source(void) +{ + const char *name = "UNKNOWN"; + + switch (qcom_boot_source) { + case QCOM_BOOT_SOURCE_ANDROID: + name = "ABL"; + break; + case QCOM_BOOT_SOURCE_XBL: + name = "XBL"; + break; + } + + log_info("U-Boot loaded from %s\n", name); + env_set("boot_source", name); +} + void __weak qcom_late_init(void) { } @@ -515,8 +540,9 @@ int board_late_init(void) configure_env(); qcom_late_init(); + qcom_show_boot_source(); /* Configure the dfu_string for capsule updates */ qcom_configure_capsule_updates(); return 0; diff --git a/arch/arm/mach-snapdragon/qcom-priv.h b/arch/arm/mach-snapdragon/qcom-priv.h index 74d39197b89f4e769299b06214c26ee829ecdce0..e5eb4cfbc2b752de799b1407ede69683c81474c1 100644 --- a/arch/arm/mach-snapdragon/qcom-priv.h +++ b/arch/arm/mach-snapdragon/qcom-priv.h @@ -2,8 +2,22 @@ #ifndef __QCOM_PRIV_H__ #define __QCOM_PRIV_H__ +/** + * enum qcom_boot_source - Track where we got loaded from. + * Used for capsule update logic. + * + * @QCOM_BOOT_SOURCE_ANDROID: chainloaded (typically from ABL) + * @QCOM_BOOT_SOURCE_XBL: flashed to the XBL or UEFI partition + */ +enum qcom_boot_source { + QCOM_BOOT_SOURCE_ANDROID = 1, + QCOM_BOOT_SOURCE_XBL, +}; + +extern enum qcom_boot_source qcom_boot_source; + #if IS_ENABLED(CONFIG_EFI_HAVE_CAPSULE_SUPPORT) void qcom_configure_capsule_updates(void); #else void qcom_configure_capsule_updates(void) {} From patchwork Fri Apr 11 15:03:35 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Caleb Connolly X-Patchwork-Id: 880168 Delivered-To: patch@linaro.org Received: by 2002:a5d:4882:0:b0:38f:210b:807b with SMTP id g2csp811790wrq; Fri, 11 Apr 2025 08:04:04 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCVbz3Wsp0TQfmuQJ9iwTAn2S4oMz5j9TaBIGt9N7UiSui36OOPV5BnxJbC+yAxy42BFLYhtSw==@linaro.org X-Google-Smtp-Source: AGHT+IHblLyomwKLC+/QBe1+ukKPd+1GC2bH/ubg1P5ZMwpbbtqlztY2TMHTH6jYJMVOoiLAhDJJ X-Received: by 2002:a05:620a:c4a:b0:7c5:5e9f:eb2d with SMTP id af79cd13be357-7c7af11356dmr459122685a.44.1744383843763; Fri, 11 Apr 2025 08:04:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1744383843; cv=none; d=google.com; s=arc-20240605; b=arcsyee8wwstBDwrtCAwrOQTghP61MjlCUleFSPKSHpIdcZXV3AgXQ5p2M/RDb14TJ A2I3TX50a1akLcHTAeGVFbeCcdm8bRurN7W8o/9CM3EynDmLE+/jyl++RjZ+LjyBfwNa 7jKbOdgLlS22o/PCXokGExzIn3xyotY8gdhOrXvAnbtkqz/PGI4V3I6fWLakhCvgIK9A z6ORUjXY92E+GLhf81gD8hXfc+xv77N8PVV+CW2Lom8Zk8W9EYKXJa2C9WU2XzBQJ3Xs JBrNq95LjLYT6jDSL+UaxFSST5ZguAiawYz4ybDudk89rmTHUgQl8DbbYMTq6veknNmj 8iJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:cc:to:in-reply-to:references :message-id:content-transfer-encoding:mime-version:subject:date:from :dkim-signature; bh=blDKyqXKbjgArfufB3ibo9+djEvlb6KtPwnlWDxrz5M=; fh=cE2vi2WTrfnxBSH9Zfz+qxpJ1Jcti7qGPja2dy1zHnk=; b=W/lfoUcrPu1PrU59A2HTLInI4hi+HoherMdJGA6mFlvc5VRW20YI1LTShpqqATs987 xGMN7CNv5L6jMY3aAOW3dn5sQfrmdeQVPIzz5HZtueGwTkGw0BwcN8+/2mYI8U7IElXj in2RrVLR90vf8TCPz4lMGRsxNoWa2VIVQG2LpY5M/hRzeR7/FYTPX/qfKVOfnzQWOU2t RtieciXS/odBsoOiVcnt++LNkSPrYhvLeh1D8W2kTcIe62l1RNdVhdahXCbNgURqhJe0 4F0GIHS9B5ADosfZE8P0O7Eh2D3zJaQS6Y8zB7/qUzYtc56QkqaQIIIe41ny7dhs1GZy sAbg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=xBQemP7c; spf=pass (google.com: domain of u-boot-bounces@lists.denx.de designates 85.214.62.61 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from phobos.denx.de (phobos.denx.de. [85.214.62.61]) by mx.google.com with ESMTPS id ada2fe7eead31-4c9c989107esi2011324137.208.2025.04.11.08.04.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 11 Apr 2025 08:04:03 -0700 (PDT) Received-SPF: pass (google.com: domain of u-boot-bounces@lists.denx.de designates 85.214.62.61 as permitted sender) client-ip=85.214.62.61; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=xBQemP7c; spf=pass (google.com: domain of u-boot-bounces@lists.denx.de designates 85.214.62.61 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id A27F184158; Fri, 11 Apr 2025 17:03:47 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.b="xBQemP7c"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id D016A84150; Fri, 11 Apr 2025 17:03:46 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.2 Received: from mail-wr1-x434.google.com (mail-wr1-x434.google.com [IPv6:2a00:1450:4864:20::434]) (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 8C85D84107 for ; Fri, 11 Apr 2025 17:03:44 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=caleb.connolly@linaro.org Received: by mail-wr1-x434.google.com with SMTP id ffacd0b85a97d-3913958ebf2so1916320f8f.3 for ; Fri, 11 Apr 2025 08:03:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1744383824; x=1744988624; darn=lists.denx.de; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=blDKyqXKbjgArfufB3ibo9+djEvlb6KtPwnlWDxrz5M=; b=xBQemP7ctevVU9mIBFE1q7u/0aNiC1H/i0O491GuTK/CVkErHRwvmSQY08yUk9RJ5h ST0iYJ+XH6zU+7WqPBjJFDrnIL/hVShkRIonoVGND2bJl7WhZ8xlL87vyXUa1DGDGmvd 6EXUqEXDMrsV0i3HEpwLHjxQ9a4KYwG+K8LPhAtZVE3PvfvgCxNLRek5Lyn6pBE5Wdte tdlQMExh+OTrRJe6XSxlS9mXb5xORMEp+lzUMtMbd37tCEaEZMTJJ6FaZRButEOtLTOf TedQx3TgUr525wAi1NDbGuG8oq8eB7Wjt5G1IkjUQW/kwofg6nfDHWqygRcgRpm0I8P7 U8dg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744383824; x=1744988624; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=blDKyqXKbjgArfufB3ibo9+djEvlb6KtPwnlWDxrz5M=; b=VIyG1S9SUGu7eMUlsrb/MgaPWl7iKYci10gtiq67SPh/f+sZTUINDkwNFgJaQ42Nu1 Rw8yoM6vPmjmTz+5flrCVrkXzjqoK40Kl7Kd/eQsT02d8DJZTiblZBgMjashPEKR/efz It/YGr+IGrIrQoVF0AHjiNEbspjK33irrCPWkQsXcv5qJMHmmkG3T70f2QmGA3C6Fasn PVNwIeXR69SZ2BqHiJzT9SpJLDzzFkRzfeqjQimqePUfpPXhIIJRUA24xAxWKJ/Wb5jS g29bcwhP65w5gqaaAgX7Y7p8HO5z+7jC2IzyxleqieHZ9L50Vj9O/AZEkIm4g0nPTdFT 1s2w== X-Gm-Message-State: AOJu0YwpTipW/Ndbumetze3ySSU9tnLLAoKi1OEMoOM3ygEjTizufo83 5n+cMXAA0yuturSBK9Xa+CyIWu7KKjSWp2arifN0HPAVueMxU6GkAk17DZ2kDyqOZEpewsqCaR1 QJ+w= X-Gm-Gg: ASbGncsrCMjJEas/P+7sHSac1C5ytY1I2EDzaZT6Wg9EPrFw3YamevsfD004JxgoXqV JVuieheQpJASw1K9peAcnPQWf5kcElRKTbxtHOxfW/pa0ovyDTY0ftRyp9dzgM6bvOZStRTZz4a 6A0Tj8bQbkfb0NXf9ikbRPhxCczgkVkK1lXJxu+v1RV6gSfntl13oHkjrj5F4sZhktdaL+/O4mu c//3LIZV5VlynOMgHvaHZO8hPIvK2T0chwYJNira1TKBRMvjVRyjoRNvQEq9vjQy6C+p1uMd2bO dyIRVNAjTBK4WY/LPYQmsAi9JLIS1LaWaYDuOId29q8GpYPbQ/1FUWBS+TtIB8663y3fdHTUQQk cmJOPKuzMCpmz6eQYiFkbH76ICdcH X-Received: by 2002:a05:6000:1887:b0:390:f9d0:5df with SMTP id ffacd0b85a97d-39eaaec7a7bmr2345088f8f.52.1744383823275; Fri, 11 Apr 2025 08:03:43 -0700 (PDT) Received: from toyger.tail248178.ts.net (35-60-142-46.pool.kielnet.net. [46.142.60.35]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39eaf445270sm2201005f8f.81.2025.04.11.08.03.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 11 Apr 2025 08:03:42 -0700 (PDT) From: Caleb Connolly Date: Fri, 11 Apr 2025 17:03:35 +0200 Subject: [PATCH v2 2/4] mach-snapdragon: CapsuleUpdate: support all boot methods MIME-Version: 1.0 Message-Id: <20250411-b4-qcom-capsule-update-improvements-v2-2-27f6b2fcc4a9@linaro.org> References: <20250411-b4-qcom-capsule-update-improvements-v2-0-27f6b2fcc4a9@linaro.org> In-Reply-To: <20250411-b4-qcom-capsule-update-improvements-v2-0-27f6b2fcc4a9@linaro.org> To: Lukasz Majewski , Tom Rini , Caleb Connolly , Neil Armstrong , Sumit Garg , Mattijs Korpershoek Cc: u-boot@lists.denx.de, u-boot-qcom@groups.io X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=11761; i=caleb.connolly@linaro.org; h=from:subject:message-id; bh=SJn2PMipCcPU0cV9zYGMfKyYlt3POed/wYvv8NICFC4=; b=owEBbQKS/ZANAwAKAQWDMSsZX2S2AcsmYgBn+S9JgyOhfy/dsLEtTRh7jOL7DvU9g0hzOsgUh RjzUjYk3p6JAjMEAAEKAB0WIQS2UaFGPGq+0GkMVc0FgzErGV9ktgUCZ/kvSQAKCRAFgzErGV9k tt/YD/9qA5Mn6zdSKj/ax/r/NL6rhfE6psLZmt4eVQ/b6vhlmAeOGzPZpFMeltAXHr8mXJEwwQI hnKRYVHKmbpZG/Wp3e+FSTLR0rUqxajEzpaBNwZszmqVCAe6lYFRWQ5v8JOgJnXBvso3fANAF9h 3F1ZwTalSjI0n8aO6PscvW4bC8rw7RAI9M8R8Ox2teNKSJMyakfvPzrzzInaEfCtTgDUEA6r9D3 PR1tZJNxUj7VjUTHVUJPPLebTU2p9C48b18ecFxT6sXMZNQtUwJAY/oFl3XKpRUdm6wB5nOI4BD TbWjpbJraw2DKIEC1UraVrtha1H49JB+HXsk4qUqukUmbbfbdXaz4xMyBdPhxTrVaWudqSBzey3 1AOBVw0TM2UL5yiboN/zpOn+xjoDmidc8nhyljbCX46+m/rQ8wMmpiyh4/4J/8Tb7FfQmjakMff kw1lV01LQP29GzVyLPfIkEB5RA7htcBMT5hvMNgugEy/Qlo4u+enE5kQbv9GZTh4OmxYwu2rzG2 tSfgzyQwgjJpuNfvdfDdzKBpfiIppi2mE5MWxFo3RJXwizTi7aefJozh7eq2OdiCfU9fnlbit/p dgnoiJlEJpM6acVPhcZyljXjox9aeiuVPGMLsOZeu+0f5GejESvGuG4UTqdSFTwNjBxXvFsBh3B KjnmEoe9gSGVEIg== X-Developer-Key: i=caleb.connolly@linaro.org; a=openpgp; fpr=83B24DA7FE145076BC38BB250CD904EB673A7C47 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.8 at phobos.denx.de X-Virus-Status: Clean Expand capsule update support to correctly identify which partition U-Boot is flashed to (between xbl, uefi, and boot including A/B variants). Use qcom_boot_source to determine if we were chainloaded from ABL, meaning U-Boot is on the boot partition, otherwise we assume uefi if it's available, finally leaving the xbl partition. Set a different fw_name based on the target partition to prevent GUID collisions, since a board may support U-Boot flashed to boot or XBL we need to differentiate them since the U-Boot binary must be built differently. Reviewed-by: Neil Armstrong Signed-off-by: Caleb Connolly --- arch/arm/mach-snapdragon/capsule_update.c | 274 ++++++++++++++++++++++++------ 1 file changed, 223 insertions(+), 51 deletions(-) diff --git a/arch/arm/mach-snapdragon/capsule_update.c b/arch/arm/mach-snapdragon/capsule_update.c index bf75a9a1b24c714792bae3712b83b96353b1df8f..4dced4961b684be198d8f9b5e30d2264871ea163 100644 --- a/arch/arm/mach-snapdragon/capsule_update.c +++ b/arch/arm/mach-snapdragon/capsule_update.c @@ -19,24 +19,21 @@ #include "qcom-priv.h" /* - * NOTE: for now this implementation only supports the rb3gen2. Supporting other - * boards that boot in different ways (e.g. chainloaded from ABL) will require - * additional complexity to properly create the dfu string and fw_images array. - */ - -/* - * To handle different variants like chainloaded U-Boot here we'll need to - * build the fw_images array dynamically at runtime. It looks like - * mach-rockchip is a good example for how to do this. - * Detecting which image types a board uses is TBD, hence for now we only - * support the one new board that runs U-Boot as its primary bootloader. + * To handle different variants like chainloaded U-Boot here we need to + * build the fw_images array dynamically at runtime. These are the possible + * implementations: + * + * - Devices with U-Boot on the uefi_a/b partition + * - Devices with U-Boot on the boot (a/b) partition + * - Devices with U-Boot on the xbl (a/b) partition + * + * Which partition actually has U-Boot on it is determined based on the + * qcom_boot_source variable and additional logic in find_target_partition(). */ struct efi_fw_image fw_images[] = { { - /* U-Boot flashed to the uefi_X partition (e.g. rb3gen2) */ - .fw_name = u"UBOOT_UEFI_PARTITION", .image_index = 1, }, }; @@ -46,8 +43,14 @@ struct efi_capsule_update_info update_info = { .num_images = ARRAY_SIZE(fw_images), .images = fw_images, }; +enum target_part_type { + TARGET_PART_UEFI = 1, + TARGET_PART_XBL, + TARGET_PART_BOOT, +}; + /* LSB first */ struct part_slot_status { u16: 2; u16 active : 1; @@ -56,37 +59,204 @@ struct part_slot_status { u16 unbootable : 1; u16 tries_remaining : 4; }; -static int find_boot_partition(const char *partname, struct blk_desc *blk_dev, char *name) +enum ab_slot { + SLOT_NONE, + SLOT_A, + SLOT_B, +}; + +static enum ab_slot get_part_slot(const char *partname) +{ + int len = strlen(partname); + + if (partname[len - 2] != '_') + return SLOT_NONE; + if (partname[len - 1] == 'a') + return SLOT_A; + if (partname[len - 1] == 'b') + return SLOT_B; + + return SLOT_NONE; +} + +/* + * Determine which partition U-Boot is flashed to based on the boot source (ABL/XBL), + * the slot status, and prioritizing the uefi partition over xbl if found. + */ +static int find_target_partition(int *devnum, enum uclass_id *uclass, + enum target_part_type *target_part_type) { int ret; - int partnum; + int partnum, uefi_partnum = -1, xbl_partnum = -1; struct disk_partition info; struct part_slot_status *slot_status; + struct udevice *dev = NULL; + struct blk_desc *desc = NULL, *xbl_desc = NULL; + uchar ptn_name[32] = { 0 }; + bool have_ufs = false; - for (partnum = 1;; partnum++) { - ret = part_get_info(blk_dev, partnum, &info); - if (ret) - return ret; + /* + * Check to see if we have UFS storage, if so U-Boot MUST be on it and we can skip + * all non-UFS block devices + */ + uclass_foreach_dev_probe(UCLASS_UFS, dev) { + have_ufs = true; + break; + } - slot_status = (struct part_slot_status *)&info.type_flags; - log_io("%16s: Active: %1d, Successful: %1d, Unbootable: %1d, Tries left: %1d\n", - info.name, slot_status->active, - slot_status->successful, slot_status->unbootable, - slot_status->tries_remaining); + uclass_foreach_dev_probe(UCLASS_BLK, dev) { + if (device_get_uclass_id(dev) != UCLASS_BLK) + continue; + + /* If we have a UFS then don't look at any other block devices */ + if (have_ufs) { + if (device_get_uclass_id(dev->parent->parent) != UCLASS_UFS) + continue; /* - * FIXME: eventually we'll want to find the active/inactive variant of the partition - * but on the rb3gen2 these values might all be 0 + * If we don't have UFS, then U-Boot must be on the eMMC which is always the first + * MMC device. */ - if (!strncmp(info.name, partname, strlen(partname))) { - log_debug("Found active %s partition: '%s'!\n", partname, info.name); - strlcpy(name, info.name, sizeof(info.name)); - return partnum; + } else if (dev->parent->seq_ > 0) { + continue; + } + + desc = dev_get_uclass_plat(dev); + if (!desc || desc->part_type == PART_TYPE_UNKNOWN) + continue; + for (partnum = 1;; partnum++) { + ret = part_get_info(desc, partnum, &info); + if (ret) + break; + + slot_status = (struct part_slot_status *)&info.type_flags; + + /* + * Qualcomm Linux devices have a "uefi" partition, it's A/B but the + * flags might not be set so we assume the A partition unless the B + * partition is active. + */ + if (!strncmp(info.name, "uefi", strlen("uefi"))) { + /* + * If U-Boot was chainloaded somehow we can't be flashed to + * the uefi partition + */ + if (qcom_boot_source != QCOM_BOOT_SOURCE_XBL) + continue; + + *target_part_type = TARGET_PART_UEFI; + /* + * Found an active UEFI partition, this is where U-Boot is + * flashed. + */ + if (slot_status->active) + goto found; + + /* Prefer A slot if it's not marked active */ + if (get_part_slot(info.name) == SLOT_A) { + /* + * If we found the A slot after the B slot (both + * inactive) then we assume U-Boot is on the A slot. + */ + if (uefi_partnum >= 0) + goto found; + + /* Didn't find the B slot yet */ + uefi_partnum = partnum; + strlcpy(ptn_name, info.name, 32); + } else { + /* + * Found inactive B slot after inactive A slot, return + * the A slot + */ + if (uefi_partnum >= 0) { + partnum = uefi_partnum; + goto found; + } + + /* + * Didn't find the A slot yet. Record that we found the + * B slot + */ + uefi_partnum = partnum; + strlcpy(ptn_name, info.name, 32); + } + /* xbl and aboot are effectively the same */ + } else if ((!strncmp(info.name, "xbl", strlen("xbl")) && + strlen(info.name) == 5) || + !strncmp(info.name, "aboot", strlen("aboot"))) { + /* + * If U-Boot was booted via ABL, we can't be flashed to the + * XBL partition + */ + if (qcom_boot_source != QCOM_BOOT_SOURCE_XBL) + continue; + + /* + * ignore xbl partition if we have uefi partitions, U-Boot will + * always be on the UEFI partition in this case. + */ + if (*target_part_type == TARGET_PART_UEFI) + continue; + + /* Either non-A/B or find the active XBL partition */ + if (slot_status->active || !get_part_slot(info.name)) { + /* + * No quick return since we might find a uefi partition + * later + */ + xbl_partnum = partnum; + *target_part_type = TARGET_PART_XBL; + xbl_desc = desc; + strlcpy(ptn_name, info.name, 32); + } + + /* + * No fast return since we might also have a uefi partition which + * will take priority. + */ + } else if (!strncmp(info.name, "boot", strlen("boot"))) { + /* We can only be flashed to boot if we were chainloaded */ + if (qcom_boot_source != QCOM_BOOT_SOURCE_ANDROID) + continue; + + /* + * Either non-A/B or find the active partition. We can return + * immediately here since we've narrowed it down to a single option + */ + if (slot_status->active || !get_part_slot(info.name)) { + *target_part_type = TARGET_PART_BOOT; + goto found; + } + } } } + /* + * Now we've exhausted all options, if we didn't find a uefi partition + * then we are indeed flashed to the xbl partition. + */ + if (*target_part_type == TARGET_PART_XBL) { + partnum = xbl_partnum; + desc = xbl_desc; + goto found; + } + + /* Found no candidate partitions */ return -1; + +found: + if (desc) { + *devnum = desc->devnum; + *uclass = desc->uclass_id; + } + + /* info won't match for XBL hence the copy. */ + log_info("Capsule update target: %s (disk %d:%d)\n", + *target_part_type == TARGET_PART_BOOT ? info.name : ptn_name, + *devnum, partnum); + return partnum; } /** * qcom_configure_capsule_updates() - Configure the DFU string for capsule updates @@ -100,14 +270,12 @@ static int find_boot_partition(const char *partname, struct blk_desc *blk_dev, c * in the GPT partition vendor attribute bits. */ void qcom_configure_capsule_updates(void) { - struct blk_desc *desc; int ret = 0, partnum = -1, devnum; static char dfu_string[32] = { 0 }; - char name[32]; /* GPT partition name */ - char *partname = "uefi_a"; - struct udevice *dev = NULL; + enum target_part_type target_part_type = 0; + enum uclass_id dev_uclass; if (IS_ENABLED(CONFIG_SCSI)) { /* Scan for SCSI devices */ ret = scsi_scan(false); @@ -116,38 +284,42 @@ void qcom_configure_capsule_updates(void) return; } } - uclass_foreach_dev_probe(UCLASS_BLK, dev) { - if (device_get_uclass_id(dev) != UCLASS_BLK) - continue; - - desc = dev_get_uclass_plat(dev); - if (!desc || desc->part_type == PART_TYPE_UNKNOWN) - continue; - devnum = desc->devnum; - partnum = find_boot_partition(partname, desc, - name); - if (partnum >= 0) - break; - } - + partnum = find_target_partition(&devnum, &dev_uclass, &target_part_type); if (partnum < 0) { log_err("Failed to find boot partition\n"); return; } - switch (desc->uclass_id) { + /* + * Set the fw_name based on the partition type. This causes the GUID to be different + * so we will never accidentally flash a U-Boot image intended for XBL to the boot + * partition. + */ + switch (target_part_type) { + case TARGET_PART_UEFI: + fw_images[0].fw_name = u"UBOOT_UEFI_PARTITION"; + break; + case TARGET_PART_XBL: + fw_images[0].fw_name = u"UBOOT_XBL_PARTITION"; + break; + case TARGET_PART_BOOT: + fw_images[0].fw_name = u"UBOOT_BOOT_PARTITION"; + break; + } + + switch (dev_uclass) { case UCLASS_SCSI: snprintf(dfu_string, 32, "scsi %d=u-boot.bin part %d", devnum, partnum); break; case UCLASS_MMC: snprintf(dfu_string, 32, "mmc 0=u-boot.bin part %d %d", devnum, partnum); break; default: - debug("Unsupported storage uclass: %d\n", desc->uclass_id); + debug("Unsupported storage uclass: %d\n", dev_uclass); return; } - log_debug("boot partition is %s, DFU string: '%s'\n", name, dfu_string); + log_debug("DFU string: '%s'\n", dfu_string); update_info.dfu_string = dfu_string; } From patchwork Fri Apr 11 15:03:36 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Caleb Connolly X-Patchwork-Id: 880170 Delivered-To: patch@linaro.org Received: by 2002:a5d:4882:0:b0:38f:210b:807b with SMTP id g2csp812065wrq; Fri, 11 Apr 2025 08:04:23 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCXEJIkPPL4imk7ytjjc8cSaznZTVPa/IjKFOUg5mPiGj9apF5ZU2I3XhMj/c2+hkVAAF3O6lA==@linaro.org X-Google-Smtp-Source: AGHT+IEyiy9hrcyW07GFcmGawgYuU1ojzMv+NtcYoG6HPzT7DaiRjq00dEaa4pX0i3cmgVDyGN7M X-Received: by 2002:a05:620a:25c6:b0:7c3:cccd:92ec with SMTP id af79cd13be357-7c7a73d7539mr1017633085a.0.1744383863109; Fri, 11 Apr 2025 08:04:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1744383863; cv=none; d=google.com; s=arc-20240605; b=knLUVcaiHg8gK4DLHtOeO18zC0B9Z59UmrgD592CGF9VYrujfv6jmG6ANCJGplqhde nRX61X0bTIa9UdZG5mVAcZoeA0Rpr1NbWpOyWpbAqtDll6j/NR3gYYxa9aYup+7GXUQc E+q0gWrTCixO6+VLfZO1A3+Mi4r6YQ581Ze3tqSJ8+MBRl9IlrbFTbcYrYrSk70gS1uY XQHIZ7pVL2Dcc2CK8oQNyMwaT3Ls5fD6erXDeKQTDs2ELb/u/i/Zj2+7YptDupMgGWSo gfrKROOC9k9qL7HYz9r96wDl20shew9B8RG83F4gD4H/FdyF/pBVqe4g5jxXGq/L7te9 JEhg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:cc:to:in-reply-to:references :message-id:content-transfer-encoding:mime-version:subject:date:from :dkim-signature; bh=Msntet+z1hVp+lXklTxDdx8dRWqp1mS+6xaRDI1fhvM=; fh=G8Bjta7OuL+bFRRB13meU67ZDQCKHgitHZMfV9AhwSQ=; b=Rr6J/0mxO6ScIis73iGnYSDIOqff6StwvkPOw2D/e3oU2bKE6aSredcmSwR8bU4Ln6 OLTQfOpMHmHofNW58JJuOltyToxaDa6gmoBbgrKPL3dCca8hIg1Tme+s6kHSIgnpCFSf GVaqxoHLgaPhBiq7HM/WLz3jLlv7XAJBcvdS177SVi1ST+odVSPKdTc6qh19uH065x6g SNOS4qB6XTfPiuCf7TV984Kbp/K+4KeMIMxVoeYWiaCAmYiBiaINFR+qSFCoIChxL8Y2 tsO6ADd0BLLfqpFxNhqfhGzYM//w275HVn1hkmgu5fgDogL0qNE+VRgvsA9UuDq+FEJ1 2rvw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=QKvO4eQn; spf=pass (google.com: domain of u-boot-bounces@lists.denx.de designates 2a01:238:438b:c500:173d:9f52:ddab:ee01 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from phobos.denx.de (phobos.denx.de. [2a01:238:438b:c500:173d:9f52:ddab:ee01]) by mx.google.com with ESMTPS id ada2fe7eead31-4c9c98c5ee2si1978040137.448.2025.04.11.08.04.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 11 Apr 2025 08:04:23 -0700 (PDT) Received-SPF: pass (google.com: domain of u-boot-bounces@lists.denx.de designates 2a01:238:438b:c500:173d:9f52:ddab:ee01 as permitted sender) client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=QKvO4eQn; spf=pass (google.com: domain of u-boot-bounces@lists.denx.de designates 2a01:238:438b:c500:173d:9f52:ddab:ee01 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 379C284178; Fri, 11 Apr 2025 17:03:51 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.b="QKvO4eQn"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id E213084148; Fri, 11 Apr 2025 17:03:49 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.2 Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com [IPv6:2a00:1450:4864:20::32b]) (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 E3F4A84167 for ; Fri, 11 Apr 2025 17:03:47 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=caleb.connolly@linaro.org Received: by mail-wm1-x32b.google.com with SMTP id 5b1f17b1804b1-43cf05f0c3eso15540365e9.0 for ; Fri, 11 Apr 2025 08:03:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1744383827; x=1744988627; darn=lists.denx.de; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=Msntet+z1hVp+lXklTxDdx8dRWqp1mS+6xaRDI1fhvM=; b=QKvO4eQnMwCNCDSDbimRwkdrWVyDqkIYr1n2p+Dhjmzw4Spa6u0VZMDAyeSGBFwpBJ nEam2fOm3yQ8mdLmEnSgnut3hRZJFTYCBEbRdU4mGhrFl/P8Wsn8lYJNeck6hi1PlN/I V7f15PfcyzvChYBNDO425Pif7oLa4TYGTvPkvlTVm9VpxGl/KHQHrH/TXvwGMBHQrDh3 LpxKjvcYQGZpOw4rAwDMdkfr7mN8jkP/hMoWgayf3Mve8wsT7dlTrE9bALG5iAVn+sEQ nwQXc4TAwfJpQJ54w6UJYDPNHOTfY6S6Tbwr+TkJn4HWri9vEHm3oLiS0arOVKYR+xmC J9QA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744383827; x=1744988627; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Msntet+z1hVp+lXklTxDdx8dRWqp1mS+6xaRDI1fhvM=; b=G/+rIS3fOQ20H7g8UNez3i08VBZNCb2PocAlaRIaQzxzppYj3L7HwPVz0UJb7G9Wh6 A0WqIwOQpZdtBReKQwZD/xjGJj3SjzritvhLZwYjyDKJNNDaAW0aLqmVyTwrKtGXOzZn 2uFkjxkBR1WwFT+HAOGp9nV1vxe68JhJ/R7tIQNYnBSikT4E6/NWbTQ3OAVJEm2qSDO/ 36Zu+WurhPKWgR2hUqvu5ca16zvj/PgJ/PkSGTICVy+UmuArB9+AIr1uH10UD2bg1lWR QUggDo38TxwRNR9hGU4dwVi0jKL2PUYFmXAj0c0oOWrZSEPPxu5K5EQihRYvjmDDXyY2 gwJQ== X-Gm-Message-State: AOJu0YzECv7fO1S0VWbCDb3d6wd7uhI9PPod2RxrH5ATemjlR7K8XCYb 83AXMkpcovnM2g7tLaV5rud8/tJtAMUYBuQ9kH5ImJjJuC8nEx6BSjO9hXnAC4o= X-Gm-Gg: ASbGnctFWNSmfMG6/LKGapsfG1bDs8fqAmJIn5rmA/A0q1lkA+XKAFat/hxHmGG+/wP XMKtv9RAuK7c/6wnhSxbYk2Bf5nJV2UoPCghaGhV2iaOuXYIpKiM53fhG/JZugoLLOIpGatG3/g WM/xAs3k9aoBuijGq/OamDswgR87KhimmWgmYPUc0qlKSIN7apsx2bfxMWDG/0AAJ9aH+YNyu5z qLreJrdCqtjAiZDZ/95/AiWMF7oc0VdTzIF/S1rpPE8ClCR1NCUK7EaWLk0TtBVhCoPCckmRHev odriOJ4U0bxpOD5GWsHxKF6T67BLbPi6L5CzZxVEEnXPcdNF X-Received: by 2002:a05:600c:c8d:b0:43e:afca:808f with SMTP id 5b1f17b1804b1-43f3a9b02eemr36398745e9.31.1744383824911; Fri, 11 Apr 2025 08:03:44 -0700 (PDT) Received: from toyger.tail248178.ts.net (35-60-142-46.pool.kielnet.net. [46.142.60.35]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39eaf445270sm2201005f8f.81.2025.04.11.08.03.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 11 Apr 2025 08:03:43 -0700 (PDT) From: Caleb Connolly Date: Fri, 11 Apr 2025 17:03:36 +0200 Subject: [PATCH v2 3/4] dfu: scsi: don't call scsi_scan() MIME-Version: 1.0 Message-Id: <20250411-b4-qcom-capsule-update-improvements-v2-3-27f6b2fcc4a9@linaro.org> References: <20250411-b4-qcom-capsule-update-improvements-v2-0-27f6b2fcc4a9@linaro.org> In-Reply-To: <20250411-b4-qcom-capsule-update-improvements-v2-0-27f6b2fcc4a9@linaro.org> To: Lukasz Majewski , Tom Rini , Caleb Connolly , Neil Armstrong , Sumit Garg , Mattijs Korpershoek Cc: u-boot@lists.denx.de, u-boot-qcom@groups.io, Ilias Apalodimas X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1170; i=caleb.connolly@linaro.org; h=from:subject:message-id; bh=/qd9iWmTFynlTK1BUZWU9tJpdkIDPqn32jR6qxXJKxc=; b=owEBbQKS/ZANAwAKAQWDMSsZX2S2AcsmYgBn+S9JgBeJf56BoeMuhYtmgKNgf8LUUOHLQOQP1 fk6txv7e7eJAjMEAAEKAB0WIQS2UaFGPGq+0GkMVc0FgzErGV9ktgUCZ/kvSQAKCRAFgzErGV9k tiDBEACBiSTtcX2+7bgGZ7un7fR15IHoxd8/UquPB4a5acIxNFU2bIEkWTxUUxnMMpE/AvGPsx8 rOveInd1fPu0Kp+9vEYcpGpGgDUSudkgr97KiB+TbXsQ+9bZMdg6GrEuTh0BtbMth3QdcjduHSv 7Q3nvJr0lIlnu3JaYeU6CWVnNVac/+KhXsM19mkmbycrcLWFsPx5T6LZPCnWw3JvVi0PXu7yNJA kajZte4SzmXR0OPKyQy8miRml7txWRh3omSLm7YR40ARPxTr4LMc56+KzNhiOjIJR/Qj5SXuTft ync1MccHAwbKk1cV0TVSRq4BB51V2v1pSyheuzR6UmAdBkKJ3fpoB4siE9HofDveYFf3IHm73bq 2VjwkdO9kbq4LIM0aUEijTFM0sBgIhUU1msUqiBp2OaNexwsz68yHa4EUGaEQ9FgWGRAE3XQ1GZ zDpuMOlpu+mNGxa4OEsgAHhX0YOogMCfigGbauOAzmUwxvBNIbkyW61z7udMxSy3CKTIMwrHrBp UgPa47Jmmgqd8Pc1UV3LCzZJI36P04JCXNcthS42m9gH+QCBnq38XCXIGBMPV/gun/nrvy43YUK y7rZ+iXaLFsONQr16KEapdb8qo5u2gNKtxUiN4PkxUfBB+X6oFIfGP+bzV4m9QOob8T8/FrD3+l V/UFb9OnqulQ4Yg== X-Developer-Key: i=caleb.connolly@linaro.org; a=openpgp; fpr=83B24DA7FE145076BC38BB250CD904EB673A7C47 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.8 at phobos.denx.de X-Virus-Status: Clean Calling scsi_scan() results in all the block devices (and EFI block devices) being destroyed and re-created. This breaks the EFI filesystem drivers during capsule update. Remove the call, since boards really should be calling scsi_scan() themselves during board_init(). Reviewed-by: Ilias Apalodimas Reviewed-by: Neil Armstrong Signed-off-by: Caleb Connolly --- drivers/dfu/dfu_scsi.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/drivers/dfu/dfu_scsi.c b/drivers/dfu/dfu_scsi.c index 9f95194784c1de00458843276872b1d23d023444..a234548ae46dc2a6ae1ca5770accb58f43782239 100644 --- a/drivers/dfu/dfu_scsi.c +++ b/drivers/dfu/dfu_scsi.c @@ -341,13 +341,8 @@ int dfu_fill_entity_scsi(struct dfu_entity *dfu, char *devstr, char **argv, int if (*s) return -EINVAL; } - if (scsi_scan(false)) { - pr_err("Couldn't init scsi device.\n"); - return -ENODEV; - } - ret = find_scsi_device(dfu->data.scsi.lun, &scsi); if (ret < 0) { pr_err("Couldn't find scsi device no. %d.\n", dfu->data.scsi.lun); return -ENODEV; From patchwork Fri Apr 11 15:03:37 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Caleb Connolly X-Patchwork-Id: 880169 Delivered-To: patch@linaro.org Received: by 2002:a5d:4882:0:b0:38f:210b:807b with SMTP id g2csp811922wrq; Fri, 11 Apr 2025 08:04:13 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCXtcUDrMK+9YpH3qmDedwuNxFZcg9du3Toqd3PsAIxlyN1vaC3bqQlDNW9JDrIxsnNVegWpsA==@linaro.org X-Google-Smtp-Source: AGHT+IHnKXvEJK9gi7So5Yw7RbCMdJmi9NcAGwgB7dv7HMGiS6P3n+DQioPKddPQunGiFrtztAwj X-Received: by 2002:a05:620a:1a04:b0:7c7:a606:5983 with SMTP id af79cd13be357-7c7af0f8812mr529456185a.1.1744383853539; Fri, 11 Apr 2025 08:04:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1744383853; cv=none; d=google.com; s=arc-20240605; b=P+BhRjk64PRp+Z9q0+MJxtuLrVd14+49DJJQY1S53AvN2mHy0llejyRlUxgD0WTZyH +G2XqJTzxUjPXx01RH52lMDFzA+J6qv6aYA5qQfslLS/hTNHvc6rGgFlH0Dhufdods/n psvE14thY6bsi53dOrvEzmgyXdyAQOgrS1goY8pGzatgFfKdf/HnQwBtylGmXwBIQd6Q r9nl0Qy9FjeupBAFpypSBpJAYyNdARmkiSieXBVvmHHyeO1CuzrUG9NOnvz++uFrFoK6 y2n43OxReYZHEtBv7E866W7euMQYENyPUByxtJ2Wrcz/Npm6GuGDCoHMU6SCllW6HJAY aRMQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:cc:to:in-reply-to:references :message-id:content-transfer-encoding:mime-version:subject:date:from :dkim-signature; bh=5kpOlHnovRDvFVWgYIlqSGWad/OVxsVIYQ8LnXuhMJI=; fh=G8Bjta7OuL+bFRRB13meU67ZDQCKHgitHZMfV9AhwSQ=; b=kT1cs527Rd5wegcr7AlBXgqStMNJPoExFZd2RSjLuif0YQ8f9E5AEz31cm5ApoZo0A g0JBApIHvKaEkAlNTChG9WL3bbrZwo3LPnQUmJBXIE1CXvuNkLnm5AcAvsPxRKEq3KcJ PNXeVaTDux0jYglq+iQ3ds+o7OcRxAMsYhiri4p7I0R/f6XWwdPpEY+OKglgP/6ulF/i MdXLcu8tEhLZOXLzqOYvsk04+PsqZXws/POAdazSFeTcojXGQ2UZtW8j9yvBamLIY6ur XBCCQ350cwaEyTJW3j2XDzY39vI3NxCCwjyEJezhvDwbtQO9r+L22vJVmfWpFLhe60OE Vu0w==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=cfW281KU; spf=pass (google.com: domain of u-boot-bounces@lists.denx.de designates 85.214.62.61 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from phobos.denx.de (phobos.denx.de. [85.214.62.61]) by mx.google.com with ESMTPS id a1e0cc1a2514c-8755713ed32si1933904241.42.2025.04.11.08.04.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 11 Apr 2025 08:04:13 -0700 (PDT) Received-SPF: pass (google.com: domain of u-boot-bounces@lists.denx.de designates 85.214.62.61 as permitted sender) client-ip=85.214.62.61; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=cfW281KU; spf=pass (google.com: domain of u-boot-bounces@lists.denx.de designates 85.214.62.61 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id E951B8416E; Fri, 11 Apr 2025 17:03:50 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.b="cfW281KU"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id C712884148; Fri, 11 Apr 2025 17:03:49 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.2 Received: from mail-wr1-x42a.google.com (mail-wr1-x42a.google.com [IPv6:2a00:1450:4864:20::42a]) (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 B6AFA8415D for ; Fri, 11 Apr 2025 17:03:47 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=caleb.connolly@linaro.org Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-39d83782ef6so2023923f8f.0 for ; Fri, 11 Apr 2025 08:03:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1744383827; x=1744988627; darn=lists.denx.de; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=5kpOlHnovRDvFVWgYIlqSGWad/OVxsVIYQ8LnXuhMJI=; b=cfW281KUZXbhxXGKWOKnHOxKV1hqQ9UIeE6MCFq5rx0/k+E6NWsDKNzxRRvbJBKxJY +fY0QoHxBFHoT53moBASa1TEONKO6nhqO3IR12RjewvEdcoIARCrxQ+25YPs1EGO4ndQ l46ZR7OSijVVUyfoHCFEu/zybsElx3qqUBUKZEQHTPvF19tF3EQkkb38TuFpY31HXIGB XUFPGifEo0rmiPn/wdJ67Ob99fNalOwZQ3VlkJV/N3jk2pMa2Zz6vensqrKr7ZUy8kmX ZqfXL9+fmeLZFhNW0kn1Bx+GytSGEwQ6t+vX64a9cHTVC31po+D/5a4ajBlAiSvM9Dfq sWRA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744383827; x=1744988627; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5kpOlHnovRDvFVWgYIlqSGWad/OVxsVIYQ8LnXuhMJI=; b=PAEmRxbmWsqZH6gy3QOQbnPWDNXgTNZ31V2+cxU/cWB5DSUKjqc6AI9+FWjuBhefTy 6T2Y5w53O8DgKuo2oLQ7RNTWIjrRPjC89DbYVWurun6zYfsUoY21fhu+PkfvpzGHnbXt xnMmAlwSfaJOblXlYlfGJt3gnvMCBbIiEqdcYv1g84PA6A1Sq1mb1WSZZs3KWWLpavyw KSO7G7IlPUhTk7TfwJHw8LHOf3doq6ZUHwQ5ijU+P6svcqS8QndWTlLqMUWZ5R0zqO9Y 4fGTlK3tj09MaxaQBtjoE/e8jCAiNPHUPQ6a5sl0xSg5u/5KZlv2ggpPg3DzgFuiptZz i9HA== X-Gm-Message-State: AOJu0YzGeXz6XmAC5wKnsDzsbsoMUnC6UCyrpht+F4vDS33IPp/IgLjM /vBuuBOO8fy4GmlXaTfCgNY3uHWu208bJcdLHA93b/1jomRx5GNvePoRkJ6dyY55YDuCTn0FrHq FuH8= X-Gm-Gg: ASbGncvdCb2srVt4PDx99hQkKwq9C8YrhYT4m3KJ8RySSYAWgAyqo4QZk/j0KakhGR1 l07czcMAmgyU6PBkNyvc6a1l0gOiZobbUmh7bUhvLnyDMnsSEfRMD6ZXW3HgjiQTD/3VOqLPVOi gbuD+HavtKSTchDGOnXpXEl8lDl7ZIYZqOfoHbXqXBZ/e55yrl/M7d1jY9jP+MLXAuUnZKBSZBy 9j6OtUX+qchW3ziVvT0KBGBK81vrFwh/wYoD1pr90XPUR6VMNpL2XyUeIZRIpAbJWr9N/jh9fMJ FHKqjQByjdzgokSfwelrfNYQqv81wbOXs+gZE1PuBExmgk4Qz+ip0qkATqE0mW4WESt4pQcA3bD bZ666Zyq8tGNRfywOgw== X-Received: by 2002:a05:6000:1e42:b0:39c:30d8:32a4 with SMTP id ffacd0b85a97d-39d8f4dd007mr5280839f8f.26.1744383826346; Fri, 11 Apr 2025 08:03:46 -0700 (PDT) Received: from toyger.tail248178.ts.net (35-60-142-46.pool.kielnet.net. [46.142.60.35]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39eaf445270sm2201005f8f.81.2025.04.11.08.03.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 11 Apr 2025 08:03:45 -0700 (PDT) From: Caleb Connolly Date: Fri, 11 Apr 2025 17:03:37 +0200 Subject: [PATCH v2 4/4] qcom_defconfig: enable capsule update support MIME-Version: 1.0 Message-Id: <20250411-b4-qcom-capsule-update-improvements-v2-4-27f6b2fcc4a9@linaro.org> References: <20250411-b4-qcom-capsule-update-improvements-v2-0-27f6b2fcc4a9@linaro.org> In-Reply-To: <20250411-b4-qcom-capsule-update-improvements-v2-0-27f6b2fcc4a9@linaro.org> To: Lukasz Majewski , Tom Rini , Caleb Connolly , Neil Armstrong , Sumit Garg , Mattijs Korpershoek Cc: u-boot@lists.denx.de, u-boot-qcom@groups.io, Ilias Apalodimas X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1604; i=caleb.connolly@linaro.org; h=from:subject:message-id; bh=8ZsO0tnpKp/bzY43lbuvzaH22MWYYKMdoIEhD0J9800=; b=owEBbQKS/ZANAwAKAQWDMSsZX2S2AcsmYgBn+S9K8FWiKHvMZwTNoq6ODtDYsn2ud8Yg7qDFz V+qrd7uhcCJAjMEAAEKAB0WIQS2UaFGPGq+0GkMVc0FgzErGV9ktgUCZ/kvSgAKCRAFgzErGV9k tjcCD/9upTV19lr31/JlTAbJPJdvvx3SmLLj6MMw+8kbUe5CCEsKCGD62bDlh8D/ygC4ShM9D41 oTifKef2ptc5J8PHZ4lWVZKVk2dpKb0kjfjqHGkhRHlHBLj/PPhWtZqJ7FphdvifhKzKogz6T8I KHmBp+z9A5pL7epp91TFzamq3wdsBbetRfdjtdOxWS+T9Feh78Hbq7+//DjqZfgA4UZteottwQE wWrREhkyU8gvEtzMlXnNJnGwyDDURgvGbGFVB0Tj++OIvDO+QpzJC2Zn0s/U6h+kDGTGxpKISmK vkmi6CtnpoAtmowvfEZWoVBsDG02C+7pzh0xPIfnxg4VPAe970iMfRv0rvV9oGnO/fjJ0d/WYqC 8oDU9WhwLLTJ6NSlWDtQrKNYS7o1j4S6UBbQ12ooqkEnhib9yvma5/n/Tdei25QAo1pzxo1xPoU 5LhhvL0+Y3FzpEP7YjhrjK/4hV9kjf/5Sm6QClL1MqN7sDo75oRGn+i/drn+0N8XgB+3G3D/fJb AcaC9qE1UfgLUu6MLLB10oZQh9Mmm6hrfu8G5g/Uy7RQ7DpME2CgHFf5dpoSn6JvGaixW5fNH52 qSJ30ZeVh2EXsSbAPWUoBcIE1bIriHBHeq2ShYQvckn3t7+TChneEgBLMHlJ1DLxzKFnTYnhTxt bDEVMhZTYYkJ6rw== X-Developer-Key: i=caleb.connolly@linaro.org; a=openpgp; fpr=83B24DA7FE145076BC38BB250CD904EB673A7C47 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.8 at phobos.denx.de X-Virus-Status: Clean We can now correctly identify which partition U-Boot is flashed to between uefi, xbl, and boot (including A/B support) so enable capsule update support for all boards. Reviewed-by: Ilias Apalodimas Signed-off-by: Caleb Connolly --- configs/qcm6490_defconfig | 6 ------ configs/qcom_defconfig | 3 +++ 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/configs/qcm6490_defconfig b/configs/qcm6490_defconfig index ba26924da161b1c4b5378955185f314b05cb1006..5ddc5ab3ef8cfe8f9cc09eb573c1a8130b394b43 100644 --- a/configs/qcm6490_defconfig +++ b/configs/qcm6490_defconfig @@ -18,10 +18,4 @@ CONFIG_DEBUG_UART_CLOCK=14745600 CONFIG_TEXT_BASE=0x9fc00000 CONFIG_REMAKE_ELF=y CONFIG_DEFAULT_DEVICE_TREE="qcom/qcs6490-rb3gen2" - -# Enable capsule updates -CONFIG_EFI_RUNTIME_UPDATE_CAPSULE=y -CONFIG_EFI_CAPSULE_ON_DISK=y -CONFIG_EFI_IGNORE_OSINDICATIONS=y -CONFIG_EFI_CAPSULE_FIRMWARE_RAW=y diff --git a/configs/qcom_defconfig b/configs/qcom_defconfig index 537806450dc4a61d3c617cdd2b0cfb8eab1c343c..36e2f45d22aeec6d8c4d904d22bfc466ca1f5b0d 100644 --- a/configs/qcom_defconfig +++ b/configs/qcom_defconfig @@ -5,8 +5,11 @@ CONFIG_SYS_INIT_SP_BSS_OFFSET=1572864 CONFIG_ARCH_SNAPDRAGON=y CONFIG_NR_DRAM_BANKS=24 CONFIG_DEFAULT_DEVICE_TREE="qcom/sdm845-db845c" CONFIG_SYS_LOAD_ADDR=0xA0000000 +CONFIG_EFI_RUNTIME_UPDATE_CAPSULE=y +CONFIG_EFI_CAPSULE_ON_DISK=y +CONFIG_EFI_CAPSULE_FIRMWARE_RAW=y CONFIG_BUTTON_CMD=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_BOOTSTD_FULL=y