MIPS: Disable MIPS16/microMIPS crap for platforms not supporting these ASEs.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
parent
e0cc3a42eb
commit
377cb1b6c1
|
@ -83,6 +83,7 @@ config AR7
|
||||||
select SYS_HAS_EARLY_PRINTK
|
select SYS_HAS_EARLY_PRINTK
|
||||||
select SYS_SUPPORTS_32BIT_KERNEL
|
select SYS_SUPPORTS_32BIT_KERNEL
|
||||||
select SYS_SUPPORTS_LITTLE_ENDIAN
|
select SYS_SUPPORTS_LITTLE_ENDIAN
|
||||||
|
select SYS_SUPPORTS_MIPS16
|
||||||
select SYS_SUPPORTS_ZBOOT_UART16550
|
select SYS_SUPPORTS_ZBOOT_UART16550
|
||||||
select ARCH_REQUIRE_GPIOLIB
|
select ARCH_REQUIRE_GPIOLIB
|
||||||
select VLYNQ
|
select VLYNQ
|
||||||
|
@ -106,6 +107,7 @@ config ATH79
|
||||||
select SYS_HAS_EARLY_PRINTK
|
select SYS_HAS_EARLY_PRINTK
|
||||||
select SYS_SUPPORTS_32BIT_KERNEL
|
select SYS_SUPPORTS_32BIT_KERNEL
|
||||||
select SYS_SUPPORTS_BIG_ENDIAN
|
select SYS_SUPPORTS_BIG_ENDIAN
|
||||||
|
select SYS_SUPPORTS_MIPS16
|
||||||
help
|
help
|
||||||
Support for the Atheros AR71XX/AR724X/AR913X SoCs.
|
Support for the Atheros AR71XX/AR724X/AR913X SoCs.
|
||||||
|
|
||||||
|
@ -122,6 +124,7 @@ config BCM47XX
|
||||||
select NO_EXCEPT_FILL
|
select NO_EXCEPT_FILL
|
||||||
select SYS_SUPPORTS_32BIT_KERNEL
|
select SYS_SUPPORTS_32BIT_KERNEL
|
||||||
select SYS_SUPPORTS_LITTLE_ENDIAN
|
select SYS_SUPPORTS_LITTLE_ENDIAN
|
||||||
|
select SYS_SUPPORTS_MIPS16
|
||||||
select SYS_HAS_EARLY_PRINTK
|
select SYS_HAS_EARLY_PRINTK
|
||||||
select USE_GENERIC_EARLY_PRINTK_8250
|
select USE_GENERIC_EARLY_PRINTK_8250
|
||||||
help
|
help
|
||||||
|
@ -248,6 +251,7 @@ config LANTIQ
|
||||||
select SYS_HAS_CPU_MIPS32_R2
|
select SYS_HAS_CPU_MIPS32_R2
|
||||||
select SYS_SUPPORTS_BIG_ENDIAN
|
select SYS_SUPPORTS_BIG_ENDIAN
|
||||||
select SYS_SUPPORTS_32BIT_KERNEL
|
select SYS_SUPPORTS_32BIT_KERNEL
|
||||||
|
select SYS_SUPPORTS_MIPS16
|
||||||
select SYS_SUPPORTS_MULTITHREADING
|
select SYS_SUPPORTS_MULTITHREADING
|
||||||
select SYS_HAS_EARLY_PRINTK
|
select SYS_HAS_EARLY_PRINTK
|
||||||
select ARCH_REQUIRE_GPIOLIB
|
select ARCH_REQUIRE_GPIOLIB
|
||||||
|
@ -330,6 +334,7 @@ config MIPS_MALTA
|
||||||
select SYS_SUPPORTS_LITTLE_ENDIAN
|
select SYS_SUPPORTS_LITTLE_ENDIAN
|
||||||
select SYS_SUPPORTS_MIPS_CMP
|
select SYS_SUPPORTS_MIPS_CMP
|
||||||
select SYS_SUPPORTS_MIPS_CPS
|
select SYS_SUPPORTS_MIPS_CPS
|
||||||
|
select SYS_SUPPORTS_MIPS16
|
||||||
select SYS_SUPPORTS_MULTITHREADING
|
select SYS_SUPPORTS_MULTITHREADING
|
||||||
select SYS_SUPPORTS_SMARTMIPS
|
select SYS_SUPPORTS_SMARTMIPS
|
||||||
select SYS_SUPPORTS_ZBOOT
|
select SYS_SUPPORTS_ZBOOT
|
||||||
|
@ -361,6 +366,7 @@ config MIPS_SEAD3
|
||||||
select SYS_SUPPORTS_LITTLE_ENDIAN
|
select SYS_SUPPORTS_LITTLE_ENDIAN
|
||||||
select SYS_SUPPORTS_SMARTMIPS
|
select SYS_SUPPORTS_SMARTMIPS
|
||||||
select SYS_SUPPORTS_MICROMIPS
|
select SYS_SUPPORTS_MICROMIPS
|
||||||
|
select SYS_SUPPORTS_MIPS16
|
||||||
select USB_EHCI_BIG_ENDIAN_DESC
|
select USB_EHCI_BIG_ENDIAN_DESC
|
||||||
select USB_EHCI_BIG_ENDIAN_MMIO
|
select USB_EHCI_BIG_ENDIAN_MMIO
|
||||||
select USE_OF
|
select USE_OF
|
||||||
|
@ -380,6 +386,7 @@ config MACH_VR41XX
|
||||||
select CEVT_R4K
|
select CEVT_R4K
|
||||||
select CSRC_R4K
|
select CSRC_R4K
|
||||||
select SYS_HAS_CPU_VR41XX
|
select SYS_HAS_CPU_VR41XX
|
||||||
|
select SYS_SUPPORTS_MIPS16
|
||||||
select ARCH_REQUIRE_GPIOLIB
|
select ARCH_REQUIRE_GPIOLIB
|
||||||
|
|
||||||
config NXP_STB220
|
config NXP_STB220
|
||||||
|
@ -407,6 +414,7 @@ config PMC_MSP
|
||||||
select SYS_HAS_CPU_MIPS32_R2
|
select SYS_HAS_CPU_MIPS32_R2
|
||||||
select SYS_SUPPORTS_32BIT_KERNEL
|
select SYS_SUPPORTS_32BIT_KERNEL
|
||||||
select SYS_SUPPORTS_BIG_ENDIAN
|
select SYS_SUPPORTS_BIG_ENDIAN
|
||||||
|
select SYS_SUPPORTS_MIPS16
|
||||||
select IRQ_CPU
|
select IRQ_CPU
|
||||||
select SERIAL_8250
|
select SERIAL_8250
|
||||||
select SERIAL_8250_CONSOLE
|
select SERIAL_8250_CONSOLE
|
||||||
|
@ -430,6 +438,7 @@ config RALINK
|
||||||
select SYS_HAS_CPU_MIPS32_R2
|
select SYS_HAS_CPU_MIPS32_R2
|
||||||
select SYS_SUPPORTS_32BIT_KERNEL
|
select SYS_SUPPORTS_32BIT_KERNEL
|
||||||
select SYS_SUPPORTS_LITTLE_ENDIAN
|
select SYS_SUPPORTS_LITTLE_ENDIAN
|
||||||
|
select SYS_SUPPORTS_MIPS16
|
||||||
select SYS_HAS_EARLY_PRINTK
|
select SYS_HAS_EARLY_PRINTK
|
||||||
select HAVE_MACH_CLKDEV
|
select HAVE_MACH_CLKDEV
|
||||||
select CLKDEV_LOOKUP
|
select CLKDEV_LOOKUP
|
||||||
|
@ -1059,6 +1068,7 @@ config SOC_PNX833X
|
||||||
select SYS_SUPPORTS_32BIT_KERNEL
|
select SYS_SUPPORTS_32BIT_KERNEL
|
||||||
select SYS_SUPPORTS_LITTLE_ENDIAN
|
select SYS_SUPPORTS_LITTLE_ENDIAN
|
||||||
select SYS_SUPPORTS_BIG_ENDIAN
|
select SYS_SUPPORTS_BIG_ENDIAN
|
||||||
|
select SYS_SUPPORTS_MIPS16
|
||||||
select CPU_MIPSR2_IRQ_VI
|
select CPU_MIPSR2_IRQ_VI
|
||||||
|
|
||||||
config SOC_PNX8335
|
config SOC_PNX8335
|
||||||
|
@ -2199,6 +2209,13 @@ config SYS_SUPPORTS_SMARTMIPS
|
||||||
config SYS_SUPPORTS_MICROMIPS
|
config SYS_SUPPORTS_MICROMIPS
|
||||||
bool
|
bool
|
||||||
|
|
||||||
|
config SYS_SUPPORTS_MIPS16
|
||||||
|
bool
|
||||||
|
help
|
||||||
|
This option must be set if a kernel might be executed on a MIPS16-
|
||||||
|
enabled CPU even if MIPS16 is not actually being used. In other
|
||||||
|
words, it makes the kernel MIPS16-tolerant.
|
||||||
|
|
||||||
config CPU_SUPPORTS_MSA
|
config CPU_SUPPORTS_MSA
|
||||||
bool
|
bool
|
||||||
|
|
||||||
|
|
|
@ -709,11 +709,18 @@
|
||||||
#ifndef __ASSEMBLY__
|
#ifndef __ASSEMBLY__
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Macros for handling the ISA mode bit for microMIPS.
|
* Macros for handling the ISA mode bit for MIPS16 and microMIPS.
|
||||||
*/
|
*/
|
||||||
|
#if defined(CONFIG_SYS_SUPPORTS_MIPS16) || \
|
||||||
|
defined(CONFIG_SYS_SUPPORTS_MICROMIPS)
|
||||||
#define get_isa16_mode(x) ((x) & 0x1)
|
#define get_isa16_mode(x) ((x) & 0x1)
|
||||||
#define msk_isa16_mode(x) ((x) & ~0x1)
|
#define msk_isa16_mode(x) ((x) & ~0x1)
|
||||||
#define set_isa16_mode(x) do { (x) |= 0x1; } while(0)
|
#define set_isa16_mode(x) do { (x) |= 0x1; } while(0)
|
||||||
|
#else
|
||||||
|
#define get_isa16_mode(x) 0
|
||||||
|
#define msk_isa16_mode(x) (x)
|
||||||
|
#define set_isa16_mode(x) do { } while(0)
|
||||||
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* microMIPS instructions can be 16-bit or 32-bit in length. This
|
* microMIPS instructions can be 16-bit or 32-bit in length. This
|
||||||
|
|
|
@ -14,6 +14,7 @@ config LOONGSON1_LS1B
|
||||||
select SYS_SUPPORTS_32BIT_KERNEL
|
select SYS_SUPPORTS_32BIT_KERNEL
|
||||||
select SYS_SUPPORTS_LITTLE_ENDIAN
|
select SYS_SUPPORTS_LITTLE_ENDIAN
|
||||||
select SYS_SUPPORTS_HIGHMEM
|
select SYS_SUPPORTS_HIGHMEM
|
||||||
|
select SYS_SUPPORTS_MIPS16
|
||||||
select SYS_HAS_EARLY_PRINTK
|
select SYS_HAS_EARLY_PRINTK
|
||||||
select COMMON_CLK
|
select COMMON_CLK
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue