LOONGSON revision 1.19
11.19Schristos# $NetBSD: LOONGSON,v 1.19 2013/04/27 21:43:23 christos Exp $ 21.1Sbouyer# 31.1Sbouyer# LOONGSON machine description file 41.1Sbouyer# 51.1Sbouyer# This machine description file is used to generate the default NetBSD 61.1Sbouyer# kernel. The generic kernel does not include all options, subsystems 71.1Sbouyer# and device drivers, but should be useful for most applications. 81.1Sbouyer# 91.1Sbouyer# The machine description file can be customised for your specific 101.1Sbouyer# machine to reduce the kernel size and improve its performance. 111.1Sbouyer# 121.1Sbouyer# For further information on compiling NetBSD kernels, see the config(8) 131.1Sbouyer# man page. 141.1Sbouyer# 151.1Sbouyer# For further information on hardware support for this architecture, see 161.1Sbouyer# the intro(4) man page. For further information about kernel options 171.1Sbouyer# for this architecture, see the options(4) man page. For an explanation 181.1Sbouyer# of each device driver in this file see the section 4 man page for the 191.1Sbouyer# device. 201.1Sbouyer 211.1Sbouyerinclude "arch/evbmips/conf/std.loongson" 221.1Sbouyer 231.1Sbouyeroptions INCLUDE_CONFIG_FILE # embed config file in kernel binary 241.1Sbouyer 251.19Schristos#ident "LOONGSON-$Revision: 1.19 $" 261.1Sbouyer 271.1Sbouyermaxusers 16 281.1Sbouyer 291.1Sbouyer# Standard system options 301.1Sbouyeroptions DDB # in-kernel debugger 311.1Sbouyer#options DDB_ONPANIC=0 # don't enter debugger on panic 321.1Sbouyeroptions DDB_HISTORY_SIZE=512 # enable history editing in DDB 331.1Sbouyer#options KGDB # remote debugger 341.1Sbouyeroptions DIAGNOSTIC # extra kernel debugging checks 351.1Sbouyer#options DEBUG # extra kernel debugging support 361.1Sbouyer#options PMAP_FAULTINFO 371.1Sbouyer#options LOCKDEBUG 381.1Sbouyermakeoptions DEBUG="-g" 391.1Sbouyeroptions KTRACE # system call tracing support 401.1Sbouyeroptions MSGBUFSIZE=8192 # dmesg buffer size 411.1Sbouyer 421.1Sbouyer## UVM options. 431.1Sbouyer#options UVM_PAGE_TRKOWN 441.1Sbouyer#options UVMHIST 451.1Sbouyer#options UVMHIST_PRINT # Loud! 461.1Sbouyer 471.1Sbouyer#options SCSIVERBOSE # human readable SCSI error messages 481.1Sbouyer#options PCMCIAVERBOSE # verbose PCMCIA configuration messages 491.1Sbouyer#options PCMCIADEBUG 501.1Sbouyer#options PCMCIACISDEBUG 511.1Sbouyer 521.1Sbouyer#options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT 531.1Sbouyer#options RTC_OFFSET=-540 # JST-9 541.1Sbouyer#options RTC_OFFSET=480 # PST8 551.1Sbouyer # In NO RTC_OFFSET , inherit RTC_OFFSET 561.1Sbouyer # from Windows CE. 571.1Sbouyeroptions NTP # network time protocol 581.1Sbouyer 591.1Sbouyer#options WINCE_DEFAULT_SETTING # Debugging use 601.1Sbouyer 611.11Snonaka# Note: SysV IPC parameters can be changed dynamically; see sysctl(8). 621.11Snonakaoptions SYSVMSG # System V-like message queues 631.11Snonakaoptions SYSVSEM # System V-like semaphores 641.11Snonakaoptions SYSVSHM # System V-like memory sharing 651.11Snonaka 661.1Sbouyer#options SYSCALL_DEBUG # for debug 671.1Sbouyer#options HPCMIPS_L1CACHE_DISABLE # disable L1 cache for debug 681.1Sbouyeroptions USERCONF # userconf(4) support 691.1Sbouyer#options PIPE_SOCKETPAIR # smaller, but slower pipe(2) 701.1Sbouyeroptions SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel 711.1Sbouyer 721.15Smacallanoptions INSECURE # disable kernel security levels 731.15Smacallan 741.1Sbouyer# Filesystem options 751.1Sbouyerfile-system FFS # fast filesystem with user and group quotas 761.1Sbouyerfile-system MFS # memory-based filesystem 771.1Sbouyerfile-system NFS # Sun NFS-compatible filesystem (client) 781.1Sbouyerfile-system EXT2FS # second extended file system (linux) 791.1Sbouyer#file-system LFS # Log-based filesystem (still experimental) 801.1Sbouyerfile-system CD9660 # ISO 9660 + Rock Ridge file system 811.1Sbouyerfile-system MSDOSFS # MS-DOS file system 821.1Sbouyer#file-system FDESC # /dev/fd 831.1Sbouyerfile-system KERNFS # /kern (kernel informational filesystem) 841.9Snonakafile-system NULLFS # loopback file system 851.1Sbouyer#file-system OVERLAY # overlay file system 861.1Sbouyerfile-system PROCFS # /proc 871.1Sbouyer#file-system UMAPFS # NULLFS + uid and gid remapping 881.1Sbouyerfile-system UNION 891.1Sbouyerfile-system PTYFS # /dev/pts/N support 901.9Snonakafile-system TMPFS # Efficient memory file-system 911.1Sbouyer#file-system UDF # experimental - OSTA UDF CD/DVD file-system 921.1Sbouyer 931.1Sbouyeroptions NFSSERVER # Sun NFS-compatible filesystem (server) 941.8Sdhollandoptions WAPBL # File system journaling support 951.1Sbouyer#options UFS_DIRHASH # UFS Large Directory Hashing - Experimental 961.1Sbouyer#options QUOTA # legacy UFS quotas 971.1Sbouyer#options QUOTA2 # new, in-filesystem UFS quotas 981.1Sbouyer#options FFS_NO_SNAPSHOT # No FFS snapshot support 991.1Sbouyer 1001.1Sbouyer# Networking options 1011.1Sbouyer#options GATEWAY # IP packet forwarding 1021.1Sbouyeroptions INET # IP + ICMP + TCP + UDP 1031.1Sbouyeroptions INET6 # IPV6 1041.1Sbouyer#options IPSEC # IP security 1051.1Sbouyer#options IPSEC_NAT_T # IPsec NAT traversal (NAT-T) 1061.1Sbouyer#options IPSEC_DEBUG # debug for IP security 1071.1Sbouyer#options MROUTING # Multicast routing support 1081.1Sbouyer#options PIM # Protocol Independent Multicast 1091.1Sbouyeroptions PFIL_HOOKS # pfil(9) packet filter hooks 1101.1Sbouyeroptions IPFILTER_LOG # ipmon(8) log support 1111.1Sbouyeroptions IPFILTER_LOOKUP # ippool(8) support 1121.1Sbouyeroptions IPFILTER_COMPAT # Compat for IP-Filter 1131.1Sbouyer#options IPFILTER_DEFAULT_BLOCK # block all packets by default 1141.1Sbouyer 1151.1Sbouyer#options ALTQ # Manipulate network interfaces' output queues 1161.1Sbouyer#options ALTQ_BLUE # Stochastic Fair Blue 1171.1Sbouyer#options ALTQ_CBQ # Class-Based Queueing 1181.1Sbouyer#options ALTQ_CDNR # Diffserv Traffic Conditioner 1191.1Sbouyer#options ALTQ_FIFOQ # First-In First-Out Queue 1201.1Sbouyer#options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box) 1211.1Sbouyer#options ALTQ_HFSC # Hierarchical Fair Service Curve 1221.1Sbouyer#options ALTQ_LOCALQ # Local queueing discipline 1231.1Sbouyer#options ALTQ_PRIQ # Priority Queueing 1241.1Sbouyer#options ALTQ_RED # Random Early Detection 1251.1Sbouyer#options ALTQ_RIO # RED with IN/OUT 1261.1Sbouyer#options ALTQ_WFQ # Weighted Fair Queueing 1271.1Sbouyer 1281.1Sbouyer# NetBSD backwards compatibility 1291.1Sbouyeroptions COMPAT_43 1301.1Sbouyeroptions COMPAT_16 1311.1Sbouyeroptions COMPAT_20 1321.1Sbouyeroptions COMPAT_30 # NetBSD 3.0 compatibility. 1331.1Sbouyeroptions COMPAT_40 # NetBSD 4.0 compatibility. 1341.1Sbouyeroptions COMPAT_50 # NetBSD 5.0 compatibility. 1351.13Sapboptions COMPAT_60 # NetBSD 6.0 compatibility. 1361.1Sbouyeroptions COMPAT_BSDPTY # /dev/[pt]ty?? ptys. 1371.1Sbouyer 1381.1Sbouyer 1391.1Sbouyer#options NFS_BOOT_DHCP 1401.1Sbouyeroptions NFS_BOOT_BOOTP 1411.1Sbouyer#options NFS_BOOT_BOOTPARAM 1421.1Sbouyer 1431.1Sbouyer# compile options 1441.1Sbouyer#makeoptions DEFGP="-G 10" 1451.1Sbouyer 1461.1Sbouyerconfig netbsd root on ? type ? 1471.1Sbouyer 1481.1Sbouyer# WS console uses SUN or VT100 terminal emulation 1491.1Sbouyeroptions WSEMUL_VT100 1501.14Smacallanoptions WSDISPLAY_COMPAT_PCVT 1511.14Smacallanoptions WSDISPLAY_COMPAT_SYSCONS 1521.14Smacallanoptions WSDISPLAY_COMPAT_USL 1531.14Smacallanoptions WSDISPLAY_SCROLLSUPPORT 1541.4Smacallanoptions WS_KERNEL_FG=WSCOL_GREEN 1551.1Sbouyer#options WSDISPLAY_DEFAULTSCREENS=4 1561.1Sbouyeroptions FONT_GALLANT12x22 1571.1Sbouyer# compatibility to other console drivers 1581.1Sbouyeroptions WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes 1591.1Sbouyer# 1601.1Sbouyer# Hpckbd will set key board layout appropriately. You can use option 1611.1Sbouyer# 'PCKBD_LAYOUT' to overrite the default layout. 1621.1Sbouyer# 1631.1Sbouyer#options PCKBD_LAYOUT="(KB_US | KB_SWAPCTRLCAPS | KB_MACHDEP)" 1641.1Sbouyer 1651.1Sbouyermainbus0 at root 1661.1Sbouyercpu0 at mainbus0 1671.1Sbouyerbonito0 at mainbus0 1681.1Sbouyerpci0 at bonito0 1691.1Sbouyersisfb0 at pci0 dev ? function ? 1701.5Smacallanvoyager0 at pci0 dev ? function ? # SM502 on GDIUM 1711.5Smacallanvoyagerfb0 at voyager0 # framebuffer portion 1721.14Smacallanpwmclock0 at voyager0 # clock and CPU freq scaling 1731.3Smacallaniic* at voyager0 1741.9Snonakastrtc* at iic? addr 0x68 # GDIUM's real time clock 1751.9Snonakaoptions STRTC_NO_USERRAM 1761.9Snonakalmtemp* at iic? addr 0x48 # GDIUM's temperature sensor 1771.9Snonakastvii* at iic? addr 0x40 # GDIUM's onboard microcontroller 1781.9Snonakalynxfb0 at pci0 dev ? function ? # SM712 on Yeeloong Notebook 1791.1Sbouyer#genfb0 at pci0 dev ? function ? 1801.1Sbouyerwsdisplay* at wsemuldisplaydev? 1811.1Sbouyerehci* at pci0 dev ? function ? 1821.1Sbouyer#options EHCI_DEBUG 1831.1Sbouyerohci* at pci0 dev ? function ? 1841.1Sbouyer#options OHCI_DEBUG, USB_DEBUG, UHUB_DEBUG 1851.1Sbouyer 1861.9Snonakagcscpcib* at pci? dev ? function ? # AMD CS5535/CS5536 PCI-ISA w/ 1871.9Snonakagpio* at gcscpcib? # timecounter, watchdog and GPIO 1881.9Snonakaisa0 at gcscpcib? 1891.9Snonaka 1901.9Snonakapcib* at pci? 1911.9Snonakaisa0 at pcib? 1921.9Snonaka 1931.9Snonakapckbc0 at isa? # PC keyboard controller 1941.9Snonakapckbd* at pckbc? # PC keyboard 1951.9Snonakapms* at pckbc? # PS/2 mouse for wsmouse 1961.9Snonakaoptions PMS_SYNAPTICS_TOUCHPAD # Enable support for Synaptics Touchpads 1971.9Snonakaoptions PMS_ELANTECH_TOUCHPAD # Enable support for Elantech Touchpads 1981.9Snonakawskbd* at pckbd? console ? 1991.9Snonakawsmouse* at pms? mux 0 2001.1Sbouyer 2011.1Sbouyermcclock* at isa? port 0x70 # mc146818-compatible 2021.1Sbouyercom0 at isa? port 0x2f8 irq 3 # Fuloong 2F only 2031.1Sbouyercom1 at isa? port 0x3f8 irq 4 # Fuloong 2F only (IR port) 2041.1Sbouyer 2051.9Snonakagcscaudio* at pci? 2061.9Snonakaaudio* at audiobus? 2071.9Snonaka 2081.1Sbouyerpciide* at pci? dev ? function ? flags 0x0000 # GENERIC pciide driver 2091.1Sbouyerviaide* at pci? dev ? function ? # VIA/AMD/Nvidia IDE controllers 2101.2Sbouyeroptions WDC_NO_IDS #workaround CS5536+JMH330 interrupt disable bug 2111.1Sbouyer 2121.1Sbouyer# ATA (IDE) bus support 2131.1Sbouyeratabus* at ata? 2141.1Sbouyeroptions ATADEBUG 2151.1Sbouyer 2161.1Sbouyer# IDE drives 2171.1Sbouyer# Flags are used only with controllers that support DMA operations 2181.1Sbouyer# and mode settings (e.g. some pciide controllers) 2191.1Sbouyer# The lowest order four bits (rightmost digit) of the flags define the PIO 2201.1Sbouyer# mode to use, the next set of four bits the DMA mode and the third set the 2211.1Sbouyer# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode 2221.1Sbouyer# to use, and the last bit must be 1 for this setting to be used. 2231.1Sbouyer# For DMA and UDMA, 0xf (1111) means 'disable'. 2241.1Sbouyer# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'. 2251.1Sbouyer# (0xc=1100, 0xa=1010, 0xf=1111) 2261.1Sbouyer# 0x0000 means "use whatever the drive claims to support". 2271.1Sbouyerwd* at atabus? drive ? flags 0x0000 2281.1Sbouyer 2291.1Sbouyer# ATAPI bus support 2301.1Sbouyer#atapibus* at atapi? 2311.1Sbouyer 2321.1Sbouyer# ATAPI devices 2331.1Sbouyer# flags have the same meaning as for IDE drives. 2341.1Sbouyer#cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives 2351.1Sbouyer#sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives 2361.1Sbouyer#st* at atapibus? drive ? flags 0x0000 # ATAPI tape drives 2371.1Sbouyer#uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown 2381.1Sbouyer 2391.1Sbouyerral* at pci? dev ? function ? # RL2561S 802.11b/g 2401.1Sbouyerrtk* at pci? dev ? function ? # RTL8139 100/10 Ethernet 2411.1Sbouyerre* at pci? dev ? function ? # Realtek 8139C+/8169/8169S/8110S 2421.1Sbouyer# MII/PHY support 2431.1Sbouyerrgephy* at mii? phy ? # Realtek 8169S/8110S internal PHYs 2441.1Sbouyerrlphy* at mii? phy ? # Realtek 8139/8201L PHYs 2451.1Sbouyerukphy* at mii? phy ? # generic unknown PHYs 2461.1Sbouyer 2471.1Sbouyer# USB Hubs 2481.1Sbouyerusb* at ehci? 2491.1Sbouyerusb* at ohci? 2501.1Sbouyeruhub* at usb? 2511.1Sbouyeruhub* at uhub? port ? 2521.1Sbouyer 2531.1Sbouyer# USB HID device 2541.1Sbouyeruhidev* at uhub? port ? configuration ? interface ? 2551.1Sbouyer 2561.1Sbouyer# USB Mice 2571.1Sbouyerums* at uhidev? reportid ? 2581.1Sbouyerwsmouse* at ums? mux 0 2591.1Sbouyer 2601.1Sbouyer# USB Keyboards 2611.1Sbouyerukbd* at uhidev? reportid ? 2621.1Sbouyerwskbd* at ukbd? console ? mux 1 2631.6Smacallanoptions GDIUM_KEYBOARD_HACK # support Fn key on Gdium 2641.1Sbouyer 2651.1Sbouyer# USB Generic HID devices 2661.1Sbouyeruhid* at uhidev? reportid ? 2671.1Sbouyer 2681.1Sbouyer# USB serial adapter 2691.1Sbouyeruftdi* at uhub? port ? configuration ? 2701.1Sbouyer 2711.1Sbouyer# USB Printer 2721.1Sbouyerulpt* at uhub? port ? configuration ? interface ? 2731.1Sbouyer 2741.1Sbouyer# USB Modem 2751.1Sbouyerumodem* at uhub? port ? configuration ? 2761.1Sbouyerucom* at umodem? 2771.1Sbouyer 2781.1Sbouyer# Option N.V. Wireless WAN modems 2791.1Sbouyeruhso* at uhub? port ? configuration ? 2801.1Sbouyer 2811.1Sbouyer# USB Mass Storage 2821.1Sbouyerumass* at uhub? port ? configuration ? interface ? 2831.1Sbouyerscsibus* at umass? channel ? 2841.1Sbouyersd* at scsibus? target ? lun ? # SCSI disk drives 2851.1Sbouyercd* at scsibus? target ? lun ? # SCSI CD-ROM drives 2861.1Sbouyer 2871.1Sbouyer# FTDI FT8U100AX serial adapter 2881.1Sbouyeruftdi* at uhub? port ? 2891.1Sbouyerucom* at uftdi? portno ? 2901.1Sbouyer 2911.1Sbouyeruplcom* at uhub? port ? # I/O DATA USB-RSAQ2 serial adapter 2921.1Sbouyerucom* at uplcom? portno ? 2931.1Sbouyer 2941.1Sbouyerumct* at uhub? port ? # MCT USB-RS232 serial adapter 2951.1Sbouyerucom* at umct? portno ? 2961.1Sbouyer 2971.10Schristos# Realtek RTL8187/RTL8187B 802.11b/g USB wireless adapter 2981.10Schristosurtw* at uhub? port ? 2991.10Schristos 3001.1Sbouyer# USB Generic driver 3011.1Sbouyerugen* at uhub? port ? 3021.1Sbouyer 3031.1Sbouyer# 3041.1Sbouyer# accept filters 3051.1Sbouyerpseudo-device accf_data # "dataready" accept filter 3061.1Sbouyerpseudo-device accf_http # "httpready" accept filter 3071.1Sbouyer 3081.18Schristospseudo-device loop # network loopback 3091.1Sbouyerpseudo-device ppp # serial-line IP ports 3101.1Sbouyerpseudo-device pppoe # PPP over Ethernet (RFC 2516) 3111.1Sbouyerpseudo-device pty # pseudo-terminals 3121.1Sbouyerpseudo-device bpfilter # packet filter ports 3131.1Sbouyer#pseudo-device carp # Common Address Redundancy Protocol 3141.1Sbouyerpseudo-device ipfilter # IP filter, NAT 3151.1Sbouyer 3161.1Sbouyerpseudo-device vnd # virtual disk ick 3171.1Sbouyer#options VND_COMPRESSION # compressed vnd(4) 3181.18Schristos#pseudo-device ccd # concatenated disks 3191.1Sbouyerpseudo-device fss # file system snapshot device 3201.18Schristos#pseudo-device cgd # cryptographic disks 3211.1Sbouyerpseudo-device clockctl # user control of clock subsystem 3221.1Sbouyer 3231.1Sbouyerpseudo-device wsmux # mouse & keyboard multiplexor 3241.9Snonakapseudo-device wsfont 3251.1Sbouyer#pseudo-device md # memory disk device (ramdisk) 3261.1Sbouyer 3271.19Schristos#pseudo-device raid # RAIDframe disk driver 3281.1Sbouyer#options RAID_AUTOCONFIG # auto-configuration of RAID components 3291.1Sbouyer# Options to enable various other RAIDframe RAID types. 3301.1Sbouyer# options RF_INCLUDE_EVENODD=1 3311.1Sbouyer# options RF_INCLUDE_RAID5_RS=1 3321.1Sbouyer# options RF_INCLUDE_PARITYLOGGING=1 3331.1Sbouyer# options RF_INCLUDE_CHAINDECLUSTER=1 3341.1Sbouyer# options RF_INCLUDE_INTERDECLUSTER=1 3351.1Sbouyer# options RF_INCLUDE_PARITY_DECLUSTERING=1 3361.1Sbouyer# options RF_INCLUDE_PARITY_DECLUSTERING_DS=1 3371.1Sbouyer 3381.1Sbouyer# for IPv6 3391.1Sbouyerpseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933) 3401.1Sbouyer#pseudo-device faith # IPv[46] tcp relay translation i/f 3411.1Sbouyerpseudo-device stf # 6to4 IPv6 over IPv4 encapsulation 3421.1Sbouyer 3431.1Sbouyer## IEEE 802.1Q Virtual LAN encapsulation, see vlan(4). 3441.1Sbouyerpseudo-device vlan 3451.1Sbouyer 3461.1Sbouyer## Simple inter-network traffic bridging 3471.1Sbouyerpseudo-device bridge 3481.1Sbouyer#options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too 3491.1Sbouyerpseudo-device agr # IEEE 802.3ad link aggregation 3501.1Sbouyerpseudo-device ksyms # /dev/ksyms 3511.1Sbouyer#pseudo-device pf # PF packet filter 3521.1Sbouyer#pseudo-device pflog # PF log if 3531.1Sbouyer 3541.1Sbouyer# Veriexec 3551.1Sbouyer# 3561.1Sbouyer# a pseudo device needed for veriexec 3571.19Schristos#pseudo-device veriexec 3581.1Sbouyer# 3591.1Sbouyer# Uncomment the fingerprint methods below that are desired. Note that 3601.1Sbouyer# removing fingerprint methods will have almost no impact on the kernel 3611.1Sbouyer# code size. 3621.1Sbouyer# 3631.1Sbouyer#options VERIFIED_EXEC_FP_RMD160 3641.1Sbouyer#options VERIFIED_EXEC_FP_SHA256 3651.1Sbouyer#options VERIFIED_EXEC_FP_SHA384 3661.1Sbouyer#options VERIFIED_EXEC_FP_SHA512 3671.1Sbouyer#options VERIFIED_EXEC_FP_SHA1 3681.1Sbouyer#options VERIFIED_EXEC_FP_MD5 369