|
@@ -21,6 +21,7 @@ config MIPS
|
|
|
select GENERIC_CLOCKEVENTS
|
|
|
select GENERIC_CMOS_UPDATE
|
|
|
select GENERIC_CPU_AUTOPROBE
|
|
|
+ select GENERIC_IOMAP
|
|
|
select GENERIC_IRQ_PROBE
|
|
|
select GENERIC_IRQ_SHOW
|
|
|
select GENERIC_LIB_ASHLDI3
|
|
@@ -28,7 +29,6 @@ config MIPS
|
|
|
select GENERIC_LIB_CMPDI2
|
|
|
select GENERIC_LIB_LSHRDI3
|
|
|
select GENERIC_LIB_UCMPDI2
|
|
|
- select GENERIC_PCI_IOMAP
|
|
|
select GENERIC_SCHED_CLOCK if !CAVIUM_OCTEON_SOC
|
|
|
select GENERIC_SMP_IDLE_THREAD
|
|
|
select GENERIC_TIME_VSYSCALL
|
|
@@ -78,6 +78,7 @@ config MIPS
|
|
|
select RTC_LIB if !MACH_LOONGSON64
|
|
|
select SYSCTL_EXCEPTION_TRACE
|
|
|
select VIRT_TO_BUS
|
|
|
+ select NO_BOOTMEM
|
|
|
|
|
|
menu "Machine selection"
|
|
|
|
|
@@ -132,6 +133,7 @@ config MIPS_GENERIC
|
|
|
select USB_UHCI_BIG_ENDIAN_DESC if CPU_BIG_ENDIAN
|
|
|
select USB_UHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
|
|
|
select USE_OF
|
|
|
+ select UHI_BOOT
|
|
|
help
|
|
|
Select this to build a kernel which aims to support multiple boards,
|
|
|
generally using a flattened device tree passed from the bootloader
|
|
@@ -1149,6 +1151,7 @@ config NO_IOPORT_MAP
|
|
|
|
|
|
config GENERIC_CSUM
|
|
|
bool
|
|
|
+ default y if !CPU_HAS_LOAD_STORE_LR
|
|
|
|
|
|
config GENERIC_ISA_DMA
|
|
|
bool
|
|
@@ -1367,6 +1370,7 @@ config CPU_LOONGSON3
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HIGHMEM
|
|
|
select CPU_SUPPORTS_HUGEPAGES
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
select WEAK_ORDERING
|
|
|
select WEAK_REORDERING_BEYOND_LLSC
|
|
|
select MIPS_PGD_C0_CONTEXT
|
|
@@ -1443,6 +1447,7 @@ config CPU_MIPS32_R1
|
|
|
bool "MIPS32 Release 1"
|
|
|
depends on SYS_HAS_CPU_MIPS32_R1
|
|
|
select CPU_HAS_PREFETCH
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HIGHMEM
|
|
|
help
|
|
@@ -1460,6 +1465,7 @@ config CPU_MIPS32_R2
|
|
|
bool "MIPS32 Release 2"
|
|
|
depends on SYS_HAS_CPU_MIPS32_R2
|
|
|
select CPU_HAS_PREFETCH
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HIGHMEM
|
|
|
select CPU_SUPPORTS_MSA
|
|
@@ -1478,7 +1484,6 @@ config CPU_MIPS32_R6
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HIGHMEM
|
|
|
select CPU_SUPPORTS_MSA
|
|
|
- select GENERIC_CSUM
|
|
|
select HAVE_KVM
|
|
|
select MIPS_O32_FP64_SUPPORT
|
|
|
help
|
|
@@ -1491,6 +1496,7 @@ config CPU_MIPS64_R1
|
|
|
bool "MIPS64 Release 1"
|
|
|
depends on SYS_HAS_CPU_MIPS64_R1
|
|
|
select CPU_HAS_PREFETCH
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HIGHMEM
|
|
@@ -1510,6 +1516,7 @@ config CPU_MIPS64_R2
|
|
|
bool "MIPS64 Release 2"
|
|
|
depends on SYS_HAS_CPU_MIPS64_R2
|
|
|
select CPU_HAS_PREFETCH
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HIGHMEM
|
|
@@ -1531,7 +1538,6 @@ config CPU_MIPS64_R6
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HIGHMEM
|
|
|
select CPU_SUPPORTS_MSA
|
|
|
- select GENERIC_CSUM
|
|
|
select MIPS_O32_FP64_SUPPORT if 32BIT || MIPS32_O32
|
|
|
select HAVE_KVM
|
|
|
help
|
|
@@ -1544,6 +1550,7 @@ config CPU_R3000
|
|
|
bool "R3000"
|
|
|
depends on SYS_HAS_CPU_R3000
|
|
|
select CPU_HAS_WB
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HIGHMEM
|
|
|
help
|
|
@@ -1558,12 +1565,14 @@ config CPU_TX39XX
|
|
|
bool "R39XX"
|
|
|
depends on SYS_HAS_CPU_TX39XX
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
|
|
|
config CPU_VR41XX
|
|
|
bool "R41xx"
|
|
|
depends on SYS_HAS_CPU_VR41XX
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
help
|
|
|
The options selects support for the NEC VR4100 series of processors.
|
|
|
Only choose this option if you have one of these processors as a
|
|
@@ -1575,6 +1584,7 @@ config CPU_R4300
|
|
|
depends on SYS_HAS_CPU_R4300
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
help
|
|
|
MIPS Technologies R4300-series processors.
|
|
|
|
|
@@ -1584,6 +1594,7 @@ config CPU_R4X00
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HUGEPAGES
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
help
|
|
|
MIPS Technologies R4000-series processors other than 4300, including
|
|
|
the R4000, R4400, R4600, and 4700.
|
|
@@ -1592,6 +1603,7 @@ config CPU_TX49XX
|
|
|
bool "R49XX"
|
|
|
depends on SYS_HAS_CPU_TX49XX
|
|
|
select CPU_HAS_PREFETCH
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HUGEPAGES
|
|
@@ -1602,6 +1614,7 @@ config CPU_R5000
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HUGEPAGES
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
help
|
|
|
MIPS Technologies R5000-series processors other than the Nevada.
|
|
|
|
|
@@ -1611,6 +1624,7 @@ config CPU_R5432
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HUGEPAGES
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
|
|
|
config CPU_R5500
|
|
|
bool "R5500"
|
|
@@ -1618,6 +1632,7 @@ config CPU_R5500
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HUGEPAGES
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
help
|
|
|
NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV
|
|
|
instruction set.
|
|
@@ -1628,6 +1643,7 @@ config CPU_NEVADA
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HUGEPAGES
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
help
|
|
|
QED / PMC-Sierra RM52xx-series ("Nevada") processors.
|
|
|
|
|
@@ -1635,6 +1651,7 @@ config CPU_R8000
|
|
|
bool "R8000"
|
|
|
depends on SYS_HAS_CPU_R8000
|
|
|
select CPU_HAS_PREFETCH
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
help
|
|
|
MIPS Technologies R8000 processors. Note these processors are
|
|
@@ -1644,6 +1661,7 @@ config CPU_R10000
|
|
|
bool "R10000"
|
|
|
depends on SYS_HAS_CPU_R10000
|
|
|
select CPU_HAS_PREFETCH
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HIGHMEM
|
|
@@ -1655,6 +1673,7 @@ config CPU_RM7000
|
|
|
bool "RM7000"
|
|
|
depends on SYS_HAS_CPU_RM7000
|
|
|
select CPU_HAS_PREFETCH
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HIGHMEM
|
|
@@ -1663,6 +1682,7 @@ config CPU_RM7000
|
|
|
config CPU_SB1
|
|
|
bool "SB1"
|
|
|
depends on SYS_HAS_CPU_SB1
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HIGHMEM
|
|
@@ -1673,6 +1693,7 @@ config CPU_CAVIUM_OCTEON
|
|
|
bool "Cavium Octeon processor"
|
|
|
depends on SYS_HAS_CPU_CAVIUM_OCTEON
|
|
|
select CPU_HAS_PREFETCH
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
select WEAK_ORDERING
|
|
|
select CPU_SUPPORTS_HIGHMEM
|
|
@@ -1702,6 +1723,7 @@ config CPU_BMIPS
|
|
|
select WEAK_ORDERING
|
|
|
select CPU_SUPPORTS_HIGHMEM
|
|
|
select CPU_HAS_PREFETCH
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
select CPU_SUPPORTS_CPUFREQ
|
|
|
select MIPS_EXTERNAL_TIMER
|
|
|
help
|
|
@@ -1710,6 +1732,7 @@ config CPU_BMIPS
|
|
|
config CPU_XLR
|
|
|
bool "Netlogic XLR SoC"
|
|
|
depends on SYS_HAS_CPU_XLR
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_64BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HIGHMEM
|
|
@@ -1728,6 +1751,7 @@ config CPU_XLP
|
|
|
select WEAK_ORDERING
|
|
|
select WEAK_REORDERING_BEYOND_LLSC
|
|
|
select CPU_HAS_PREFETCH
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
select CPU_MIPSR2
|
|
|
select CPU_SUPPORTS_HUGEPAGES
|
|
|
select MIPS_ASID_BITS_VARIABLE
|
|
@@ -1833,12 +1857,14 @@ config CPU_LOONGSON2
|
|
|
select CPU_SUPPORTS_HIGHMEM
|
|
|
select CPU_SUPPORTS_HUGEPAGES
|
|
|
select ARCH_HAS_PHYS_TO_DMA
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
|
|
|
config CPU_LOONGSON1
|
|
|
bool
|
|
|
select CPU_MIPS32
|
|
|
select CPU_MIPSR1
|
|
|
select CPU_HAS_PREFETCH
|
|
|
+ select CPU_HAS_LOAD_STORE_LR
|
|
|
select CPU_SUPPORTS_32BIT_KERNEL
|
|
|
select CPU_SUPPORTS_HIGHMEM
|
|
|
select CPU_SUPPORTS_CPUFREQ
|
|
@@ -2452,6 +2478,13 @@ config XKS01
|
|
|
config CPU_HAS_RIXI
|
|
|
bool
|
|
|
|
|
|
+config CPU_HAS_LOAD_STORE_LR
|
|
|
+ bool
|
|
|
+ help
|
|
|
+ CPU has support for unaligned load and store instructions:
|
|
|
+ LWL, LWR, SWL, SWR (Load/store word left/right).
|
|
|
+ LDL, LDR, SDL, SDR (Load/store doubleword left/right, for 64bit systems).
|
|
|
+
|
|
|
#
|
|
|
# Vectored interrupt mode is an R2 feature
|
|
|
#
|
|
@@ -2899,6 +2932,9 @@ config USE_OF
|
|
|
select OF_EARLY_FLATTREE
|
|
|
select IRQ_DOMAIN
|
|
|
|
|
|
+config UHI_BOOT
|
|
|
+ bool
|
|
|
+
|
|
|
config BUILTIN_DTB
|
|
|
bool
|
|
|
|