Thread (8 messages) read the whole thread 8 messages, 3 authors, 2008-07-25

Re: can't boot mpc5200, powerpc: Enable AT_BASE_PLATFORM aux vector

From: Jon Smirl <hidden>
Date: 2008-07-25 22:52:51

On 7/25/08, Nathan Lynch [off-list ref] wrote:
quoted hunk ↗ jump to hunk
Commit 9115d13453dee22473a1e8cacc90a8d64a9c4bc9 ("powerpc: Enable
 AT_BASE_PLATFORM aux vector") broke boot on 32-bit powerpc systems; we
 have to use PTRRELOC to initialize powerpc_base_platform this early in
 boot.

 Bug reported by Jon Smirl.


 Signed-off-by: Nathan Lynch [off-list ref]

---

Benjamin Herrenschmidt wrote:
 > if (RELOC(powerpc_base_platform))
 >       RELOC(powerpc_base_platform) = t->platform;
 >
 > try that.


Maybe this?  (RELOC isn't defined in any header AFAICT).

  arch/powerpc/kernel/cputable.c |    4 ++--
  1 files changed, 2 insertions(+), 2 deletions(-)


 diff --git a/arch/powerpc/kernel/cputable.c b/arch/powerpc/kernel/cputable.c

index 25a052c..25c273c 100644
--- a/arch/powerpc/kernel/cputable.c
 +++ b/arch/powerpc/kernel/cputable.c
@@ -1660,8 +1660,8 @@ struct cpu_spec * __init identify_cpu(unsigned long offset, unsigned int pvr)

                         * Set the base platform string once; assumes
                         * we're called with real pvr first.
                         */
 -                       if (powerpc_base_platform == NULL)
 -                               powerpc_base_platform = t->platform;

+                       if (*PTRRELOC(&powerpc_base_platform) == NULL)
 +                               *PTRRELOC(&powerpc_base_platform) = t->platform;
This works too.

  #if defined(CONFIG_PPC64) || defined(CONFIG_BOOKE)
                        /* ppc64 and booke expect identify_cpu to also call

--
 1.5.6.2
 _______________________________________________
 Linuxppc-dev mailing list
 Linuxppc-dev@ozlabs.org
 https://ozlabs.org/mailman/listinfo/linuxppc-dev

-- 
Jon Smirl
jonsmirl@gmail.com
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help