]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/riscv/conf/GENERIC
Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp
[FreeBSD/FreeBSD.git] / sys / riscv / conf / GENERIC
1 #
2 # GENERIC -- Generic kernel configuration file for FreeBSD/RISC-V
3 #
4 # For more information on this file, please read the config(5) manual page,
5 # and/or the handbook section on Kernel Configuration Files:
6 #
7 #    https://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
8 #
9 # The handbook is also available locally in /usr/share/doc/handbook
10 # if you've installed the doc distribution, otherwise always see the
11 # FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the
12 # latest information.
13 #
14 # An exhaustive list of options and more detailed explanations of the
15 # device lines is also present in the ../../conf/NOTES and NOTES files.
16 # If you are in doubt as to the purpose or necessity of a line, check first
17 # in NOTES.
18 #
19 # $FreeBSD$
20
21 cpu             RISCV
22 ident           GENERIC
23
24 makeoptions     DEBUG=-g                # Build kernel with gdb(1) debug symbols
25 makeoptions     WITH_CTF=1              # Run ctfconvert(1) for DTrace support
26
27 options         SCHED_ULE               # ULE scheduler
28 options         PREEMPTION              # Enable kernel thread preemption
29 options         VIMAGE                  # Subsystem virtualization, e.g. VNET
30 options         INET                    # InterNETworking
31 options         INET6                   # IPv6 communications protocols
32 options         TCP_HHOOK               # hhook(9) framework for TCP
33 options         IPSEC_SUPPORT           # Allow kldload of ipsec and tcpmd5
34 options         TCP_OFFLOAD             # TCP offload
35 options         SCTP                    # Stream Control Transmission Protocol
36 options         FFS                     # Berkeley Fast Filesystem
37 options         SOFTUPDATES             # Enable FFS soft updates support
38 options         UFS_ACL                 # Support for access control lists
39 options         UFS_DIRHASH             # Improve performance on big directories
40 options         UFS_GJOURNAL            # Enable gjournal-based UFS journaling
41 options         QUOTA                   # Enable disk quotas for UFS
42 options         NFSCL                   # Network Filesystem Client
43 options         NFSD                    # Network Filesystem Server
44 options         NFSLOCKD                # Network Lock Manager
45 options         NFS_ROOT                # NFS usable as /, requires NFSCL
46 options         MSDOSFS                 # MSDOS Filesystem
47 options         CD9660                  # ISO 9660 Filesystem
48 options         PROCFS                  # Process filesystem (requires PSEUDOFS)
49 options         PSEUDOFS                # Pseudo-filesystem framework
50 options         GEOM_PART_GPT           # GUID Partition Tables.
51 options         GEOM_RAID               # Soft RAID functionality.
52 options         GEOM_LABEL              # Provides labelization
53 options         SCSI_DELAY=5000         # Delay (in ms) before probing SCSI
54 options         KTRACE                  # ktrace(1) support
55 options         STACK                   # stack(9) support
56 options         SYSVSHM                 # SYSV-style shared memory
57 options         SYSVMSG                 # SYSV-style message queues
58 options         SYSVSEM                 # SYSV-style semaphores
59 options         _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
60 options         PRINTF_BUFR_SIZE=128    # Prevent printf output being interspersed.
61 options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
62 # options       HWPMC_HOOKS             # Necessary kernel hooks for hwpmc(4)
63 options         AUDIT                   # Security event auditing
64 options         CAPABILITY_MODE         # Capsicum capability mode
65 options         CAPABILITIES            # Capsicum capabilities
66 options         MAC                     # TrustedBSD MAC Framework
67 options         KDTRACE_FRAME           # Ensure frames are compiled in
68 options         KDTRACE_HOOKS           # Kernel DTrace hooks
69 options         FPE                     # Floating-point extension support
70 options         RACCT                   # Resource accounting framework
71 options         RACCT_DEFAULT_TO_DISABLED # Set kern.racct.enable=0 by default
72 options         RCTL                    # Resource limits
73 options         SMP
74 options         INTRNG
75
76 # RISC-V SBI console
77 device          rcons
78
79 # Bus drivers
80 device          pci
81
82 # VirtIO support
83 device          virtio                  # Generic VirtIO bus (required)
84 device          virtio_pci              # VirtIO PCI device
85 device          vtnet                   # VirtIO Ethernet device
86 device          virtio_blk              # VirtIO Block device
87 device          virtio_mmio             # VirtIO MMIO bus
88
89 # DTrace support
90 # device        dtrace
91 # device        dtrace_profile
92 # device        dtrace_sdt
93 # device        dtrace_fbt
94 # device        dtrace_systrace
95 # device        dtrace_prototype
96 # device        dtraceall
97
98 # Serial (COM) ports
99 device          uart            # Generic UART driver
100 device          uart_lowrisc    # lowRISC UART driver
101 device          uart_ns8250     # ns8250-type UART driver
102
103
104 # Ethernet drivers
105 device          miibus          # MII bus support
106 device          cgem            # Cadence Gigabit Ethernet MAC
107 device          xae             # Xilinx AXI Ethernet MAC
108
109 # DMA support
110 device          xdma            # DMA interface
111 device          axidma          # Xilinx AXI DMA Controller
112
113 # Uncomment for memory disk
114 # options       MD_ROOT
115 # options       MD_ROOT_SIZE=32768      # 32MB ram disk
116 # makeoptions   MFS_IMAGE=/path/to/img
117 # options       ROOTDEVNAME=\"ufs:/dev/md0\"
118
119 # Uncomment for virtio block device
120 # options       ROOTDEVNAME=\"ufs:/dev/vtbd0\"
121
122 # Debugging support.  Always need this:
123 options         KDB                     # Enable kernel debugger support.
124 options         KDB_TRACE               # Print a stack trace for a panic.
125 # For full debugger support use (turn off in stable branch):
126 options         DDB                     # Support DDB.
127 # options       GDB                     # Support remote GDB.
128 options         DEADLKRES               # Enable the deadlock resolver
129 options         INVARIANTS              # Enable calls of extra sanity checking
130 options         INVARIANT_SUPPORT       # Extra sanity checks of internal structures, required by INVARIANTS
131 options         WITNESS                 # Enable checks to detect deadlocks and cycles
132 # options       WITNESS_SKIPSPIN        # Don't run witness on spinlocks for speed
133 options         MALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) zones
134 # options       EARLY_PRINTF
135 options         VERBOSE_SYSINIT=0       # Support debug.verbose_sysinit, off by default
136
137 # Kernel dump features.
138 options         ZSTDIO                  # zstd-compressed kernel and user dumps
139
140 # Pseudo devices.
141 device          crypto          # core crypto support
142 device          loop            # Network loopback
143 device          ether           # Ethernet support
144 device          vlan            # 802.1Q VLAN support
145 device          tuntap          # Packet tunnel.
146 device          md              # Memory "disks"
147 device          gif             # IPv6 and IPv4 tunneling
148 device          firmware        # firmware assist module
149
150 # The `bpf' device enables the Berkeley Packet Filter.
151 # Be aware of the administrative consequences of enabling this!
152 # Note that 'bpf' is required for DHCP.
153 device          bpf             # Berkeley packet filter
154
155 options         FDT