On 29 August 2017 at 16:47, Ard Biesheuvel <[email protected]> wrote: > On 29 August 2017 at 16:44, Leif Lindholm <[email protected]> wrote: >> On Fri, Aug 25, 2017 at 01:10:09PM +0100, Ard Biesheuvel wrote: >>> 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. >> >> For the series: >> Reviewed-by: Leif Lindholm <[email protected]> >> >> However, this breaks a bunch of (edk2-)platforms: juno, fvp, tc2, >> hikey and armada70x0. Is there a follow-on patch coming for those, >> and could you hold off on pushing this series until that is ready? >> >> Armada has the only non-bogus UncachedMemoryAllocationLib dependency, >> the others are just trivial deletions. >> > > Yes. There are interdependencies between repos, so I will just merge > #1 and #2 and hold off with the rest until after all dependencies have > been removed.
Patches #1 .. #4 pushed as deef290f95e0 EmbeddedPkg/DmaLib: add routine to allocate aligned buffers 4b4104d87e28 ArmPkg/ArmDmaLib: implement DmaAllocateAlignedBuffer() b56397ba9f67 BeagleBoardPkg: remove UncachedMemoryAllocationLib resolutions c1d799b91509 Omap35xxPkg: remove bogus UncachedMemoryAllocationLib dependency I will push the remaining patch that actually removes UncachedMemoryAllocationLib once the dependencies are gone from edk2-platforms. _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

