From nobody Thu Mar 28 16:59:21 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+80619+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1631575143181312.05660336242875; Mon, 13 Sep 2021 16:19:03 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id sGO1YY1788612x1S3a6uL1fL; Mon, 13 Sep 2021 16:19:02 -0700 X-Received: from NAM02-DM3-obe.outbound.protection.outlook.com (NAM02-DM3-obe.outbound.protection.outlook.com [40.107.95.81]) by mx.groups.io with SMTP id smtpd.web08.2463.1631575141466593242 for ; Mon, 13 Sep 2021 16:19:01 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XBNVXr/9v51h0W9DBOp1K/cVDG7Z5P+cYCxEwu0cqnDRaIYhrIEQDVMirBsl5aXhLFB1J/GILgrgfCBihUUmfHBRc1PYPUCrWuFtnyVZ4JmTnnexcVxoTn8kqUZWUXxoCWiifVWT0TKJkHw+avmC3mOqIQ8x1qpQDrZOgG8WhxejF29FHKJDWomChKWmRNfCfi+hB5WKRxtwAi57DcatxUQjXjcwKw/Idhz9CbFw5W1zAqIAw5DMVcN8VcdQkhRgR+8OjOTnc5FjkaQ8fFznd1gHP3+tl1Jk9eqw9CO0BQDJ9eI8Tzf8ru+eledqZHomr8RVRlkWPsjsOWifSAw3gg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=mI/9MTuburi2WjCyAk45HvSDJvllEKL5N4u83mm/jFI=; b=ai/dxHushQL7ltFT8YnIdZbGuOwHS85/omYv35a6gHQ2iiIa+S+DgVInrOs0hm+jrtmLT1cwMDhpzbIDh/y7R0fHiC0IWoa7P1Wq9ioKk8yRbAEyesN1yKkSogWSf5z+qQZugBYmmi86xzVPUMLw6DDKL4O16GE0T37vF8P79mVNDa8yO9hyeKYc+imn2VScMDSArNakt7LsUPOhUw497QLGhcFm1IzA5mfDRJnCa1L4416KllgeY1Z8ev/qocWEhfTGNFwagxx/Gya8n3QSQIn37BCx17gPV2fBwrJxvWVeJvvVJx08rE31yg2GJvB0qqCKA6S8ZLwB6YSIPAS55g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.112.32) smtp.rcpttodomain=kernel.org smtp.mailfrom=nvidia.com; dmarc=pass (p=quarantine sp=none pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none X-Received: from MWHPR17CA0073.namprd17.prod.outlook.com (2603:10b6:300:c2::11) by MN2PR12MB3904.namprd12.prod.outlook.com (2603:10b6:208:165::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4500.17; Mon, 13 Sep 2021 23:18:59 +0000 X-Received: from CO1NAM11FT056.eop-nam11.prod.protection.outlook.com (2603:10b6:300:c2:cafe::9d) by MWHPR17CA0073.outlook.office365.com (2603:10b6:300:c2::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4500.14 via Frontend Transport; Mon, 13 Sep 2021 23:18:59 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.112.32) smtp.mailfrom=nvidia.com; kernel.org; dkim=none (message not signed) header.d=none;kernel.org; dmarc=pass action=none header.from=nvidia.com; Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+80619+1787277+3901457@groups.io; helo=mail02.groups.io; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.112.32 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.112.32; helo=mail.nvidia.com; X-Received: from mail.nvidia.com (216.228.112.32) by CO1NAM11FT056.mail.protection.outlook.com (10.13.175.107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4500.14 via Frontend Transport; Mon, 13 Sep 2021 23:18:59 +0000 X-Received: from HQMAIL111.nvidia.com (172.20.187.18) by HQMAIL109.nvidia.com (172.20.187.15) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Mon, 13 Sep 2021 16:18:58 -0700 X-Received: from build-jbrasen-20210913T102602203.nvidia.com (172.20.187.5) by mail.nvidia.com (172.20.187.18) with Microsoft SMTP Server id 15.0.1497.18 via Frontend Transport; Mon, 13 Sep 2021 23:18:58 +0000 From: "Jeff Brasen via groups.io" To: CC: , , , , Jeff Brasen Subject: [edk2-devel] [PATCH v3 1/4] EmbeddedPkg: Remove duplicate libfdt.h include Date: Mon, 13 Sep 2021 23:18:48 +0000 Message-ID: MIME-Version: 1.0 In-Reply-To: References: X-NVConfidentiality: public X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 60773c07-088e-449c-dd87-08d9770cdde4 X-MS-TrafficTypeDiagnostic: MN2PR12MB3904: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:854; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Message-Info: CRMVjL4oCQAMhjxLcbaBzqBxwgkwPLOqRG3tPsizRC2HWel6xA0D7ThN/129P2qI5Abieq8wDr3Day/PvytWAJ45Ick2h8/3iccnHHA1ob/Mzwe624itbG9KyLk878p+FvsasRNkYiLiPo72h/9v8Ys12E8/DcPtrXMFwnOt6eSMpjyDRj5gHpToAkE1DwcpZfAvocSe2t8I/sJvVN1CWIHu/TJYAmt39ZW1Ih7WpqOjP5/uwKmxSZB44g8h+9ZYN/adg7hagmPQQGoW47dtC2ahK0SAbHEllUu2k8M6Mh0xL8sthxubxc3bcuYDxJ+sia0fGeCoXrN18MHhI9AF06n09bSZ8R57Od4ZT3ufPz4EIEMzTIpxkIcsOP0K0Glhk6Irk9M9D4PTyhI8rKgNE1UeCThDUefT/SYlD21/KxQ+9I5zadv1lIwR4ADPXNe/aRvNywYNcuMMd6rKq5/2mF0PDX1l1L3tHgPySKonzYX7JMzS5uVgVrTvLD+XFmD/hmSqOCxTzV8H9bgx7OkR+u/0xWR3qWd9F7DYN1V1tpe3sTizk3sYkZspn3rTPn4MpUo6J01y4SoU8QPV/O5e/xj4diqj13THSG6gInkFRWHYZ6pOCLmwAR0rlwxZui+j0w+lClj0oLNXuQy9hcHE99Te46H96bYomAtz/ozCYiOqm01nQn8BfQdPV/TKm94AGrDJoL2L+8aGuapQFv/f2A== X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2021 23:18:59.4663 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 60773c07-088e-449c-dd87-08d9770cdde4 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.112.32];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT056.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB3904 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,jbrasen@nvidia.com X-Gm-Message-State: EpzfOUSxnlE8a7YTpfA0y1Sxx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1631575142; bh=doA/85Ud8Nmw6GLw4H32EdcOJ9WXe1CFuxT+7bM+k9Y=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=dNLiHrRPh3+S5dWckv0bGtc+BK2dAJKnr9FA7iQhDGrl2JOhNIlzdCJXvQfNS6iEuUx YDMlrAa50QY4l9xmSlaXODdwWVNGYttjlRpmk0HE1+7CujHsuIjmoVj2YXZpMHyzdUc9l sP0aceb5hT0HVKtTELpWy45L3hZ+IUgCWqU= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1631575145354100005 Content-Type: text/plain; charset="utf-8" Remove duplicate libfdt.h include statement in AndroidBootImgLib Signed-off-by: Jeff Brasen Reviewed-by: Leif Lindholm --- EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c b/Em= beddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c index bbc240c3632a..33425060b15d 100644 --- a/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c +++ b/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c @@ -16,8 +16,6 @@ #include #include =20 -#include - #define FDT_ADDITIONAL_ENTRIES_SIZE 0x400 =20 typedef struct { --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#80619): https://edk2.groups.io/g/devel/message/80619 Mute This Topic: https://groups.io/mt/85589857/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Mar 28 16:59:21 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+80620+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1631575143840926.0698205306592; Mon, 13 Sep 2021 16:19:03 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id LhQTYY1788612x39CmGmfN1j; Mon, 13 Sep 2021 16:19:03 -0700 X-Received: from NAM02-SN1-obe.outbound.protection.outlook.com (NAM02-SN1-obe.outbound.protection.outlook.com [40.107.96.82]) by mx.groups.io with SMTP id smtpd.web10.2417.1631575141420605937 for ; Mon, 13 Sep 2021 16:19:01 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PYNINU98XgJdkvwzds/pctPmyuD8OGifh78vVltQgurFgl4d5Xk/pv63xW5vav69IkOTG/64qQ0hdnRfbzir69NGyyQ638XS7UpptC428sCOcjk14o+ZzVnpdldlMDEw4DEBFMC6uL7/LNSHNy1nQaK+ixzJZgVqkt7cq5DKuz5SARP3uXYFNvRM85XdAJzNJqYpatMJmdJeCbpYUNlkCy+WdVYGvrjYkVL/IFl/0958eX+J+GQvQSMCxMwwSe65iN/2YBy+ZWWoq/40ZxhwcbYpy7fKQWXSrYDeBJgOSBaWjalFjxnb/gplyMOt+Sp3jP3Ed9PDfpmnYX6kurxd2g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=dM1CXGAJ/Lr8TwWyroIerP2UsrvzPfMp3vbUgCWF2+g=; b=XOkH93vle3ji4XDAVSFrsLKInw844FFCoWFf4Xsrir3G7M98FtLB4+x1vyhlntsC0ZJdSnxuvksggKZAfiluD7fPEjPmVZbD7v4/Pnm9fQj12VmiFiXZcL8zXBl9pZ5b6C9cjzMZ19Z4zpn4Z2g/EJP013H+Yitwcp9mWMhBM6aqPRbl2ELZVeriiWnKNRwGhBjQbFZD19VZkTqtxjCk7po8Lwahlrkv/7fkdT+KxKPOhnJjQ23hKIqmSbWkO3PCyEoo8s9dg3Sw6sv1Z2S5CjdEKCqTSuB4n/A7ndrgmAK0xTOVYyqG1AQ6Fzk0st3fogbVkwKRgITEsxTpRwZhzw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.112.36) smtp.rcpttodomain=kernel.org smtp.mailfrom=nvidia.com; dmarc=pass (p=quarantine sp=none pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none X-Received: from MWHPR15CA0043.namprd15.prod.outlook.com (2603:10b6:300:ad::29) by CH2PR12MB3878.namprd12.prod.outlook.com (2603:10b6:610:2a::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4500.17; Mon, 13 Sep 2021 23:19:00 +0000 X-Received: from CO1NAM11FT022.eop-nam11.prod.protection.outlook.com (2603:10b6:300:ad:cafe::4) by MWHPR15CA0043.outlook.office365.com (2603:10b6:300:ad::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4500.14 via Frontend Transport; Mon, 13 Sep 2021 23:18:59 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.112.36) smtp.mailfrom=nvidia.com; kernel.org; dkim=none (message not signed) header.d=none;kernel.org; dmarc=pass action=none header.from=nvidia.com; Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+80620+1787277+3901457@groups.io; helo=mail02.groups.io; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.112.36 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.112.36; helo=mail.nvidia.com; X-Received: from mail.nvidia.com (216.228.112.36) by CO1NAM11FT022.mail.protection.outlook.com (10.13.175.199) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4500.14 via Frontend Transport; Mon, 13 Sep 2021 23:18:59 +0000 X-Received: from HQMAIL111.nvidia.com (172.20.187.18) by HQMAIL101.nvidia.com (172.20.187.10) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Mon, 13 Sep 2021 23:18:59 +0000 X-Received: from build-jbrasen-20210913T102602203.nvidia.com (172.20.187.5) by mail.nvidia.com (172.20.187.18) with Microsoft SMTP Server id 15.0.1497.18 via Frontend Transport; Mon, 13 Sep 2021 23:18:59 +0000 From: "Jeff Brasen via groups.io" To: CC: , , , , Jeff Brasen Subject: [edk2-devel] [PATCH v3 2/4] EmbeddedPkg: AndroidBootImgBoot error handling updates Date: Mon, 13 Sep 2021 23:18:49 +0000 Message-ID: <212f203320b448f4832b31ea4513119693114012.1631574815.git.jbrasen@nvidia.com> MIME-Version: 1.0 In-Reply-To: References: X-NVConfidentiality: public X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 27fd90fd-dcab-478f-feec-08d9770cde0a X-MS-TrafficTypeDiagnostic: CH2PR12MB3878: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:166; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Message-Info: LHyQKuPEcjyuy7bUueZHLUJggFpypHAe50I6ZjIRTcE6HpUCJBdJrcX0/EedlUMDMPQJ0CaMvjqfNX5fve5lKeGLBLLwiC3hVIBkbYds+mYeWPDjmNBCmGlLUxW+Kd3BmB9vtxSK9xJ0KCXoNAPKDppE6s2jWNESdRsIXJqrUpiSI1skPMvzGFF4xtlrFdEmE8vIRLjwMDNsBpG/f+oYj7/y1A/0S0awxUn1v1b121qz/U88bK0X47CG/fPq/ogGDgPcahnFux7epN1EKI4BcvnG+/BSqCV9j4gXLtiivpyS1JtJKa7Y+QBD6nMreNlcOSLmmj+CFMWF0D054t2HAACc/TmuXaiGqFAKUea9Kfzm2KRhv4AEUIHlChCd8cq4tZ3fhHGOqjLRH0tKthCKmf1eHbPAKhfD7118LCDkj5UKy4cb9HJLlW21sApZ8x5PhfGmgKgQfdGKO29ykkyUK5AkJLcuuGUpQ9VY1NCmovDt1aNbov7LN9B1LH7cSFmOw6OCb+U6HEnEzHs7GXSCzWiL7+Dq9GmxN32rSics+0CmLZpUwm+cTFJjB3ppVLpaGhoBLaD2arUFyIu2sbL8Hai6jASLsgBD/OCYPhZMiMkriNCZEcHqt0IHk7WujfF1K1QhKB/B8/sPsxcYuH2ic+cMhvj3btQLyMZdGA+l6WZTqZjOjwmCZpWTdyOCZ7lRFuUK6nAWOZu9rBff60Sqbw== X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2021 23:18:59.7123 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 27fd90fd-dcab-478f-feec-08d9770cde0a X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.112.36];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT022.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR12MB3878 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,jbrasen@nvidia.com X-Gm-Message-State: ukinLH2fCHljw5Wr3KfmKjvbx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1631575143; bh=0L1LDUL3sQ44yObRfqma1/8kjMYgQtzOdj9Cbq4xOuo=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=Td7Cr0Z7l+lvNhKfyN/ON/WG9LotNBs5hZfiCPfoV0N3a9sf1uq0Udz4y7j3U/sCaJN kg29my/8BIa9ENdOR9yk+QqLxCgTD/nsUzpt27RuLjpNNFQNW00NRYn8w+jJeSykXL7eL Ge9YAlW2xb8Sm+W5rqtZEIiBdCazqzt8vjw= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1631575145426100010 Content-Type: text/plain; charset="utf-8" Update AndroidBootImgBoot to use a single return point Make sure Kernel args are freed and Image is unloaded. Signed-off-by: Jeff Brasen Reviewed-by: Leif Lindholm --- .../AndroidBootImgLib/AndroidBootImgLib.c | 50 +++++++++++-------- 1 file changed, 29 insertions(+), 21 deletions(-) diff --git a/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c b/Em= beddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c index 33425060b15d..324933013d91 100644 --- a/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c +++ b/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c @@ -382,10 +382,13 @@ AndroidBootImgBoot ( UINTN RamdiskSize; IN VOID *FdtBase; =20 + NewKernelArg =3D NULL; + ImageHandle =3D NULL; + Status =3D gBS->LocateProtocol (&gAndroidBootImgProtocolGuid, NULL, (VOID **) &mAndroidBootImg); if (EFI_ERROR (Status)) { - return Status; + goto Exit; } =20 Status =3D AndroidBootImgGetKernelInfo ( @@ -394,19 +397,19 @@ AndroidBootImgBoot ( &KernelSize ); if (EFI_ERROR (Status)) { - return Status; + goto Exit; } =20 NewKernelArg =3D AllocateZeroPool (ANDROID_BOOTIMG_KERNEL_ARGS_SIZE); if (NewKernelArg =3D=3D NULL) { DEBUG ((DEBUG_ERROR, "Fail to allocate memory\n")); - return EFI_OUT_OF_RESOURCES; + Status =3D EFI_OUT_OF_RESOURCES; + goto Exit; } =20 Status =3D AndroidBootImgUpdateArgs (Buffer, NewKernelArg); if (EFI_ERROR (Status)) { - FreePool (NewKernelArg); - return Status; + goto Exit; } =20 Status =3D AndroidBootImgGetRamdiskInfo ( @@ -415,19 +418,17 @@ AndroidBootImgBoot ( &RamdiskSize ); if (EFI_ERROR (Status)) { - return Status; + goto Exit; } =20 Status =3D AndroidBootImgLocateFdt (Buffer, &FdtBase); if (EFI_ERROR (Status)) { - FreePool (NewKernelArg); - return Status; + goto Exit; } =20 Status =3D AndroidBootImgUpdateFdt (Buffer, FdtBase, RamdiskData, Ramdis= kSize); if (EFI_ERROR (Status)) { - FreePool (NewKernelArg); - return Status; + goto Exit; } =20 KernelDevicePath =3D mMemoryDevicePathTemplate; @@ -440,21 +441,15 @@ AndroidBootImgBoot ( (EFI_DEVICE_PATH *)&KernelDevicePath, (VOID*)(UINTN)Kernel, KernelSize, &ImageHandle); if (EFI_ERROR (Status)) { - // - // With EFI_SECURITY_VIOLATION retval, the Image was loaded and an Ima= geHandle was created - // with a valid EFI_LOADED_IMAGE_PROTOCOL, but the image can not be st= arted right now. - // If the caller doesn't have the option to defer the execution of an = image, we should - // unload image for the EFI_SECURITY_VIOLATION to avoid resource leak. - // - if (Status =3D=3D EFI_SECURITY_VIOLATION) { - gBS->UnloadImage (ImageHandle); - } - return Status; + goto Exit; } =20 // Set kernel arguments Status =3D gBS->HandleProtocol (ImageHandle, &gEfiLoadedImageProtocolGui= d, (VOID **) &ImageInfo); + if (EFI_ERROR (Status)) { + goto Exit; + } ImageInfo->LoadOptions =3D NewKernelArg; ImageInfo->LoadOptionsSize =3D StrLen (NewKernelArg) * sizeof (CHAR16); =20 @@ -464,5 +459,18 @@ AndroidBootImgBoot ( Status =3D gBS->StartImage (ImageHandle, NULL, NULL); // Clear the Watchdog Timer if the image returns gBS->SetWatchdogTimer (0, 0x10000, 0, NULL); - return EFI_SUCCESS; + +Exit: + //Unload image as it will not be used anymore + if (ImageHandle !=3D NULL) { + gBS->UnloadImage (ImageHandle); + ImageHandle =3D NULL; + } + if (EFI_ERROR (Status)) { + if (NewKernelArg !=3D NULL) { + FreePool (NewKernelArg); + NewKernelArg =3D NULL; + } + } + return Status; } --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#80620): https://edk2.groups.io/g/devel/message/80620 Mute This Topic: https://groups.io/mt/85589858/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Mar 28 16:59:21 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+80618+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1631575142723160.73152050387705; Mon, 13 Sep 2021 16:19:02 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id QCTUYY1788612xK8Ae0VTsZ8; Mon, 13 Sep 2021 16:19:02 -0700 X-Received: from NAM11-DM6-obe.outbound.protection.outlook.com (NAM11-DM6-obe.outbound.protection.outlook.com [40.107.223.42]) by mx.groups.io with SMTP id smtpd.web10.2416.1631575141300906950 for ; Mon, 13 Sep 2021 16:19:01 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hrcMewSSeIPG0mcvqOTnIDI6xoiql1vPAwN09CFvp2dfSKYjhKBE1vsJ9CcFq45eGHsrczMzMl78ILuBgGZmoU4I5Bz29MwxLjBkT81EFawy/KVBIgjYXOB47JTmMPhJB/kzDrk4X0tXO30R2GseNnOB1BAEaveHoCkKtz2u7RT2Y3drkC5PYuze+KzSKba1DvUZCqy2uptIoyMKyDn4aZjmDxkwhgFh5PCpq+xzzi2NoAxTN6iMAxIY+p1EZ54XGdBId2rdL1Gzdx8m5ML5czkOiqlQCxT/mlgq+fsMzvJwqv7s7f5DKfZzUk7RoMZqs2RzdiSFTV9TEH02zPCT8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=6XmkdmNRdtJZrFP8AFNK3NbLrHzMTMUmaK6x0gkKTig=; b=DM/sS7Y8bV8DVZzRIPQ66Q0T/Wi0fNLh8j59qSV/uy22skWVBKwOMZpUN2V6PNPwprIt3Ygq5lQnRYLX6lKHsid96VNNQFXhgawbedsWyf+C1JCq0WrBx5uRrZac0Rx3mWMGZKQ62r6So8MXQPqiVnJFtdQPe1m/ueaoOllTY7fa4YU0NH92RL/f3iQcsann21JoIceSxu4R/mcj2duZ6z8gCsiZEzCdL9YnrnN+LLzUFAqiQKCj+r3++r0KgHop+UkSrFKyYev/SNqZBbi+le5RM5FwQ8GM+zQbvwJw7XWfObl99bzTl1t7MDH+4Wwogag1ZpaxjxWRKjNp/C9oFw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.112.34) smtp.rcpttodomain=kernel.org smtp.mailfrom=nvidia.com; dmarc=pass (p=quarantine sp=none pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none X-Received: from MWHPR11CA0004.namprd11.prod.outlook.com (2603:10b6:301:1::14) by DM5PR1201MB2555.namprd12.prod.outlook.com (2603:10b6:3:ea::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4500.14; Mon, 13 Sep 2021 23:19:00 +0000 X-Received: from CO1NAM11FT030.eop-nam11.prod.protection.outlook.com (2603:10b6:301:1:cafe::ff) by MWHPR11CA0004.outlook.office365.com (2603:10b6:301:1::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4500.14 via Frontend Transport; Mon, 13 Sep 2021 23:19:00 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.112.34) smtp.mailfrom=nvidia.com; kernel.org; dkim=none (message not signed) header.d=none;kernel.org; dmarc=pass action=none header.from=nvidia.com; Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+80618+1787277+3901457@groups.io; helo=mail02.groups.io; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.112.34 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.112.34; helo=mail.nvidia.com; X-Received: from mail.nvidia.com (216.228.112.34) by CO1NAM11FT030.mail.protection.outlook.com (10.13.174.125) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4500.14 via Frontend Transport; Mon, 13 Sep 2021 23:18:59 +0000 X-Received: from HQMAIL111.nvidia.com (172.20.187.18) by HQMAIL107.nvidia.com (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Mon, 13 Sep 2021 23:18:59 +0000 X-Received: from build-jbrasen-20210913T102602203.nvidia.com (172.20.187.5) by mail.nvidia.com (172.20.187.18) with Microsoft SMTP Server id 15.0.1497.18 via Frontend Transport; Mon, 13 Sep 2021 23:18:59 +0000 From: "Jeff Brasen via groups.io" To: CC: , , , , Jeff Brasen Subject: [edk2-devel] [PATCH v3 3/4] EmbeddedPkg: Install FDT if UpdateDtb is not present Date: Mon, 13 Sep 2021 23:18:50 +0000 Message-ID: <526fa9e66249647ee98ca58946168a912eb755dd.1631574815.git.jbrasen@nvidia.com> MIME-Version: 1.0 In-Reply-To: References: X-NVConfidentiality: public X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 59950e3f-318d-45e0-c3e1-08d9770cde29 X-MS-TrafficTypeDiagnostic: DM5PR1201MB2555: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1247; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Message-Info: 5iVFcpkb6Xla7haa+4iVNmifhg9QyPzntg34plWye3e5N8CMuWQXfweRhcy0llipKZT4XOsZm8VOJFtTbdVnGKGXlXod7SZd5ifL+aZqWf/ag9ImkIT0Apm309K4RbKRM8U3buZvY/VQvMHal7XzzkgDqIh/5SiDPRSktT1kNcZDiFAiuGAR4/rfeKKqtCQYQNOagkl6PsuWwxLaZ9gBXURiTsMr5TTRuab5H0hSz5AjjlNJH2DqJwffpF1+dx06Or3ss05dVszAfChQn6Zbe5Uq77hMNIQC17WeSJ1SOtzjLlVEKpPEclK/hbXK4G3HXu560RhFfJ6fYR/cPmSd8oMzuTUhcwg2vHFUmkcO43lryiCweyD4A2doMsB2vSc4lDnYJIgCGJLFGAos3EimydLIO71ofLUQCZn+jgUkN+ctG0KuHO7cCa6qPmadSMwUbKDn5wFQWu9OwFezA9Xzu7Q09J8T62E3i41g1K1LfHwBQ8WAhLKkbV+xf3PJJ1TbmSlTwl1FgwhH+hmQ4LxGpePoikvqfRB+zW/VLqkF4SaXbO2XlOHJ+dCxN8mcIO0Fm/6k6zDts1Vm+Ez35SIfwlwNblVuyFBA/k5zdCpJvCE28kBBOtc8g4KdpQRLejObr8U8FrfRwPuMukt0JajMzTabZbhObfLEc/Ys1KVRLPeHvQK2JvbVTqp0yTwClYEkUAow0M6L1GPABYE5Ztw4CQ== X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2021 23:18:59.9168 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 59950e3f-318d-45e0-c3e1-08d9770cde29 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.112.34];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT030.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR1201MB2555 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,jbrasen@nvidia.com X-Gm-Message-State: z0A6D6VogRUnwzas3EI1xxHUx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1631575142; bh=faPbPLlSXE+8mFBpmoyEsnBN8FyZr5E0eWo1NFYtP5Q=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=lqdCEdkqGkaILSmBcf9Bx53dpODl6OA/83x1WEOLLdp4a5K501s2aZ0j7gt0w9soK4A 76RdoZ3Y3SrpC8P/3UHC+FplPQ0/29oRA+2U5/PDXGdHAdxHla50z59nBj8zpqbGQ40Zf FCNaoCIzIfDwUrsntOIHkjWs+/1A+xerGD0= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1631575143173100001 Content-Type: text/plain; charset="utf-8" Currently if mAndroidBootImg->UpdateDtb is not supported on the platform the device tree updates of the initrd are not made. Signed-off-by: Jeff Brasen Reviewed-by: Leif Lindholm --- .../Library/AndroidBootImgLib/AndroidBootImgLib.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c b/Em= beddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c index 324933013d91..4f8ff5b261ca 100644 --- a/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c +++ b/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c @@ -349,12 +349,13 @@ AndroidBootImgUpdateFdt ( if (EFI_ERROR (Status)) { goto Fdt_Exit; } - - Status =3D gBS->InstallConfigurationTable ( - &gFdtTableGuid, - (VOID *)(UINTN)NewFdtBase - ); + } else { + NewFdtBase =3D UpdatedFdtBase; } + Status =3D gBS->InstallConfigurationTable ( + &gFdtTableGuid, + (VOID *)(UINTN)NewFdtBase + ); =20 if (!EFI_ERROR (Status)) { return EFI_SUCCESS; --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#80618): https://edk2.groups.io/g/devel/message/80618 Mute This Topic: https://groups.io/mt/85589856/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Mar 28 16:59:21 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+80621+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1631575144285391.63163673989743; Mon, 13 Sep 2021 16:19:04 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id NTl4YY1788612xbozNfUfhyD; Mon, 13 Sep 2021 16:19:03 -0700 X-Received: from NAM04-MW2-obe.outbound.protection.outlook.com (NAM04-MW2-obe.outbound.protection.outlook.com [40.107.101.87]) by mx.groups.io with SMTP id smtpd.web12.2499.1631575142671395723 for ; Mon, 13 Sep 2021 16:19:02 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=itOiGYWsG3J9RzdMUqauNdqhgUKzlEd2ZclT+1lJbmVPIKNMf+f5LXaUH19LMB02EqD3jmi2swVY1N7JrdhOtMglcm9oEiK2H7TOIa1HABEVTISgOVRp3rutsAI6q+JzPzErinvJLJQ9M0DLb7MtlxTYEqgB7CNxZC0YAVJi9vvzuHIbjjvRS7vv5N2DFeniNWJQctuYJ/sH25aOCKxmBG1C2KPhVWtAoMF6HKuwy55rjy4No7KMKGc4qo7Plqgb+BVG5vffB1fR1mlhUedl7ZsDQlLp4FmPver/BMyCtT+FIM8VI5yzb7hHnt6NItdZph/Ucqkzwlvd6CgfM47dhA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=cuyl2/OZPjMdQ5AdxMO5Lzu6yYg+mG+CimKKMko15Jw=; b=mC0SzRoHPsQkOzamoPke6T/GrgbGBPYHktXC/D98KwG9Z9521ZvgKRLjiO4innfQ26KBCmWJVNtysR1LSL4IAGPKUce2xt88mTRaQ+tsipaWxxE2r2OC0hg2H2D4tf/bDn6BddxTTVW9gav/jF7fnsYMY6AFatpTczRSLcr7TJp1zRjfRQxflO3mlPfTVOZAcJX0MB1Xxy1hYlsGyw5r5WFbnkPY0DKAptx15VtagQXZ1/ZNevfnBiCRCu9yQp3Mk+J9l/wKhEp7tSgUoNXHNt2StVQ8hWbRT/3X35JGHNEQKv9/tX41q2tnfSsmPvyIawTtEjQYiYvZ1Fp76t2eHQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.112.32) smtp.rcpttodomain=kernel.org smtp.mailfrom=nvidia.com; dmarc=pass (p=quarantine sp=none pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none X-Received: from MWHPR17CA0095.namprd17.prod.outlook.com (2603:10b6:300:c2::33) by BN8PR12MB4595.namprd12.prod.outlook.com (2603:10b6:408:72::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4500.14; Mon, 13 Sep 2021 23:19:00 +0000 X-Received: from CO1NAM11FT056.eop-nam11.prod.protection.outlook.com (2603:10b6:300:c2:cafe::7b) by MWHPR17CA0095.outlook.office365.com (2603:10b6:300:c2::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4500.14 via Frontend Transport; Mon, 13 Sep 2021 23:19:00 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.112.32) smtp.mailfrom=nvidia.com; kernel.org; dkim=none (message not signed) header.d=none;kernel.org; dmarc=pass action=none header.from=nvidia.com; Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+80621+1787277+3901457@groups.io; helo=mail02.groups.io; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.112.32 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.112.32; helo=mail.nvidia.com; X-Received: from mail.nvidia.com (216.228.112.32) by CO1NAM11FT056.mail.protection.outlook.com (10.13.175.107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4500.14 via Frontend Transport; Mon, 13 Sep 2021 23:19:00 +0000 X-Received: from HQMAIL111.nvidia.com (172.20.187.18) by HQMAIL109.nvidia.com (172.20.187.15) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Mon, 13 Sep 2021 16:18:59 -0700 X-Received: from build-jbrasen-20210913T102602203.nvidia.com (172.20.187.5) by mail.nvidia.com (172.20.187.18) with Microsoft SMTP Server id 15.0.1497.18 via Frontend Transport; Mon, 13 Sep 2021 23:18:59 +0000 From: "Jeff Brasen via groups.io" To: CC: , , , , Jeff Brasen Subject: [edk2-devel] [PATCH v3 4/4] EmbeddedPkg: Add LoadFile2 for linux initrd Date: Mon, 13 Sep 2021 23:18:51 +0000 Message-ID: <4a3a25bb7c33faab9d20bb7ca045c72f92207b98.1631574815.git.jbrasen@nvidia.com> MIME-Version: 1.0 In-Reply-To: References: X-NVConfidentiality: public X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 1c604bea-52ed-4300-d145-08d9770cde52 X-MS-TrafficTypeDiagnostic: BN8PR12MB4595: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8882; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Message-Info: E2TnqrVNGMbDNMnvcw1QJtiiJ3y8R7ixtSKCg2hY70PpjUvkXXIth0f7iycfZPksCJTAnlZB4PaoYbDvQshrRyh2xVtP9cmxC93mw0IY3MVVcrXzpLQELU6Pbs+EVlg+H3N+tSVoN2dS/R+5dAw4Sg8DbvWkyxaiH8N+yGLCXxVMsbLHPMKJjM2SO8BYCmug8BWmBQGg7rq0Zb4jDVppO0BIItg3zQ0McjpsXHe61jaJaLdX08neL0kugEHZVCkHa5mE5Gjl2JhY8BK1iDm8Vz7e1tcZm0NC2NenK8jg+p1MQiiyVYji1FbLaS/FpOkK1vQWM89H8mF9Yt8HkiJsPkFfusD/S38Bw8xhwqV2Dd1LRlmMjt1IpODYLp1Aku5pMxfKDiwYjjfsXgwH09wiZ5d1AKYYnxpn8JRN/4NmLmF1KUCKFzmeXuATHDR/w1FkXP1X3i76aL3/i9itg5g8GOTIm7I5RQFKU0ua9V5aD5gymWbLB3Oa3sg16gLcFkYozzI/G6d5v3CuVSoiHjjFXmkoh+8HRNby79WgkZ/NtzQIRpRvzlWrzTFuSQN1ZvHnvRAULmIOW6W/QyIw2EIhZM8oeVw4INaohpTGEaX+aQ8wG9lyhSStm4f0wzqaji3IY9hBBUST8Bbs3W0SrdwB8wEhDDxhAWkCRmKzrRWOTRSi/wwkctoyJeaBJsVaNbFi8x4EWyqsi+ZpWJTJ5RLZS1dXXCpGusLc2MpwWEe70eo= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2021 23:19:00.1728 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 1c604bea-52ed-4300-d145-08d9770cde52 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.112.32];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT056.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR12MB4595 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,jbrasen@nvidia.com X-Gm-Message-State: 2fN8LIomxWITB8hw2kmxdPLox1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1631575143; bh=5oJpnQqRQEkZjBr/7XTSpQUKuaxNZGlLJBrRIJVMRHU=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=VmbuIbIzjBwqoKk3+9J72JFkbjoYQ4hZKG8zXOc93frZTpeVNAG0jtEQVj/aYD/YBQP lF8c63W31YO303x/H5sKLVCPKQiRPyOmAOy9Oek0cUdQtoPrx4pymQwmnVwN42SCP+gm6 17LnNS72UTkZHLdjjWLrBoevGG3nCdaeSCU= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1631575145558100016 Content-Type: text/plain; charset="utf-8" Add support under a pcd feature for using the new interface to pass initrd to the linux kernel instead of via device tree. This feature is also enabled if ACPI tables are present, and will skip locating and installation of device tree. Signed-off-by: Jeff Brasen Reviewed-by: Leif Lindholm --- EmbeddedPkg/EmbeddedPkg.dec | 1 + .../AndroidBootImgLib/AndroidBootImgLib.inf | 4 + .../AndroidBootImgLib/AndroidBootImgLib.c | 218 ++++++++++++++++-- 3 files changed, 201 insertions(+), 22 deletions(-) diff --git a/EmbeddedPkg/EmbeddedPkg.dec b/EmbeddedPkg/EmbeddedPkg.dec index c2068ce5a8ce..7638aaaadeb8 100644 --- a/EmbeddedPkg/EmbeddedPkg.dec +++ b/EmbeddedPkg/EmbeddedPkg.dec @@ -86,6 +86,7 @@ [Ppis] [PcdsFeatureFlag.common] gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob|FALSE|BO= OLEAN|0x0000001b gEmbeddedTokenSpaceGuid.PcdGdbSerial|FALSE|BOOLEAN|0x00000053 + gEmbeddedTokenSpaceGuid.PcdAndroidBootLoadFile2|FALSE|BOOLEAN|0x0000005b =20 [PcdsFixedAtBuild.common] gEmbeddedTokenSpaceGuid.PcdPrePiStackBase|0|UINT32|0x0000000b diff --git a/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.inf b/= EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.inf index bfed4ba9dcd4..affde50f617a 100644 --- a/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.inf +++ b/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.inf @@ -41,4 +41,8 @@ [Protocols] gEfiLoadedImageProtocolGuid =20 [Guids] + gEfiAcpiTableGuid gFdtTableGuid + +[FeaturePcd] + gEmbeddedTokenSpaceGuid.PcdAndroidBootLoadFile2 diff --git a/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c b/Em= beddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c index 4f8ff5b261ca..cc39fef4895c 100644 --- a/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c +++ b/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c @@ -10,12 +10,16 @@ #include #include #include +#include #include #include =20 #include +#include #include =20 +#include + #define FDT_ADDITIONAL_ENTRIES_SIZE 0x400 =20 typedef struct { @@ -23,7 +27,15 @@ typedef struct { EFI_DEVICE_PATH_PROTOCOL End; } MEMORY_DEVICE_PATH; =20 +typedef struct { + VENDOR_DEVICE_PATH VendorMediaNode; + EFI_DEVICE_PATH_PROTOCOL EndNode; +} RAMDISK_DEVICE_PATH; + STATIC ANDROID_BOOTIMG_PROTOCOL *mAndroidBootImg; +STATIC VOID *mRamdiskData =3D NULL; +STATIC UINTN mRamdiskSize =3D 0; +STATIC EFI_HANDLE mRamDiskLoadFileHandle =3D= NULL; =20 STATIC CONST MEMORY_DEVICE_PATH mMemoryDevicePathTemplate =3D { @@ -46,6 +58,99 @@ STATIC CONST MEMORY_DEVICE_PATH mMemoryDevicePathTemplat= e =3D } // End }; =20 +STATIC CONST RAMDISK_DEVICE_PATH mRamdiskDevicePath =3D +{ + { + { + MEDIA_DEVICE_PATH, + MEDIA_VENDOR_DP, + { sizeof (VENDOR_DEVICE_PATH), 0 } + }, + LINUX_EFI_INITRD_MEDIA_GUID + }, + { + END_DEVICE_PATH_TYPE, + END_ENTIRE_DEVICE_PATH_SUBTYPE, + { sizeof (EFI_DEVICE_PATH_PROTOCOL), 0 } + } +}; + +/** + Causes the driver to load a specified file. + + @param This Protocol instance pointer. + @param FilePath The device specific path of the file to load. + @param BootPolicy Should always be FALSE. + @param BufferSize On input the size of Buffer in bytes. On output with = a return + code of EFI_SUCCESS, the amount of data transferred to + Buffer. On output with a return code of EFI_BUFFER_TO= O_SMALL, + the size of Buffer required to retrieve the requested= file. + @param Buffer The memory buffer to transfer the file to. IF Buffer = is NULL, + then no the size of the requested file is returned in + BufferSize. + + @retval EFI_SUCCESS The file was loaded. + @retval EFI_UNSUPPORTED BootPolicy is TRUE. + @retval EFI_INVALID_PARAMETER FilePath is not a valid device path, or + BufferSize is NULL. + @retval EFI_NO_MEDIA No medium was present to load the file. + @retval EFI_DEVICE_ERROR The file was not loaded due to a device er= ror. + @retval EFI_NO_RESPONSE The remote system did not respond. + @retval EFI_NOT_FOUND The file was not found + @retval EFI_ABORTED The file load process was manually cancele= d. + @retval EFI_BUFFER_TOO_SMALL The BufferSize is too small to read the cu= rrent + directory entry. BufferSize has been updat= ed with + the size needed to complete the request. + + +**/ +EFI_STATUS +EFIAPI +AndroidBootImgLoadFile2 ( + IN EFI_LOAD_FILE2_PROTOCOL *This, + IN EFI_DEVICE_PATH_PROTOCOL *FilePath, + IN BOOLEAN BootPolicy, + IN OUT UINTN *BufferSize, + IN VOID *Buffer OPTIONAL + ) + +{ + // Verify if the valid parameters + if (This =3D=3D NULL || + BufferSize =3D=3D NULL || + FilePath =3D=3D NULL || + !IsDevicePathValid (FilePath, 0)) { + return EFI_INVALID_PARAMETER; + } + + if (BootPolicy) { + return EFI_UNSUPPORTED; + } + + // Check if the given buffer size is big enough + // EFI_BUFFER_TOO_SMALL to allow caller to allocate a bigger buffer + if (mRamdiskSize =3D=3D 0) { + return EFI_NOT_FOUND; + } + if (Buffer =3D=3D NULL || *BufferSize < mRamdiskSize) { + *BufferSize =3D mRamdiskSize; + return EFI_BUFFER_TOO_SMALL; + } + + // Copy InitRd + CopyMem (Buffer, mRamdiskData, mRamdiskSize); + *BufferSize =3D mRamdiskSize; + + return EFI_SUCCESS; +} + +/// +/// Load File Protocol instance +/// +STATIC EFI_LOAD_FILE2_PROTOCOL mAndroidBootImgLoadFile2 =3D { + AndroidBootImgLoadFile2 +}; + EFI_STATUS AndroidBootImgGetImgSize ( IN VOID *BootImg, @@ -214,6 +319,60 @@ AndroidBootImgUpdateArgs ( return Status; } =20 +EFI_STATUS +AndroidBootImgInstallLoadFile2 ( + IN VOID *RamdiskData, + IN UINTN RamdiskSize + ) +{ + mRamDiskLoadFileHandle =3D NULL; + mRamdiskData =3D RamdiskData; + mRamdiskSize =3D RamdiskSize; + return gBS->InstallMultipleProtocolInterfaces ( + &mRamDiskLoadFileHandle, + &gEfiLoadFile2ProtocolGuid, + &mAndroidBootImgLoadFile2, + &gEfiDevicePathProtocolGuid, + &mRamdiskDevicePath, + NULL + ); +} + +EFI_STATUS +AndroidBootImgUninstallLoadFile2 ( + VOID + ) +{ + EFI_STATUS Status; + + Status =3D EFI_SUCCESS; + mRamdiskData =3D NULL; + mRamdiskSize =3D 0; + if (mRamDiskLoadFileHandle !=3D NULL) { + Status =3D gBS->UninstallMultipleProtocolInterfaces ( + mRamDiskLoadFileHandle, + &gEfiLoadFile2ProtocolGuid, + &mAndroidBootImgLoadFile2, + &gEfiDevicePathProtocolGuid, + &mRamdiskDevicePath, + NULL + ); + mRamDiskLoadFileHandle =3D NULL; + } + return Status; +} + +BOOLEAN AndroidBootImgAcpiSupported ( + VOID + ) +{ + EFI_STATUS Status; + VOID *AcpiTable; + + Status =3D EfiGetSystemConfigurationTable (&gEfiAcpiTableGuid, &AcpiTabl= e); + return !EFI_ERROR (Status); +} + EFI_STATUS AndroidBootImgLocateFdt ( IN VOID *BootImg, @@ -325,23 +484,30 @@ AndroidBootImgUpdateFdt ( goto Fdt_Exit; } =20 - ChosenNode =3D AndroidBootImgGetChosenNode(UpdatedFdtBase); - if (!ChosenNode) { - goto Fdt_Exit; - } + if (FeaturePcdGet (PcdAndroidBootLoadFile2)) { + Status =3D AndroidBootImgInstallLoadFile2 (RamdiskData, RamdiskSize); + if (EFI_ERROR (Status)) { + goto Fdt_Exit; + } + } else { + ChosenNode =3D AndroidBootImgGetChosenNode(UpdatedFdtBase); + if (!ChosenNode) { + goto Fdt_Exit; + } =20 - Status =3D AndroidBootImgSetProperty64 (UpdatedFdtBase, ChosenNode, - "linux,initrd-start", - (UINTN)RamdiskData); - if (EFI_ERROR (Status)) { - goto Fdt_Exit; - } + Status =3D AndroidBootImgSetProperty64 (UpdatedFdtBase, ChosenNode, + "linux,initrd-start", + (UINTN)RamdiskData); + if (EFI_ERROR (Status)) { + goto Fdt_Exit; + } =20 - Status =3D AndroidBootImgSetProperty64 (UpdatedFdtBase, ChosenNode, - "linux,initrd-end", - (UINTN)RamdiskData + RamdiskSize); - if (EFI_ERROR (Status)) { - goto Fdt_Exit; + Status =3D AndroidBootImgSetProperty64 (UpdatedFdtBase, ChosenNode, + "linux,initrd-end", + (UINTN)RamdiskData + RamdiskSize= ); + if (EFI_ERROR (Status)) { + goto Fdt_Exit; + } } =20 if (mAndroidBootImg->UpdateDtb) { @@ -422,14 +588,21 @@ AndroidBootImgBoot ( goto Exit; } =20 - Status =3D AndroidBootImgLocateFdt (Buffer, &FdtBase); - if (EFI_ERROR (Status)) { - goto Exit; - } + if (AndroidBootImgAcpiSupported ()) { + Status =3D AndroidBootImgInstallLoadFile2 (RamdiskData, RamdiskSize); + if (EFI_ERROR (Status)) { + goto Exit; + } + } else { + Status =3D AndroidBootImgLocateFdt (Buffer, &FdtBase); + if (EFI_ERROR (Status)) { + goto Exit; + } =20 - Status =3D AndroidBootImgUpdateFdt (Buffer, FdtBase, RamdiskData, Ramdis= kSize); - if (EFI_ERROR (Status)) { - goto Exit; + Status =3D AndroidBootImgUpdateFdt (Buffer, FdtBase, RamdiskData, Ramd= iskSize); + if (EFI_ERROR (Status)) { + goto Exit; + } } =20 KernelDevicePath =3D mMemoryDevicePathTemplate; @@ -473,5 +646,6 @@ AndroidBootImgBoot ( NewKernelArg =3D NULL; } } + AndroidBootImgUninstallLoadFile2 (); return Status; } --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#80621): https://edk2.groups.io/g/devel/message/80621 Mute This Topic: https://groups.io/mt/85589860/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-