LOONGSON revision 1.30
11.30Srin# $NetBSD: LOONGSON,v 1.30 2017/02/19 07:47:00 rin 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.30Srin#ident "LOONGSON-$Revision: 1.30 $" 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.30Srin#options DISKLABEL_EI # disklabel Endian Independent support 991.30Srin#options FFS_EI # FFS Endian Independent support 1001.1Sbouyer#options FFS_NO_SNAPSHOT # No FFS snapshot support 1011.1Sbouyer 1021.1Sbouyer# Networking options 1031.1Sbouyer#options GATEWAY # IP packet forwarding 1041.1Sbouyeroptions INET # IP + ICMP + TCP + UDP 1051.1Sbouyeroptions INET6 # IPV6 1061.1Sbouyer#options IPSEC # IP security 1071.1Sbouyer#options IPSEC_DEBUG # debug for IP security 1081.1Sbouyer#options MROUTING # Multicast routing support 1091.1Sbouyer#options PIM # Protocol Independent Multicast 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.23Salnsn# JIT compiler for bpfilter 1291.23Salnsn#options SLJIT 1301.23Salnsn#options BPFJIT 1311.23Salnsn 1321.1Sbouyer# NetBSD backwards compatibility 1331.25Sdhollandoptions COMPAT_43 # 4.3BSD binary compatibility. 1341.25Sdhollandoptions COMPAT_16 # NetBSD 1.6, 1351.25Sdhollandoptions COMPAT_20 # NetBSD 2.0, 1361.25Sdhollandoptions COMPAT_30 # NetBSD 3.0, 1371.25Sdhollandoptions COMPAT_40 # NetBSD 4.0, 1381.25Sdhollandoptions COMPAT_50 # NetBSD 5.0, 1391.25Sdhollandoptions COMPAT_60 # NetBSD 6.0, and 1401.25Sdhollandoptions COMPAT_70 # NetBSD 7.0 binary compatibility. 1411.1Sbouyeroptions COMPAT_BSDPTY # /dev/[pt]ty?? ptys. 1421.1Sbouyer 1431.1Sbouyer 1441.1Sbouyer#options NFS_BOOT_DHCP 1451.1Sbouyeroptions NFS_BOOT_BOOTP 1461.1Sbouyer#options NFS_BOOT_BOOTPARAM 1471.1Sbouyer 1481.1Sbouyer# compile options 1491.1Sbouyer#makeoptions DEFGP="-G 10" 1501.1Sbouyer 1511.1Sbouyerconfig netbsd root on ? type ? 1521.1Sbouyer 1531.1Sbouyer# WS console uses SUN or VT100 terminal emulation 1541.1Sbouyeroptions WSEMUL_VT100 1551.14Smacallanoptions WSDISPLAY_COMPAT_PCVT 1561.14Smacallanoptions WSDISPLAY_COMPAT_SYSCONS 1571.14Smacallanoptions WSDISPLAY_COMPAT_USL 1581.14Smacallanoptions WSDISPLAY_SCROLLSUPPORT 1591.4Smacallanoptions WS_KERNEL_FG=WSCOL_GREEN 1601.1Sbouyer#options WSDISPLAY_DEFAULTSCREENS=4 1611.1Sbouyeroptions FONT_GALLANT12x22 1621.22Sbouyeroptions FONT_BOLD8x16 1631.1Sbouyer# compatibility to other console drivers 1641.1Sbouyeroptions WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes 1651.1Sbouyer# 1661.1Sbouyer# Hpckbd will set key board layout appropriately. You can use option 1671.1Sbouyer# 'PCKBD_LAYOUT' to overrite the default layout. 1681.1Sbouyer# 1691.1Sbouyer#options PCKBD_LAYOUT="(KB_US | KB_SWAPCTRLCAPS | KB_MACHDEP)" 1701.1Sbouyer 1711.1Sbouyermainbus0 at root 1721.1Sbouyercpu0 at mainbus0 1731.1Sbouyerbonito0 at mainbus0 1741.1Sbouyerpci0 at bonito0 1751.1Sbouyersisfb0 at pci0 dev ? function ? 1761.5Smacallanvoyager0 at pci0 dev ? function ? # SM502 on GDIUM 1771.5Smacallanvoyagerfb0 at voyager0 # framebuffer portion 1781.14Smacallanpwmclock0 at voyager0 # clock and CPU freq scaling 1791.3Smacallaniic* at voyager0 1801.9Snonakastrtc* at iic? addr 0x68 # GDIUM's real time clock 1811.9Snonakaoptions STRTC_NO_USERRAM 1821.9Snonakalmtemp* at iic? addr 0x48 # GDIUM's temperature sensor 1831.9Snonakastvii* at iic? addr 0x40 # GDIUM's onboard microcontroller 1841.9Snonakalynxfb0 at pci0 dev ? function ? # SM712 on Yeeloong Notebook 1851.1Sbouyer#genfb0 at pci0 dev ? function ? 1861.1Sbouyerwsdisplay* at wsemuldisplaydev? 1871.1Sbouyerehci* at pci0 dev ? function ? 1881.1Sbouyer#options EHCI_DEBUG 1891.1Sbouyerohci* at pci0 dev ? function ? 1901.1Sbouyer#options OHCI_DEBUG, USB_DEBUG, UHUB_DEBUG 1911.1Sbouyer 1921.9Snonakagcscpcib* at pci? dev ? function ? # AMD CS5535/CS5536 PCI-ISA w/ 1931.9Snonakagpio* at gcscpcib? # timecounter, watchdog and GPIO 1941.9Snonakaisa0 at gcscpcib? 1951.9Snonaka 1961.9Snonakapcib* at pci? 1971.9Snonakaisa0 at pcib? 1981.9Snonaka 1991.9Snonakapckbc0 at isa? # PC keyboard controller 2001.9Snonakapckbd* at pckbc? # PC keyboard 2011.9Snonakapms* at pckbc? # PS/2 mouse for wsmouse 2021.9Snonakaoptions PMS_SYNAPTICS_TOUCHPAD # Enable support for Synaptics Touchpads 2031.9Snonakaoptions PMS_ELANTECH_TOUCHPAD # Enable support for Elantech Touchpads 2041.9Snonakawskbd* at pckbd? console ? 2051.9Snonakawsmouse* at pms? mux 0 2061.1Sbouyer 2071.1Sbouyermcclock* at isa? port 0x70 # mc146818-compatible 2081.1Sbouyercom0 at isa? port 0x2f8 irq 3 # Fuloong 2F only 2091.1Sbouyercom1 at isa? port 0x3f8 irq 4 # Fuloong 2F only (IR port) 2101.1Sbouyer 2111.9Snonakagcscaudio* at pci? 2121.9Snonakaaudio* at audiobus? 2131.9Snonaka 2141.29Schristosspkr* at audio? # PC speaker (synthesized) 2151.27Snat 2161.1Sbouyerpciide* at pci? dev ? function ? flags 0x0000 # GENERIC pciide driver 2171.1Sbouyerviaide* at pci? dev ? function ? # VIA/AMD/Nvidia IDE controllers 2181.2Sbouyeroptions WDC_NO_IDS #workaround CS5536+JMH330 interrupt disable bug 2191.1Sbouyer 2201.1Sbouyer# ATA (IDE) bus support 2211.1Sbouyeratabus* at ata? 2221.1Sbouyeroptions ATADEBUG 2231.1Sbouyer 2241.1Sbouyer# IDE drives 2251.1Sbouyer# Flags are used only with controllers that support DMA operations 2261.1Sbouyer# and mode settings (e.g. some pciide controllers) 2271.1Sbouyer# The lowest order four bits (rightmost digit) of the flags define the PIO 2281.1Sbouyer# mode to use, the next set of four bits the DMA mode and the third set the 2291.1Sbouyer# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode 2301.1Sbouyer# to use, and the last bit must be 1 for this setting to be used. 2311.1Sbouyer# For DMA and UDMA, 0xf (1111) means 'disable'. 2321.1Sbouyer# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'. 2331.1Sbouyer# (0xc=1100, 0xa=1010, 0xf=1111) 2341.1Sbouyer# 0x0000 means "use whatever the drive claims to support". 2351.1Sbouyerwd* at atabus? drive ? flags 0x0000 2361.1Sbouyer 2371.1Sbouyer# ATAPI bus support 2381.1Sbouyer#atapibus* at atapi? 2391.1Sbouyer 2401.1Sbouyer# ATAPI devices 2411.1Sbouyer# flags have the same meaning as for IDE drives. 2421.1Sbouyer#cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives 2431.1Sbouyer#sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives 2441.1Sbouyer#st* at atapibus? drive ? flags 0x0000 # ATAPI tape drives 2451.1Sbouyer#uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown 2461.1Sbouyer 2471.1Sbouyerral* at pci? dev ? function ? # RL2561S 802.11b/g 2481.1Sbouyerrtk* at pci? dev ? function ? # RTL8139 100/10 Ethernet 2491.1Sbouyerre* at pci? dev ? function ? # Realtek 8139C+/8169/8169S/8110S 2501.1Sbouyer# MII/PHY support 2511.1Sbouyerrgephy* at mii? phy ? # Realtek 8169S/8110S internal PHYs 2521.1Sbouyerrlphy* at mii? phy ? # Realtek 8139/8201L PHYs 2531.1Sbouyerukphy* at mii? phy ? # generic unknown PHYs 2541.1Sbouyer 2551.1Sbouyer# USB Hubs 2561.1Sbouyerusb* at ehci? 2571.1Sbouyerusb* at ohci? 2581.1Sbouyeruhub* at usb? 2591.1Sbouyeruhub* at uhub? port ? 2601.1Sbouyer 2611.1Sbouyer# USB HID device 2621.1Sbouyeruhidev* at uhub? port ? configuration ? interface ? 2631.1Sbouyer 2641.1Sbouyer# USB Mice 2651.1Sbouyerums* at uhidev? reportid ? 2661.1Sbouyerwsmouse* at ums? mux 0 2671.1Sbouyer 2681.1Sbouyer# USB Keyboards 2691.1Sbouyerukbd* at uhidev? reportid ? 2701.1Sbouyerwskbd* at ukbd? console ? mux 1 2711.6Smacallanoptions GDIUM_KEYBOARD_HACK # support Fn key on Gdium 2721.1Sbouyer 2731.1Sbouyer# USB Generic HID devices 2741.1Sbouyeruhid* at uhidev? reportid ? 2751.1Sbouyer 2761.1Sbouyer# USB serial adapter 2771.1Sbouyeruftdi* at uhub? port ? configuration ? 2781.1Sbouyer 2791.1Sbouyer# USB Printer 2801.1Sbouyerulpt* at uhub? port ? configuration ? interface ? 2811.1Sbouyer 2821.1Sbouyer# USB Modem 2831.1Sbouyerumodem* at uhub? port ? configuration ? 2841.1Sbouyerucom* at umodem? 2851.1Sbouyer 2861.1Sbouyer# Option N.V. Wireless WAN modems 2871.1Sbouyeruhso* at uhub? port ? configuration ? 2881.1Sbouyer 2891.1Sbouyer# USB Mass Storage 2901.1Sbouyerumass* at uhub? port ? configuration ? interface ? 2911.1Sbouyerscsibus* at umass? channel ? 2921.1Sbouyersd* at scsibus? target ? lun ? # SCSI disk drives 2931.1Sbouyercd* at scsibus? target ? lun ? # SCSI CD-ROM drives 2941.1Sbouyer 2951.1Sbouyer# FTDI FT8U100AX serial adapter 2961.1Sbouyeruftdi* at uhub? port ? 2971.1Sbouyerucom* at uftdi? portno ? 2981.1Sbouyer 2991.1Sbouyeruplcom* at uhub? port ? # I/O DATA USB-RSAQ2 serial adapter 3001.1Sbouyerucom* at uplcom? portno ? 3011.1Sbouyer 3021.1Sbouyerumct* at uhub? port ? # MCT USB-RS232 serial adapter 3031.1Sbouyerucom* at umct? portno ? 3041.1Sbouyer 3051.10Schristos# Realtek RTL8187/RTL8187B 802.11b/g USB wireless adapter 3061.10Schristosurtw* at uhub? port ? 3071.10Schristos 3081.1Sbouyer# USB Generic driver 3091.1Sbouyerugen* at uhub? port ? 3101.1Sbouyer 3111.1Sbouyer# 3121.1Sbouyer# accept filters 3131.1Sbouyerpseudo-device accf_data # "dataready" accept filter 3141.1Sbouyerpseudo-device accf_http # "httpready" accept filter 3151.1Sbouyer 3161.18Schristospseudo-device loop # network loopback 3171.1Sbouyerpseudo-device ppp # serial-line IP ports 3181.1Sbouyerpseudo-device pppoe # PPP over Ethernet (RFC 2516) 3191.1Sbouyerpseudo-device pty # pseudo-terminals 3201.1Sbouyerpseudo-device bpfilter # packet filter ports 3211.1Sbouyer#pseudo-device carp # Common Address Redundancy Protocol 3221.1Sbouyerpseudo-device ipfilter # IP filter, NAT 3231.1Sbouyer 3241.1Sbouyerpseudo-device vnd # virtual disk ick 3251.1Sbouyer#options VND_COMPRESSION # compressed vnd(4) 3261.18Schristos#pseudo-device ccd # concatenated disks 3271.1Sbouyerpseudo-device fss # file system snapshot device 3281.18Schristos#pseudo-device cgd # cryptographic disks 3291.1Sbouyerpseudo-device clockctl # user control of clock subsystem 3301.1Sbouyer 3311.1Sbouyerpseudo-device wsmux # mouse & keyboard multiplexor 3321.9Snonakapseudo-device wsfont 3331.1Sbouyer#pseudo-device md # memory disk device (ramdisk) 3341.1Sbouyer 3351.19Schristos#pseudo-device raid # RAIDframe disk driver 3361.1Sbouyer#options RAID_AUTOCONFIG # auto-configuration of RAID components 3371.1Sbouyer# Options to enable various other RAIDframe RAID types. 3381.1Sbouyer# options RF_INCLUDE_EVENODD=1 3391.1Sbouyer# options RF_INCLUDE_RAID5_RS=1 3401.1Sbouyer# options RF_INCLUDE_PARITYLOGGING=1 3411.1Sbouyer# options RF_INCLUDE_CHAINDECLUSTER=1 3421.1Sbouyer# options RF_INCLUDE_INTERDECLUSTER=1 3431.1Sbouyer# options RF_INCLUDE_PARITY_DECLUSTERING=1 3441.1Sbouyer# options RF_INCLUDE_PARITY_DECLUSTERING_DS=1 3451.1Sbouyer 3461.1Sbouyer# for IPv6 3471.1Sbouyerpseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933) 3481.1Sbouyer#pseudo-device faith # IPv[46] tcp relay translation i/f 3491.1Sbouyerpseudo-device stf # 6to4 IPv6 over IPv4 encapsulation 3501.1Sbouyer 3511.1Sbouyer## IEEE 802.1Q Virtual LAN encapsulation, see vlan(4). 3521.1Sbouyerpseudo-device vlan 3531.1Sbouyer 3541.1Sbouyer## Simple inter-network traffic bridging 3551.1Sbouyerpseudo-device bridge 3561.1Sbouyer#options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too 3571.1Sbouyerpseudo-device agr # IEEE 802.3ad link aggregation 3581.1Sbouyerpseudo-device ksyms # /dev/ksyms 3591.26Sjmcneillpseudo-device drvctl # driver control 3601.1Sbouyer#pseudo-device pf # PF packet filter 3611.1Sbouyer#pseudo-device pflog # PF log if 3621.1Sbouyer 3631.1Sbouyer# Veriexec 3641.1Sbouyer# 3651.1Sbouyer# a pseudo device needed for veriexec 3661.19Schristos#pseudo-device veriexec 3671.1Sbouyer# 3681.1Sbouyer# Uncomment the fingerprint methods below that are desired. Note that 3691.1Sbouyer# removing fingerprint methods will have almost no impact on the kernel 3701.1Sbouyer# code size. 3711.1Sbouyer# 3721.1Sbouyer#options VERIFIED_EXEC_FP_RMD160 3731.1Sbouyer#options VERIFIED_EXEC_FP_SHA256 3741.1Sbouyer#options VERIFIED_EXEC_FP_SHA384 3751.1Sbouyer#options VERIFIED_EXEC_FP_SHA512 3761.1Sbouyer#options VERIFIED_EXEC_FP_SHA1 3771.1Sbouyer#options VERIFIED_EXEC_FP_MD5 378