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