From patchwork Fri Jul 9 05:03:33 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Blanchard X-Patchwork-Id: 58326 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from bilbo.ozlabs.org (localhost [127.0.0.1]) by ozlabs.org (Postfix) with ESMTP id 7FD3DB709F for ; Fri, 9 Jul 2010 15:10:21 +1000 (EST) Received: by ozlabs.org (Postfix, from userid 1010) id 44B40B6F19; Fri, 9 Jul 2010 15:10:20 +1000 (EST) Message-Id: <20100709050341.629845195@samba.org> User-Agent: quilt/0.48-1 Date: Fri, 09 Jul 2010 15:03:33 +1000 From: Anton Blanchard To: yaboot-devel@lists.ozlabs.org Subject: [patch 03/14] Use prom_claim_chunk to allocate malloc area References: <20100709050330.507659708@samba.org> Content-Disposition: inline; filename=use_prom_claim_chunk X-BeenThere: yaboot-devel@lists.ozlabs.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: Technical and development discussion regarding yaboot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: yaboot-devel-bounces+incoming=patchwork.ozlabs.org@lists.ozlabs.org Errors-To: yaboot-devel-bounces+incoming=patchwork.ozlabs.org@lists.ozlabs.org prom_claim_chunk does the same thing as this loop, so we can use it instead. Signed-off-by: Anton Blanchard Index: yaboot/second/yaboot.c =================================================================== --- yaboot.orig/second/yaboot.c 2010-07-08 14:05:55.000000000 +1000 +++ yaboot/second/yaboot.c 2010-07-08 14:12:48.000000000 +1000 @@ -177,7 +177,6 @@ yaboot_start (unsigned long r3, unsigned { int result; void* malloc_base = NULL; - unsigned long addr; prom_handle root; /* OF seems to do it, but I'm not very confident */ @@ -194,10 +193,7 @@ yaboot_start (unsigned long r3, unsigned prom_claim_chunk(0, 128 * 1024 * 1024, 0); /* Allocate some memory for malloc'ator */ - for (addr = MALLOCADDR; addr <= MALLOCADDR * 16 ;addr+=0x100000) { - malloc_base = prom_claim((void *)addr, MALLOCSIZE, 0); - if (malloc_base != (void *)-1) break; - } + malloc_base = prom_claim_chunk((void *)MALLOCADDR, MALLOCSIZE, 0); if (malloc_base == (void *)-1) { prom_printf("Can't claim malloc buffer (%d bytes at 0x%08x)\n", MALLOCSIZE, MALLOCADDR);