LOONGSON revision 1.19 1 1.19 christos # $NetBSD: LOONGSON,v 1.19 2013/04/27 21:43:23 christos 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.19 christos #ident "LOONGSON-$Revision: 1.19 $"
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.1 bouyer options KTRACE # system call tracing support
40 1.1 bouyer options MSGBUFSIZE=8192 # dmesg buffer size
41 1.1 bouyer
42 1.1 bouyer ## UVM options.
43 1.1 bouyer #options UVM_PAGE_TRKOWN
44 1.1 bouyer #options UVMHIST
45 1.1 bouyer #options UVMHIST_PRINT # Loud!
46 1.1 bouyer
47 1.1 bouyer #options SCSIVERBOSE # human readable SCSI error messages
48 1.1 bouyer #options PCMCIAVERBOSE # verbose PCMCIA configuration messages
49 1.1 bouyer #options PCMCIADEBUG
50 1.1 bouyer #options PCMCIACISDEBUG
51 1.1 bouyer
52 1.1 bouyer #options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT
53 1.1 bouyer #options RTC_OFFSET=-540 # JST-9
54 1.1 bouyer #options RTC_OFFSET=480 # PST8
55 1.1 bouyer # In NO RTC_OFFSET , inherit RTC_OFFSET
56 1.1 bouyer # from Windows CE.
57 1.1 bouyer options NTP # network time protocol
58 1.1 bouyer
59 1.1 bouyer #options WINCE_DEFAULT_SETTING # Debugging use
60 1.1 bouyer
61 1.11 nonaka # Note: SysV IPC parameters can be changed dynamically; see sysctl(8).
62 1.11 nonaka options SYSVMSG # System V-like message queues
63 1.11 nonaka options SYSVSEM # System V-like semaphores
64 1.11 nonaka options SYSVSHM # System V-like memory sharing
65 1.11 nonaka
66 1.1 bouyer #options SYSCALL_DEBUG # for debug
67 1.1 bouyer #options HPCMIPS_L1CACHE_DISABLE # disable L1 cache for debug
68 1.1 bouyer options USERCONF # userconf(4) support
69 1.1 bouyer #options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
70 1.1 bouyer options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel
71 1.1 bouyer
72 1.15 macallan options INSECURE # disable kernel security levels
73 1.15 macallan
74 1.1 bouyer # Filesystem options
75 1.1 bouyer file-system FFS # fast filesystem with user and group quotas
76 1.1 bouyer file-system MFS # memory-based filesystem
77 1.1 bouyer file-system NFS # Sun NFS-compatible filesystem (client)
78 1.1 bouyer file-system EXT2FS # second extended file system (linux)
79 1.1 bouyer #file-system LFS # Log-based filesystem (still experimental)
80 1.1 bouyer file-system CD9660 # ISO 9660 + Rock Ridge file system
81 1.1 bouyer file-system MSDOSFS # MS-DOS file system
82 1.1 bouyer #file-system FDESC # /dev/fd
83 1.1 bouyer file-system KERNFS # /kern (kernel informational filesystem)
84 1.9 nonaka file-system NULLFS # loopback file system
85 1.1 bouyer #file-system OVERLAY # overlay file system
86 1.1 bouyer file-system PROCFS # /proc
87 1.1 bouyer #file-system UMAPFS # NULLFS + uid and gid remapping
88 1.1 bouyer file-system UNION
89 1.1 bouyer file-system PTYFS # /dev/pts/N support
90 1.9 nonaka file-system TMPFS # Efficient memory file-system
91 1.1 bouyer #file-system UDF # experimental - OSTA UDF CD/DVD file-system
92 1.1 bouyer
93 1.1 bouyer options NFSSERVER # Sun NFS-compatible filesystem (server)
94 1.8 dholland options WAPBL # File system journaling support
95 1.1 bouyer #options UFS_DIRHASH # UFS Large Directory Hashing - Experimental
96 1.1 bouyer #options QUOTA # legacy UFS quotas
97 1.1 bouyer #options QUOTA2 # new, in-filesystem UFS quotas
98 1.1 bouyer #options FFS_NO_SNAPSHOT # No FFS snapshot support
99 1.1 bouyer
100 1.1 bouyer # Networking options
101 1.1 bouyer #options GATEWAY # IP packet forwarding
102 1.1 bouyer options INET # IP + ICMP + TCP + UDP
103 1.1 bouyer options INET6 # IPV6
104 1.1 bouyer #options IPSEC # IP security
105 1.1 bouyer #options IPSEC_NAT_T # IPsec NAT traversal (NAT-T)
106 1.1 bouyer #options IPSEC_DEBUG # debug for IP security
107 1.1 bouyer #options MROUTING # Multicast routing support
108 1.1 bouyer #options PIM # Protocol Independent Multicast
109 1.1 bouyer options PFIL_HOOKS # pfil(9) packet filter hooks
110 1.1 bouyer options IPFILTER_LOG # ipmon(8) log support
111 1.1 bouyer options IPFILTER_LOOKUP # ippool(8) support
112 1.1 bouyer options IPFILTER_COMPAT # Compat for IP-Filter
113 1.1 bouyer #options IPFILTER_DEFAULT_BLOCK # block all packets by default
114 1.1 bouyer
115 1.1 bouyer #options ALTQ # Manipulate network interfaces' output queues
116 1.1 bouyer #options ALTQ_BLUE # Stochastic Fair Blue
117 1.1 bouyer #options ALTQ_CBQ # Class-Based Queueing
118 1.1 bouyer #options ALTQ_CDNR # Diffserv Traffic Conditioner
119 1.1 bouyer #options ALTQ_FIFOQ # First-In First-Out Queue
120 1.1 bouyer #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box)
121 1.1 bouyer #options ALTQ_HFSC # Hierarchical Fair Service Curve
122 1.1 bouyer #options ALTQ_LOCALQ # Local queueing discipline
123 1.1 bouyer #options ALTQ_PRIQ # Priority Queueing
124 1.1 bouyer #options ALTQ_RED # Random Early Detection
125 1.1 bouyer #options ALTQ_RIO # RED with IN/OUT
126 1.1 bouyer #options ALTQ_WFQ # Weighted Fair Queueing
127 1.1 bouyer
128 1.1 bouyer # NetBSD backwards compatibility
129 1.1 bouyer options COMPAT_43
130 1.1 bouyer options COMPAT_16
131 1.1 bouyer options COMPAT_20
132 1.1 bouyer options COMPAT_30 # NetBSD 3.0 compatibility.
133 1.1 bouyer options COMPAT_40 # NetBSD 4.0 compatibility.
134 1.1 bouyer options COMPAT_50 # NetBSD 5.0 compatibility.
135 1.13 apb options COMPAT_60 # NetBSD 6.0 compatibility.
136 1.1 bouyer options COMPAT_BSDPTY # /dev/[pt]ty?? ptys.
137 1.1 bouyer
138 1.1 bouyer
139 1.1 bouyer #options NFS_BOOT_DHCP
140 1.1 bouyer options NFS_BOOT_BOOTP
141 1.1 bouyer #options NFS_BOOT_BOOTPARAM
142 1.1 bouyer
143 1.1 bouyer # compile options
144 1.1 bouyer #makeoptions DEFGP="-G 10"
145 1.1 bouyer
146 1.1 bouyer config netbsd root on ? type ?
147 1.1 bouyer
148 1.1 bouyer # WS console uses SUN or VT100 terminal emulation
149 1.1 bouyer options WSEMUL_VT100
150 1.14 macallan options WSDISPLAY_COMPAT_PCVT
151 1.14 macallan options WSDISPLAY_COMPAT_SYSCONS
152 1.14 macallan options WSDISPLAY_COMPAT_USL
153 1.14 macallan options WSDISPLAY_SCROLLSUPPORT
154 1.4 macallan options WS_KERNEL_FG=WSCOL_GREEN
155 1.1 bouyer #options WSDISPLAY_DEFAULTSCREENS=4
156 1.1 bouyer options FONT_GALLANT12x22
157 1.1 bouyer # compatibility to other console drivers
158 1.1 bouyer options WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes
159 1.1 bouyer #
160 1.1 bouyer # Hpckbd will set key board layout appropriately. You can use option
161 1.1 bouyer # 'PCKBD_LAYOUT' to overrite the default layout.
162 1.1 bouyer #
163 1.1 bouyer #options PCKBD_LAYOUT="(KB_US | KB_SWAPCTRLCAPS | KB_MACHDEP)"
164 1.1 bouyer
165 1.1 bouyer mainbus0 at root
166 1.1 bouyer cpu0 at mainbus0
167 1.1 bouyer bonito0 at mainbus0
168 1.1 bouyer pci0 at bonito0
169 1.1 bouyer sisfb0 at pci0 dev ? function ?
170 1.5 macallan voyager0 at pci0 dev ? function ? # SM502 on GDIUM
171 1.5 macallan voyagerfb0 at voyager0 # framebuffer portion
172 1.14 macallan pwmclock0 at voyager0 # clock and CPU freq scaling
173 1.3 macallan iic* at voyager0
174 1.9 nonaka strtc* at iic? addr 0x68 # GDIUM's real time clock
175 1.9 nonaka options STRTC_NO_USERRAM
176 1.9 nonaka lmtemp* at iic? addr 0x48 # GDIUM's temperature sensor
177 1.9 nonaka stvii* at iic? addr 0x40 # GDIUM's onboard microcontroller
178 1.9 nonaka lynxfb0 at pci0 dev ? function ? # SM712 on Yeeloong Notebook
179 1.1 bouyer #genfb0 at pci0 dev ? function ?
180 1.1 bouyer wsdisplay* at wsemuldisplaydev?
181 1.1 bouyer ehci* at pci0 dev ? function ?
182 1.1 bouyer #options EHCI_DEBUG
183 1.1 bouyer ohci* at pci0 dev ? function ?
184 1.1 bouyer #options OHCI_DEBUG, USB_DEBUG, UHUB_DEBUG
185 1.1 bouyer
186 1.9 nonaka gcscpcib* at pci? dev ? function ? # AMD CS5535/CS5536 PCI-ISA w/
187 1.9 nonaka gpio* at gcscpcib? # timecounter, watchdog and GPIO
188 1.9 nonaka isa0 at gcscpcib?
189 1.9 nonaka
190 1.9 nonaka pcib* at pci?
191 1.9 nonaka isa0 at pcib?
192 1.9 nonaka
193 1.9 nonaka pckbc0 at isa? # PC keyboard controller
194 1.9 nonaka pckbd* at pckbc? # PC keyboard
195 1.9 nonaka pms* at pckbc? # PS/2 mouse for wsmouse
196 1.9 nonaka options PMS_SYNAPTICS_TOUCHPAD # Enable support for Synaptics Touchpads
197 1.9 nonaka options PMS_ELANTECH_TOUCHPAD # Enable support for Elantech Touchpads
198 1.9 nonaka wskbd* at pckbd? console ?
199 1.9 nonaka wsmouse* at pms? mux 0
200 1.1 bouyer
201 1.1 bouyer mcclock* at isa? port 0x70 # mc146818-compatible
202 1.1 bouyer com0 at isa? port 0x2f8 irq 3 # Fuloong 2F only
203 1.1 bouyer com1 at isa? port 0x3f8 irq 4 # Fuloong 2F only (IR port)
204 1.1 bouyer
205 1.9 nonaka gcscaudio* at pci?
206 1.9 nonaka audio* at audiobus?
207 1.9 nonaka
208 1.1 bouyer pciide* at pci? dev ? function ? flags 0x0000 # GENERIC pciide driver
209 1.1 bouyer viaide* at pci? dev ? function ? # VIA/AMD/Nvidia IDE controllers
210 1.2 bouyer options WDC_NO_IDS #workaround CS5536+JMH330 interrupt disable bug
211 1.1 bouyer
212 1.1 bouyer # ATA (IDE) bus support
213 1.1 bouyer atabus* at ata?
214 1.1 bouyer options ATADEBUG
215 1.1 bouyer
216 1.1 bouyer # IDE drives
217 1.1 bouyer # Flags are used only with controllers that support DMA operations
218 1.1 bouyer # and mode settings (e.g. some pciide controllers)
219 1.1 bouyer # The lowest order four bits (rightmost digit) of the flags define the PIO
220 1.1 bouyer # mode to use, the next set of four bits the DMA mode and the third set the
221 1.1 bouyer # UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
222 1.1 bouyer # to use, and the last bit must be 1 for this setting to be used.
223 1.1 bouyer # For DMA and UDMA, 0xf (1111) means 'disable'.
224 1.1 bouyer # 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
225 1.1 bouyer # (0xc=1100, 0xa=1010, 0xf=1111)
226 1.1 bouyer # 0x0000 means "use whatever the drive claims to support".
227 1.1 bouyer wd* at atabus? drive ? flags 0x0000
228 1.1 bouyer
229 1.1 bouyer # ATAPI bus support
230 1.1 bouyer #atapibus* at atapi?
231 1.1 bouyer
232 1.1 bouyer # ATAPI devices
233 1.1 bouyer # flags have the same meaning as for IDE drives.
234 1.1 bouyer #cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives
235 1.1 bouyer #sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives
236 1.1 bouyer #st* at atapibus? drive ? flags 0x0000 # ATAPI tape drives
237 1.1 bouyer #uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown
238 1.1 bouyer
239 1.1 bouyer ral* at pci? dev ? function ? # RL2561S 802.11b/g
240 1.1 bouyer rtk* at pci? dev ? function ? # RTL8139 100/10 Ethernet
241 1.1 bouyer re* at pci? dev ? function ? # Realtek 8139C+/8169/8169S/8110S
242 1.1 bouyer # MII/PHY support
243 1.1 bouyer rgephy* at mii? phy ? # Realtek 8169S/8110S internal PHYs
244 1.1 bouyer rlphy* at mii? phy ? # Realtek 8139/8201L PHYs
245 1.1 bouyer ukphy* at mii? phy ? # generic unknown PHYs
246 1.1 bouyer
247 1.1 bouyer # USB Hubs
248 1.1 bouyer usb* at ehci?
249 1.1 bouyer usb* at ohci?
250 1.1 bouyer uhub* at usb?
251 1.1 bouyer uhub* at uhub? port ?
252 1.1 bouyer
253 1.1 bouyer # USB HID device
254 1.1 bouyer uhidev* at uhub? port ? configuration ? interface ?
255 1.1 bouyer
256 1.1 bouyer # USB Mice
257 1.1 bouyer ums* at uhidev? reportid ?
258 1.1 bouyer wsmouse* at ums? mux 0
259 1.1 bouyer
260 1.1 bouyer # USB Keyboards
261 1.1 bouyer ukbd* at uhidev? reportid ?
262 1.1 bouyer wskbd* at ukbd? console ? mux 1
263 1.6 macallan options GDIUM_KEYBOARD_HACK # support Fn key on Gdium
264 1.1 bouyer
265 1.1 bouyer # USB Generic HID devices
266 1.1 bouyer uhid* at uhidev? reportid ?
267 1.1 bouyer
268 1.1 bouyer # USB serial adapter
269 1.1 bouyer uftdi* at uhub? port ? configuration ?
270 1.1 bouyer
271 1.1 bouyer # USB Printer
272 1.1 bouyer ulpt* at uhub? port ? configuration ? interface ?
273 1.1 bouyer
274 1.1 bouyer # USB Modem
275 1.1 bouyer umodem* at uhub? port ? configuration ?
276 1.1 bouyer ucom* at umodem?
277 1.1 bouyer
278 1.1 bouyer # Option N.V. Wireless WAN modems
279 1.1 bouyer uhso* at uhub? port ? configuration ?
280 1.1 bouyer
281 1.1 bouyer # USB Mass Storage
282 1.1 bouyer umass* at uhub? port ? configuration ? interface ?
283 1.1 bouyer scsibus* at umass? channel ?
284 1.1 bouyer sd* at scsibus? target ? lun ? # SCSI disk drives
285 1.1 bouyer cd* at scsibus? target ? lun ? # SCSI CD-ROM drives
286 1.1 bouyer
287 1.1 bouyer # FTDI FT8U100AX serial adapter
288 1.1 bouyer uftdi* at uhub? port ?
289 1.1 bouyer ucom* at uftdi? portno ?
290 1.1 bouyer
291 1.1 bouyer uplcom* at uhub? port ? # I/O DATA USB-RSAQ2 serial adapter
292 1.1 bouyer ucom* at uplcom? portno ?
293 1.1 bouyer
294 1.1 bouyer umct* at uhub? port ? # MCT USB-RS232 serial adapter
295 1.1 bouyer ucom* at umct? portno ?
296 1.1 bouyer
297 1.10 christos # Realtek RTL8187/RTL8187B 802.11b/g USB wireless adapter
298 1.10 christos urtw* at uhub? port ?
299 1.10 christos
300 1.1 bouyer # USB Generic driver
301 1.1 bouyer ugen* at uhub? port ?
302 1.1 bouyer
303 1.1 bouyer #
304 1.1 bouyer # accept filters
305 1.1 bouyer pseudo-device accf_data # "dataready" accept filter
306 1.1 bouyer pseudo-device accf_http # "httpready" accept filter
307 1.1 bouyer
308 1.18 christos pseudo-device loop # network loopback
309 1.1 bouyer pseudo-device ppp # serial-line IP ports
310 1.1 bouyer pseudo-device pppoe # PPP over Ethernet (RFC 2516)
311 1.1 bouyer pseudo-device pty # pseudo-terminals
312 1.1 bouyer pseudo-device bpfilter # packet filter ports
313 1.1 bouyer #pseudo-device carp # Common Address Redundancy Protocol
314 1.1 bouyer pseudo-device ipfilter # IP filter, NAT
315 1.1 bouyer
316 1.1 bouyer pseudo-device vnd # virtual disk ick
317 1.1 bouyer #options VND_COMPRESSION # compressed vnd(4)
318 1.18 christos #pseudo-device ccd # concatenated disks
319 1.1 bouyer pseudo-device fss # file system snapshot device
320 1.18 christos #pseudo-device cgd # cryptographic disks
321 1.1 bouyer pseudo-device clockctl # user control of clock subsystem
322 1.1 bouyer
323 1.1 bouyer pseudo-device wsmux # mouse & keyboard multiplexor
324 1.9 nonaka pseudo-device wsfont
325 1.1 bouyer #pseudo-device md # memory disk device (ramdisk)
326 1.1 bouyer
327 1.19 christos #pseudo-device raid # RAIDframe disk driver
328 1.1 bouyer #options RAID_AUTOCONFIG # auto-configuration of RAID components
329 1.1 bouyer # Options to enable various other RAIDframe RAID types.
330 1.1 bouyer # options RF_INCLUDE_EVENODD=1
331 1.1 bouyer # options RF_INCLUDE_RAID5_RS=1
332 1.1 bouyer # options RF_INCLUDE_PARITYLOGGING=1
333 1.1 bouyer # options RF_INCLUDE_CHAINDECLUSTER=1
334 1.1 bouyer # options RF_INCLUDE_INTERDECLUSTER=1
335 1.1 bouyer # options RF_INCLUDE_PARITY_DECLUSTERING=1
336 1.1 bouyer # options RF_INCLUDE_PARITY_DECLUSTERING_DS=1
337 1.1 bouyer
338 1.1 bouyer # for IPv6
339 1.1 bouyer pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933)
340 1.1 bouyer #pseudo-device faith # IPv[46] tcp relay translation i/f
341 1.1 bouyer pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation
342 1.1 bouyer
343 1.1 bouyer ## IEEE 802.1Q Virtual LAN encapsulation, see vlan(4).
344 1.1 bouyer pseudo-device vlan
345 1.1 bouyer
346 1.1 bouyer ## Simple inter-network traffic bridging
347 1.1 bouyer pseudo-device bridge
348 1.1 bouyer #options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too
349 1.1 bouyer pseudo-device agr # IEEE 802.3ad link aggregation
350 1.1 bouyer pseudo-device ksyms # /dev/ksyms
351 1.1 bouyer #pseudo-device pf # PF packet filter
352 1.1 bouyer #pseudo-device pflog # PF log if
353 1.1 bouyer
354 1.1 bouyer # Veriexec
355 1.1 bouyer #
356 1.1 bouyer # a pseudo device needed for veriexec
357 1.19 christos #pseudo-device veriexec
358 1.1 bouyer #
359 1.1 bouyer # Uncomment the fingerprint methods below that are desired. Note that
360 1.1 bouyer # removing fingerprint methods will have almost no impact on the kernel
361 1.1 bouyer # code size.
362 1.1 bouyer #
363 1.1 bouyer #options VERIFIED_EXEC_FP_RMD160
364 1.1 bouyer #options VERIFIED_EXEC_FP_SHA256
365 1.1 bouyer #options VERIFIED_EXEC_FP_SHA384
366 1.1 bouyer #options VERIFIED_EXEC_FP_SHA512
367 1.1 bouyer #options VERIFIED_EXEC_FP_SHA1
368 1.1 bouyer #options VERIFIED_EXEC_FP_MD5
369