From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
To: "Cohen, Eugene" <eugene@hp.com>
Cc: "Ashish Singhal" <ashishsingha@nvidia.com>,
"Wu, Hao A" <hao.a.wu@intel.com>,
"edk2-devel@lists.01.org" <edk2-devel@lists.01.org>,
"Kim, Sangwoo (김상우 SW1Lab.)" <sangwoo.kim@hp.com>
Subject: Re: [PATCH] MdeModulePkg/SdMmcPciHcDxe: Fix DMA on SDHC v3 64-bit systems
Date: Fri, 1 Mar 2019 12:38:59 +0100 [thread overview]
Message-ID: <CAKv+Gu_8R65Hu=UzzG2MvBqRXTaejeiYBAnNxtC_QX_5-bsTRA@mail.gmail.com> (raw)
In-Reply-To: <CS1PR8401MB11895553E1065BE65BA6DB87B4760@CS1PR8401MB1189.NAMPRD84.PROD.OUTLOOK.COM>
On Fri, 1 Mar 2019 at 11:54, Cohen, Eugene <eugene@hp.com> wrote:
>
> Ard,
>
> > So before these changes, we were in the exact same situation, but since PC
> > platforms never enable DMA above 4 GB in the first place, nobody ever
> > noticed until we started running this code on arm64 platforms that have no
> > 32-bit addressable DRAM to begin with.
>
> Interesting - I did not realize that there were designs that were crazy enough to have no addressable DRAM below 4G.
>
You must be new here :-)
But seriously, it does make sense for an implementation to, say, put
all peripherals, PCIe resource windows etc in the bottom half and all
DRAM in the top half of a 40-bit address space, which is how the AMD
Seattle SoC ended with its system memory at address 0x80_0000_0000.
Note that on this platform, we can still use 32-bit DMA if we want to
with the help of the SMMUs, but we haven't wired those up in UEFI (and
the generic host bridge driver did not have the IOMMU hooks at the
time)
> > The obvious conclusion is that the driver should not set the
> > EFI_PCI_IO_ATTRIBUTE_DUAL_ADDRESS_CYCLE attribute if the device does
> > not support it, or, which seems to be our case, if the driver does not
> > implement the 64-bit DMA mode that the driver does support. However,
> > since there are platforms for which bounce buffering is not an option (since
> > there is no 32-bit addressable memory to bounce to), this is not just a
> > performance optimization, and so it would be useful to fix the code so it can
> > drive all 64-bit DMA capable hardware.
>
> Okay, that's a great reason - let's get V3 64b ADMA2 in!
>
> Any objection to committing the original patch in the short term?
>
not at all
Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
next prev parent reply other threads:[~2019-03-01 11:39 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-02-27 10:58 [PATCH] MdeModulePkg/SdMmcPciHcDxe: Fix DMA on SDHC v3 64-bit systems Cohen, Eugene
2019-02-28 3:24 ` Wu, Hao A
2019-02-28 11:23 ` Cohen, Eugene
2019-02-28 19:15 ` Ashish Singhal
2019-02-28 19:56 ` Cohen, Eugene
2019-02-28 21:27 ` Ashish Singhal
2019-02-28 21:58 ` Cohen, Eugene
2019-02-28 22:20 ` Ashish Singhal
2019-02-28 22:40 ` Cohen, Eugene
2019-02-28 23:58 ` Ashish Singhal
2019-03-01 0:10 ` Cohen, Eugene
2019-03-01 0:19 ` Ashish Singhal
2019-03-01 10:32 ` Ard Biesheuvel
2019-03-01 10:34 ` Ard Biesheuvel
2019-03-01 10:54 ` Cohen, Eugene
2019-03-01 11:38 ` Ard Biesheuvel [this message]
2019-03-01 12:31 ` Ashish Singhal
2019-03-01 18:31 ` Ashish Singhal
2019-03-01 15:25 ` Ashish Singhal
2019-03-04 2:39 ` Wu, Hao A
2019-03-04 4:00 ` Ashish Singhal
2019-03-04 4:26 ` Wu, Hao A
2019-03-05 11:58 ` Cohen, Eugene
2019-03-01 11:02 ` Cohen, Eugene
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='CAKv+Gu_8R65Hu=UzzG2MvBqRXTaejeiYBAnNxtC_QX_5-bsTRA@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