Date: Sun, 18 Jul 2021 14:20:51 GMT From: Emmanuel Vadot <manu@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: git: 0f2c633164a6 - main - arm64: Add per SoC family kernel config Message-ID: <202107181420.16IEKpdh052449@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=0f2c633164a6af70db8a8ecf4f70f61d241e7529 commit 0f2c633164a6af70db8a8ecf4f70f61d241e7529 Author: Emmanuel Vadot <manu@FreeBSD.org> AuthorDate: 2021-02-05 20:41:06 +0000 Commit: Emmanuel Vadot <manu@FreeBSD.org> CommitDate: 2021-07-18 14:11:08 +0000 arm64: Add per SoC family kernel config There is multiple reason for this : - This makes it easier to see which driver is needed for each SoC - This makes it easier to create a custom config for one SoC - This really reduce boot time (which some people might want) Some explaination about the files : - std.arm64 contains all standard kernel option - std.dev contains all the standard kernel devices - std.<soc> contains all drivers needed to boot on this SoC family - <SOC> includes std.arm64, std.dev and std.<soc> - GENERIC includes std.arm64, std.dev and all std.<soc> Sponsored by: Diablotin Systems MFC After: 2 months Reviewed by: mmel, cognet, imp Differential Revision: https://reviews.freebsd.org/D30474 --- sys/arm64/conf/AL | 27 +++ sys/arm64/conf/ALLWINNER | 27 +++ sys/arm64/conf/ALTERA | 27 +++ sys/arm64/conf/AMD | 27 +++ sys/arm64/conf/ARM | 27 +++ sys/arm64/conf/BROADCOM | 27 +++ sys/arm64/conf/CAVIUM | 27 +++ sys/arm64/conf/GENERIC | 396 +++---------------------------------------- sys/arm64/conf/HISILICON | 27 +++ sys/arm64/conf/IMX | 27 +++ sys/arm64/conf/MARVELL | 27 +++ sys/arm64/conf/NVIDIA | 27 +++ sys/arm64/conf/NXP | 27 +++ sys/arm64/conf/QCOM | 27 +++ sys/arm64/conf/ROCKCHIP | 27 +++ sys/arm64/conf/VIRT | 27 +++ sys/arm64/conf/XILINX | 27 +++ sys/arm64/conf/std.al | 27 +++ sys/arm64/conf/std.allwinner | 72 ++++++++ sys/arm64/conf/std.altera | 21 +++ sys/arm64/conf/std.amd | 16 ++ sys/arm64/conf/std.arm | 15 ++ sys/arm64/conf/std.arm64 | 98 +++++++++++ sys/arm64/conf/std.broadcom | 33 ++++ sys/arm64/conf/std.cavium | 27 +++ sys/arm64/conf/std.dev | 112 ++++++++++++ sys/arm64/conf/std.hisilicon | 19 +++ sys/arm64/conf/std.imx | 21 +++ sys/arm64/conf/std.marvell | 58 +++++++ sys/arm64/conf/std.nvidia | 27 +++ sys/arm64/conf/std.nxp | 26 +++ sys/arm64/conf/std.qcom | 14 ++ sys/arm64/conf/std.rockchip | 51 ++++++ sys/arm64/conf/std.virt | 26 +++ sys/arm64/conf/std.xilinx | 19 +++ 35 files changed, 1134 insertions(+), 376 deletions(-) diff --git a/sys/arm64/conf/AL b/sys/arm64/conf/AL new file mode 100644 index 000000000000..b5eb983119c7 --- /dev/null +++ b/sys/arm64/conf/AL @@ -0,0 +1,27 @@ +# +# AL -- Annapurna Alpine kernel configuration file for FreeBSD/arm64 +# +# For more information on this file, please read the config(5) manual page, +# and/or the handbook section on Kernel Configuration Files: +# +# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config +# +# The handbook is also available locally in /usr/share/doc/handbook +# if you've installed the doc distribution, otherwise always see the +# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the +# latest information. +# +# An exhaustive list of options and more detailed explanations of the +# device lines is also present in the ../../conf/NOTES and NOTES files. +# If you are in doubt as to the purpose or necessity of a line, check first +# in NOTES. +# + +#NO_UNIVERSE + +cpu ARM64 +ident AL + +include "std.arm64" +include "std.dev" +include "std.al" diff --git a/sys/arm64/conf/ALLWINNER b/sys/arm64/conf/ALLWINNER new file mode 100644 index 000000000000..5cf5a0929894 --- /dev/null +++ b/sys/arm64/conf/ALLWINNER @@ -0,0 +1,27 @@ +# +# ALLWINNER -- Allwinner kernel configuration file for FreeBSD/arm64 +# +# For more information on this file, please read the config(5) manual page, +# and/or the handbook section on Kernel Configuration Files: +# +# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config +# +# The handbook is also available locally in /usr/share/doc/handbook +# if you've installed the doc distribution, otherwise always see the +# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the +# latest information. +# +# An exhaustive list of options and more detailed explanations of the +# device lines is also present in the ../../conf/NOTES and NOTES files. +# If you are in doubt as to the purpose or necessity of a line, check first +# in NOTES. +# + +#NO_UNIVERSE + +cpu ARM64 +ident ALLWINNER + +include "std.arm64" +include "std.dev" +include "std.allwinner" diff --git a/sys/arm64/conf/ALTERA b/sys/arm64/conf/ALTERA new file mode 100644 index 000000000000..707db3b5ae89 --- /dev/null +++ b/sys/arm64/conf/ALTERA @@ -0,0 +1,27 @@ +# +# ALTERA -- Intel Altera kernel configuration file for FreeBSD/arm64 +# +# For more information on this file, please read the config(5) manual page, +# and/or the handbook section on Kernel Configuration Files: +# +# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config +# +# The handbook is also available locally in /usr/share/doc/handbook +# if you've installed the doc distribution, otherwise always see the +# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the +# latest information. +# +# An exhaustive list of options and more detailed explanations of the +# device lines is also present in the ../../conf/NOTES and NOTES files. +# If you are in doubt as to the purpose or necessity of a line, check first +# in NOTES. +# + +#NO_UNIVERSE + +cpu ARM64 +ident ALTERA + +include "std.arm64" +include "std.dev" +include "std.altera" diff --git a/sys/arm64/conf/AMD b/sys/arm64/conf/AMD new file mode 100644 index 000000000000..27058d90dce4 --- /dev/null +++ b/sys/arm64/conf/AMD @@ -0,0 +1,27 @@ +# +# AMD -- AMD Seattle kernel configuration file for FreeBSD/arm64 +# +# For more information on this file, please read the config(5) manual page, +# and/or the handbook section on Kernel Configuration Files: +# +# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config +# +# The handbook is also available locally in /usr/share/doc/handbook +# if you've installed the doc distribution, otherwise always see the +# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the +# latest information. +# +# An exhaustive list of options and more detailed explanations of the +# device lines is also present in the ../../conf/NOTES and NOTES files. +# If you are in doubt as to the purpose or necessity of a line, check first +# in NOTES. +# + +#NO_UNIVERSE + +cpu ARM64 +ident AMD + +include "std.arm64" +include "std.dev" +include "std.amd" diff --git a/sys/arm64/conf/ARM b/sys/arm64/conf/ARM new file mode 100644 index 000000000000..78022aa4d568 --- /dev/null +++ b/sys/arm64/conf/ARM @@ -0,0 +1,27 @@ +# +# ARM -- ARM kernel configuration file for FreeBSD/arm64 +# +# For more information on this file, please read the config(5) manual page, +# and/or the handbook section on Kernel Configuration Files: +# +# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config +# +# The handbook is also available locally in /usr/share/doc/handbook +# if you've installed the doc distribution, otherwise always see the +# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the +# latest information. +# +# An exhaustive list of options and more detailed explanations of the +# device lines is also present in the ../../conf/NOTES and NOTES files. +# If you are in doubt as to the purpose or necessity of a line, check first +# in NOTES. +# + +#NO_UNIVERSE + +cpu ARM64 +ident ARM + +include "std.arm64" +include "std.dev" +include "std.arm" diff --git a/sys/arm64/conf/BROADCOM b/sys/arm64/conf/BROADCOM new file mode 100644 index 000000000000..0a5478a19d08 --- /dev/null +++ b/sys/arm64/conf/BROADCOM @@ -0,0 +1,27 @@ +# +# BROADCOM -- Broadcom kernel configuration file for FreeBSD/arm64 +# +# For more information on this file, please read the config(5) manual page, +# and/or the handbook section on Kernel Configuration Files: +# +# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config +# +# The handbook is also available locally in /usr/share/doc/handbook +# if you've installed the doc distribution, otherwise always see the +# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the +# latest information. +# +# An exhaustive list of options and more detailed explanations of the +# device lines is also present in the ../../conf/NOTES and NOTES files. +# If you are in doubt as to the purpose or necessity of a line, check first +# in NOTES. +# + +#NO_UNIVERSE + +cpu ARM64 +ident BROADCOM + +include "std.arm64" +include "std.dev" +include "std.broadcom" diff --git a/sys/arm64/conf/CAVIUM b/sys/arm64/conf/CAVIUM new file mode 100644 index 000000000000..4ab13de8e4ff --- /dev/null +++ b/sys/arm64/conf/CAVIUM @@ -0,0 +1,27 @@ +# +# CAVIUM -- Cavium kernel configuration file for FreeBSD/arm64 +# +# For more information on this file, please read the config(5) manual page, +# and/or the handbook section on Kernel Configuration Files: +# +# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config +# +# The handbook is also available locally in /usr/share/doc/handbook +# if you've installed the doc distribution, otherwise always see the +# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the +# latest information. +# +# An exhaustive list of options and more detailed explanations of the +# device lines is also present in the ../../conf/NOTES and NOTES files. +# If you are in doubt as to the purpose or necessity of a line, check first +# in NOTES. +# + +#NO_UNIVERSE + +cpu ARM64 +ident CAVIUM + +include "std.arm64" +include "std.dev" +include "std.cavium" diff --git a/sys/arm64/conf/GENERIC b/sys/arm64/conf/GENERIC index c096c4774f41..c716183aae61 100644 --- a/sys/arm64/conf/GENERIC +++ b/sys/arm64/conf/GENERIC @@ -16,383 +16,27 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD$ cpu ARM64 ident GENERIC -makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols -makeoptions WITH_CTF=1 # Run ctfconvert(1) for DTrace support - -options SCHED_ULE # ULE scheduler -options NUMA # Non-Uniform Memory Architecture support -options PREEMPTION # Enable kernel thread preemption -options VIMAGE # Subsystem virtualization, e.g. VNET -options INET # InterNETworking -options INET6 # IPv6 communications protocols -options IPSEC_SUPPORT # Allow kldload of ipsec and tcpmd5 -options ROUTE_MPATH # Multipath routing support -options FIB_ALGO # Modular fib lookups -options TCP_OFFLOAD # TCP offload -options TCP_HHOOK # hhook(9) framework for TCP -options TCP_RFC7413 # TCP Fast Open -options SCTP_SUPPORT # Allow kldload of SCTP -options KERN_TLS # TLS transmit & receive offload -options FFS # Berkeley Fast Filesystem -options SOFTUPDATES # Enable FFS soft updates support -options UFS_ACL # Support for access control lists -options UFS_DIRHASH # Improve performance on big directories -options UFS_GJOURNAL # Enable gjournal-based UFS journaling -options QUOTA # Enable disk quotas for UFS -options MD_ROOT # MD is a potential root device -options NFSCL # Network Filesystem Client -options NFSD # Network Filesystem Server -options NFSLOCKD # Network Lock Manager -options NFS_ROOT # NFS usable as /, requires NFSCL -options MSDOSFS # MSDOS Filesystem -options CD9660 # ISO 9660 Filesystem -options PROCFS # Process filesystem (requires PSEUDOFS) -options PSEUDOFS # Pseudo-filesystem framework -options TMPFS # Efficient memory filesystem -options GEOM_RAID # Soft RAID functionality. -options GEOM_LABEL # Provides labelization -options EFIRT # EFI Runtime Services support -options COMPAT_FREEBSD32 # Compatible with FreeBSD/arm -options COMPAT_FREEBSD11 # Compatible with FreeBSD11 -options COMPAT_FREEBSD12 # Compatible with FreeBSD12 -options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI -options KTRACE # ktrace(1) support -options STACK # stack(9) support -options SYSVSHM # SYSV-style shared memory -options SYSVMSG # SYSV-style message queues -options SYSVSEM # SYSV-style semaphores -options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions -options PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed. -options KBD_INSTALL_CDEV # install a CDEV entry in /dev -options HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4) -options AUDIT # Security event auditing -options CAPABILITY_MODE # Capsicum capability mode -options CAPABILITIES # Capsicum capabilities -options MAC # TrustedBSD MAC Framework -options KDTRACE_FRAME # Ensure frames are compiled in -options KDTRACE_HOOKS # Kernel DTrace hooks -options DDB_CTF # Kernel ELF linker loads CTF data -options VFP # Floating-point support -options RACCT # Resource accounting framework -options RACCT_DEFAULT_TO_DISABLED # Set kern.racct.enable=0 by default -options RCTL # Resource limits -options INTRNG -options LINUX_BOOT_ABI # Boot using booti command from U-Boot - -# Debugging support. Always need this: -options KDB # Enable kernel debugger support. -options KDB_TRACE # Print a stack trace for a panic. -# For full debugger support use (turn off in stable branch): -options DDB # Support DDB. -options GDB # Support remote GDB. -options DEADLKRES # Enable the deadlock resolver -options INVARIANTS # Enable calls of extra sanity checking -options INVARIANT_SUPPORT # Extra sanity checks of internal structures, required by INVARIANTS -options WITNESS # Enable checks to detect deadlocks and cycles -options WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed -options MALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) zones -options ALT_BREAK_TO_DEBUGGER # Enter debugger on keyboard escape sequence -options VERBOSE_SYSINIT=0 # Support debug.verbose_sysinit, off by default - -# Kernel Sanitizers -#options COVERAGE # Generic kernel coverage. Used by KCOV -#options KCOV # Kernel Coverage Sanitizer -# Warning: KUBSAN can result in a kernel too large for loader to load -#options KUBSAN # Kernel Undefined Behavior Sanitizer -#options KCSAN # Kernel Concurrency Sanitizer - -# Kernel dump features. -options EKCD # Support for encrypted kernel dumps -options GZIO # gzip-compressed kernel and user dumps -options ZSTDIO # zstd-compressed kernel and user dumps -options DEBUGNET # debugnet networking -options NETDUMP # netdump(4) client support - -# Make an SMP-capable kernel by default -options SMP # Symmetric MultiProcessor Kernel - -# SoC support -options SOC_ALLWINNER_A64 -options SOC_ALLWINNER_H5 -options SOC_ALLWINNER_H6 -options SOC_CAVM_THUNDERX -options SOC_FREESCALE_IMX8 -options SOC_HISI_HI6220 -options SOC_INTEL_STRATIX10 -options SOC_BRCM_BCM2837 -options SOC_BRCM_BCM2838 -options SOC_BRCM_NS2 -options SOC_MARVELL_8K -options SOC_NVIDIA_TEGRA210 -options SOC_NXP_LS -options SOC_ROCKCHIP_RK3328 -options SOC_ROCKCHIP_RK3399 -options SOC_XILINX_ZYNQ - -# Timer drivers -device a10_timer - -# Annapurna Alpine drivers -device al_ccu # Alpine Cache Coherency Unit -device al_nb_service # Alpine North Bridge Service -device al_iofic # I/O Fabric Interrupt Controller -device al_serdes # Serializer/Deserializer -device al_udma # Universal DMA - -# Qualcomm Snapdragon drivers -device qcom_gcc # Global Clock Controller - -# CPU frequency control -device cpufreq - -# Bus drivers -device pci -device pci_n1sdp # ARM Neoverse N1 SDP PCI -device al_pci # Annapurna Alpine PCI-E -options PCI_HP # PCI-Express native HotPlug -options PCI_IOV # PCI SR-IOV support - -# Block devices -device ahci -device scbus -device da -device pvscsi # VMware PVSCSI - -# ATA/SCSI peripherals -device cd # CD -device pass # Passthrough device (direct ATA/SCSI access) - -# NVM Express (NVMe) support -device nvme # base NVMe driver -options NVME_USE_NVD=0 # prefer the cam(4) based nda(4) driver -device nvd # expose NVMe namespaces as disks, depends on nvme - -# DMA controller -device a31_dmac - -# GPIO / PINCTRL -device a37x0_gpio # Marvell Armada 37x0 GPIO controller -device aw_gpio # Allwinner GPIO controller -device dwgpio # Synopsys DesignWare APB GPIO Controller -device gpio -device gpioled -device fdt_pinctrl -device gpioregulator -device mv_gpio # Marvell GPIO controller -device mvebu_pinctrl # Marvell Pinmux Controller -device pl061 # Arm PL061 GPIO controller -device rk_gpio # RockChip GPIO Controller -device rk_pinctrl # RockChip Pinmux Controller - -# I2C -device a37x0_iic # Armada 37x0 I2C controller -device aw_rsb # Allwinner Reduced Serial Bus -device bcm2835_bsc # Broadcom BCM283x I2C bus -device iicbus -device iicmux -device iic -device icee # Generic IIC eeprom -device twsi # Allwinner I2C controller -device fan53555 # Fairchild Semi FAN53555/SYR82x Regulator -device pca9547 # NPX I2C bus multiplexer -device pcf8563 # NXP Real-time clock/calendar -device rk_i2c # RockChip I2C controller -device sy8106a # SY8106A Buck Regulator -device vf_i2c # Freescale Vybrid I2C controller -device fsliic # Freescale iMX I2C controller - -# Clock and reset controllers -device aw_ccu # Allwinner clock controller - -# Interrupt controllers -device aw_nmi # Allwinner NMI support -device aw_r_intc # Allwinner RINTC support -device mv_cp110_icu # Marvell CP110 ICU -device mv_ap806_gicp # Marvell AP806 GICP -device mv_ap806_sei # Marvell AP806 SEI - -# Real-time clock support -device aw_rtc # Allwinner Real-time Clock -device mv_rtc # Marvell Real-time Clock - -# Crypto accelerators -device armv8crypto # ARMv8 OpenCrypto module -device safexcel # Inside Secure EIP-97 - -# Watchdog controllers -device aw_wdog # Allwinner Watchdog - -# Power management controllers -device axp81x # X-Powers AXP81x PMIC -device rk805 # RockChip RK805 PMIC - -# EFUSE -device aw_sid # Allwinner Secure ID EFUSE - -# Thermal sensors -device aw_thermal # Allwinner Thermal Sensor Controller -device mv_thermal # Marvell Thermal Sensor Controller - -# SPI -device spibus -device a37x0_spi # Marvell Armada 37x0 SPI Controller -device bcm2835_spi # Broadcom BCM283x SPI bus -device rk_spi # RockChip SPI controller - -# PWM -device pwm -device aw_pwm -device rk_pwm - -# Console -device vt -device kbdmux - -device vt_efifb - -# EVDEV support -device evdev # input event device support -options EVDEV_SUPPORT # evdev support in legacy drivers -device uinput # install /dev/uinput cdev -device aw_cir - -# Serial (COM) ports -device uart # Generic UART driver -device uart_imx # iMX8 UART -device uart_msm # Qualcomm MSM UART driver -device uart_mu # RPI3 aux port -device uart_mvebu # Armada 3700 UART driver -device uart_ns8250 # ns8250-type UART driver -device uart_snps -device pl011 - -# PCI/PCI-X/PCIe Ethernet NICs that use iflib infrastructure -device iflib -device enetc # NXP Gigabit NIC -device em # Intel PRO/1000 Gigabit Ethernet Family -device ix # Intel 10Gb Ethernet Family -device vmx # VMware VMXNET3 Ethernet - -# Ethernet NICs -device mdio -device mii -device miibus # MII bus support -device al_eth # Annapurna Alpine Ethernet NIC -device awg # Allwinner EMAC Gigabit Ethernet -device axa # AMD Opteron A1100 integrated NIC -device cgem # Cadence GEM Gigabit Ethernet device -device dwc_rk # Rockchip Designware -device dwc_socfpga # Altera SOCFPGA Ethernet MAC -device ffec # iMX FFEC -device genet # Broadcom on RPi4 -device msk # Marvell/SysKonnect Yukon II Gigabit Ethernet -device neta # Marvell Armada 370/38x/XP/3700 NIC -device re # RealTek 8139C+/8169/8169S/8110S -device smc # SMSC LAN91C111 -device vnic # Cavium ThunderX NIC - -# Etherswitch devices -device etherswitch # Enable etherswitch support -device miiproxy # Required for etherswitch -device e6000sw # Marvell mv88e6085 based switches - - -# Pseudo devices. -device crypto # core crypto support -device loop # Network loopback -device ether # Ethernet support -device vlan # 802.1Q VLAN support -device tuntap # Packet tunnel. -device md # Memory "disks" -device gif # IPv6 and IPv4 tunneling -device firmware # firmware assist module - -# EXT_RESOURCES pseudo devices -options EXT_RESOURCES -device clk -device phy -device hwreset -device nvmem -device regulator -device syscon -device aw_syscon - -# IO Domains -device rk_iodomain - -# The `bpf' device enables the Berkeley Packet Filter. -# Be aware of the administrative consequences of enabling this! -# Note that 'bpf' is required for DHCP. -device bpf # Berkeley packet filter - -# USB support -options USB_DEBUG # enable debug msgs -options USB_HOST_ALIGN=64 # Align usb buffers to cache line size. -device aw_usbphy # Allwinner USB PHY -device rk_usb2phy # Rockchip USB2PHY -device rk_typec_phy # Rockchip TypeC PHY -device dwcotg # DWC OTG controller -device musb # Mentor Graphics USB OTG controller -device ohci # OHCI USB interface -device uhci # UHCI USB interface -device ehci # EHCI USB interface (USB 2.0) -device ehci_mv # Marvell EHCI USB interface -device xhci # XHCI USB interface (USB 3.0) -device dwc3 # Synopsys DWC controller -device aw_dwc3 # Allwinner DWC3 controller -device rk_dwc3 # Rockchip DWC3 controller -device usb # USB Bus (required) -device ukbd # Keyboard -device umass # Disks/Mass storage - Requires scbus and da -device tegra210_xusb_fw # Tegra XUSB firmware - -# USB ethernet support -device muge -device smcphy -device smsc -device ure - -# Sound support -device sound -device a10_codec # Allwinner A10 codec -device aw_i2s # Allwinner I2S -device a33_codec # Allwinner A33 codec -device a64_codec # Allwinner A64 Analog codec - -# MMC/SD/SDIO Card slot support -device sdhci -device sdhci_xenon # Marvell Xenon SD/MMC controller -device aw_mmc # Allwinner SD/MMC controller -device mmc # mmc/sd bus -device mmcsd # mmc/sd flash cards -device dwmmc -device dwmmc_altera -device dwmmc_hisi -device rk_dwmmc -device rk_emmcphy - -# VirtIO support -device virtio # Generic VirtIO bus (required) -device virtio_pci # VirtIO PCI device -device virtio_mmio # VirtIO Memory Mapped IO device -device virtio_blk # VirtIO Block device -device virtio_scsi # VirtIO SCSI device -device vtnet # VirtIO Ethernet device - -# Chip-specific errata -options THUNDERX_PASS_1_1_ERRATA - -options FDT -device acpi - -# DTBs -makeoptions MODULES_EXTRA="dtb/allwinner dtb/freescale dtb/imx8 dtb/nvidia dtb/mv dtb/rockchip dtb/rpi" - -# HID support -options HID_DEBUG # enable debug msgs -device hid # Generic HID support +include "std.arm64" +include "std.dev" + +# Include SoC specific configuration +include "std.al" +include "std.allwinner" +include "std.altera" +include "std.amd" +include "std.arm" +include "std.broadcom" +include "std.cavium" +include "std.hisilicon" +include "std.imx" +include "std.marvell" +include "std.nvidia" +include "std.nxp" +include "std.qcom" +include "std.rockchip" +include "std.virt" +include "std.xilinx" diff --git a/sys/arm64/conf/HISILICON b/sys/arm64/conf/HISILICON new file mode 100644 index 000000000000..3c7eb9573fd2 --- /dev/null +++ b/sys/arm64/conf/HISILICON @@ -0,0 +1,27 @@ +# +# HISILICON -- HiSilicon kernel configuration file for FreeBSD/arm64 +# +# For more information on this file, please read the config(5) manual page, +# and/or the handbook section on Kernel Configuration Files: +# +# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config +# +# The handbook is also available locally in /usr/share/doc/handbook +# if you've installed the doc distribution, otherwise always see the +# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the +# latest information. +# +# An exhaustive list of options and more detailed explanations of the +# device lines is also present in the ../../conf/NOTES and NOTES files. +# If you are in doubt as to the purpose or necessity of a line, check first +# in NOTES. +# + +#NO_UNIVERSE + +cpu ARM64 +ident HISILICON + +include "std.arm64" +include "std.dev" +include "std.hisilicon" diff --git a/sys/arm64/conf/IMX b/sys/arm64/conf/IMX new file mode 100644 index 000000000000..b1d3821e077f --- /dev/null +++ b/sys/arm64/conf/IMX @@ -0,0 +1,27 @@ +# +# IMX -- IMX kernel configuration file for FreeBSD/arm64 +# +# For more information on this file, please read the config(5) manual page, +# and/or the handbook section on Kernel Configuration Files: +# +# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config +# +# The handbook is also available locally in /usr/share/doc/handbook +# if you've installed the doc distribution, otherwise always see the +# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the +# latest information. +# +# An exhaustive list of options and more detailed explanations of the +# device lines is also present in the ../../conf/NOTES and NOTES files. +# If you are in doubt as to the purpose or necessity of a line, check first +# in NOTES. +# + +#NO_UNIVERSE + +cpu ARM64 +ident IMX + +include "std.arm64" +include "std.dev" +include "std.imx" diff --git a/sys/arm64/conf/MARVELL b/sys/arm64/conf/MARVELL new file mode 100644 index 000000000000..60538e735e7e --- /dev/null +++ b/sys/arm64/conf/MARVELL @@ -0,0 +1,27 @@ +# +# MARVELL -- Marvell kernel configuration file for FreeBSD/arm64 +# +# For more information on this file, please read the config(5) manual page, +# and/or the handbook section on Kernel Configuration Files: +# +# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config +# +# The handbook is also available locally in /usr/share/doc/handbook +# if you've installed the doc distribution, otherwise always see the +# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the +# latest information. +# +# An exhaustive list of options and more detailed explanations of the +# device lines is also present in the ../../conf/NOTES and NOTES files. +# If you are in doubt as to the purpose or necessity of a line, check first +# in NOTES. +# + +#NO_UNIVERSE + +cpu ARM64 +ident MARVELL + +include "std.arm64" +include "std.dev" +include "std.marvell" diff --git a/sys/arm64/conf/NVIDIA b/sys/arm64/conf/NVIDIA new file mode 100644 index 000000000000..8d5ee13c9a01 --- /dev/null +++ b/sys/arm64/conf/NVIDIA @@ -0,0 +1,27 @@ +# +# NVIDIA -- NVIDIA kernel configuration file for FreeBSD/arm64 +# +# For more information on this file, please read the config(5) manual page, +# and/or the handbook section on Kernel Configuration Files: +# +# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config +# +# The handbook is also available locally in /usr/share/doc/handbook +# if you've installed the doc distribution, otherwise always see the +# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the +# latest information. +# +# An exhaustive list of options and more detailed explanations of the +# device lines is also present in the ../../conf/NOTES and NOTES files. +# If you are in doubt as to the purpose or necessity of a line, check first +# in NOTES. +# + +#NO_UNIVERSE + +cpu ARM64 +ident NVIDIA + +include "std.arm64" +include "std.dev" +include "std.nvidia" diff --git a/sys/arm64/conf/NXP b/sys/arm64/conf/NXP new file mode 100644 index 000000000000..51708d18277b --- /dev/null +++ b/sys/arm64/conf/NXP @@ -0,0 +1,27 @@ +# +# NXP -- NXP kernel configuration file for FreeBSD/arm64 +# +# For more information on this file, please read the config(5) manual page, +# and/or the handbook section on Kernel Configuration Files: +# +# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config +# +# The handbook is also available locally in /usr/share/doc/handbook +# if you've installed the doc distribution, otherwise always see the +# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the +# latest information. +# +# An exhaustive list of options and more detailed explanations of the +# device lines is also present in the ../../conf/NOTES and NOTES files. +# If you are in doubt as to the purpose or necessity of a line, check first +# in NOTES. +# + +#NO_UNIVERSE + +cpu ARM64 +ident NXP + +include "std.arm64" +include "std.dev" +include "std.nxp" diff --git a/sys/arm64/conf/QCOM b/sys/arm64/conf/QCOM new file mode 100644 index 000000000000..2e1ec2dea0ab --- /dev/null +++ b/sys/arm64/conf/QCOM @@ -0,0 +1,27 @@ +# +# QCOM -- Qualcomm kernel configuration file for FreeBSD/arm64 +# +# For more information on this file, please read the config(5) manual page, +# and/or the handbook section on Kernel Configuration Files: +# +# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config +# +# The handbook is also available locally in /usr/share/doc/handbook +# if you've installed the doc distribution, otherwise always see the +# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the +# latest information. +# +# An exhaustive list of options and more detailed explanations of the +# device lines is also present in the ../../conf/NOTES and NOTES files. +# If you are in doubt as to the purpose or necessity of a line, check first +# in NOTES. +# + +#NO_UNIVERSE + +cpu ARM64 +ident QCOM + +include "std.arm64" +include "std.dev" +include "std.qcom" diff --git a/sys/arm64/conf/ROCKCHIP b/sys/arm64/conf/ROCKCHIP new file mode 100644 index 000000000000..4024e422a473 --- /dev/null +++ b/sys/arm64/conf/ROCKCHIP @@ -0,0 +1,27 @@ +# +# ROCKCHIP -- Rockchip kernel configuration file for FreeBSD/arm64 +# +# For more information on this file, please read the config(5) manual page, +# and/or the handbook section on Kernel Configuration Files: +# +# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config +# +# The handbook is also available locally in /usr/share/doc/handbook +# if you've installed the doc distribution, otherwise always see the +# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the +# latest information. +# +# An exhaustive list of options and more detailed explanations of the +# device lines is also present in the ../../conf/NOTES and NOTES files. +# If you are in doubt as to the purpose or necessity of a line, check first +# in NOTES. +# + +#NO_UNIVERSE + +cpu ARM64 +ident ROCKCHIP + +include "std.arm64" +include "std.dev" +include "std.rockchip" diff --git a/sys/arm64/conf/VIRT b/sys/arm64/conf/VIRT new file mode 100644 index 000000000000..bd5256e428a5 --- /dev/null +++ b/sys/arm64/conf/VIRT @@ -0,0 +1,27 @@ +# +# VIRT -- Virt kernel configuration file for FreeBSD/arm64 +# +# For more information on this file, please read the config(5) manual page, +# and/or the handbook section on Kernel Configuration Files: +# +# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config +# +# The handbook is also available locally in /usr/share/doc/handbook +# if you've installed the doc distribution, otherwise always see the +# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the +# latest information. +# +# An exhaustive list of options and more detailed explanations of the +# device lines is also present in the ../../conf/NOTES and NOTES files. +# If you are in doubt as to the purpose or necessity of a line, check first +# in NOTES. +# + +#NO_UNIVERSE + +cpu ARM64 +ident VIRM + +include "std.arm64" +include "std.dev" +include "std.virt" diff --git a/sys/arm64/conf/XILINX b/sys/arm64/conf/XILINX new file mode 100644 index 000000000000..f4c45081bf06 --- /dev/null +++ b/sys/arm64/conf/XILINX @@ -0,0 +1,27 @@ +# +# XILINX -- Xilinx kernel configuration file for FreeBSD/arm64 +# +# For more information on this file, please read the config(5) manual page, +# and/or the handbook section on Kernel Configuration Files: +# +# https://docs.freebsd.org/en/books/handbook/kernelconfig/#kernelconfig-config +# +# The handbook is also available locally in /usr/share/doc/handbook +# if you've installed the doc distribution, otherwise always see the +# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the +# latest information. *** 805 LINES SKIPPED ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202107181420.16IEKpdh052449>