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