diff options
author | Jayachandran C <jayachandranc@netlogicmicro.com> | 2011-11-15 19:21:28 -0500 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2011-12-07 17:04:56 -0500 |
commit | 1c773ea4dceff889c2f872343609a87ae0cfbf56 (patch) | |
tree | 1c1cf2ed935426739d83ed41d8045968d0865202 /arch | |
parent | 65040e224e5b214a93fa0c790add5d69b054ecae (diff) |
MIPS: Netlogic: Add XLP makefiles and config
- Add CPU_XLP and NLM_XLR_BOARD to arch/mips/Kconfig for Netlogic XLP boards
- Update mips Makefiles to add XLP
Signed-off-by: Jayachandran C <jayachandranc@netlogicmicro.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/2968/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/mips/Kconfig | 43 | ||||
-rw-r--r-- | arch/mips/kernel/Makefile | 1 | ||||
-rw-r--r-- | arch/mips/lib/Makefile | 1 | ||||
-rw-r--r-- | arch/mips/mm/Makefile | 1 | ||||
-rw-r--r-- | arch/mips/netlogic/Makefile | 1 | ||||
-rw-r--r-- | arch/mips/netlogic/Platform | 1 | ||||
-rw-r--r-- | arch/mips/netlogic/xlp/Makefile | 2 |
7 files changed, 50 insertions, 0 deletions
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig index 58515fdf223e..c3b1b356bb5b 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig | |||
@@ -783,6 +783,33 @@ config NLM_XLR_BOARD | |||
783 | Support for systems based on Netlogic XLR and XLS processors. | 783 | Support for systems based on Netlogic XLR and XLS processors. |
784 | Say Y here if you have a XLR or XLS based board. | 784 | Say Y here if you have a XLR or XLS based board. |
785 | 785 | ||
786 | config NLM_XLP_BOARD | ||
787 | bool "Netlogic XLP based systems" | ||
788 | depends on EXPERIMENTAL | ||
789 | select BOOT_ELF32 | ||
790 | select NLM_COMMON | ||
791 | select SYS_HAS_CPU_XLP | ||
792 | select SYS_SUPPORTS_SMP | ||
793 | select HW_HAS_PCI | ||
794 | select SWAP_IO_SPACE | ||
795 | select SYS_SUPPORTS_32BIT_KERNEL | ||
796 | select SYS_SUPPORTS_64BIT_KERNEL | ||
797 | select 64BIT_PHYS_ADDR | ||
798 | select SYS_SUPPORTS_BIG_ENDIAN | ||
799 | select SYS_SUPPORTS_LITTLE_ENDIAN | ||
800 | select SYS_SUPPORTS_HIGHMEM | ||
801 | select DMA_COHERENT | ||
802 | select NR_CPUS_DEFAULT_32 | ||
803 | select CEVT_R4K | ||
804 | select CSRC_R4K | ||
805 | select IRQ_CPU | ||
806 | select ZONE_DMA if 64BIT | ||
807 | select SYNC_R4K | ||
808 | select SYS_HAS_EARLY_PRINTK | ||
809 | help | ||
810 | This board is based on Netlogic XLP Processor. | ||
811 | Say Y here if you have a XLP based board. | ||
812 | |||
786 | endchoice | 813 | endchoice |
787 | 814 | ||
788 | source "arch/mips/alchemy/Kconfig" | 815 | source "arch/mips/alchemy/Kconfig" |
@@ -1472,6 +1499,19 @@ config CPU_XLR | |||
1472 | select CPU_SUPPORTS_HUGEPAGES | 1499 | select CPU_SUPPORTS_HUGEPAGES |
1473 | help | 1500 | help |
1474 | Netlogic Microsystems XLR/XLS processors. | 1501 | Netlogic Microsystems XLR/XLS processors. |
1502 | |||
1503 | config CPU_XLP | ||
1504 | bool "Netlogic XLP SoC" | ||
1505 | depends on SYS_HAS_CPU_XLP | ||
1506 | select CPU_SUPPORTS_32BIT_KERNEL | ||
1507 | select CPU_SUPPORTS_64BIT_KERNEL | ||
1508 | select CPU_SUPPORTS_HIGHMEM | ||
1509 | select CPU_HAS_LLSC | ||
1510 | select WEAK_ORDERING | ||
1511 | select WEAK_REORDERING_BEYOND_LLSC | ||
1512 | select CPU_HAS_PREFETCH | ||
1513 | help | ||
1514 | Netlogic Microsystems XLP processors. | ||
1475 | endchoice | 1515 | endchoice |
1476 | 1516 | ||
1477 | if CPU_LOONGSON2F | 1517 | if CPU_LOONGSON2F |
@@ -1605,6 +1645,9 @@ config SYS_HAS_CPU_BMIPS5000 | |||
1605 | config SYS_HAS_CPU_XLR | 1645 | config SYS_HAS_CPU_XLR |
1606 | bool | 1646 | bool |
1607 | 1647 | ||
1648 | config SYS_HAS_CPU_XLP | ||
1649 | bool | ||
1650 | |||
1608 | # | 1651 | # |
1609 | # CPU may reorder R->R, R->W, W->R, W->W | 1652 | # CPU may reorder R->R, R->W, W->R, W->W |
1610 | # Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC | 1653 | # Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC |
diff --git a/arch/mips/kernel/Makefile b/arch/mips/kernel/Makefile index 1a966183e353..810ab50bf44f 100644 --- a/arch/mips/kernel/Makefile +++ b/arch/mips/kernel/Makefile | |||
@@ -55,6 +55,7 @@ obj-$(CONFIG_CPU_TX49XX) += r4k_fpu.o r4k_switch.o | |||
55 | obj-$(CONFIG_CPU_VR41XX) += r4k_fpu.o r4k_switch.o | 55 | obj-$(CONFIG_CPU_VR41XX) += r4k_fpu.o r4k_switch.o |
56 | obj-$(CONFIG_CPU_CAVIUM_OCTEON) += octeon_switch.o | 56 | obj-$(CONFIG_CPU_CAVIUM_OCTEON) += octeon_switch.o |
57 | obj-$(CONFIG_CPU_XLR) += r4k_fpu.o r4k_switch.o | 57 | obj-$(CONFIG_CPU_XLR) += r4k_fpu.o r4k_switch.o |
58 | obj-$(CONFIG_CPU_XLP) += r4k_fpu.o r4k_switch.o | ||
58 | 59 | ||
59 | obj-$(CONFIG_SMP) += smp.o | 60 | obj-$(CONFIG_SMP) += smp.o |
60 | obj-$(CONFIG_SMP_UP) += smp-up.o | 61 | obj-$(CONFIG_SMP_UP) += smp-up.o |
diff --git a/arch/mips/lib/Makefile b/arch/mips/lib/Makefile index b2cad4fd5fc4..2a7c74fc15fc 100644 --- a/arch/mips/lib/Makefile +++ b/arch/mips/lib/Makefile | |||
@@ -29,6 +29,7 @@ obj-$(CONFIG_CPU_TX49XX) += dump_tlb.o | |||
29 | obj-$(CONFIG_CPU_VR41XX) += dump_tlb.o | 29 | obj-$(CONFIG_CPU_VR41XX) += dump_tlb.o |
30 | obj-$(CONFIG_CPU_CAVIUM_OCTEON) += dump_tlb.o | 30 | obj-$(CONFIG_CPU_CAVIUM_OCTEON) += dump_tlb.o |
31 | obj-$(CONFIG_CPU_XLR) += dump_tlb.o | 31 | obj-$(CONFIG_CPU_XLR) += dump_tlb.o |
32 | obj-$(CONFIG_CPU_XLP) += dump_tlb.o | ||
32 | 33 | ||
33 | # libgcc-style stuff needed in the kernel | 34 | # libgcc-style stuff needed in the kernel |
34 | obj-y += ashldi3.o ashrdi3.o cmpdi2.o lshrdi3.o ucmpdi2.o | 35 | obj-y += ashldi3.o ashrdi3.o cmpdi2.o lshrdi3.o ucmpdi2.o |
diff --git a/arch/mips/mm/Makefile b/arch/mips/mm/Makefile index 4d8c1623eee2..59b090549aef 100644 --- a/arch/mips/mm/Makefile +++ b/arch/mips/mm/Makefile | |||
@@ -31,6 +31,7 @@ obj-$(CONFIG_CPU_TX49XX) += c-r4k.o cex-gen.o tlb-r4k.o | |||
31 | obj-$(CONFIG_CPU_VR41XX) += c-r4k.o cex-gen.o tlb-r4k.o | 31 | obj-$(CONFIG_CPU_VR41XX) += c-r4k.o cex-gen.o tlb-r4k.o |
32 | obj-$(CONFIG_CPU_CAVIUM_OCTEON) += c-octeon.o cex-oct.o tlb-r4k.o | 32 | obj-$(CONFIG_CPU_CAVIUM_OCTEON) += c-octeon.o cex-oct.o tlb-r4k.o |
33 | obj-$(CONFIG_CPU_XLR) += c-r4k.o tlb-r4k.o cex-gen.o | 33 | obj-$(CONFIG_CPU_XLR) += c-r4k.o tlb-r4k.o cex-gen.o |
34 | obj-$(CONFIG_CPU_XLP) += c-r4k.o tlb-r4k.o cex-gen.o | ||
34 | 35 | ||
35 | obj-$(CONFIG_IP22_CPU_SCACHE) += sc-ip22.o | 36 | obj-$(CONFIG_IP22_CPU_SCACHE) += sc-ip22.o |
36 | obj-$(CONFIG_R5000_CPU_SCACHE) += sc-r5k.o | 37 | obj-$(CONFIG_R5000_CPU_SCACHE) += sc-r5k.o |
diff --git a/arch/mips/netlogic/Makefile b/arch/mips/netlogic/Makefile index 797326da3718..36d169b2ca6d 100644 --- a/arch/mips/netlogic/Makefile +++ b/arch/mips/netlogic/Makefile | |||
@@ -1,2 +1,3 @@ | |||
1 | obj-$(CONFIG_NLM_COMMON) += common/ | 1 | obj-$(CONFIG_NLM_COMMON) += common/ |
2 | obj-$(CONFIG_CPU_XLR) += xlr/ | 2 | obj-$(CONFIG_CPU_XLR) += xlr/ |
3 | obj-$(CONFIG_CPU_XLP) += xlp/ | ||
diff --git a/arch/mips/netlogic/Platform b/arch/mips/netlogic/Platform index 7811b107689d..cdfc9abbbb7b 100644 --- a/arch/mips/netlogic/Platform +++ b/arch/mips/netlogic/Platform | |||
@@ -8,6 +8,7 @@ cflags-$(CONFIG_NLM_COMMON) += -I$(srctree)/arch/mips/include/asm/netlogic | |||
8 | # use mips64 if xlr is not available | 8 | # use mips64 if xlr is not available |
9 | # | 9 | # |
10 | cflags-$(CONFIG_CPU_XLR) += $(call cc-option,-march=xlr,-march=mips64) | 10 | cflags-$(CONFIG_CPU_XLR) += $(call cc-option,-march=xlr,-march=mips64) |
11 | cflags-$(CONFIG_CPU_XLP) += $(call cc-option,-march=xlp,-march=mips64r2) | ||
11 | 12 | ||
12 | # | 13 | # |
13 | # NETLOGIC processor support | 14 | # NETLOGIC processor support |
diff --git a/arch/mips/netlogic/xlp/Makefile b/arch/mips/netlogic/xlp/Makefile new file mode 100644 index 000000000000..1940d1c946d0 --- /dev/null +++ b/arch/mips/netlogic/xlp/Makefile | |||
@@ -0,0 +1,2 @@ | |||
1 | obj-y += setup.o platform.o nlm_hal.o | ||
2 | obj-$(CONFIG_SMP) += smpboot.o wakeup.o | ||