Skip to contentSkip to conversation

SGI O2+ RM7000 set_uncached_handler error during kernel built

DISCUSSION Tom Weustink 2 participants 3 messages May 27, 2006 – May 30, 2006 MIPS

lore
Share & tools
lore
#0 lore raw

Hello,

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.

Regards,

Tom

PS: if I need to supply any additional information, let me know!

#1 lore raw
Quoted 16 lines · Tom Weustink

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.

Quoted 8 lines

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 <[email protected]>
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.

include/asm-mips/addrspace.h +1 -0
index 42520cc..1386af1 100644
@@ -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)
#2 lore raw
Quoted 22 lines
Quoted 22 lines

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?

Quoted 8 lines
Quoted 3 lines

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

Great! I will try it out tonight.
I kind of had the idea something pointing to RM7000 was missing, obviously I had no idea where though.

Tom

Quoted 22 lines

commit 948a25c865f2c486f3f2a6034c359c2104c777df

Author: Ralf Baechle <[email protected]>
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.

include/asm-mips/addrspace.h +1 -0
index 42520cc..1386af1 100644
@@ -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)
Signature · 2 lines
Bis zu 70% Ihrer Onlinekosten sparen: GMX SmartSurfer!
      Kostenlos downloaden: http://www.gmx.net/de/go/smartsurfer