From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from list by lists.gnu.org with archive (Exim 4.71) id 1WIjHR-00026b-LE for mharc-grub-devel@gnu.org; Wed, 26 Feb 2014 13:32:29 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42954) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WIjHI-0001mx-35 for grub-devel@gnu.org; Wed, 26 Feb 2014 13:32:27 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WIjHA-0001Dn-BD for grub-devel@gnu.org; Wed, 26 Feb 2014 13:32:20 -0500 Received: from e35.co.us.ibm.com ([32.97.110.153]:38701) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WIjHA-0001DQ-3W for grub-devel@gnu.org; Wed, 26 Feb 2014 13:32:12 -0500 Received: from /spool/local by e35.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Wed, 26 Feb 2014 11:32:11 -0700 Received: from d03dlp03.boulder.ibm.com (9.17.202.179) by e35.co.us.ibm.com (192.168.1.135) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; Wed, 26 Feb 2014 11:32:09 -0700 Received: from b03cxnp08026.gho.boulder.ibm.com (b03cxnp08026.gho.boulder.ibm.com [9.17.130.18]) by d03dlp03.boulder.ibm.com (Postfix) with ESMTP id 26BA019D8041 for ; Wed, 26 Feb 2014 11:32:07 -0700 (MST) Received: from d03av02.boulder.ibm.com (d03av02.boulder.ibm.com [9.17.195.168]) by b03cxnp08026.gho.boulder.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id s1QIVgiY62062638 for ; Wed, 26 Feb 2014 19:31:42 +0100 Received: from d03av02.boulder.ibm.com (localhost [127.0.0.1]) by d03av02.boulder.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id s1QIW8TK017549 for ; Wed, 26 Feb 2014 11:32:08 -0700 Received: from ram.oc3035372033.ibm.com.com (sig-9-65-83-23.mts.ibm.com [9.65.83.23]) by d03av02.boulder.ibm.com (8.14.4/8.14.4/NCO v10.0 AVin) with ESMTP id s1QIVZLc014663; Wed, 26 Feb 2014 11:32:06 -0700 From: Ram Pai To: grub-devel@gnu.org Subject: [RFC PATCH 13/23] Add 64bit support to powerpc startup code Date: Wed, 26 Feb 2014 10:31:12 -0800 Message-Id: <1393439482-20341-14-git-send-email-linuxram@us.ibm.com> X-Mailer: git-send-email 1.7.1 In-Reply-To: <1393439482-20341-1-git-send-email-linuxram@us.ibm.com> References: <1393439482-20341-1-git-send-email-linuxram@us.ibm.com> X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 14022618-6688-0000-0000-000007007ECE X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x-2.6.x [generic] X-Received-From: 32.97.110.153 Cc: tlfalcon@linux.vnet.ibm.com, tbberry@us.ibm.com, anton@au1.ibm.com, linuxram@us.ibm.com, tonyb@au1.ibm.com, Anton Blanchard X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: The development of GNU GRUB List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Feb 2014 18:32:28 -0000 From: Anton Blanchard Add 64bit support to powerpc startup code Signed-off-by: Ram Pai From: Anton Blanchard --- grub-core/kern/powerpc/ieee1275/startup.S | 30 ++++++++++++++++++++++++++---- 1 file changed, 26 insertions(+), 4 deletions(-) diff --git a/grub-core/kern/powerpc/ieee1275/startup.S b/grub-core/kern/powerpc/ieee1275/startup.S index 21c884b..d93682e 100644 --- a/grub-core/kern/powerpc/ieee1275/startup.S +++ b/grub-core/kern/powerpc/ieee1275/startup.S @@ -19,15 +19,26 @@ #include #include +#include .extern __bss_start .extern _end .text - .align 2 - .globl start, _start -start: -_start: + +FUNC_START(_start) + +#if defined(_CALL_ELF) && _CALL_ELF == 2 /* Little endian */ + .long 0x05009f42 /* bcl 20,31,$+4 */ + .long 0xa602487d /* mflr r10 */ + .long 0x1c004a39 /* addi r10,r10,28 */ + .long 0xa600607d /* mfmsr r11 */ + .long 0x01006b69 /* xori r11,r11,1 */ + .long 0xa6035a7d /* mtsrr0 r10 */ + .long 0xa6037b7d /* mtsrr1 r11 */ + .long 0x2400004c /* rfid */ +#endif + li 2, 0 li 13, 0 @@ -61,7 +72,18 @@ _start: /* Store r5 in grub_ieee1275_entry_fn. */ lis 9, grub_ieee1275_entry_fn@ha + +#if defined( __powerpc64__ ) || defined ( __powerpc64le__ ) + std 5, grub_ieee1275_entry_fn@l(9) + /* Set up the TOC */ + bl 3f +3: mflr 9 + addis 2,9,.TOC.-3b@ha + addi 2,2,.TOC.-3b@l +#else stw 5, grub_ieee1275_entry_fn@l(9) +#endif bl grub_main 1: b 1b +FUNC_END(_start) -- 1.8.5.3