Home | History | Annotate | Line # | Download | only in DOC
Options revision 1.6
      1  1.6    carrel $NetBSD: Options,v 1.6 1997/01/31 23:01:21 carrel Exp $
      2  1.3       cgd 
      3  1.1   mycroft Here is a list of hp300 specific kernel compilation options and what they
      4  1.1   mycroft mean:
      5  1.1   mycroft 
      6  1.1   mycroft HAVEVAC
      7  1.1   mycroft 	Compiles in support for virtually addressed cache (VAC) found on
      8  1.1   mycroft 	hp320 and 350 machines.  Should only be defined when HP320 and/or
      9  1.1   mycroft 	HP350 is.
     10  1.1   mycroft 
     11  1.1   mycroft HP320
     12  1.1   mycroft 	Support for old hp320 machines: 16mhz 68020, HP MMU, 16mhz 68881
     13  1.1   mycroft 	and VAC.  Compiles in support for a VAC, HP MMU, and the 98620A
     14  1.1   mycroft 	16-bit DMA channel.  Forces the definition of HAVEVAC.
     15  1.1   mycroft 
     16  1.1   mycroft HP350
     17  1.1   mycroft 	Support for old hp350 machines: 25mhz 68020, HP MMU, 20mhz 68881
     18  1.1   mycroft 	and VAC.  Compiles in support for a VAC and the HP MMU.  Differs
     19  1.1   mycroft 	from HP320 in that it has no support for 16-bit DMA controller.
     20  1.1   mycroft 	Forces the definition of HAVEVAC.
     21  1.1   mycroft 
     22  1.1   mycroft HP330
     23  1.1   mycroft 	Support for old hp330 (and 318/319) machines: 16mhz 68020, 68551 PMMU
     24  1.1   mycroft 	and 16mhz 68881.  Compiles in support for PMMU.
     25  1.1   mycroft 
     26  1.6    carrel HP340
     27  1.1   mycroft HP360
     28  1.6    carrel 	Support for old 340 and hp360 machines: 25mhz 68030+MMU and 25mhz
     29  1.1   mycroft 	68882.  Compiles in support for PMMU and 68030.  Differs from HP330
     30  1.1   mycroft 	in support for 68030 on-chip data cache.
     31  1.1   mycroft 
     32  1.1   mycroft HP370
     33  1.1   mycroft 	Support for old hp370 (and current 345/375/400) machines: 33 (50) mhz
     34  1.1   mycroft 	68030+MMU and 33 (50) mhz 68882.  Compiles in support for PMMU, 68030
     35  1.1   mycroft 	and off-chip physically addressed cache.  Differs from 360 in only one
     36  1.1   mycroft 	place, in dealing with flushing the external cache.
     37  1.1   mycroft 
     38  1.1   mycroft HP380
     39  1.1   mycroft 	Support for "current" hp380/425 (and 433) machines: 25 (33) mhz 68040
     40  1.1   mycroft 	with MMU/FPU.  Compiles in support for 68040.
     41  1.1   mycroft 
     42  1.2   mycroft FPSP
     43  1.2   mycroft 	Compiles in support to link with Motorola's 68040 FP emulation
     44  1.2   mycroft 	library.  Kernel will build and run without this option, but many
     45  1.2   mycroft 	binaries will core dump.  Should not be defined unless HP380 is.
     46  1.1   mycroft 
     47  1.1   mycroft 
     48  1.1   mycroft USELEDS
     49  1.1   mycroft 	Twinkle the hp4xx front panel (or hp3xx internal) LEDs in the HP
     50  1.1   mycroft 	designated way.  Somewhat frivolous, but the heartbeat LED is
     51  1.1   mycroft 	useful to see if your machine is alive.
     52  1.1   mycroft 
     53  1.1   mycroft PANICBUTTON
     54  1.1   mycroft 	Compiles in code which will enable a "force-crash" HIL keyboard
     55  1.1   mycroft 	sequence.  When the Reset key is typed twice in succession (within
     56  1.1   mycroft 	half a second) the kernel will panic.  Note that the HIL Reset key
     57  1.1   mycroft 	sends a NMI to the processor which will get the CPUs attention no
     58  1.1   mycroft 	matter what it is doing (i.e. as long as it isn't halted).  Alas,
     59  1.1   mycroft 	also note that the NMI is only sent when the keyboard is in "cooked"
     60  1.1   mycroft 	(ITE) mode.  If it is in "raw" mode (i.e. X-server is running) the
     61  1.1   mycroft 	Reset key is just another keypress event.  A cheezy substitute in
     62  1.1   mycroft 	this case is holding down the upper right-most unlabeled key and
     63  1.1   mycroft 	then pressing the unlabeled key to its left.  Note that this only
     64  1.1   mycroft 	works if HIL (level 1) interrupts are not masked.
     65  1.1   mycroft 
     66  1.1   mycroft DEBUG
     67  1.5  christos 	Compiles in a variety of consistency checks and debug printfs
     68  1.1   mycroft 	throughout the hp300 MD code and device drivers.
     69  1.1   mycroft 
     70  1.1   mycroft COMPAT_HPUX
     71  1.1   mycroft 	Enables HP-UX binary compatibility mode.  Allows a variety of
     72  1.1   mycroft 	"recent" HP-UX binaries to be run unchanged.  Due to the
     73  1.1   mycroft 	evolutionary and "as-needed" nature of this code, "recent" is
     74  1.1   mycroft 	anywhere from release 6.2 to 8.0 of HP-UX.  It will run 8.0
     75  1.1   mycroft 	shared-library binaries (assuming all the necessary shared-libraries
     76  1.1   mycroft 	are installed in the filesystem).
     77  1.1   mycroft 
     78  1.1   mycroft COMPAT_OHPUX
     79  1.1   mycroft 	Compile in old 4.2-ish HP-UX (pre-6.0?) compatibility code.
     80  1.1   mycroft 
     81  1.1   mycroft FPCOPROC
     82  1.1   mycroft 	Compile in code to support the 68881 and above FPU.  Should always
     83  1.1   mycroft 	be defined, since all supported SPUs have one.  Don't even know if
     84  1.1   mycroft 	it will compile, much less work,  without this option.  Defined in
     85  1.1   mycroft 	the prototype makefile (hp300/conf/Makefile.hp300).
     86  1.1   mycroft 
     87  1.1   mycroft DCMSTATS
     88  1.1   mycroft 	Compile in code to collect a variety of transmit/receive statistics
     89  1.1   mycroft 	for the 98642 4-port MUX.
     90  1.1   mycroft 
     91  1.1   mycroft WAITHIST
     92  1.1   mycroft 	Compile in code to collect statistics about the distribution of
     93  1.1   mycroft 	wait-times for various busy waits in the SCSI host-adaptor driver.
     94  1.1   mycroft 
     95  1.1   mycroft STACKCHECK
     96  1.1   mycroft 	Enables two types of kernel stack checking in hp300/hp300/locore.s:
     97  1.1   mycroft 	1. stack "overflow".  On every clock interrupt we ensure that
     98  1.1   mycroft 	   the current kernel stack has not grown into the user struct
     99  1.1   mycroft 	   page, i.e. size exceeded UPAGES-1 pages.
    100  1.1   mycroft 	2. stack "underflow".  Before every rte to user mode we ensure
    101  1.1   mycroft 	   that we will be exactly at the base of the stack after the
    102  1.1   mycroft 	   exception frame has been popped.
    103  1.1   mycroft 	This option can degrade performance considerably, use it only if
    104  1.1   mycroft 	you suspect a problem with kernel stacks.
    105  1.1   mycroft 
    106  1.1   mycroft SCSI_REVPRI
    107  1.1   mycroft 	Changes autoconf to start matching logical SCSI devices starting
    108  1.1   mycroft 	at slave 6 and working backwards instead of starting at slave 0
    109  1.1   mycroft 	and working up.  Later releases of the HP boot ROM search for
    110  1.1   mycroft 	boot devices in this manner.  This is apparently the order in
    111  1.1   mycroft 	which priority is given to slaves on the host adaptor.  Define
    112  1.1   mycroft 	this if you use wildcarding and want to stay in sync with the
    113  1.1   mycroft 	boot ROM's strategy.
    114  1.1   mycroft 
    115  1.1   mycroft MAPPEDCOPY
    116  1.1   mycroft 	Use page remapping to do large copyin/copyouts.  When defined
    117  1.1   mycroft 	the default is to use mapped copy for operations on one page
    118  1.1   mycroft 	or more except on machines with virtually-indexed caches.
    119  1.1   mycroft 	See initcpu() in machdep.c
    120  1.1   mycroft 
    121  1.1   mycroft BUFFERS_UNMANAGED
    122  1.1   mycroft 	Set up the buffer cache "below" the machine independent VM.
    123  1.1   mycroft 	Normally, in startup() we use vm_map operations to initially
    124  1.1   mycroft 	assign physical memory to the buffers.  This creates a map with
    125  1.1   mycroft 	a huge number of map entries (twice the number of buffers)
    126  1.1   mycroft 	which serve no purpose since remaining buffer operations
    127  1.1   mycroft 	(i.e. pagemove) work below the MI layer anyway.  Defining this
    128  1.1   mycroft 	symbol will cause startup() to use pmap operations to map the
    129  1.1   mycroft 	initial pages leaving the buffer_map one big entry.
    130