Merge tag 'mips_4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/mips
[sfrench/cifs-2.6.git] / arch / mips / loongson64 / Kconfig
1 # SPDX-License-Identifier: GPL-2.0
2 if MACH_LOONGSON64
3
4 choice
5         prompt "Machine Type"
6
7 config 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
33 config 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
62 config 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.
92 endchoice
93
94 config CS5536
95         bool
96
97 config 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
110 config 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
122 config LOONGSON_UART_BASE
123         bool
124         default y
125         depends on EARLY_PRINTK || SERIAL_8250
126
127 config IOMMU_HELPER
128         bool
129
130 config NEED_SG_DMA_LENGTH
131         bool
132
133 config 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
142 config PHYS48_TO_HT40
143         bool
144         default y if CPU_LOONGSON3
145
146 config LOONGSON_MC146818
147         bool
148         default n
149
150 config LEFI_FIRMWARE_INTERFACE
151         bool
152
153 endif # MACH_LOONGSON64