From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
To: edk2-devel@lists.01.org, leif.lindholm@linaro.org
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Subject: [PATCH 0/5] ArmPkg et al: remove UncachedMemoryallocationLib
Date: Fri, 25 Aug 2017 13:10:09 +0100 [thread overview]
Message-ID: <20170825121014.15739-1-ard.biesheuvel@linaro.org> (raw)
This series is a followup to 'ArmPkg/ArmDmaLib: remove dependency on
UncachedMemoryAllocationLib' sent out yesterday, and removes library
entirely.
There are two reasons for this:
- UncachedMemoryAllocationLib is often abused by drivers that should
be using DMA abstractions instead. It is up to the platform to decide
whether DMA is cache coherent or not, and the fact that non-cache
coherent DMA may be implemented using uncached allocations should remain
an implementation detail of the DmaLib instance.
- The code is poorly maintained, only frees its allocations in the destructor,
and misleads by exposing pool allocate/free entry points that are actually
backed by page based allocations.
Patches #1 and #2 add a DmaAllocateAlignedBuffer() to DmaLib and both
its implementations. This is required for current users of
UncachedMemoryAllocationLib that rely on minimum alignment to be able
to switch the DmaLib.
Patches #3 and #4 remove a couple of stale references.
Patch #5 actually removes the library and its single remaining implementation.
Ard Biesheuvel (5):
EmbeddedPkg/DmaLib: add routine to allocate aligned buffers
ArmPkg/ArmDmaLib: implement DmaAllocateAlignedBuffer()
BeagleBoardPkg: remove UncachedMemoryAllocationLib resolutions
Omap35xxPkg: remove bogus UncachedMemoryAllocationLib dependency
ArmPkg: remove UncachedMemoryAllocationLib
ArmPkg/ArmPkg.dec | 4 -
ArmPkg/ArmPkg.dsc | 2 -
ArmPkg/Include/Library/UncachedMemoryAllocationLib.h | 665 ------------------
ArmPkg/Library/ArmDmaLib/ArmDmaLib.c | 42 +-
ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.c | 719 --------------------
ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.inf | 50 --
BeagleBoardPkg/BeagleBoardPkg.dsc | 2 -
EmbeddedPkg/Include/Library/DmaLib.h | 30 +-
EmbeddedPkg/Library/NullDmaLib/NullDmaLib.c | 48 +-
Omap35xxPkg/Library/DebugAgentTimerLib/DebugAgentTimerLib.inf | 1 +
Omap35xxPkg/Library/OmapDmaLib/OmapDmaLib.inf | 1 -
Omap35xxPkg/Omap35xxPkg.dsc | 2 -
12 files changed, 112 insertions(+), 1454 deletions(-)
delete mode 100644 ArmPkg/Include/Library/UncachedMemoryAllocationLib.h
delete mode 100644 ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.c
delete mode 100644 ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.inf
--
2.11.0
next reply other threads:[~2017-08-25 12:07 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-25 12:10 Ard Biesheuvel [this message]
2017-08-25 12:10 ` [PATCH 1/5] EmbeddedPkg/DmaLib: add routine to allocate aligned buffers Ard Biesheuvel
2017-08-25 12:10 ` [PATCH 2/5] ArmPkg/ArmDmaLib: implement DmaAllocateAlignedBuffer() Ard Biesheuvel
2017-08-25 12:10 ` [PATCH 3/5] BeagleBoardPkg: remove UncachedMemoryAllocationLib resolutions Ard Biesheuvel
2017-08-25 12:10 ` [PATCH 4/5] Omap35xxPkg: remove bogus UncachedMemoryAllocationLib dependency Ard Biesheuvel
2017-08-25 12:10 ` [PATCH 5/5] ArmPkg: remove UncachedMemoryAllocationLib Ard Biesheuvel
2017-08-31 14:00 ` Ard Biesheuvel
2017-08-29 15:44 ` [PATCH 0/5] ArmPkg et al: remove UncachedMemoryallocationLib Leif Lindholm
2017-08-29 15:47 ` Ard Biesheuvel
2017-08-29 16:57 ` 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=20170825121014.15739-1-ard.biesheuvel@linaro.org \
--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