On Sat, May 27, 2006 at 04:26:17AM +0200, Tom Weustink wrote: > I finally got a round building a toolchain for creating kernels for my > SGI O2+ RM7000 machine. > > I did a ip32_defconfig and used menuconfig to edit some small options. > One was to set it too RM7000 obviously. > > When I build it, I get the following error: > > CC arch/mips/kernel/traps.o > arch/mips/kernel/traps.c: In function `set_uncached_handler': > arch/mips/kernel/traps.c:1360: error: `TO_PHYS_MASK' undeclared (first > use in this function) > > When I build it for R5000 (only that changed in menuconfig) the compile > runs without a problem. > > Checking arch/mips/kernel/traps.c:1360 shows that installs the uncached > CPU exception handler to UNCAC. > Now I know the RM7000 is kinda weird, but shouldn't it just work on it > since it does work on R5000 since it's MIPS64? > > I also heard from `Kumba that the kernel won't boot at all due to a bug > in IP32 so that it hangs extremely early, but having it to just built > would be nice for me atm. The build error part was trivial, fix below. Ralf commit 948a25c865f2c486f3f2a6034c359c2104c777df Author: Ralf Baechle <ralf@xxxxxxxxxxxxxx> Date: Tue May 30 15:55:05 2006 +0100 [MIPS] Fix 64-bit build for RM7000. RM7000 has 40-bit virtual / 36-bit physical address space. Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx> diff --git a/include/asm-mips/addrspace.h b/include/asm-mips/addrspace.h index 42520cc..1386af1 100644 --- a/include/asm-mips/addrspace.h +++ b/include/asm-mips/addrspace.h @@ -129,6 +129,7 @@ #define PHYS_TO_XKPHYS(cm,a) (_LLCONST_ #if defined (CONFIG_CPU_R4300) \ || defined (CONFIG_CPU_R4X00) \ || defined (CONFIG_CPU_R5000) \ + || defined (CONFIG_CPU_RM7000) \ || defined (CONFIG_CPU_NEVADA) \ || defined (CONFIG_CPU_TX49XX) \ || defined (CONFIG_CPU_MIPS64)