xref: /freebsd/sys/riscv/conf/NOTES (revision 0a4cb54506e3e2c0d911ddd12416eb2fdc6a7bd7)
1#
2# NOTES -- Lines that can be cut/pasted into kernel and hints configs.
3#
4# This file contains machine dependent kernel configuration notes.  For
5# machine independent notes, look in /sys/conf/NOTES.
6#
7# $FreeBSD$
8#
9
10cpu		RISCV
11
12makeoptions	DEBUG=-g		# Build kernel with gdb(1) debug symbols
13makeoptions	WITH_CTF=1		# Run ctfconvert(1) for DTrace support
14
15options 	PRINTF_BUFR_SIZE=128	# Prevent printf output being interspersed.
16options 	KDTRACE_FRAME		# Ensure frames are compiled in
17options 	KDTRACE_HOOKS		# Kernel DTrace hooks
18options 	DDB_CTF			# Kernel ELF linker loads CTF data
19options 	FPE			# Floating-point extension support
20options 	RACCT_DEFAULT_TO_DISABLED # Set kern.racct.enable=0 by default
21options 	INTRNG			# Include INTRNG framework
22
23# RISC-V SBI console
24device		rcons
25
26# EXT_RESOURCES pseudo devices
27options 	EXT_RESOURCES
28device		clk
29device		hwreset
30device		phy
31device		regulator
32device		syscon
33device		syscon_power
34device		riscv_syscon
35
36# Backlight subsystem
37device		backlight
38
39# VirtIO support
40device		virtio			# Generic VirtIO bus (required)
41device		virtio_pci		# VirtIO PCI device
42device		vtnet			# VirtIO Ethernet device
43device		virtio_blk		# VirtIO Block device
44device		virtio_mmio		# VirtIO MMIO bus
45device		virtio_random		# VirtIO Entropy device
46
47# NOTE: dtrace introduces CDDL-licensed components into the kernel
48device		dtrace			# dtrace core
49device		dtraceall		# include all dtrace modules
50
51# Serial (COM) ports
52device		uart_lowrisc	# lowRISC UART driver
53device		uart_ns8250	# ns8250-type UART driver
54
55# RTC
56device		goldfish_rtc	# QEMU RTC
57
58# Ethernet drivers
59device		xae		# Xilinx AXI Ethernet MAC
60
61# DMA support
62device		xdma		# DMA interface
63device		axidma		# Xilinx AXI DMA Controller
64
65# SPI
66device		xilinx_spi	# Xilinx AXI Quad-SPI Controller
67
68# SOC-specific
69device		fe310aon
70device		sifive_spi
71files		"../sifive/files.sifive"
72
73# Flattened Device Tree
74options 	FDT
75makeoptions	MODULES_EXTRA+="dtb/sifive"
76
77# FreeBSD/riscv didn't exist for these releases
78nooptions 	COMPAT_FREEBSD4
79nooptions 	COMPAT_FREEBSD5
80nooptions 	COMPAT_FREEBSD6
81nooptions 	COMPAT_FREEBSD7
82nooptions 	COMPAT_FREEBSD9
83nooptions 	COMPAT_FREEBSD10
84nooptions 	COMPAT_FREEBSD11
85
86# No support for remote GDB
87nooptions 	GDB
88
89# riscv doesn't support inb/outb, so disable chipset probing which needs it
90nooptions 	PPC_PROBE_CHIPSET
91
92# Makes assumptions about bus tags that aren't true on riscv
93nodevice	snd_cmi
94
95# Don't yet have hwpmc(4)
96nodevice	hwpmc
97nooptions 	HWPMC_HOOKS
98