From: Jeremy Linton <jeremy.linton@arm.com>
To: Ard Biesheuvel <ard.biesheuvel@linaro.org>,
edk2-devel@lists.01.org, leif.lindholm@linaro.org,
ryan.harkin@linaro.org, evan.lloyd@arm.com
Subject: Re: [PATCH v2 0/5] ArmPlatformPkg: map VRAM using memory semantics
Date: Thu, 6 Apr 2017 11:29:08 -0500 [thread overview]
Message-ID: <48c48135-3cb6-75ad-c13d-7f5df83e9c36@arm.com> (raw)
In-Reply-To: <20170406131551.3322-1-ard.biesheuvel@linaro.org>
Hi,
On 04/06/2017 08:15 AM, Ard Biesheuvel wrote:
> As reported by Jeremy, the recently introduced accelerated memcpy/memset
> routines are causing problems when used on framebuffer memory. While
> framebuffers are arguably right on the blurry line between MMIO (with
> side effects that are sensitive to ordering) and memory, mapping VRAM
> as device memory is unnecessary to begin with, and so we can improve
> our situation by using memory semantics for the VRAM mappings. (Whether
> we end up reverting to the unaccelerated memcpy/memset routines is a
> separate matter)
>
> So fix both the FVP case, which has a separate VRAM region, and TC2, which
> allocates VRAM from normal memory and changes the mapping attributes.
>
> Note to Ryan: this fixes FVP Base model for me, but not the Foundation model
> (whose PL111 support I never saw working to begin with, so I am not sure what
> is going on there)
So, I applied a similar set of patches against the juno, and everything
continues to work. The change also looks good.
So,
Reviewed-by: Jeremy Linton <jeremy.linton@arm.com>
But I'm still concerned in general, since the HDLCD frame buffer is odd
in that its just system memory rather than being attached to an IO bus
of some form. AKA its not actually a "VRAM" (cue discussion about GDDR
not having multiple ports/etc)...
>
> Ard Biesheuvel (5):
> ArmPlatformPkg/FVP: map motherboard VRAM as uncached memory
> ArmPlatformPkg/HdLcdArmVExpressLib: fix incorrect FreePool () call
> ArmPlatformPkg/PL111LcdArmVExpressLib: fix incorrect FreePool () call
> ArmPlatformPkg/HdLcdArmVExpressLib: use write-combine mapping for VRAM
> ArmPlatformPkg/PL111LcdArmVExpressLib: use write-combine mapping for
> VRAM
>
> ArmPlatformPkg/ArmVExpressPkg/Include/Platform/RTSM/ArmPlatform.h | 10 ++++++----
> ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibRTSM/RTSMMem.c | 8 +++++++-
> ArmPlatformPkg/ArmVExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpress.c | 14 +++++---------
> ArmPlatformPkg/ArmVExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpressLib.inf | 3 ++-
> ArmPlatformPkg/ArmVExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpress.c | 14 +++++---------
> ArmPlatformPkg/ArmVExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpressLib.inf | 3 ++-
> 6 files changed, 27 insertions(+), 25 deletions(-)
>
next prev parent reply other threads:[~2017-04-06 16:29 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-04-06 13:15 [PATCH v2 0/5] ArmPlatformPkg: map VRAM using memory semantics Ard Biesheuvel
2017-04-06 13:15 ` [PATCH v2 1/5] ArmPlatformPkg/FVP: map motherboard VRAM as uncached memory Ard Biesheuvel
2017-04-06 18:26 ` Leif Lindholm
2017-04-06 18:31 ` Ard Biesheuvel
2017-04-06 18:45 ` Leif Lindholm
2017-04-06 18:46 ` Ard Biesheuvel
2017-04-06 19:06 ` Leif Lindholm
2017-04-06 20:01 ` Ard Biesheuvel
2017-04-06 20:09 ` Leif Lindholm
2017-04-06 13:15 ` [PATCH v2 2/5] ArmPlatformPkg/HdLcdArmVExpressLib: fix incorrect FreePool () call Ard Biesheuvel
2017-04-06 13:15 ` [PATCH v2 3/5] ArmPlatformPkg/PL111LcdArmVExpressLib: " Ard Biesheuvel
2017-04-06 13:15 ` [PATCH v2 4/5] ArmPlatformPkg/HdLcdArmVExpressLib: use write-combine mapping for VRAM Ard Biesheuvel
2017-04-06 13:15 ` [PATCH v2 5/5] ArmPlatformPkg/PL111LcdArmVExpressLib: " Ard Biesheuvel
2017-04-06 16:29 ` Jeremy Linton [this message]
2017-04-06 18:02 ` [PATCH v2 0/5] ArmPlatformPkg: map VRAM using memory semantics Ard Biesheuvel
2017-04-06 18:08 ` Ryan Harkin
2017-04-06 18:29 ` Leif Lindholm
2017-04-06 20:32 ` Ard Biesheuvel
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=48c48135-3cb6-75ad-c13d-7f5df83e9c36@arm.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