From nobody Tue May 14 17:20:40 2024 Delivered-To: importer@patchew.org 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+106814+1787277+3901457@groups.io; helo=mail02.groups.io; 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+106814+1787277+3901457@groups.io ARC-Seal: i=1; a=rsa-sha256; t=1689090230; cv=none; d=zohomail.com; s=zohoarc; b=Ca4WzB62XrtuE9EKnhOLXFydf0KRTAAYzpuIZzUFfKo8H9Ozj5wSCK8+4Z/e4aErdZkeKyGBCIc5AOh73ItKoO7bKPLGKojyfGuqEe4oNFDm8IjhvxI2wkd+xmdNOiDPVDlr8Ninc/dT0D42OYI4eGlFYvesqTyKkRnI2bRWnlI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1689090230; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=qOVP+R5KsVDJn//lThZCVXHtZ5Yvc6kJc+/RgQI+yO4=; b=dBSZop3jc+2+Cgqo8oqgB2FHw91wJWGvNhLdKWj8yJcJqErGNoT5h9ZsExseBjKJWPYmTV7/g0SyjXogtnXSpY0ehnvnyFYn3vFi1dnagOnpxFpvwmBg0DVKtPazXQKU2hRgg4GbBS0xLronUHfFEbTICfY0UGdYMA0qsIyjpxE= ARC-Authentication-Results: i=1; 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+106814+1787277+3901457@groups.io Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1689090230284938.7744113801136; Tue, 11 Jul 2023 08:43:50 -0700 (PDT) Return-Path: DKIM-Signature: a=rsa-sha256; bh=Q/R+Fcgp7nSymrWFcjLwjs2j7q7DanJDyuMCxFWbIbM=; c=relaxed/simple; d=groups.io; h=X-Received:X-Received:X-Received:X-Gm-Message-State:X-Google-Smtp-Source:X-Received:X-Received:From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Unsubscribe:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:Content-Transfer-Encoding; s=20140610; t=1689090229; v=1; b=Yh4BpRjWLfqzyZazjCMk8h3Y2cy9YuuXwOgK/tMqYUr7GREk0o5aXq76R6XodcHOaHAv5Kss YdROzsFC84pfg38iB4zZn521jnHHiEtQo6NoxLW5d9ybsvFmGhgmhpZwCvQfnepUD1PzX9p79Fx udLC1yg+5l0yBPkjdYgrxDW0= X-Received: by 127.0.0.2 with SMTP id fkxqYY1788612xIWdUEK5AnK; Tue, 11 Jul 2023 08:43:49 -0700 X-Received: from mail-pl1-f176.google.com (mail-pl1-f176.google.com [209.85.214.176]) by mx.groups.io with SMTP id smtpd.web11.3112.1689090229174876659 for ; Tue, 11 Jul 2023 08:43:49 -0700 X-Received: by mail-pl1-f176.google.com with SMTP id d9443c01a7336-1b9d80e33fbso15192095ad.0 for ; Tue, 11 Jul 2023 08:43:49 -0700 (PDT) X-Gm-Message-State: 9jwd4n3cEBKC1s5gSEG595fZx1787277AA= X-Google-Smtp-Source: APBJJlGNxcIPEuaVhPXHhxdRm2rD6jKuVXUSvozofEs+XgGOvIIwtf4r5XWal75THP/UTOeC9gn7zw== X-Received: by 2002:a17:903:455:b0:1b8:95a2:d87e with SMTP id iw21-20020a170903045500b001b895a2d87emr11768639plb.2.1689090228529; Tue, 11 Jul 2023 08:43:48 -0700 (PDT) X-Received: from sunil-laptop.. ([106.51.184.72]) by smtp.gmail.com with ESMTPSA id k9-20020a170902694900b001b9f75c8c4dsm923084plt.52.2023.07.11.08.43.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Jul 2023 08:43:48 -0700 (PDT) From: "Sunil V L" To: devel@edk2.groups.io Cc: Sunil V L , Ard Biesheuvel , Jiewen Yao , Jordan Justen , Andrei Warkentin , Ard Biesheuvel Subject: [edk2-devel] [PATCH v2 1/4] OvmfPkg/RiscVVirt: use 'auto' alignment and FIXED for XIP modules Date: Tue, 11 Jul 2023 21:13:32 +0530 Message-Id: <20230711154335.586343-2-sunilvl@ventanamicro.com> In-Reply-To: <20230711154335.586343-1-sunilvl@ventanamicro.com> References: <20230711154335.586343-1-sunilvl@ventanamicro.com> MIME-Version: 1.0 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,sunilvl@ventanamicro.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1689090231379100001 Content-Type: text/plain; charset="utf-8" Use auto alignment and FIXED FFS attribute for XIP modules similar to [1]. Without this change, the CLANGDWARF toolchain will fail to build with below error. GenFfs: ERROR 1000: Unknown option SectionAlign option must be specified with section file. [1] - https://github.com/tianocore/edk2/commit/7669f7349829f0e4755552ba0d6e= 600492fd8170 Cc: Ard Biesheuvel Cc: Jiewen Yao Cc: Jordan Justen Cc Gerd Hoffmann Cc: Andrei Warkentin Signed-off-by: Sunil V L Acked-by: Ard Biesheuvel Tested-by: Ard Biesheuvel # Debian clang version 14.0.6 --- OvmfPkg/RiscVVirt/RiscVVirtQemu.fdf | 34 +++++++++-------------------- 1 file changed, 10 insertions(+), 24 deletions(-) diff --git a/OvmfPkg/RiscVVirt/RiscVVirtQemu.fdf b/OvmfPkg/RiscVVirt/RiscVV= irtQemu.fdf index 21e4ba67379f..b5aebfae078c 100644 --- a/OvmfPkg/RiscVVirt/RiscVVirtQemu.fdf +++ b/OvmfPkg/RiscVVirt/RiscVVirtQemu.fdf @@ -240,30 +240,15 @@ [FV.FVMAIN_COMPACT] } =20 [Rule.Common.SEC] - FILE SEC =3D $(NAMED_GUID) RELOCS_STRIPPED { - PE32 PE32 Align=3D4K $(INF_OUTPUT)/$(MODULE_NAME).efi + FILE SEC =3D $(NAMED_GUID) RELOCS_STRIPPED FIXED { + PE32 PE32 Align =3D Auto $(INF_OUTPUT)/$(MODULE_NAME).efi UI STRING =3D"$(MODULE_NAME)" Optional VERSION STRING =3D"$(INF_VERSION)" Optional BUILD_NUM=3D$(BUILD_NUMBE= R) } =20 -[Rule.Common.PEI_CORE] - FILE PEI_CORE =3D $(NAMED_GUID) { - PE32 PE32 Align=3D4K $(INF_OUTPUT)/$(MODULE_NAME).efi - UI STRING =3D"$(MODULE_NAME)" Optional - VERSION STRING =3D"$(INF_VERSION)" Optional BUILD_NUM=3D$(BUILD_NUMBE= R) - } - -[Rule.Common.PEIM] - FILE PEIM =3D $(NAMED_GUID) { - PEI_DEPEX PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex - PE32 PE32 Align=3D4K $(INF_OUTPUT)/$(MODULE_NAME).efi - UI STRING=3D"$(MODULE_NAME)" Optional - VERSION STRING=3D"$(INF_VERSION)" Optional BUILD_NUM=3D$(BUILD_NUMBE= R) - } - [Rule.Common.DXE_CORE] FILE DXE_CORE =3D $(NAMED_GUID) { - PE32 PE32 Align=3D4K $(INF_OUTPUT)/$(MODULE_NAME).efi + PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi UI STRING=3D"$(MODULE_NAME)" Optional VERSION STRING=3D"$(INF_VERSION)" Optional BUILD_NUM=3D$(BUILD_NUMBER) } @@ -271,7 +256,7 @@ [Rule.Common.DXE_CORE] [Rule.Common.DXE_DRIVER] FILE DRIVER =3D $(NAMED_GUID) { DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex - PE32 PE32 Align=3D4K $(INF_OUTPUT)/$(MODULE_NAME).efi + PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi UI STRING=3D"$(MODULE_NAME)" Optional VERSION STRING=3D"$(INF_VERSION)" Optional BUILD_NUM=3D$(BUILD_NUMBER) } @@ -279,7 +264,7 @@ [Rule.Common.DXE_DRIVER] [Rule.Common.DXE_RUNTIME_DRIVER] FILE DRIVER =3D $(NAMED_GUID) { DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex - PE32 PE32 Align =3D 4K $(INF_OUTPUT)/$(MODULE_NAME).efi + PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi UI STRING=3D"$(MODULE_NAME)" Optional VERSION STRING=3D"$(INF_VERSION)" Optional BUILD_NUM=3D$(BUILD_NUMBER) } @@ -287,7 +272,7 @@ [Rule.Common.DXE_RUNTIME_DRIVER] [Rule.Common.UEFI_DRIVER] FILE DRIVER =3D $(NAMED_GUID) { DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex - PE32 PE32 Align=3D4K $(INF_OUTPUT)/$(MODULE_NAME).efi + PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi UI STRING=3D"$(MODULE_NAME)" Optional VERSION STRING=3D"$(INF_VERSION)" Optional BUILD_NUM=3D$(BUILD_NUMBER) } @@ -295,21 +280,21 @@ [Rule.Common.UEFI_DRIVER] [Rule.Common.UEFI_DRIVER.BINARY] FILE DRIVER =3D $(NAMED_GUID) { DXE_DEPEX DXE_DEPEX Optional |.depex - PE32 PE32 Align=3D4K |.efi + PE32 PE32 |.efi UI STRING=3D"$(MODULE_NAME)" Optional VERSION STRING=3D"$(INF_VERSION)" Optional BUILD_NUM=3D$(BUILD_NUMBE= R) } =20 [Rule.Common.UEFI_APPLICATION] FILE APPLICATION =3D $(NAMED_GUID) { - PE32 PE32 Align=3D4K $(INF_OUTPUT)/$(MODULE_NAME).efi + PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi UI STRING=3D"$(MODULE_NAME)" Optional VERSION STRING=3D"$(INF_VERSION)" Optional BUILD_NUM=3D$(BUILD_NUMBER) } =20 [Rule.Common.UEFI_APPLICATION.BINARY] FILE APPLICATION =3D $(NAMED_GUID) { - PE32 PE32 Align=3D4K |.efi + PE32 PE32 |.efi UI STRING=3D"$(MODULE_NAME)" Optional VERSION STRING=3D"$(INF_VERSION)" Optional BUILD_NUM=3D$(BUILD_NUMBE= R) } @@ -318,4 +303,5 @@ [Rule.Common.USER_DEFINED.ACPITABLE] FILE FREEFORM =3D $(NAMED_GUID) { RAW ACPI |.acpi RAW ASL |.aml + UI STRING=3D"$(MODULE_NAME)" Optional } --=20 2.34.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 (#106814): https://edk2.groups.io/g/devel/message/106814 Mute This Topic: https://groups.io/mt/100081391/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 Tue May 14 17:20:40 2024 Delivered-To: importer@patchew.org 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+106815+1787277+3901457@groups.io; helo=mail02.groups.io; 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+106815+1787277+3901457@groups.io ARC-Seal: i=1; a=rsa-sha256; t=1689090233; cv=none; d=zohomail.com; s=zohoarc; b=m4mHaK40CBHONpTyQlQHrR22JblC+L1UH1G5qt/B3aFshPBaLtILh+6QCVRKrQHPab6Gakq/9+2AA5R56oZu6x148tIxSirIJS4sGDalFhewL3lofbavgXnDKq3gU/Uzc0CZ9UXzyYovYd6NLGIJknYgwx+8IzAhfesPEgUiWGY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1689090233; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=4Gz27LO5DCHbCtk20XRkNP37IDG/MJmVehuQXjrR3L4=; b=MES88jPkpzgSJyDG/7eAg27heyxbXP7u2r/7iegWPlj8Zi1PGwyrq/Udmx/cKfA+QWZoqsHVbE9zF+9TvWnN7Cz1fzbkzNkQNbVacwVCcy7czzAL1YA5ILf67WaXeyB0IggSBlndBwZa05K9ZI01fiYQXNKWEIQN4+muOUyf9LU= ARC-Authentication-Results: i=1; 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+106815+1787277+3901457@groups.io Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 16890902331341017.0952622456931; Tue, 11 Jul 2023 08:43:53 -0700 (PDT) Return-Path: DKIM-Signature: a=rsa-sha256; bh=1lBNj7d2gnrnFtziP+dLA7iS2uFrN2sO+2Z47FyZzag=; c=relaxed/simple; d=groups.io; h=X-Received:X-Received:X-Received:X-Gm-Message-State:X-Google-Smtp-Source:X-Received:X-Received:From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Unsubscribe:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:Content-Transfer-Encoding; s=20140610; t=1689090232; v=1; b=O7zWGVr+gctLXi1RGutIHK0kmvPUVypllggOHqqJJGG0ETZnlLpdHTYUDSw1s8Ldilvr+sY7 hi9x7+aZUHqnj56+pOky7ENloGCY6Hslp/YDkN/YOnj2Uloiz6AzczKoYlu7KDUQriSOIVH2bbr oKdbV76HBUI2PLSa6nfH55ao= X-Received: by 127.0.0.2 with SMTP id d1ktYY1788612xoS56B6I1Z6; Tue, 11 Jul 2023 08:43:52 -0700 X-Received: from mail-pf1-f177.google.com (mail-pf1-f177.google.com [209.85.210.177]) by mx.groups.io with SMTP id smtpd.web10.2969.1689090232164739192 for ; Tue, 11 Jul 2023 08:43:52 -0700 X-Received: by mail-pf1-f177.google.com with SMTP id d2e1a72fcca58-666e64e97e2so3130520b3a.1 for ; Tue, 11 Jul 2023 08:43:52 -0700 (PDT) X-Gm-Message-State: oWVqC7gJaDYuZg3aVV6uk1gWx1787277AA= X-Google-Smtp-Source: APBJJlEnsdr+3VwdkESaq6JUGWBl3LbTk+stTUQVcstpt/FWdfFili4EBNjRw42xmIjchxY2pa8cow== X-Received: by 2002:a05:6a20:6a0a:b0:117:a2f3:3c93 with SMTP id p10-20020a056a206a0a00b00117a2f33c93mr17078721pzk.2.1689090231391; Tue, 11 Jul 2023 08:43:51 -0700 (PDT) X-Received: from sunil-laptop.. ([106.51.184.72]) by smtp.gmail.com with ESMTPSA id k9-20020a170902694900b001b9f75c8c4dsm923084plt.52.2023.07.11.08.43.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Jul 2023 08:43:51 -0700 (PDT) From: "Sunil V L" To: devel@edk2.groups.io Cc: Sunil V L , Ard Biesheuvel , Jiewen Yao , Jordan Justen , Gerd Hoffmann , Andrei Warkentin , Ard Biesheuvel Subject: [edk2-devel] [PATCH v2 2/4] OvmfPkg/RiscVVirt: SecEntry: Remove unnecessary assembly directives Date: Tue, 11 Jul 2023 21:13:33 +0530 Message-Id: <20230711154335.586343-3-sunilvl@ventanamicro.com> In-Reply-To: <20230711154335.586343-1-sunilvl@ventanamicro.com> References: <20230711154335.586343-1-sunilvl@ventanamicro.com> MIME-Version: 1.0 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,sunilvl@ventanamicro.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1689090235196100009 Content-Type: text/plain; charset="utf-8" llvm fails to resolve _ModuleEntry when these extra directives are present. ASM_FUNC already takes care what is required. Cc: Ard Biesheuvel Cc: Jiewen Yao Cc: Jordan Justen Cc: Gerd Hoffmann Cc: Andrei Warkentin Signed-off-by: Sunil V L Acked-by: Ard Biesheuvel Tested-by: Ard Biesheuvel # Debian clang version 14.0.6 --- OvmfPkg/RiscVVirt/Sec/SecEntry.S | 3 --- 1 file changed, 3 deletions(-) diff --git a/OvmfPkg/RiscVVirt/Sec/SecEntry.S b/OvmfPkg/RiscVVirt/Sec/SecEn= try.S index e919a3cb0e80..192fff321ce5 100644 --- a/OvmfPkg/RiscVVirt/Sec/SecEntry.S +++ b/OvmfPkg/RiscVVirt/Sec/SecEntry.S @@ -7,9 +7,6 @@ =20 #include "SecMain.h" =20 -.text -.align 3 - ASM_FUNC (_ModuleEntryPoint) /* Use Temp memory as the stack for calling to C code */ li a4, FixedPcdGet32 (PcdOvmfSecPeiTempRamBase) --=20 2.34.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 (#106815): https://edk2.groups.io/g/devel/message/106815 Mute This Topic: https://groups.io/mt/100081393/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 Tue May 14 17:20:40 2024 Delivered-To: importer@patchew.org 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+106816+1787277+3901457@groups.io; helo=mail02.groups.io; 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+106816+1787277+3901457@groups.io ARC-Seal: i=1; a=rsa-sha256; t=1689090235; cv=none; d=zohomail.com; s=zohoarc; b=Om/tgvTuP2ImgPpJI35UlpEOCVt+j8GzwZGOSAESzavSwkEx50oC3duTeyZz2NpaG6sYool8MW3sVzD2UODHvPVHgpv+sdRoxdDIO0Y+73+bcEmF33dTFjT9NuRYKmKMNIbQ0oUI8YTkQ9vutGD0ajpUIRsxbpDEwlHbVy2o2eA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1689090235; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=rxoq6+agxo7rwzeCh51+CKOkdcJaxVHmssfjBOWiE3o=; b=X5Pf0/y14wsIx6j3+7FBH5W9ObM1mz6rVVJ+EUnaIDvld7tnoG2SHThnPeVlkfUpHbvuyncA3sRRKKI7zAehxrP8lk6XxFbS5oXuxgiUTd/NpZotl19CaUh5gIKo8Hjrki1HSNuFiuWsTFAe/3g6lqWWcmgktHOivorRn/86Qwc= ARC-Authentication-Results: i=1; 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+106816+1787277+3901457@groups.io Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1689090235910832.9295427021385; Tue, 11 Jul 2023 08:43:55 -0700 (PDT) Return-Path: DKIM-Signature: a=rsa-sha256; bh=Z7BBb5+7tIoL21poytAEnXDPSH0DQ9izyk7Dw70Djqk=; c=relaxed/simple; d=groups.io; h=X-Received:X-Received:X-Received:X-Gm-Message-State:X-Google-Smtp-Source:X-Received:X-Received:From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Unsubscribe:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:Content-Transfer-Encoding; s=20140610; t=1689090235; v=1; b=YdS5tozwU4pxYz3WA3mnke/CApPf3hvSTgM8mjwX7UJ1mBohud+2VOnqBQuscqOQpW9TbeSF gHQMt7WyuQf823s7CbPDD7G0hDOBMmPpVcR27Hn3kyougWbpm5pyDbdMOsWxpqLAd+GQJq5TIAO v/lCMdAlQBatW7OXrnJYcdsU= X-Received: by 127.0.0.2 with SMTP id i8NnYY1788612xf3xN5BHUx3; Tue, 11 Jul 2023 08:43:55 -0700 X-Received: from mail-pl1-f170.google.com (mail-pl1-f170.google.com [209.85.214.170]) by mx.groups.io with SMTP id smtpd.web10.2972.1689090235007240389 for ; Tue, 11 Jul 2023 08:43:55 -0700 X-Received: by mail-pl1-f170.google.com with SMTP id d9443c01a7336-1b89600a37fso29670605ad.2 for ; Tue, 11 Jul 2023 08:43:54 -0700 (PDT) X-Gm-Message-State: D3T8s0XhBZEANTVFOewbLZBfx1787277AA= X-Google-Smtp-Source: APBJJlESCwfHR0qA56Gd9zR9TB2S4vZOwpstKYhSvXQSDw1Yjwe1mTDM9Z1RrUXFDDVbmjR/peCqGg== X-Received: by 2002:a17:903:441:b0:1b8:b26f:a6ac with SMTP id iw1-20020a170903044100b001b8b26fa6acmr13289707plb.5.1689090234285; Tue, 11 Jul 2023 08:43:54 -0700 (PDT) X-Received: from sunil-laptop.. ([106.51.184.72]) by smtp.gmail.com with ESMTPSA id k9-20020a170902694900b001b9f75c8c4dsm923084plt.52.2023.07.11.08.43.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Jul 2023 08:43:54 -0700 (PDT) From: "Sunil V L" To: devel@edk2.groups.io Cc: Sunil V L , Rebecca Cran , Liming Gao , Bob Feng , Yuwei Chen , Ard Biesheuvel , Ard Biesheuvel Subject: [edk2-devel] [PATCH v2 3/4] BaseTools/tools_def: Add CLANGDWARF support for RISC-V Date: Tue, 11 Jul 2023 21:13:34 +0530 Message-Id: <20230711154335.586343-4-sunilvl@ventanamicro.com> In-Reply-To: <20230711154335.586343-1-sunilvl@ventanamicro.com> References: <20230711154335.586343-1-sunilvl@ventanamicro.com> MIME-Version: 1.0 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,sunilvl@ventanamicro.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1689090237181100013 Content-Type: text/plain; charset="utf-8" REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D4478 Add tools_def definitions to support CLANGDWARF toolchain for RISC-V. This uses clang and the llvm LLD linker. This helps people by not requiring to install multiple cross compilers for different architectures. Cc: Rebecca Cran Cc: Liming Gao Cc: Bob Feng Cc: Yuwei Chen Cc: Ard Biesheuvel Signed-off-by: Sunil V L Acked-by: Ard Biesheuvel Reviewed-by: Rebecca Cran Tested-by: Ard Biesheuvel # Debian clang version 14.0.6 --- BaseTools/Conf/tools_def.template | 53 +++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.t= emplate index 90f4105506e5..1bf62362b611 100755 --- a/BaseTools/Conf/tools_def.template +++ b/BaseTools/Conf/tools_def.template @@ -745,6 +745,7 @@ DEFINE GCC_LOONGARCH64_CC_FLAGS =3D DEF(GCC_ALL_CC_F= LAGS) -mabi=3Dlp64d -fno-asyn DEFINE GCC_ARM_CC_XIPFLAGS =3D -mno-unaligned-access DEFINE GCC_AARCH64_CC_FLAGS =3D DEF(GCC_ALL_CC_FLAGS) -mlittle-endi= an -fno-short-enums -fverbose-asm -funsigned-char -ffunction-sections -fda= ta-sections -Wno-address -fno-asynchronous-unwind-tables -fno-unwind-tables= -fno-pic -fno-pie -ffixed-x18 DEFINE GCC_AARCH64_CC_XIPFLAGS =3D -mstrict-align -mgeneral-regs-only +DEFINE GCC_RISCV64_CC_XIPFLAGS =3D -mstrict-align -mgeneral-regs-only DEFINE GCC_DLINK_FLAGS_COMMON =3D -nostdlib --pie DEFINE GCC_DLINK2_FLAGS_COMMON =3D -Wl,--script=3D$(EDK_TOOLS_PATH)/Sc= ripts/GccBase.lds DEFINE GCC_IA32_X64_DLINK_COMMON =3D DEF(GCC_DLINK_FLAGS_COMMON) --gc-se= ctions @@ -2023,6 +2024,58 @@ DEFINE CLANGDWARF_AARCH64_DLINK_FLAGS =3D DEF(CLANG= DWARF_AARCH64_TARGET) DEF(GCC_ RELEASE_CLANGDWARF_AARCH64_CC_FLAGS =3D DEF(CLANGDWARF_AARCH64_CC_FLAGS= ) $(PLATFORM_FLAGS) -flto -O3 RELEASE_CLANGDWARF_AARCH64_DLINK_FLAGS =3D DEF(CLANGDWARF_AARCH64_DLINK_FL= AGS) -flto -Wl,-O3 -fuse-ld=3Dlld -L$(WORKSPACE)/ArmPkg/Library/GccLto -llt= o-aarch64 -Wl,-plugin-opt=3D-pass-through=3D-llto-aarch64 -Wl,--no-pie,--no= -relax =20 +################## +# CLANGDWARF RISCV64 definitions +################## +DEFINE CLANGDWARF_RISCV64_TARGET =3D -target riscv64-linux-gnu +DEFINE CLANGDWARF_RISCV64_CC_COMMON =3D DEF(GCC5_RISCV_ALL_CC_FLAGS) DEF(G= CC5_RISCV_ALL_CC_FLAGS_WARNING_DISABLE) DEF(GCC5_RISCV_OPENSBI_TYPES) -marc= h=3DDEF(GCC5_RISCV64_ARCH) -fno-builtin -fno-builtin-memcpy -fno-stack-prot= ector -Wno-address -fno-asynchronous-unwind-tables -fno-unwind-tables -Wno-= unused-but-set-variable -fpack-struct=3D8 -mcmodel=3Dmedany -mabi=3Dlp64 -m= no-relax +DEFINE CLANGDWARF_RISCV64_CC_FLAGS =3D DEF(CLANGDWARF_RISCV64_CC_COMMON) = DEF(CLANGDWARF_RISCV64_TARGET) DEF(CLANGDWARF_WARNING_OVERRIDES) + +# This is similar to GCC flags but without -n +DEFINE CLANGDWARF_RISCV64_ALL_DLINK_COMMON =3D -nostdlib -Wl,-q,--gc-sect= ions -z common-page-size=3D0x40 +DEFINE CLANGDWARF_RISCV64_ALL_DLINK_FLAGS =3D DEF(CLANGDWARF_RISCV64_ALL= _DLINK_COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl= ,-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map +DEFINE CLANGDWARF_RISCV64_DLINK_FLAGS =3D DEF(CLANGDWARF_RISCV64_TAR= GET) DEF(CLANGDWARF_RISCV64_ALL_DLINK_FLAGS) -Wl,-melf64lriscv,--oformat=3D= elf64-littleriscv,--no-relax + +*_CLANGDWARF_RISCV64_PP_FLAGS =3D DEF(GCC_PP_FLAGS) +*_CLANGDWARF_RISCV64_ASLCC_FLAGS =3D DEF(GCC_ASLCC_FLAGS) +*_CLANGDWARF_RISCV64_APP_FLAGS =3D +*_CLANGDWARF_RISCV64_ASL_FLAGS =3D DEF(IASL_FLAGS) +*_CLANGDWARF_RISCV64_ASL_OUTFLAGS =3D DEF(IASL_OUTFLAGS) +*_CLANGDWARF_RISCV64_DTCPP_FLAGS =3D DEF(GCC_DTCPP_FLAGS) +*_CLANGDWARF_RISCV64_DEPS_FLAGS =3D DEF(GCC_DEPS_FLAGS) + +*_CLANGDWARF_RISCV64_CC_PATH =3D ENV(CLANGDWARF_BIN)clang +*_CLANGDWARF_RISCV64_ASM_PATH =3D ENV(CLANGDWARF_BIN)clang +*_CLANGDWARF_RISCV64_PP_PATH =3D ENV(CLANGDWARF_BIN)clang +*_CLANGDWARF_RISCV64_VFRPP_PATH =3D ENV(CLANGDWARF_BIN)clang +*_CLANGDWARF_RISCV64_ASLCC_PATH =3D ENV(CLANGDWARF_BIN)clang +*_CLANGDWARF_RISCV64_ASLPP_PATH =3D ENV(CLANGDWARF_BIN)clang +*_CLANGDWARF_RISCV64_DLINK_PATH =3D ENV(CLANGDWARF_BIN)clang +*_CLANGDWARF_RISCV64_ASLDLINK_PATH =3D ENV(CLANGDWARF_BIN)clang + +*_CLANGDWARF_RISCV64_SLINK_PATH =3D ENV(CLANGDWARF_BIN)llvm-ar +*_CLANGDWARF_RISCV64_RC_PATH =3D ENV(CLANGDWARF_BIN)llvm-objcopy + +*_CLANGDWARF_RISCV64_ASLCC_FLAGS =3D DEF(GCC_ASLCC_FLAGS) -fno-lto +*_CLANGDWARF_RISCV64_ASLDLINK_FLAGS =3D DEF(CLANGDWARF_RISCV64_TARGET) DEF= (GCC5_RISCV32_RISCV64_ASLDLINK_FLAGS) +*_CLANGDWARF_RISCV64_ASM_FLAGS =3D DEF(GCC_ASM_FLAGS) DEF(CLANGDWARF_= RISCV64_TARGET) $(PLATFORM_FLAGS) -Qunused-arguments -mabi=3Dlp64 -mno-relax +*_CLANGDWARF_RISCV64_DLINK_FLAGS =3D DEF(CLANGDWARF_RISCV64_TARGET) DEF= (GCC5_RISCV64_DLINK_FLAGS) +*_CLANGDWARF_RISCV64_DLINK_XIPFLAGS =3D -z common-page-size=3D0x20 +*_CLANGDWARF_RISCV64_DLINK2_FLAGS =3D DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,-= -defsym=3DPECOFF_HEADER_SIZE=3D0x240 +*_CLANGDWARF_RISCV64_PLATFORM_FLAGS =3D +*_CLANGDWARF_RISCV64_PP_FLAGS =3D DEF(GCC_PP_FLAGS) DEF(CLANGDWARF_R= ISCV64_TARGET) $(PLATFORM_FLAGS) +*_CLANGDWARF_RISCV64_RC_FLAGS =3D DEF(GCC_RISCV64_RC_FLAGS) +*_CLANGDWARF_RISCV64_VFRPP_FLAGS =3D DEF(GCC_VFRPP_FLAGS) DEF(CLANGDWAR= F_RISCV64_TARGET) $(PLATFORM_FLAGS) +*_CLANGDWARF_RISCV64_ASLPP_FLAGS =3D DEF(GCC_ASLPP_FLAGS) DEF(CLANGDWAR= F_RISCV64_TARGET) +*_CLANGDWARF_RISCV64_CC_XIPFLAGS =3D DEF(GCC_RISCV64_CC_XIPFLAGS) + + DEBUG_CLANGDWARF_RISCV64_CC_FLAGS =3D DEF(CLANGDWARF_RISCV64_CC_FLAGS= ) $(PLATFORM_FLAGS) -flto -O1 + DEBUG_CLANGDWARF_RISCV64_DLINK_FLAGS =3D DEF(CLANGDWARF_RISCV64_DLINK_FL= AGS) -flto -Wl,-O1 -fuse-ld=3Dlld -Wl,--no-pie,--no-relax + NOOPT_CLANGDWARF_RISCV64_CC_FLAGS =3D DEF(CLANGDWARF_RISCV64_CC_FLAGS= ) $(PLATFORM_FLAGS) -O0 + NOOPT_CLANGDWARF_RISCV64_DLINK_FLAGS =3D DEF(CLANGDWARF_RISCV64_DLINK_FL= AGS) -fuse-ld=3Dlld -Wl,--no-pie,--no-relax +RELEASE_CLANGDWARF_RISCV64_CC_FLAGS =3D DEF(CLANGDWARF_RISCV64_CC_FLAGS= ) $(PLATFORM_FLAGS) -flto -O3 +RELEASE_CLANGDWARF_RISCV64_DLINK_FLAGS =3D DEF(CLANGDWARF_RISCV64_DLINK_FL= AGS) -flto -Wl,-O3 -fuse-ld=3Dlld -Wl,--no-pie,--no-relax + # # # XCODE5 support --=20 2.34.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 (#106816): https://edk2.groups.io/g/devel/message/106816 Mute This Topic: https://groups.io/mt/100081396/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 Tue May 14 17:20:40 2024 Delivered-To: importer@patchew.org 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+106817+1787277+3901457@groups.io; helo=mail02.groups.io; 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+106817+1787277+3901457@groups.io ARC-Seal: i=1; a=rsa-sha256; t=1689090239; cv=none; d=zohomail.com; s=zohoarc; b=MoXilxCCFmfTNVyU4agQK5aWymGgoTzmTIBSv7bNkdkEhtfW00hn1B9HlQezdakI4VvjQO849bIXpLjwKiPels+5F6UqujY505Rg5ZP2GgCDos454GNGaYRJpTJwK3JPNrO+kMSYK9BIwYl+woLsyK98/mSawi7Co9e44P60oyc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1689090239; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=TvXEF+rXKh2soNSxzNmLxK1m71Hmlk3fa/qqK6bhqMs=; b=WhX1ZQ370MRZy5n6DuHM89mOjksBDFiwmPPdRhfpjxyeSz3HqURBKiVqwRWIAEG57U8wanWJKdyt5qvxWJkahxK/T7L1EMIZXn4OS3Yd2JrozG/oflpfsm+jEIdMVl285U1ERhFilhBfNIOra0peAjYo/wIQxcl4oe6FqbnYPKk= ARC-Authentication-Results: i=1; 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+106817+1787277+3901457@groups.io Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1689090239975219.83648453810838; Tue, 11 Jul 2023 08:43:59 -0700 (PDT) Return-Path: DKIM-Signature: a=rsa-sha256; bh=Bt8hRMR+o8qOPNbvjR6OgGiKB5MR1r5WX6UXk3mfljI=; c=relaxed/simple; d=groups.io; h=X-Received:X-Received:X-Received:X-Gm-Message-State:X-Google-Smtp-Source:X-Received:X-Received:From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Unsubscribe:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:Content-Transfer-Encoding; s=20140610; t=1689090238; v=1; b=vfD64GlWKiHzpYyYFS8LEaRoWkr3QMGvdZF5awGIJoBIFHElNzsjYzbVxbfDBak5YSHmqnMs 44yIPBzEHGu+6CpY2gQvv1iEB8DSDgJf+lFOOz7gfFo1S4r0F3KNHM6jR+Tu9Ib0y9c9sP30jnq kSq1JX8ZZJQkyvCNA7EO2cKA= X-Received: by 127.0.0.2 with SMTP id sMnpYY1788612xjq7pCLnfSj; Tue, 11 Jul 2023 08:43:58 -0700 X-Received: from mail-pf1-f181.google.com (mail-pf1-f181.google.com [209.85.210.181]) by mx.groups.io with SMTP id smtpd.web11.3117.1689090238025447535 for ; Tue, 11 Jul 2023 08:43:58 -0700 X-Received: by mail-pf1-f181.google.com with SMTP id d2e1a72fcca58-6686a05bc66so3384991b3a.1 for ; Tue, 11 Jul 2023 08:43:57 -0700 (PDT) X-Gm-Message-State: x4XoH5PlmpJ8S3Lmvdw2ZjkBx1787277AA= X-Google-Smtp-Source: APBJJlHAi9dSJVdWwzUVV9ePX/rqOtsaDisP9rVZ1e3n7fY6BUIl5h7lBNfzUFIFsTY6QnSMpP5/wg== X-Received: by 2002:a17:902:ab88:b0:1b8:918d:ac48 with SMTP id f8-20020a170902ab8800b001b8918dac48mr11604976plr.56.1689090237261; Tue, 11 Jul 2023 08:43:57 -0700 (PDT) X-Received: from sunil-laptop.. ([106.51.184.72]) by smtp.gmail.com with ESMTPSA id k9-20020a170902694900b001b9f75c8c4dsm923084plt.52.2023.07.11.08.43.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Jul 2023 08:43:56 -0700 (PDT) From: "Sunil V L" To: devel@edk2.groups.io Cc: Sunil V L , Ard Biesheuvel , Jiewen Yao , Jordan Justen , Gerd Hoffmann , Andrei Warkentin , Heinrich Schuchardt , Ard Biesheuvel Subject: [edk2-devel] [PATCH v2 4/4] OvmfPkg/RiscVVirt: Update README for CLANGDWARF support Date: Tue, 11 Jul 2023 21:13:35 +0530 Message-Id: <20230711154335.586343-5-sunilvl@ventanamicro.com> In-Reply-To: <20230711154335.586343-1-sunilvl@ventanamicro.com> References: <20230711154335.586343-1-sunilvl@ventanamicro.com> MIME-Version: 1.0 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,sunilvl@ventanamicro.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1689090242442100001 Content-Type: text/plain; charset="utf-8" Update the README with instruction to build using CLANGDWARF toolchain. Cc: Ard Biesheuvel Cc: Jiewen Yao Cc: Jordan Justen Cc: Gerd Hoffmann Cc: Andrei Warkentin Signed-off-by: Sunil V L Reviewed-by: Heinrich Schuchardt Acked-by: Ard Biesheuvel Tested-by: Ard Biesheuvel # Debian clang version 14.0.6 --- OvmfPkg/RiscVVirt/README.md | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/OvmfPkg/RiscVVirt/README.md b/OvmfPkg/RiscVVirt/README.md index 950694419e8b..8c3ac37b802a 100644 --- a/OvmfPkg/RiscVVirt/README.md +++ b/OvmfPkg/RiscVVirt/README.md @@ -12,24 +12,46 @@ The minimum QEMU version required is [7efd65423a](https://github.com/qemu/qemu/commit/7efd65423ab22e6f5890ca08a= e40c84d6660242f) which supports separate pflash devices for EDK2 code and variable storage. =20 +## Get edk2 sources + + git clone --recurse-submodule git@github.com:tianocore/edk2.git + ## Build + +### Using GCC toolchain +**Prerequisite**: RISC-V GNU compiler toolchain should be installed. + export WORKSPACE=3D`pwd` export GCC5_RISCV64_PREFIX=3Driscv64-linux-gnu- export PACKAGES_PATH=3D$WORKSPACE/edk2 export EDK_TOOLS_PATH=3D$WORKSPACE/edk2/BaseTools - source edk2/edksetup.sh + source edk2/edksetup.sh --reconfig make -C edk2/BaseTools source edk2/edksetup.sh BaseTools build -a RISCV64 --buildtarget RELEASE -p OvmfPkg/RiscVVirt/RiscVVirtQ= emu.dsc -t GCC5 =20 +### Using CLANGDWARF toolchain (clang + lld) +**Prerequisite**: LLVM toolchain with clang and lld should be installed. + + export WORKSPACE=3D`pwd` + export CLANGDWARF_BIN=3D/usr/bin/ + export PACKAGES_PATH=3D$WORKSPACE/edk2 + export EDK_TOOLS_PATH=3D$WORKSPACE/edk2/BaseTools + source edk2/edksetup.sh --reconfig + make -C edk2/BaseTools + source edk2/edksetup.sh BaseTools + build -a RISCV64 --buildtarget RELEASE -p OvmfPkg/RiscVVirt/RiscVVirtQ= emu.dsc -t CLANGDWARF + +After a successful build, two files namely **RISCV_VIRT_CODE.fd** and **RI= SCV_VIRT_VARS.fd** are created. + ## Test Below example shows how to boot openSUSE Tumbleweed E20. =20 1) RISC-V QEMU pflash devices should be of of size 32MiB. =20 - `truncate -s 32M Build/RiscVVirtQemu/RELEASE_GCC5/FV/RISCV_VIRT_CODE.f= d` + `truncate -s 32M RISCV_VIRT_CODE.fd` =20 - `truncate -s 32M Build/RiscVVirtQemu/RELEASE_GCC5/FV/RISCV_VIRT_VARS.f= d` + `truncate -s 32M RISCV_VIRT_VARS.fd` =20 2) Running QEMU =20 --=20 2.34.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 (#106817): https://edk2.groups.io/g/devel/message/106817 Mute This Topic: https://groups.io/mt/100081397/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-