xref: /openbmc/linux/arch/mips/loongson64/Kconfig (revision 407e7517)
1# SPDX-License-Identifier: GPL-2.0
2if MACH_LOONGSON64
3
4choice
5	prompt "Machine Type"
6
7config LEMOTE_FULOONG2E
8	bool "Lemote Fuloong(2e) mini-PC"
9	select ARCH_SPARSEMEM_ENABLE
10	select CEVT_R4K
11	select CSRC_R4K
12	select SYS_HAS_CPU_LOONGSON2E
13	select DMA_NONCOHERENT
14	select BOOT_ELF32
15	select BOARD_SCACHE
16	select HW_HAS_PCI
17	select I8259
18	select ISA
19	select IRQ_MIPS_CPU
20	select SYS_SUPPORTS_64BIT_KERNEL
21	select SYS_SUPPORTS_LITTLE_ENDIAN
22	select SYS_SUPPORTS_HIGHMEM
23	select SYS_HAS_EARLY_PRINTK
24	select GENERIC_ISA_DMA_SUPPORT_BROKEN
25	select CPU_HAS_WB
26	select LOONGSON_MC146818
27	help
28	  Lemote Fuloong(2e) mini-PC board based on the Chinese Loongson-2E CPU and
29	  an FPGA northbridge
30
31	  Lemote Fuloong(2e) mini PC have a VIA686B south bridge.
32
33config LEMOTE_MACH2F
34	bool "Lemote Loongson 2F family machines"
35	select ARCH_SPARSEMEM_ENABLE
36	select BOARD_SCACHE
37	select BOOT_ELF32
38	select CEVT_R4K if ! MIPS_EXTERNAL_TIMER
39	select CPU_HAS_WB
40	select CS5536
41	select CSRC_R4K if ! MIPS_EXTERNAL_TIMER
42	select DMA_NONCOHERENT
43	select GENERIC_ISA_DMA_SUPPORT_BROKEN
44	select HAVE_CLK
45	select HW_HAS_PCI
46	select I8259
47	select IRQ_MIPS_CPU
48	select ISA
49	select SYS_HAS_CPU_LOONGSON2F
50	select SYS_HAS_EARLY_PRINTK
51	select SYS_SUPPORTS_64BIT_KERNEL
52	select SYS_SUPPORTS_HIGHMEM
53	select SYS_SUPPORTS_LITTLE_ENDIAN
54	select LOONGSON_MC146818
55	help
56	  Lemote Loongson 2F family machines utilize the 2F revision of
57	  Loongson processor and the AMD CS5536 south bridge.
58
59	  These family machines include fuloong2f mini PC, yeeloong2f notebook,
60	  LingLoong allinone PC and so forth.
61
62config LOONGSON_MACH3X
63	bool "Generic Loongson 3 family machines"
64	select ARCH_SPARSEMEM_ENABLE
65	select GENERIC_ISA_DMA_SUPPORT_BROKEN
66	select BOOT_ELF32
67	select BOARD_SCACHE
68	select CSRC_R4K
69	select CEVT_R4K
70	select CPU_HAS_WB
71	select HW_HAS_PCI
72	select ISA
73	select HT_PCI
74	select I8259
75	select IRQ_MIPS_CPU
76	select NR_CPUS_DEFAULT_4
77	select SYS_HAS_CPU_LOONGSON3
78	select SYS_HAS_EARLY_PRINTK
79	select SYS_SUPPORTS_SMP
80	select SYS_SUPPORTS_HOTPLUG_CPU
81	select SYS_SUPPORTS_NUMA
82	select SYS_SUPPORTS_64BIT_KERNEL
83	select SYS_SUPPORTS_HIGHMEM
84	select SYS_SUPPORTS_LITTLE_ENDIAN
85	select LOONGSON_MC146818
86	select ZONE_DMA32
87	select LEFI_FIRMWARE_INTERFACE
88	select PHYS48_TO_HT40
89	help
90		Generic Loongson 3 family machines utilize the 3A/3B revision
91		of Loongson processor and RS780/SBX00 chipset.
92endchoice
93
94config CS5536
95	bool
96
97config CS5536_MFGPT
98	bool "CS5536 MFGPT Timer"
99	depends on CS5536 && !HIGH_RES_TIMERS
100	select MIPS_EXTERNAL_TIMER
101	help
102	  This option enables the mfgpt0 timer of AMD CS5536. With this timer
103	  switched on you can not use high resolution timers.
104
105	  If you want to enable the Loongson2 CPUFreq Driver, Please enable
106	  this option at first, otherwise, You will get wrong system time.
107
108	  If unsure, say Yes.
109
110config RS780_HPET
111	bool "RS780/SBX00 HPET Timer"
112	depends on LOONGSON_MACH3X
113	select MIPS_EXTERNAL_TIMER
114	help
115	  This option enables the hpet timer of AMD RS780/SBX00.
116
117	  If you want to enable the Loongson3 CPUFreq Driver, Please enable
118	  this option at first, otherwise, You will get wrong system time.
119
120	  If unsure, say Yes.
121
122config LOONGSON_UART_BASE
123	bool
124	default y
125	depends on EARLY_PRINTK || SERIAL_8250
126
127config IOMMU_HELPER
128	bool
129
130config NEED_SG_DMA_LENGTH
131	bool
132
133config SWIOTLB
134	bool "Soft IOMMU Support for All-Memory DMA"
135	default y
136	depends on CPU_LOONGSON3
137	select DMA_DIRECT_OPS
138	select IOMMU_HELPER
139	select NEED_SG_DMA_LENGTH
140	select NEED_DMA_MAP_STATE
141
142config PHYS48_TO_HT40
143	bool
144	default y if CPU_LOONGSON3
145
146config LOONGSON_MC146818
147	bool
148	default n
149
150config LEFI_FIRMWARE_INTERFACE
151	bool
152
153endif # MACH_LOONGSON64
154