Thread (181 messages) 181 messages, 8 authors, 2009-11-28

Re: [RFC PATCH 03/19] powerpc: gamecube: bootwrapper bits

From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: 2009-11-26 04:35:50

On Tue, 2009-11-24 at 18:38 +0100, Albert Herranz wrote:
Segher Boessenkool wrote:
quoted
Hi Albert,
quoted
+asm ("\n\

A file scope asm?!  Please don't.
So what's your proposal then? Placing it within a fake func?
Just do a .S file :-)
That asm snippet is the entry point. I took as an example how prpmc2800.c
deals with that, providing an own version of the (weak) _zImage_start.
Right but I agree with Segher here, it would be nicer as a .S file.
quoted
quoted
+ * We enter with the cache enabled, the MMU enabled and some known
legacy
+ * memory mappings active. xBAT3 is unused
It would be good if you could depend as little as possible on these things;
that makes writing another bootloader a lot easier.
Ok. I'll do a similar approach as done on the wii bootwrapper.
quoted
quoted
+    /* IBAT3,DBAT3 for first 16Mbytes */\n\
+    li    8, 0x01ff    /* 16MB */\n\
+    li      9, 0x0002    /* rw */\n\
+    mtspr   0x216, 8    /* IBAT3U */\n\
+    mtspr   0x217, 9    /* IBAT3L */\n\
+    mtspr   0x21e, 8    /* DBAT3U */\n\
+    mtspr   0x21f, 9    /* DBAT3L */\n\
WIMG=0000, are you sure?  Not M=1?
To be honest, I don't recall the details now.
But it was tested in the very early days, the result was not the expected one and,
in the end, manual cache coherency management was still needed.
Ouch. I wouldn't be surprised if those guys don't do cache coherency
in the bridge anyways.
So everything is designed and working assuming M=0.
This can be re-checked again later if needed.
Agreed.
quoted
quoted
+    bcl-    20,4*cr7+so,1f\n\
Just write  bcl 20,31,1f .
Ok, I used two variants for this and I know which one you like now ;).
Cheers,
Ben.
quoted

Segher
Thanks,
Albert
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help