LOONGSON revision 1.41 1 1.41 sevan # $NetBSD: LOONGSON,v 1.41 2018/12/30 14:51:36 sevan Exp $
2 1.1 bouyer #
3 1.1 bouyer # LOONGSON machine description file
4 1.1 bouyer #
5 1.1 bouyer # This machine description file is used to generate the default NetBSD
6 1.1 bouyer # kernel. The generic kernel does not include all options, subsystems
7 1.1 bouyer # and device drivers, but should be useful for most applications.
8 1.1 bouyer #
9 1.1 bouyer # The machine description file can be customised for your specific
10 1.1 bouyer # machine to reduce the kernel size and improve its performance.
11 1.1 bouyer #
12 1.1 bouyer # For further information on compiling NetBSD kernels, see the config(8)
13 1.1 bouyer # man page.
14 1.1 bouyer #
15 1.1 bouyer # For further information on hardware support for this architecture, see
16 1.1 bouyer # the intro(4) man page. For further information about kernel options
17 1.1 bouyer # for this architecture, see the options(4) man page. For an explanation
18 1.1 bouyer # of each device driver in this file see the section 4 man page for the
19 1.1 bouyer # device.
20 1.1 bouyer
21 1.35 mrg include "arch/evbmips/conf/std.loongson"
22 1.1 bouyer
23 1.1 bouyer options INCLUDE_CONFIG_FILE # embed config file in kernel binary
24 1.1 bouyer
25 1.41 sevan #ident "LOONGSON-$Revision: 1.41 $"
26 1.1 bouyer
27 1.1 bouyer maxusers 16
28 1.1 bouyer
29 1.1 bouyer # Standard system options
30 1.1 bouyer options DDB # in-kernel debugger
31 1.1 bouyer #options DDB_ONPANIC=0 # don't enter debugger on panic
32 1.1 bouyer options DDB_HISTORY_SIZE=512 # enable history editing in DDB
33 1.1 bouyer #options KGDB # remote debugger
34 1.1 bouyer options DIAGNOSTIC # extra kernel debugging checks
35 1.1 bouyer #options DEBUG # extra kernel debugging support
36 1.1 bouyer #options PMAP_FAULTINFO
37 1.1 bouyer #options LOCKDEBUG
38 1.1 bouyer makeoptions DEBUG="-g"
39 1.31 maya makeoptions COPY_SYMTAB=1 # size for embedded symbol table
40 1.1 bouyer options KTRACE # system call tracing support
41 1.1 bouyer options MSGBUFSIZE=8192 # dmesg buffer size
42 1.1 bouyer
43 1.1 bouyer ## UVM options.
44 1.1 bouyer #options UVM_PAGE_TRKOWN
45 1.1 bouyer #options UVMHIST
46 1.1 bouyer #options UVMHIST_PRINT # Loud!
47 1.1 bouyer
48 1.1 bouyer #options SCSIVERBOSE # human readable SCSI error messages
49 1.1 bouyer #options PCMCIAVERBOSE # verbose PCMCIA configuration messages
50 1.1 bouyer #options PCMCIADEBUG
51 1.1 bouyer #options PCMCIACISDEBUG
52 1.1 bouyer
53 1.1 bouyer #options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT
54 1.1 bouyer #options RTC_OFFSET=-540 # JST-9
55 1.1 bouyer #options RTC_OFFSET=480 # PST8
56 1.1 bouyer # In NO RTC_OFFSET , inherit RTC_OFFSET
57 1.1 bouyer # from Windows CE.
58 1.1 bouyer options NTP # network time protocol
59 1.1 bouyer
60 1.1 bouyer #options WINCE_DEFAULT_SETTING # Debugging use
61 1.1 bouyer
62 1.11 nonaka # Note: SysV IPC parameters can be changed dynamically; see sysctl(8).
63 1.11 nonaka options SYSVMSG # System V-like message queues
64 1.11 nonaka options SYSVSEM # System V-like semaphores
65 1.11 nonaka options SYSVSHM # System V-like memory sharing
66 1.11 nonaka
67 1.1 bouyer #options SYSCALL_DEBUG # for debug
68 1.1 bouyer #options HPCMIPS_L1CACHE_DISABLE # disable L1 cache for debug
69 1.1 bouyer options USERCONF # userconf(4) support
70 1.1 bouyer #options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
71 1.1 bouyer options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel
72 1.1 bouyer
73 1.15 macallan options INSECURE # disable kernel security levels
74 1.15 macallan
75 1.1 bouyer # Filesystem options
76 1.1 bouyer file-system FFS # fast filesystem with user and group quotas
77 1.1 bouyer file-system MFS # memory-based filesystem
78 1.1 bouyer file-system NFS # Sun NFS-compatible filesystem (client)
79 1.1 bouyer file-system EXT2FS # second extended file system (linux)
80 1.1 bouyer #file-system LFS # Log-based filesystem (still experimental)
81 1.1 bouyer file-system CD9660 # ISO 9660 + Rock Ridge file system
82 1.1 bouyer file-system MSDOSFS # MS-DOS file system
83 1.1 bouyer #file-system FDESC # /dev/fd
84 1.1 bouyer file-system KERNFS # /kern (kernel informational filesystem)
85 1.9 nonaka file-system NULLFS # loopback file system
86 1.1 bouyer #file-system OVERLAY # overlay file system
87 1.1 bouyer file-system PROCFS # /proc
88 1.1 bouyer #file-system UMAPFS # NULLFS + uid and gid remapping
89 1.1 bouyer file-system UNION
90 1.1 bouyer file-system PTYFS # /dev/pts/N support
91 1.9 nonaka file-system TMPFS # Efficient memory file-system
92 1.1 bouyer #file-system UDF # experimental - OSTA UDF CD/DVD file-system
93 1.1 bouyer
94 1.1 bouyer options NFSSERVER # Sun NFS-compatible filesystem (server)
95 1.8 dholland options WAPBL # File system journaling support
96 1.1 bouyer #options UFS_DIRHASH # UFS Large Directory Hashing - Experimental
97 1.1 bouyer #options QUOTA # legacy UFS quotas
98 1.1 bouyer #options QUOTA2 # new, in-filesystem UFS quotas
99 1.30 rin #options DISKLABEL_EI # disklabel Endian Independent support
100 1.30 rin #options FFS_EI # FFS Endian Independent support
101 1.1 bouyer #options FFS_NO_SNAPSHOT # No FFS snapshot support
102 1.1 bouyer
103 1.41 sevan # Alternate buffer queue strategies for better responsiveness under high
104 1.41 sevan # disk I/O load.
105 1.41 sevan #options BUFQ_READPRIO
106 1.41 sevan options BUFQ_PRIOCSCAN
107 1.41 sevan
108 1.1 bouyer # Networking options
109 1.1 bouyer #options GATEWAY # IP packet forwarding
110 1.1 bouyer options INET # IP + ICMP + TCP + UDP
111 1.1 bouyer options INET6 # IPV6
112 1.1 bouyer #options IPSEC # IP security
113 1.1 bouyer #options IPSEC_DEBUG # debug for IP security
114 1.1 bouyer #options MROUTING # Multicast routing support
115 1.1 bouyer #options PIM # Protocol Independent Multicast
116 1.1 bouyer
117 1.1 bouyer #options ALTQ # Manipulate network interfaces' output queues
118 1.1 bouyer #options ALTQ_BLUE # Stochastic Fair Blue
119 1.1 bouyer #options ALTQ_CBQ # Class-Based Queueing
120 1.1 bouyer #options ALTQ_CDNR # Diffserv Traffic Conditioner
121 1.1 bouyer #options ALTQ_FIFOQ # First-In First-Out Queue
122 1.1 bouyer #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box)
123 1.1 bouyer #options ALTQ_HFSC # Hierarchical Fair Service Curve
124 1.1 bouyer #options ALTQ_LOCALQ # Local queueing discipline
125 1.1 bouyer #options ALTQ_PRIQ # Priority Queueing
126 1.1 bouyer #options ALTQ_RED # Random Early Detection
127 1.1 bouyer #options ALTQ_RIO # RED with IN/OUT
128 1.1 bouyer #options ALTQ_WFQ # Weighted Fair Queueing
129 1.1 bouyer
130 1.23 alnsn # JIT compiler for bpfilter
131 1.23 alnsn #options SLJIT
132 1.23 alnsn #options BPFJIT
133 1.23 alnsn
134 1.1 bouyer # NetBSD backwards compatibility
135 1.35 mrg include "conf/compat_netbsd16.config"
136 1.1 bouyer
137 1.1 bouyer #options NFS_BOOT_DHCP
138 1.1 bouyer options NFS_BOOT_BOOTP
139 1.1 bouyer #options NFS_BOOT_BOOTPARAM
140 1.1 bouyer
141 1.1 bouyer # compile options
142 1.1 bouyer #makeoptions DEFGP="-G 10"
143 1.1 bouyer
144 1.1 bouyer config netbsd root on ? type ?
145 1.1 bouyer
146 1.1 bouyer # WS console uses SUN or VT100 terminal emulation
147 1.1 bouyer options WSEMUL_VT100
148 1.14 macallan options WSDISPLAY_COMPAT_PCVT
149 1.14 macallan options WSDISPLAY_COMPAT_SYSCONS
150 1.14 macallan options WSDISPLAY_COMPAT_USL
151 1.14 macallan options WSDISPLAY_SCROLLSUPPORT
152 1.4 macallan options WS_KERNEL_FG=WSCOL_GREEN
153 1.1 bouyer #options WSDISPLAY_DEFAULTSCREENS=4
154 1.1 bouyer options FONT_GALLANT12x22
155 1.22 bouyer options FONT_BOLD8x16
156 1.1 bouyer # compatibility to other console drivers
157 1.1 bouyer options WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes
158 1.1 bouyer
159 1.1 bouyer mainbus0 at root
160 1.1 bouyer cpu0 at mainbus0
161 1.1 bouyer bonito0 at mainbus0
162 1.1 bouyer pci0 at bonito0
163 1.1 bouyer sisfb0 at pci0 dev ? function ?
164 1.5 macallan voyager0 at pci0 dev ? function ? # SM502 on GDIUM
165 1.5 macallan voyagerfb0 at voyager0 # framebuffer portion
166 1.14 macallan pwmclock0 at voyager0 # clock and CPU freq scaling
167 1.38 thorpej iic* at voyager0
168 1.38 thorpej strtc* at iic? addr 0x68 # GDIUM's real time clock
169 1.9 nonaka options STRTC_NO_USERRAM
170 1.38 thorpej lmtemp* at iic? addr 0x48 # GDIUM's temperature sensor
171 1.38 thorpej stvii* at iic? addr 0x40 # GDIUM's onboard microcontroller
172 1.9 nonaka lynxfb0 at pci0 dev ? function ? # SM712 on Yeeloong Notebook
173 1.1 bouyer #genfb0 at pci0 dev ? function ?
174 1.1 bouyer wsdisplay* at wsemuldisplaydev?
175 1.36 maya
176 1.1 bouyer ehci* at pci0 dev ? function ?
177 1.1 bouyer #options EHCI_DEBUG
178 1.1 bouyer ohci* at pci0 dev ? function ?
179 1.1 bouyer #options OHCI_DEBUG, USB_DEBUG, UHUB_DEBUG
180 1.1 bouyer
181 1.36 maya # USB
182 1.36 maya usb* at ehci?
183 1.36 maya usb* at ohci?
184 1.36 maya
185 1.36 maya include "dev/usb/usbdevices.config"
186 1.36 maya midi* at midibus?
187 1.36 maya
188 1.36 maya options GDIUM_KEYBOARD_HACK # support Fn key on Gdium
189 1.36 maya
190 1.9 nonaka gcscpcib* at pci? dev ? function ? # AMD CS5535/CS5536 PCI-ISA w/
191 1.9 nonaka gpio* at gcscpcib? # timecounter, watchdog and GPIO
192 1.9 nonaka isa0 at gcscpcib?
193 1.9 nonaka
194 1.9 nonaka pcib* at pci?
195 1.9 nonaka isa0 at pcib?
196 1.9 nonaka
197 1.9 nonaka pckbc0 at isa? # PC keyboard controller
198 1.9 nonaka pckbd* at pckbc? # PC keyboard
199 1.9 nonaka pms* at pckbc? # PS/2 mouse for wsmouse
200 1.32 christos #options PMS_DISABLE_POWERHOOK # Disable PS/2 reset on resume
201 1.9 nonaka options PMS_SYNAPTICS_TOUCHPAD # Enable support for Synaptics Touchpads
202 1.9 nonaka options PMS_ELANTECH_TOUCHPAD # Enable support for Elantech Touchpads
203 1.32 christos options PMS_ALPS_TOUCHPAD # Enable support for Alps Touchpads
204 1.9 nonaka wskbd* at pckbd? console ?
205 1.9 nonaka wsmouse* at pms? mux 0
206 1.1 bouyer
207 1.1 bouyer mcclock* at isa? port 0x70 # mc146818-compatible
208 1.1 bouyer com0 at isa? port 0x2f8 irq 3 # Fuloong 2F only
209 1.1 bouyer com1 at isa? port 0x3f8 irq 4 # Fuloong 2F only (IR port)
210 1.1 bouyer
211 1.9 nonaka gcscaudio* at pci?
212 1.9 nonaka audio* at audiobus?
213 1.9 nonaka
214 1.29 christos spkr* at audio? # PC speaker (synthesized)
215 1.27 nat
216 1.1 bouyer pciide* at pci? dev ? function ? flags 0x0000 # GENERIC pciide driver
217 1.1 bouyer viaide* at pci? dev ? function ? # VIA/AMD/Nvidia IDE controllers
218 1.2 bouyer options WDC_NO_IDS #workaround CS5536+JMH330 interrupt disable bug
219 1.1 bouyer
220 1.1 bouyer # ATA (IDE) bus support
221 1.1 bouyer atabus* at ata?
222 1.33 maya #options ATADEBUG
223 1.1 bouyer
224 1.1 bouyer # IDE drives
225 1.1 bouyer # Flags are used only with controllers that support DMA operations
226 1.1 bouyer # and mode settings (e.g. some pciide controllers)
227 1.1 bouyer # The lowest order four bits (rightmost digit) of the flags define the PIO
228 1.1 bouyer # mode to use, the next set of four bits the DMA mode and the third set the
229 1.1 bouyer # UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
230 1.1 bouyer # to use, and the last bit must be 1 for this setting to be used.
231 1.1 bouyer # For DMA and UDMA, 0xf (1111) means 'disable'.
232 1.1 bouyer # 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
233 1.1 bouyer # (0xc=1100, 0xa=1010, 0xf=1111)
234 1.1 bouyer # 0x0000 means "use whatever the drive claims to support".
235 1.1 bouyer wd* at atabus? drive ? flags 0x0000
236 1.1 bouyer
237 1.1 bouyer # ATAPI bus support
238 1.1 bouyer #atapibus* at atapi?
239 1.1 bouyer
240 1.1 bouyer # ATAPI devices
241 1.1 bouyer # flags have the same meaning as for IDE drives.
242 1.1 bouyer #cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives
243 1.1 bouyer #sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives
244 1.1 bouyer #st* at atapibus? drive ? flags 0x0000 # ATAPI tape drives
245 1.1 bouyer #uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown
246 1.1 bouyer
247 1.1 bouyer ral* at pci? dev ? function ? # RL2561S 802.11b/g
248 1.1 bouyer rtk* at pci? dev ? function ? # RTL8139 100/10 Ethernet
249 1.1 bouyer re* at pci? dev ? function ? # Realtek 8139C+/8169/8169S/8110S
250 1.1 bouyer # MII/PHY support
251 1.1 bouyer rgephy* at mii? phy ? # Realtek 8169S/8110S internal PHYs
252 1.1 bouyer rlphy* at mii? phy ? # Realtek 8139/8201L PHYs
253 1.1 bouyer ukphy* at mii? phy ? # generic unknown PHYs
254 1.1 bouyer
255 1.1 bouyer #
256 1.1 bouyer # accept filters
257 1.1 bouyer pseudo-device accf_data # "dataready" accept filter
258 1.1 bouyer pseudo-device accf_http # "httpready" accept filter
259 1.1 bouyer
260 1.18 christos pseudo-device loop # network loopback
261 1.1 bouyer pseudo-device ppp # serial-line IP ports
262 1.1 bouyer pseudo-device pppoe # PPP over Ethernet (RFC 2516)
263 1.1 bouyer pseudo-device pty # pseudo-terminals
264 1.1 bouyer pseudo-device bpfilter # packet filter ports
265 1.1 bouyer #pseudo-device carp # Common Address Redundancy Protocol
266 1.39 maxv pseudo-device npf # NPF packet filter
267 1.1 bouyer
268 1.1 bouyer pseudo-device vnd # virtual disk ick
269 1.1 bouyer #options VND_COMPRESSION # compressed vnd(4)
270 1.18 christos #pseudo-device ccd # concatenated disks
271 1.1 bouyer pseudo-device fss # file system snapshot device
272 1.18 christos #pseudo-device cgd # cryptographic disks
273 1.1 bouyer pseudo-device clockctl # user control of clock subsystem
274 1.1 bouyer
275 1.1 bouyer pseudo-device wsmux # mouse & keyboard multiplexor
276 1.9 nonaka pseudo-device wsfont
277 1.1 bouyer #pseudo-device md # memory disk device (ramdisk)
278 1.1 bouyer
279 1.19 christos #pseudo-device raid # RAIDframe disk driver
280 1.1 bouyer #options RAID_AUTOCONFIG # auto-configuration of RAID components
281 1.1 bouyer # Options to enable various other RAIDframe RAID types.
282 1.1 bouyer # options RF_INCLUDE_EVENODD=1
283 1.1 bouyer # options RF_INCLUDE_RAID5_RS=1
284 1.1 bouyer # options RF_INCLUDE_PARITYLOGGING=1
285 1.1 bouyer # options RF_INCLUDE_CHAINDECLUSTER=1
286 1.1 bouyer # options RF_INCLUDE_INTERDECLUSTER=1
287 1.1 bouyer # options RF_INCLUDE_PARITY_DECLUSTERING=1
288 1.1 bouyer # options RF_INCLUDE_PARITY_DECLUSTERING_DS=1
289 1.1 bouyer
290 1.1 bouyer # for IPv6
291 1.1 bouyer pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933)
292 1.1 bouyer #pseudo-device faith # IPv[46] tcp relay translation i/f
293 1.1 bouyer pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation
294 1.1 bouyer
295 1.1 bouyer ## IEEE 802.1Q Virtual LAN encapsulation, see vlan(4).
296 1.1 bouyer pseudo-device vlan
297 1.1 bouyer
298 1.1 bouyer ## Simple inter-network traffic bridging
299 1.1 bouyer pseudo-device bridge
300 1.1 bouyer #options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too
301 1.1 bouyer pseudo-device agr # IEEE 802.3ad link aggregation
302 1.1 bouyer pseudo-device ksyms # /dev/ksyms
303 1.26 jmcneill pseudo-device drvctl # driver control
304 1.1 bouyer
305 1.1 bouyer # Veriexec
306 1.1 bouyer #
307 1.1 bouyer # a pseudo device needed for veriexec
308 1.19 christos #pseudo-device veriexec
309 1.1 bouyer #
310 1.1 bouyer # Uncomment the fingerprint methods below that are desired. Note that
311 1.1 bouyer # removing fingerprint methods will have almost no impact on the kernel
312 1.1 bouyer # code size.
313 1.1 bouyer #
314 1.1 bouyer #options VERIFIED_EXEC_FP_SHA256
315 1.1 bouyer #options VERIFIED_EXEC_FP_SHA384
316 1.1 bouyer #options VERIFIED_EXEC_FP_SHA512
317