loongarch: add chip type select support

Signed-off-by: maoxiaochuan <maoxiaochuan@loongson.cn>
This commit is contained in:
maoxiaochuan
2025-02-13 15:11:41 +08:00
parent 8305551cb5
commit f70d65c829
+132
View File
@@ -291,6 +291,138 @@ config AS_HAS_LVZ_EXTENSION
config CC_HAS_ANNOTATE_TABLEJUMP
def_bool $(cc-option,-mannotate-tablejump)
if LOONGARCH
choice
prompt "Machine Type"
default LOONGSON64_GENERIC
config LOONGSON64_GENERIC
bool "Generic Loongson 64-bit family machines"
select ARCH_SPARSEMEM_ENABLE
select ARCH_MIGHT_HAVE_PC_PARPORT
select ARCH_MIGHT_HAVE_PC_SERIO
select BOOT_ELF32
select BOARD_SCACHE
select CPU_HAS_WB
select HW_HAS_PCI
select ISA
select HT_PCI
select IRQ_LOONGARCH_CPU
select NR_CPUS_DEFAULT_4
select SPARSE_IRQ
select SYS_HAS_CPU_LOONGSON64
select SYS_SUPPORTS_SMP
select SYS_SUPPORTS_HOTPLUG_CPU
select SYS_SUPPORTS_NUMA
select SYS_SUPPORTS_64BIT_KERNEL
select SYS_SUPPORTS_HIGHMEM
select SYS_SUPPORTS_LITTLE_ENDIAN
select ZONE_DMA32
select USE_OF
help
Generic Loongson 64-bit family machines utilize the Loongson-3A/3B/3C
revision of Loongson processor and LS7A chipset.
config LOONGSON_2K500
bool "Loongson 2K500 family SoC"
select ARCH_SPARSEMEM_ENABLE
select ARCH_MIGHT_HAVE_PC_PARPORT
select BOOT_ELF32
select BOARD_SCACHE
select CPU_HAS_WB
select HW_HAS_PCI
select ISA
select HT_PCI
select IRQ_LOONGARCH_CPU
select NR_CPUS_DEFAULT_4
select SPARSE_IRQ
select SYS_HAS_CPU_LOONGSON64
select SYS_SUPPORTS_HOTPLUG_CPU
select SYS_SUPPORTS_64BIT_KERNEL
select SYS_SUPPORTS_HIGHMEM
select SYS_SUPPORTS_LITTLE_ENDIAN
select ZONE_DMA32
select USE_OF
select COMMON_CLK
help
Loongson 2K500 family SoC.
config LOONGSON_2K300
bool "Loongson 2K300 family SoC"
select ARCH_SPARSEMEM_ENABLE
select ARCH_MIGHT_HAVE_PC_PARPORT
select BOOT_ELF32
select BOARD_SCACHE
select CPU_HAS_WB
select ISA
select IRQ_LOONGARCH_CPU
select NR_CPUS_DEFAULT_4
select SPARSE_IRQ
select SYS_HAS_CPU_LOONGSON64
select SYS_SUPPORTS_HOTPLUG_CPU
select SYS_SUPPORTS_64BIT_KERNEL
select SYS_SUPPORTS_HIGHMEM
select SYS_SUPPORTS_LITTLE_ENDIAN
select ZONE_DMA32
select USE_OF
select COMMON_CLK
help
Loongson 2K300 family SoC.
config LOONGSON_2P500
bool "Loongson 2P500 family SoC"
select ARCH_SPARSEMEM_ENABLE
select ARCH_MIGHT_HAVE_PC_PARPORT
select BOOT_ELF32
select BOARD_SCACHE
select CPU_HAS_WB
select HW_HAS_PCI
select ISA
select HT_PCI
select IRQ_LOONGARCH_CPU
select NR_CPUS_DEFAULT_4
select SPARSE_IRQ
select SYS_HAS_CPU_LOONGSON64
select SYS_SUPPORTS_HOTPLUG_CPU
select SYS_SUPPORTS_64BIT_KERNEL
select SYS_SUPPORTS_HIGHMEM
select SYS_SUPPORTS_LITTLE_ENDIAN
select ZONE_DMA32
select USE_OF
select COMMON_CLK
help
Loongson 2P500 family SoC.
config LOONGSON_2K1000
bool "Loongson 2K1000 family SoC"
select ARCH_SPARSEMEM_ENABLE
select ARCH_MIGHT_HAVE_PC_PARPORT
select BOOT_ELF32
select BOARD_SCACHE
select CPU_HAS_WB
select HW_HAS_PCI
select ISA
select HT_PCI
select IRQ_LOONGARCH_CPU
select NR_CPUS_DEFAULT_4
select SPARSE_IRQ
select SYS_HAS_CPU_LOONGSON64
select SYS_SUPPORTS_SMP
select SYS_SUPPORTS_HOTPLUG_CPU
select SYS_SUPPORTS_NUMA
select SYS_SUPPORTS_64BIT_KERNEL
select SYS_SUPPORTS_HIGHMEM
select SYS_SUPPORTS_LITTLE_ENDIAN
select ZONE_DMA32
select USE_OF
select COMMON_CLK
help
Loongson 2K1000 family SoC.
endchoice
endif # LOONGARCH Machine Type
menu "Kernel type and options"
source "kernel/Kconfig.hz"