1if MACH_LOONGSON
2
3choice
4	prompt "Machine Type"
5
6config LEMOTE_FULOONG2E
7	bool "Lemote Fuloong(2e) mini-PC"
8	select ARCH_SPARSEMEM_ENABLE
9	select CEVT_R4K
10	select CSRC_R4K
11	select SYS_HAS_CPU_LOONGSON2E
12	select DMA_NONCOHERENT
13	select BOOT_ELF32
14	select BOARD_SCACHE
15	select HW_HAS_PCI
16	select I8259
17	select ISA
18	select IRQ_CPU
19	select SYS_SUPPORTS_32BIT_KERNEL
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_CPU
48	select ISA
49	select SYS_HAS_CPU_LOONGSON2F
50	select SYS_HAS_EARLY_PRINTK
51	select SYS_SUPPORTS_32BIT_KERNEL
52	select SYS_SUPPORTS_64BIT_KERNEL
53	select SYS_SUPPORTS_HIGHMEM
54	select SYS_SUPPORTS_LITTLE_ENDIAN
55	select LOONGSON_MC146818
56	help
57	  Lemote Loongson 2F family machines utilize the 2F revision of
58	  Loongson processor and the AMD CS5536 south bridge.
59
60	  These family machines include fuloong2f mini PC, yeeloong2f notebook,
61	  LingLoong allinone PC and so forth.
62
63config LOONGSON_MACH3X
64	bool "Generic Loongson 3 family machines"
65	select ARCH_SPARSEMEM_ENABLE
66	select GENERIC_ISA_DMA_SUPPORT_BROKEN
67	select BOOT_ELF32
68	select BOARD_SCACHE
69	select CSRC_R4K
70	select CEVT_R4K
71	select CPU_HAS_WB
72	select HW_HAS_PCI
73	select ISA
74	select HT_PCI
75	select I8259
76	select IRQ_CPU
77	select NR_CPUS_DEFAULT_4
78	select SYS_HAS_CPU_LOONGSON3
79	select SYS_HAS_EARLY_PRINTK
80	select SYS_SUPPORTS_SMP
81	select SYS_SUPPORTS_HOTPLUG_CPU
82	select SYS_SUPPORTS_NUMA
83	select SYS_SUPPORTS_64BIT_KERNEL
84	select SYS_SUPPORTS_HIGHMEM
85	select SYS_SUPPORTS_LITTLE_ENDIAN
86	select LOONGSON_MC146818
87	select ZONE_DMA32
88	select LEFI_FIRMWARE_INTERFACE
89	select PHYS48_TO_HT40
90	help
91		Generic Loongson 3 family machines utilize the 3A/3B revision
92		of Loongson processor and RS780/SBX00 chipset.
93endchoice
94
95config CS5536
96	bool
97
98config CS5536_MFGPT
99	bool "CS5536 MFGPT Timer"
100	depends on CS5536 && !HIGH_RES_TIMERS
101	select MIPS_EXTERNAL_TIMER
102	help
103	  This option enables the mfgpt0 timer of AMD CS5536. With this timer
104	  switched on you can not use high resolution timers.
105
106	  If you want to enable the Loongson2 CPUFreq Driver, Please enable
107	  this option at first, otherwise, You will get wrong system time.
108
109	  If unsure, say Yes.
110
111config RS780_HPET
112	bool "RS780/SBX00 HPET Timer"
113	depends on LOONGSON_MACH3X
114	select MIPS_EXTERNAL_TIMER
115	help
116	  This option enables the hpet timer of AMD RS780/SBX00.
117
118	  If you want to enable the Loongson3 CPUFreq Driver, Please enable
119	  this option at first, otherwise, You will get wrong system time.
120
121	  If unsure, say Yes.
122
123config LOONGSON_SUSPEND
124	bool
125	default y
126	depends on CPU_SUPPORTS_CPUFREQ && SUSPEND
127
128config LOONGSON_UART_BASE
129	bool
130	default y
131	depends on EARLY_PRINTK || SERIAL_8250
132
133config IOMMU_HELPER
134	bool
135
136config NEED_SG_DMA_LENGTH
137	bool
138
139config SWIOTLB
140	bool "Soft IOMMU Support for All-Memory DMA"
141	default y
142	depends on CPU_LOONGSON3
143	select IOMMU_HELPER
144	select NEED_SG_DMA_LENGTH
145	select NEED_DMA_MAP_STATE
146
147config PHYS48_TO_HT40
148	bool
149	default y if CPU_LOONGSON3
150
151config LOONGSON_MC146818
152	bool
153	default n
154
155config LEFI_FIRMWARE_INTERFACE
156	bool
157
158endif # MACH_LOONGSON
159