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