diff options
-rw-r--r-- | arch/mips/Kconfig | 27 | ||||
-rw-r--r-- | arch/mips/kernel/head.S | 1 | ||||
-rw-r--r-- | include/asm-mips/sn/mapped_kernel.h | 8 |
3 files changed, 21 insertions, 15 deletions
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig index c930b8ceb418..1e06d233fa83 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig | |||
@@ -211,6 +211,7 @@ config MIPS_MALTA | |||
211 | select SYS_SUPPORTS_64BIT_KERNEL | 211 | select SYS_SUPPORTS_64BIT_KERNEL |
212 | select SYS_SUPPORTS_BIG_ENDIAN | 212 | select SYS_SUPPORTS_BIG_ENDIAN |
213 | select SYS_SUPPORTS_LITTLE_ENDIAN | 213 | select SYS_SUPPORTS_LITTLE_ENDIAN |
214 | select SYS_SUPPORTS_MIPS_CMP if BROKEN # because SYNC_R4K is broken | ||
214 | select SYS_SUPPORTS_MULTITHREADING | 215 | select SYS_SUPPORTS_MULTITHREADING |
215 | select SYS_SUPPORTS_SMARTMIPS | 216 | select SYS_SUPPORTS_SMARTMIPS |
216 | help | 217 | help |
@@ -1499,6 +1500,18 @@ config MIPS_APSP_KSPD | |||
1499 | "exit" syscall notifying other kernel modules the SP program is | 1500 | "exit" syscall notifying other kernel modules the SP program is |
1500 | exiting. You probably want to say yes here. | 1501 | exiting. You probably want to say yes here. |
1501 | 1502 | ||
1503 | config MIPS_CMP | ||
1504 | bool "MIPS CMP framework support" | ||
1505 | depends on SYS_SUPPORTS_MIPS_CMP | ||
1506 | select SYNC_R4K if BROKEN | ||
1507 | select SYS_SUPPORTS_SMP | ||
1508 | select SYS_SUPPORTS_SCHED_SMT if SMP | ||
1509 | select WEAK_ORDERING | ||
1510 | default n | ||
1511 | help | ||
1512 | This is a placeholder option for the GCMP work. It will need to | ||
1513 | be handled differently... | ||
1514 | |||
1502 | config SB1_PASS_1_WORKAROUNDS | 1515 | config SB1_PASS_1_WORKAROUNDS |
1503 | bool | 1516 | bool |
1504 | depends on CPU_SB1_PASS_1 | 1517 | depends on CPU_SB1_PASS_1 |
@@ -1675,6 +1688,9 @@ config SMP | |||
1675 | config SMP_UP | 1688 | config SMP_UP |
1676 | bool | 1689 | bool |
1677 | 1690 | ||
1691 | config SYS_SUPPORTS_MIPS_CMP | ||
1692 | bool | ||
1693 | |||
1678 | config SYS_SUPPORTS_SMP | 1694 | config SYS_SUPPORTS_SMP |
1679 | bool | 1695 | bool |
1680 | 1696 | ||
@@ -1722,17 +1738,6 @@ config NR_CPUS | |||
1722 | performance should round up your number of processors to the next | 1738 | performance should round up your number of processors to the next |
1723 | power of two. | 1739 | power of two. |
1724 | 1740 | ||
1725 | config MIPS_CMP | ||
1726 | bool "MIPS CMP framework support" | ||
1727 | depends on SMP | ||
1728 | select SYNC_R4K | ||
1729 | select SYS_SUPPORTS_SCHED_SMT | ||
1730 | select WEAK_ORDERING | ||
1731 | default n | ||
1732 | help | ||
1733 | This is a placeholder option for the GCMP work. It will need to | ||
1734 | be handled differently... | ||
1735 | |||
1736 | source "kernel/time/Kconfig" | 1741 | source "kernel/time/Kconfig" |
1737 | 1742 | ||
1738 | # | 1743 | # |
diff --git a/arch/mips/kernel/head.S b/arch/mips/kernel/head.S index 361364501d34..492a0a8d70fb 100644 --- a/arch/mips/kernel/head.S +++ b/arch/mips/kernel/head.S | |||
@@ -22,6 +22,7 @@ | |||
22 | #include <asm/irqflags.h> | 22 | #include <asm/irqflags.h> |
23 | #include <asm/regdef.h> | 23 | #include <asm/regdef.h> |
24 | #include <asm/page.h> | 24 | #include <asm/page.h> |
25 | #include <asm/pgtable-bits.h> | ||
25 | #include <asm/mipsregs.h> | 26 | #include <asm/mipsregs.h> |
26 | #include <asm/stackframe.h> | 27 | #include <asm/stackframe.h> |
27 | 28 | ||
diff --git a/include/asm-mips/sn/mapped_kernel.h b/include/asm-mips/sn/mapped_kernel.h index c3dd5d0d525f..721496a0bb92 100644 --- a/include/asm-mips/sn/mapped_kernel.h +++ b/include/asm-mips/sn/mapped_kernel.h | |||
@@ -5,6 +5,8 @@ | |||
5 | #ifndef __ASM_SN_MAPPED_KERNEL_H | 5 | #ifndef __ASM_SN_MAPPED_KERNEL_H |
6 | #define __ASM_SN_MAPPED_KERNEL_H | 6 | #define __ASM_SN_MAPPED_KERNEL_H |
7 | 7 | ||
8 | #include <linux/mmzone.h> | ||
9 | |||
8 | /* | 10 | /* |
9 | * Note on how mapped kernels work: the text and data section is | 11 | * Note on how mapped kernels work: the text and data section is |
10 | * compiled at cksseg segment (LOADADDR = 0xc001c000), and the | 12 | * compiled at cksseg segment (LOADADDR = 0xc001c000), and the |
@@ -29,10 +31,8 @@ | |||
29 | #define MAPPED_ADDR_RO_TO_PHYS(x) (x - REP_BASE) | 31 | #define MAPPED_ADDR_RO_TO_PHYS(x) (x - REP_BASE) |
30 | #define MAPPED_ADDR_RW_TO_PHYS(x) (x - REP_BASE - 16777216) | 32 | #define MAPPED_ADDR_RW_TO_PHYS(x) (x - REP_BASE - 16777216) |
31 | 33 | ||
32 | #define MAPPED_KERN_RO_PHYSBASE(n) \ | 34 | #define MAPPED_KERN_RO_PHYSBASE(n) (hub_data(n)->kern_vars.kv_ro_baseaddr) |
33 | (PLAT_NODE_DATA(n)->kern_vars.kv_ro_baseaddr) | 35 | #define MAPPED_KERN_RW_PHYSBASE(n) (hub_data(n)->kern_vars.kv_rw_baseaddr) |
34 | #define MAPPED_KERN_RW_PHYSBASE(n) \ | ||
35 | (PLAT_NODE_DATA(n)->kern_vars.kv_rw_baseaddr) | ||
36 | 36 | ||
37 | #define MAPPED_KERN_RO_TO_PHYS(x) \ | 37 | #define MAPPED_KERN_RO_TO_PHYS(x) \ |
38 | ((unsigned long)MAPPED_ADDR_RO_TO_PHYS(x) | \ | 38 | ((unsigned long)MAPPED_ADDR_RO_TO_PHYS(x) | \ |