LOONGSON revision 1.31.2.2 1 1.31.2.2 martin # $NetBSD: LOONGSON,v 1.31.2.2 2019/01/07 13:46:57 martin 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.1 bouyer 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.31.2.2 martin #ident "LOONGSON-$Revision: 1.31.2.2 $"
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.31.2.2 martin # Alternate buffer queue strategies for better responsiveness under high
104 1.31.2.2 martin # disk I/O load.
105 1.31.2.2 martin #options BUFQ_READPRIO
106 1.31.2.2 martin options BUFQ_PRIOCSCAN
107 1.31.2.2 martin
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 options IPFILTER_LOG # ipmon(8) log support
117 1.1 bouyer options IPFILTER_LOOKUP # ippool(8) support
118 1.1 bouyer options IPFILTER_COMPAT # Compat for IP-Filter
119 1.1 bouyer #options IPFILTER_DEFAULT_BLOCK # block all packets by default
120 1.1 bouyer
121 1.1 bouyer #options ALTQ # Manipulate network interfaces' output queues
122 1.1 bouyer #options ALTQ_BLUE # Stochastic Fair Blue
123 1.1 bouyer #options ALTQ_CBQ # Class-Based Queueing
124 1.1 bouyer #options ALTQ_CDNR # Diffserv Traffic Conditioner
125 1.1 bouyer #options ALTQ_FIFOQ # First-In First-Out Queue
126 1.1 bouyer #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box)
127 1.1 bouyer #options ALTQ_HFSC # Hierarchical Fair Service Curve
128 1.1 bouyer #options ALTQ_LOCALQ # Local queueing discipline
129 1.1 bouyer #options ALTQ_PRIQ # Priority Queueing
130 1.1 bouyer #options ALTQ_RED # Random Early Detection
131 1.1 bouyer #options ALTQ_RIO # RED with IN/OUT
132 1.1 bouyer #options ALTQ_WFQ # Weighted Fair Queueing
133 1.1 bouyer
134 1.23 alnsn # JIT compiler for bpfilter
135 1.23 alnsn #options SLJIT
136 1.23 alnsn #options BPFJIT
137 1.23 alnsn
138 1.1 bouyer # NetBSD backwards compatibility
139 1.25 dholland options COMPAT_43 # 4.3BSD binary compatibility.
140 1.25 dholland options COMPAT_16 # NetBSD 1.6,
141 1.25 dholland options COMPAT_20 # NetBSD 2.0,
142 1.25 dholland options COMPAT_30 # NetBSD 3.0,
143 1.25 dholland options COMPAT_40 # NetBSD 4.0,
144 1.25 dholland options COMPAT_50 # NetBSD 5.0,
145 1.25 dholland options COMPAT_60 # NetBSD 6.0, and
146 1.25 dholland options COMPAT_70 # NetBSD 7.0 binary compatibility.
147 1.1 bouyer options COMPAT_BSDPTY # /dev/[pt]ty?? ptys.
148 1.1 bouyer
149 1.1 bouyer
150 1.1 bouyer #options NFS_BOOT_DHCP
151 1.1 bouyer options NFS_BOOT_BOOTP
152 1.1 bouyer #options NFS_BOOT_BOOTPARAM
153 1.1 bouyer
154 1.1 bouyer # compile options
155 1.1 bouyer #makeoptions DEFGP="-G 10"
156 1.1 bouyer
157 1.1 bouyer config netbsd root on ? type ?
158 1.1 bouyer
159 1.1 bouyer # WS console uses SUN or VT100 terminal emulation
160 1.1 bouyer options WSEMUL_VT100
161 1.14 macallan options WSDISPLAY_COMPAT_PCVT
162 1.14 macallan options WSDISPLAY_COMPAT_SYSCONS
163 1.14 macallan options WSDISPLAY_COMPAT_USL
164 1.14 macallan options WSDISPLAY_SCROLLSUPPORT
165 1.4 macallan options WS_KERNEL_FG=WSCOL_GREEN
166 1.1 bouyer #options WSDISPLAY_DEFAULTSCREENS=4
167 1.1 bouyer options FONT_GALLANT12x22
168 1.22 bouyer options FONT_BOLD8x16
169 1.1 bouyer # compatibility to other console drivers
170 1.1 bouyer options WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes
171 1.1 bouyer #
172 1.1 bouyer # Hpckbd will set key board layout appropriately. You can use option
173 1.1 bouyer # 'PCKBD_LAYOUT' to overrite the default layout.
174 1.1 bouyer #
175 1.1 bouyer #options PCKBD_LAYOUT="(KB_US | KB_SWAPCTRLCAPS | KB_MACHDEP)"
176 1.1 bouyer
177 1.1 bouyer mainbus0 at root
178 1.1 bouyer cpu0 at mainbus0
179 1.1 bouyer bonito0 at mainbus0
180 1.1 bouyer pci0 at bonito0
181 1.1 bouyer sisfb0 at pci0 dev ? function ?
182 1.5 macallan voyager0 at pci0 dev ? function ? # SM502 on GDIUM
183 1.5 macallan voyagerfb0 at voyager0 # framebuffer portion
184 1.14 macallan pwmclock0 at voyager0 # clock and CPU freq scaling
185 1.3 macallan iic* at voyager0
186 1.9 nonaka strtc* at iic? addr 0x68 # GDIUM's real time clock
187 1.9 nonaka options STRTC_NO_USERRAM
188 1.9 nonaka lmtemp* at iic? addr 0x48 # GDIUM's temperature sensor
189 1.9 nonaka stvii* at iic? addr 0x40 # GDIUM's onboard microcontroller
190 1.9 nonaka lynxfb0 at pci0 dev ? function ? # SM712 on Yeeloong Notebook
191 1.1 bouyer #genfb0 at pci0 dev ? function ?
192 1.1 bouyer wsdisplay* at wsemuldisplaydev?
193 1.1 bouyer ehci* at pci0 dev ? function ?
194 1.1 bouyer #options EHCI_DEBUG
195 1.1 bouyer ohci* at pci0 dev ? function ?
196 1.1 bouyer #options OHCI_DEBUG, USB_DEBUG, UHUB_DEBUG
197 1.1 bouyer
198 1.9 nonaka gcscpcib* at pci? dev ? function ? # AMD CS5535/CS5536 PCI-ISA w/
199 1.9 nonaka gpio* at gcscpcib? # timecounter, watchdog and GPIO
200 1.9 nonaka isa0 at gcscpcib?
201 1.9 nonaka
202 1.9 nonaka pcib* at pci?
203 1.9 nonaka isa0 at pcib?
204 1.9 nonaka
205 1.9 nonaka pckbc0 at isa? # PC keyboard controller
206 1.9 nonaka pckbd* at pckbc? # PC keyboard
207 1.9 nonaka pms* at pckbc? # PS/2 mouse for wsmouse
208 1.9 nonaka options PMS_SYNAPTICS_TOUCHPAD # Enable support for Synaptics Touchpads
209 1.9 nonaka options PMS_ELANTECH_TOUCHPAD # Enable support for Elantech Touchpads
210 1.9 nonaka wskbd* at pckbd? console ?
211 1.9 nonaka wsmouse* at pms? mux 0
212 1.1 bouyer
213 1.1 bouyer mcclock* at isa? port 0x70 # mc146818-compatible
214 1.1 bouyer com0 at isa? port 0x2f8 irq 3 # Fuloong 2F only
215 1.1 bouyer com1 at isa? port 0x3f8 irq 4 # Fuloong 2F only (IR port)
216 1.1 bouyer
217 1.9 nonaka gcscaudio* at pci?
218 1.9 nonaka audio* at audiobus?
219 1.9 nonaka
220 1.29 christos spkr* at audio? # PC speaker (synthesized)
221 1.27 nat
222 1.1 bouyer pciide* at pci? dev ? function ? flags 0x0000 # GENERIC pciide driver
223 1.1 bouyer viaide* at pci? dev ? function ? # VIA/AMD/Nvidia IDE controllers
224 1.2 bouyer options WDC_NO_IDS #workaround CS5536+JMH330 interrupt disable bug
225 1.1 bouyer
226 1.1 bouyer # ATA (IDE) bus support
227 1.1 bouyer atabus* at ata?
228 1.31.2.1 martin #options ATADEBUG
229 1.1 bouyer
230 1.1 bouyer # IDE drives
231 1.1 bouyer # Flags are used only with controllers that support DMA operations
232 1.1 bouyer # and mode settings (e.g. some pciide controllers)
233 1.1 bouyer # The lowest order four bits (rightmost digit) of the flags define the PIO
234 1.1 bouyer # mode to use, the next set of four bits the DMA mode and the third set the
235 1.1 bouyer # UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
236 1.1 bouyer # to use, and the last bit must be 1 for this setting to be used.
237 1.1 bouyer # For DMA and UDMA, 0xf (1111) means 'disable'.
238 1.1 bouyer # 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
239 1.1 bouyer # (0xc=1100, 0xa=1010, 0xf=1111)
240 1.1 bouyer # 0x0000 means "use whatever the drive claims to support".
241 1.1 bouyer wd* at atabus? drive ? flags 0x0000
242 1.1 bouyer
243 1.1 bouyer # ATAPI bus support
244 1.1 bouyer #atapibus* at atapi?
245 1.1 bouyer
246 1.1 bouyer # ATAPI devices
247 1.1 bouyer # flags have the same meaning as for IDE drives.
248 1.1 bouyer #cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives
249 1.1 bouyer #sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives
250 1.1 bouyer #st* at atapibus? drive ? flags 0x0000 # ATAPI tape drives
251 1.1 bouyer #uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown
252 1.1 bouyer
253 1.1 bouyer ral* at pci? dev ? function ? # RL2561S 802.11b/g
254 1.1 bouyer rtk* at pci? dev ? function ? # RTL8139 100/10 Ethernet
255 1.1 bouyer re* at pci? dev ? function ? # Realtek 8139C+/8169/8169S/8110S
256 1.1 bouyer # MII/PHY support
257 1.1 bouyer rgephy* at mii? phy ? # Realtek 8169S/8110S internal PHYs
258 1.1 bouyer rlphy* at mii? phy ? # Realtek 8139/8201L PHYs
259 1.1 bouyer ukphy* at mii? phy ? # generic unknown PHYs
260 1.1 bouyer
261 1.1 bouyer # USB Hubs
262 1.1 bouyer usb* at ehci?
263 1.1 bouyer usb* at ohci?
264 1.1 bouyer uhub* at usb?
265 1.1 bouyer uhub* at uhub? port ?
266 1.1 bouyer
267 1.1 bouyer # USB HID device
268 1.1 bouyer uhidev* at uhub? port ? configuration ? interface ?
269 1.1 bouyer
270 1.1 bouyer # USB Mice
271 1.1 bouyer ums* at uhidev? reportid ?
272 1.1 bouyer wsmouse* at ums? mux 0
273 1.1 bouyer
274 1.1 bouyer # USB Keyboards
275 1.1 bouyer ukbd* at uhidev? reportid ?
276 1.1 bouyer wskbd* at ukbd? console ? mux 1
277 1.6 macallan options GDIUM_KEYBOARD_HACK # support Fn key on Gdium
278 1.1 bouyer
279 1.1 bouyer # USB Generic HID devices
280 1.1 bouyer uhid* at uhidev? reportid ?
281 1.1 bouyer
282 1.1 bouyer # USB serial adapter
283 1.1 bouyer uftdi* at uhub? port ? configuration ?
284 1.1 bouyer
285 1.1 bouyer # USB Printer
286 1.1 bouyer ulpt* at uhub? port ? configuration ? interface ?
287 1.1 bouyer
288 1.1 bouyer # USB Modem
289 1.1 bouyer umodem* at uhub? port ? configuration ?
290 1.1 bouyer ucom* at umodem?
291 1.1 bouyer
292 1.1 bouyer # Option N.V. Wireless WAN modems
293 1.1 bouyer uhso* at uhub? port ? configuration ?
294 1.1 bouyer
295 1.1 bouyer # USB Mass Storage
296 1.1 bouyer umass* at uhub? port ? configuration ? interface ?
297 1.1 bouyer scsibus* at umass? channel ?
298 1.1 bouyer sd* at scsibus? target ? lun ? # SCSI disk drives
299 1.1 bouyer cd* at scsibus? target ? lun ? # SCSI CD-ROM drives
300 1.1 bouyer
301 1.1 bouyer # FTDI FT8U100AX serial adapter
302 1.1 bouyer uftdi* at uhub? port ?
303 1.1 bouyer ucom* at uftdi? portno ?
304 1.1 bouyer
305 1.1 bouyer uplcom* at uhub? port ? # I/O DATA USB-RSAQ2 serial adapter
306 1.1 bouyer ucom* at uplcom? portno ?
307 1.1 bouyer
308 1.1 bouyer umct* at uhub? port ? # MCT USB-RS232 serial adapter
309 1.1 bouyer ucom* at umct? portno ?
310 1.1 bouyer
311 1.10 christos # Realtek RTL8187/RTL8187B 802.11b/g USB wireless adapter
312 1.10 christos urtw* at uhub? port ?
313 1.10 christos
314 1.1 bouyer # USB Generic driver
315 1.1 bouyer ugen* at uhub? port ?
316 1.1 bouyer
317 1.1 bouyer #
318 1.1 bouyer # accept filters
319 1.1 bouyer pseudo-device accf_data # "dataready" accept filter
320 1.1 bouyer pseudo-device accf_http # "httpready" accept filter
321 1.1 bouyer
322 1.18 christos pseudo-device loop # network loopback
323 1.1 bouyer pseudo-device ppp # serial-line IP ports
324 1.1 bouyer pseudo-device pppoe # PPP over Ethernet (RFC 2516)
325 1.1 bouyer pseudo-device pty # pseudo-terminals
326 1.1 bouyer pseudo-device bpfilter # packet filter ports
327 1.1 bouyer #pseudo-device carp # Common Address Redundancy Protocol
328 1.1 bouyer pseudo-device ipfilter # IP filter, NAT
329 1.1 bouyer
330 1.1 bouyer pseudo-device vnd # virtual disk ick
331 1.1 bouyer #options VND_COMPRESSION # compressed vnd(4)
332 1.18 christos #pseudo-device ccd # concatenated disks
333 1.1 bouyer pseudo-device fss # file system snapshot device
334 1.18 christos #pseudo-device cgd # cryptographic disks
335 1.1 bouyer pseudo-device clockctl # user control of clock subsystem
336 1.1 bouyer
337 1.1 bouyer pseudo-device wsmux # mouse & keyboard multiplexor
338 1.9 nonaka pseudo-device wsfont
339 1.1 bouyer #pseudo-device md # memory disk device (ramdisk)
340 1.1 bouyer
341 1.19 christos #pseudo-device raid # RAIDframe disk driver
342 1.1 bouyer #options RAID_AUTOCONFIG # auto-configuration of RAID components
343 1.1 bouyer # Options to enable various other RAIDframe RAID types.
344 1.1 bouyer # options RF_INCLUDE_EVENODD=1
345 1.1 bouyer # options RF_INCLUDE_RAID5_RS=1
346 1.1 bouyer # options RF_INCLUDE_PARITYLOGGING=1
347 1.1 bouyer # options RF_INCLUDE_CHAINDECLUSTER=1
348 1.1 bouyer # options RF_INCLUDE_INTERDECLUSTER=1
349 1.1 bouyer # options RF_INCLUDE_PARITY_DECLUSTERING=1
350 1.1 bouyer # options RF_INCLUDE_PARITY_DECLUSTERING_DS=1
351 1.1 bouyer
352 1.1 bouyer # for IPv6
353 1.1 bouyer pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933)
354 1.1 bouyer #pseudo-device faith # IPv[46] tcp relay translation i/f
355 1.1 bouyer pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation
356 1.1 bouyer
357 1.1 bouyer ## IEEE 802.1Q Virtual LAN encapsulation, see vlan(4).
358 1.1 bouyer pseudo-device vlan
359 1.1 bouyer
360 1.1 bouyer ## Simple inter-network traffic bridging
361 1.1 bouyer pseudo-device bridge
362 1.1 bouyer #options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too
363 1.1 bouyer pseudo-device agr # IEEE 802.3ad link aggregation
364 1.1 bouyer pseudo-device ksyms # /dev/ksyms
365 1.26 jmcneill pseudo-device drvctl # driver control
366 1.1 bouyer #pseudo-device pf # PF packet filter
367 1.1 bouyer #pseudo-device pflog # PF log if
368 1.1 bouyer
369 1.1 bouyer # Veriexec
370 1.1 bouyer #
371 1.1 bouyer # a pseudo device needed for veriexec
372 1.19 christos #pseudo-device veriexec
373 1.1 bouyer #
374 1.1 bouyer # Uncomment the fingerprint methods below that are desired. Note that
375 1.1 bouyer # removing fingerprint methods will have almost no impact on the kernel
376 1.1 bouyer # code size.
377 1.1 bouyer #
378 1.1 bouyer #options VERIFIED_EXEC_FP_RMD160
379 1.1 bouyer #options VERIFIED_EXEC_FP_SHA256
380 1.1 bouyer #options VERIFIED_EXEC_FP_SHA384
381 1.1 bouyer #options VERIFIED_EXEC_FP_SHA512
382 1.1 bouyer #options VERIFIED_EXEC_FP_SHA1
383 1.1 bouyer #options VERIFIED_EXEC_FP_MD5
384