From: "Ard Biesheuvel" <ardb@kernel.org>
To: Andrei Warkentin <awarkentin@vmware.com>
Cc: jlinton <lintonrjeremy@gmail.com>,
"devel@edk2.groups.io" <devel@edk2.groups.io>,
"pete@akeo.ie" <pete@akeo.ie>,
"samer.el-haj-mahmoud@arm.com" <samer.el-haj-mahmoud@arm.com>,
"leif@nuviainc.com" <leif@nuviainc.com>,
"ardb+tianocore@kernel.org" <ardb+tianocore@kernel.org>,
Jeremy Linton <jeremy.linton@arm.com>
Subject: Re: [PATCH v2] Platform/RaspberryPi: Only enable IORT when 3G limit is disabled.
Date: Sat, 20 Feb 2021 15:43:53 +0100 [thread overview]
Message-ID: <CAMj1kXFqu04pYxwRsePe7Wx193C0fTc8afEk-Nms6eQhsB3O_Q@mail.gmail.com> (raw)
In-Reply-To: <SN7PR05MB7582C2D71F82686D404C407EB9869@SN7PR05MB7582.namprd05.prod.outlook.com>
On Wed, 17 Feb 2021 at 07:22, Andrei Warkentin <awarkentin@vmware.com> wrote:
>
> Reviewed-by: Andrei Warkentin <awarkentin@vmware.com>
> _
Pushed as 2cad1bd782b5..41b54dbb6803
Thanks all
_______________________________
> From: jlinton <lintonrjeremy@gmail.com>
> Sent: Wednesday, February 17, 2021 12:07 AM
> To: devel@edk2.groups.io <devel@edk2.groups.io>
> Cc: pete@akeo.ie <pete@akeo.ie>; Andrei Warkentin <awarkentin@vmware.com>; samer.el-haj-mahmoud@arm.com <samer.el-haj-mahmoud@arm.com>; leif@nuviainc.com <leif@nuviainc.com>; ardb+tianocore@kernel.org <ardb+tianocore@kernel.org>; Jeremy Linton <jeremy.linton@arm.com>
> Subject: [PATCH v2] Platform/RaspberryPi: Only enable IORT when 3G limit is disabled.
>
> From: Jeremy Linton <jeremy.linton@arm.com>
>
> The 3G limit, and the 2G IORT are intended to solve
> the same linux problem. They limit PCI DMA operations
> to the first 3G of RAM. Older linux kernels, as
> used with RHEL/Centos, trigger an assertion*
> when a DMA operation starts at a range that
> doesn't fit within the 2G range specified by the IORT.
>
> The simple solution is to only enable the IORT
> when the 3G flag is disabled and there is more
> than 3G installed.
>
> * https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fpftf%2FRPi4%2Fissues%2F123&data=04%7C01%7Cawarkentin%40vmware.com%7C0c1dc1458ac14a84867b08d8d30a613a%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C0%7C1%7C637491388819273969%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=VlStuFf%2F5bvIAMarB%2F2djY64J7GDa1zEVMB61%2Fwjgn8%3D&reserved=0
>
> Fixes: dac891da5cf3 ("Platform/RaspberryPi/AcpiTables: add a IORT ACPI table to limit XHCI DMA")
> Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
> ---
> Platform/RaspberryPi/Drivers/ConfigDxe/ConfigDxe.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/Platform/RaspberryPi/Drivers/ConfigDxe/ConfigDxe.c b/Platform/RaspberryPi/Drivers/ConfigDxe/ConfigDxe.c
> index 19ef950f10..578f5ead8f 100644
> --- a/Platform/RaspberryPi/Drivers/ConfigDxe/ConfigDxe.c
> +++ b/Platform/RaspberryPi/Drivers/ConfigDxe/ConfigDxe.c
> @@ -755,6 +755,12 @@ HandleDynamicNamespace (
> DEBUG ((DEBUG_ERROR, "Found namespace table not in table list.\n"));
>
>
>
> return FALSE;
>
> + case SIGNATURE_32 ('I', 'O', 'R', 'T'):
>
> + // only enable the IORT on machines with >3G and no limit
>
> + // to avoid problems with rhel/centos and other older OSs
>
> + if (PcdGet32 (PcdRamLimitTo3GB) || !PcdGet32 (PcdRamMoreThan3GB)) {
>
> + return FALSE;
>
> + }
>
> }
>
>
>
> return TRUE;
>
> --
> 2.13.7
>
prev parent reply other threads:[~2021-02-20 14:44 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-02-17 6:07 [PATCH v2] Platform/RaspberryPi: Only enable IORT when 3G limit is disabled jlinton
2021-02-17 6:22 ` Andrei Warkentin
2021-02-20 14:43 ` Ard Biesheuvel [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAMj1kXFqu04pYxwRsePe7Wx193C0fTc8afEk-Nms6eQhsB3O_Q@mail.gmail.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox