Message ID | 20120812105708.GD18957@n2100.arm.linux.org.uk (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Sun, Aug 12, 2012 at 11:57:08AM +0100, Russell King - ARM Linux wrote: > Found this with the cubox, which wants to obtain large blocks of > RAM for the GPU and VPU devices at boot time. I don't believe > any other platforms care where the memory comes from, so I think > this is safe. > > However, OMAP and iMX folk should check this patch - thanks. > > 8<=== > From: Russell King <rmk+kernel@arm.linux.org.uk> > Subject: ARM: Allow arm_memblock_steal() to remove memory from any RAM region > > Allow arm_memblock_steal() to remove memory from any RAM region, > including highmem areas. This allows memory to be stolen from the > very top of declared memory, including highmem areas, rather than > our precious lowmem. > > Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> There shouldn't be any problems with this on i.MX. Acked-by: Sascha Hauer <s.hauer@pengutronix.de> > --- > arch/arm/mm/init.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/arch/arm/mm/init.c b/arch/arm/mm/init.c > index f54d592..04632f3 100644 > --- a/arch/arm/mm/init.c > +++ b/arch/arm/mm/init.c > @@ -324,7 +324,7 @@ phys_addr_t __init arm_memblock_steal(phys_addr_t size, phys_addr_t align) > > BUG_ON(!arm_memblock_steal_permitted); > > - phys = memblock_alloc(size, align); > + phys = memblock_alloc_base(size, align, MEMBLOCK_ALLOC_ANYWHERE); > memblock_free(phys, size); > memblock_remove(phys, size); > >
On Sun, Aug 12, 2012 at 4:27 PM, Russell King - ARM Linux <linux@arm.linux.org.uk> wrote: > Found this with the cubox, which wants to obtain large blocks of > RAM for the GPU and VPU devices at boot time. I don't believe > any other platforms care where the memory comes from, so I think > this is safe. > Agree. > However, OMAP and iMX folk should check this patch - thanks. > Works for OMAP without any issues. Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> > 8<=== > From: Russell King <rmk+kernel@arm.linux.org.uk> > Subject: ARM: Allow arm_memblock_steal() to remove memory from any RAM region > > Allow arm_memblock_steal() to remove memory from any RAM region, > including highmem areas. This allows memory to be stolen from the > very top of declared memory, including highmem areas, rather than > our precious lowmem. > > Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> > --- > arch/arm/mm/init.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/arch/arm/mm/init.c b/arch/arm/mm/init.c > index f54d592..04632f3 100644 > --- a/arch/arm/mm/init.c > +++ b/arch/arm/mm/init.c > @@ -324,7 +324,7 @@ phys_addr_t __init arm_memblock_steal(phys_addr_t size, phys_addr_t align) > > BUG_ON(!arm_memblock_steal_permitted); > > - phys = memblock_alloc(size, align); > + phys = memblock_alloc_base(size, align, MEMBLOCK_ALLOC_ANYWHERE); > memblock_free(phys, size); > memblock_remove(phys, size); > > -- > To unsubscribe from this list: send the line "unsubscribe linux-omap" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/arch/arm/mm/init.c b/arch/arm/mm/init.c index f54d592..04632f3 100644 --- a/arch/arm/mm/init.c +++ b/arch/arm/mm/init.c @@ -324,7 +324,7 @@ phys_addr_t __init arm_memblock_steal(phys_addr_t size, phys_addr_t align) BUG_ON(!arm_memblock_steal_permitted); - phys = memblock_alloc(size, align); + phys = memblock_alloc_base(size, align, MEMBLOCK_ALLOC_ANYWHERE); memblock_free(phys, size); memblock_remove(phys, size);