Hi all,
I've made big improvements in understantding basic kernel code ;-), but
it's still not that good...
Here are two patches against current stable tree, the first,
l2cr-display-gom.diff, fixes the ouput of "cat /proc/sys/kernel.l2cr"
according to M Lanners' patch for G3, and according to the Motorola 7400
Users' Manual.
Tested on G4, but not G3 yet. It should be clean and harmful anyway.
The second, l2cr-cmdline-gom.diff, is a try to enable "l2cr=xx" kernel
command line option.
All is fine if you don't put the option, and hangs at boot with
something like this: l2cr=0xb5100000.
Since when I tried to kill calls to __set_L2CR in ppc_setup_l2cr()
commenting the following two lines:
_set_L2CR(0); /* disable cache */
_set_L2CR(val); /* enable it */
it stills hangs at the same point, I guess the way I call
ppc_setup_l2cr() is wrong. I couldn't find documentation on this, but I
figured out reading init/main.c that doing this would be sufficient,
tell me were I'm wrong :
--- linux-pmac-stable-orig/init/main.c Mon Jul 17 21:31:00 2000
+++ linux/init/main.c Mon Jul 17 21:04:15 2000
@@ -355,6 +355,9 @@
#ifdef CONFIG_ADBMOUSE
extern void adb_mouse_setup(char *str, int *ints);
#endif
+#ifdef CONFIG_PPC
+extern void ppc_setup_l2cr(char *str, int *ints);
+#endif
#ifdef CONFIG_WDT
extern void wdt_setup(char *str, int *ints);
#endif
@@ -1044,6 +1047,9 @@
#endif
#ifdef CONFIG_ADBMOUSE
{ "adb_buttons=", adb_mouse_setup },
+#endif
+#ifdef CONFIG_PPC
+ { "l2cr=", ppc_setup_l2cr },
#endif
#ifdef CONFIG_LTPC
{ "ltpc=", ltpc_setup },
Thanks,
--
Guillaume