99ff83da74
* Make Yarrow an optional kernel component -- enabled by "YARROW_RNG" option. The files sha2.c, hash.c, randomdev_soft.c and yarrow.c comprise yarrow. * random(4) device doesn't really depend on rijndael-*. Yarrow, however, does. * Add random_adaptors.[ch] which is basically a store of random_adaptor's. random_adaptor is basically an adapter that plugs in to random(4). random_adaptor can only be plugged in to random(4) very early in bootup. Unplugging random_adaptor from random(4) is not supported, and is probably a bad idea anyway, due to potential loss of entropy pools. We currently have 3 random_adaptors: + yarrow + rdrand (ivy.c) + nehemeiah * Remove platform dependent logic from probe.c, and move it into corresponding registration routines of each random_adaptor provider. probe.c doesn't do anything other than picking a specific random_adaptor from a list of registered ones. * If the kernel doesn't have any random_adaptor adapters present then the creation of /dev/random is postponed until next random_adaptor is kldload'ed. * Fix randomdev_soft.c to refer to its own random_adaptor, instead of a system wide one. Submitted by: arthurmesh@gmail.com, obrien Obtained from: Juniper Networks Reviewed by: obrien
114 lines
3.8 KiB
Plaintext
114 lines
3.8 KiB
Plaintext
# IQ31244 -- Custom kernel configuration file for FreeBSD/arm on the IQ31244
|
|
#
|
|
# For more information on this file, please read the handbook section on
|
|
# Kernel Configuration Files:
|
|
#
|
|
# http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
|
|
#
|
|
# 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 (http://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.
|
|
#
|
|
# $FreeBSD$
|
|
|
|
ident IQ31244
|
|
|
|
options PHYSADDR=0xa0000000
|
|
options KERNPHYSADDR=0xa0200000
|
|
options KERNVIRTADDR=0xc0200000 # Used in ldscript.arm
|
|
options FLASHADDR=0xf0000000
|
|
options LOADERRAMADDR=0x00000000
|
|
|
|
options STARTUP_PAGETABLE_ADDR=0xa0000000
|
|
include "../xscale/i80321/std.iq31244"
|
|
makeoptions MODULES_OVERRIDE=""
|
|
|
|
#makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols
|
|
makeoptions CONF_CFLAGS=-mcpu=xscale
|
|
options HZ=100
|
|
#options DEVICE_POLLING
|
|
|
|
options SCHED_4BSD #4BSD scheduler
|
|
options INET #InterNETworking
|
|
options INET6 #IPv6 communications protocols
|
|
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 NFSCL #New Network Filesystem Client
|
|
options NFSD #New 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 SCSI_DELAY=5000 #Delay (in ms) before probing SCSI
|
|
options KTRACE #ktrace(1) 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 KBD_INSTALL_CDEV # install a CDEV entry in /dev
|
|
options BOOTP
|
|
options BOOTP_NFSROOT
|
|
options BOOTP_NFSV3
|
|
options BOOTP_WIRED_TO=em0
|
|
options BOOTP_COMPAT
|
|
#options PREEMPTION
|
|
device loop
|
|
device ether
|
|
#device saarm
|
|
device miibus
|
|
device rl
|
|
device em
|
|
device uart
|
|
device pci
|
|
|
|
device ata
|
|
options ATA_STATIC_ID # Static device numbering
|
|
|
|
device scbus # SCSI bus (required for ATA/SCSI)
|
|
device cd # CD
|
|
device da # Direct Access (disks)
|
|
device pass # Passthrough device (direct ATA/SCSI access)
|
|
|
|
# SCSI Controllers
|
|
|
|
device iopwdog # I80321 Watchdog
|
|
device dma # I80321 DMA Controller
|
|
device aau # I80321 Application Accelerator Unit
|
|
device "iq31244_7seg" # IQ31244 7 seg
|
|
#options AHC_REG_PRETTY_PRINT # Print register bitfields in debug
|
|
# output. Adds ~128k to driver.
|
|
#options AHD_REG_PRETTY_PRINT # Print register bitfields in debug
|
|
# output. Adds ~215k to driver.
|
|
|
|
# Debugging for use in -current
|
|
options KDB
|
|
options DDB #Enable the kernel debugger
|
|
#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 DIAGNOSTIC
|
|
|
|
# To make an SMP kernel, the next two are needed
|
|
#options SMP # Symmetric MultiProcessor Kernel
|
|
#options APIC_IO # Symmetric (APIC) I/O
|
|
options XSCALE_CACHE_READ_WRITE_ALLOCATE
|
|
device md
|
|
device random # Entropy device
|
|
options YARROW_RNG # Yarrow software RNG
|
|
|
|
options ARM_USE_SMALL_ALLOC
|
|
# Floppy drives
|
|
|