128 lines
5.2 KiB
Plaintext
128 lines
5.2 KiB
Plaintext
|
Here is a list of hp300 specific kernel compilation options and what they
|
||
|
mean:
|
||
|
|
||
|
HAVEVAC
|
||
|
Compiles in support for virtually addressed cache (VAC) found on
|
||
|
hp320 and 350 machines. Should only be defined when HP320 and/or
|
||
|
HP350 is.
|
||
|
|
||
|
HP320
|
||
|
Support for old hp320 machines: 16mhz 68020, HP MMU, 16mhz 68881
|
||
|
and VAC. Compiles in support for a VAC, HP MMU, and the 98620A
|
||
|
16-bit DMA channel. Forces the definition of HAVEVAC.
|
||
|
|
||
|
HP350
|
||
|
Support for old hp350 machines: 25mhz 68020, HP MMU, 20mhz 68881
|
||
|
and VAC. Compiles in support for a VAC and the HP MMU. Differs
|
||
|
from HP320 in that it has no support for 16-bit DMA controller.
|
||
|
Forces the definition of HAVEVAC.
|
||
|
|
||
|
HP330
|
||
|
Support for old hp330 (and 318/319) machines: 16mhz 68020, 68551 PMMU
|
||
|
and 16mhz 68881. Compiles in support for PMMU.
|
||
|
|
||
|
HP360
|
||
|
Support for old hp360 (and 340) machines: 25mhz 68030+MMU and 25mhz
|
||
|
68882. Compiles in support for PMMU and 68030. Differs from HP330
|
||
|
in support for 68030 on-chip data cache.
|
||
|
|
||
|
HP370
|
||
|
Support for old hp370 (and current 345/375/400) machines: 33 (50) mhz
|
||
|
68030+MMU and 33 (50) mhz 68882. Compiles in support for PMMU, 68030
|
||
|
and off-chip physically addressed cache. Differs from 360 in only one
|
||
|
place, in dealing with flushing the external cache.
|
||
|
|
||
|
HP380
|
||
|
Support for "current" hp380/425 (and 433) machines: 25 (33) mhz 68040
|
||
|
with MMU/FPU. Compiles in support for 68040.
|
||
|
|
||
|
HPFPLIB
|
||
|
Compiles in support to link with HP-UX's version of Motorola's 68040
|
||
|
FP emulation library (hp300/hpux_float.o). Kernel will build and run
|
||
|
without this option, but many binaries will core dump. Should not be
|
||
|
defined unless HP380 is.
|
||
|
|
||
|
|
||
|
USELEDS
|
||
|
Twinkle the hp4xx front panel (or hp3xx internal) LEDs in the HP
|
||
|
designated way. Somewhat frivolous, but the heartbeat LED is
|
||
|
useful to see if your machine is alive.
|
||
|
|
||
|
PANICBUTTON
|
||
|
Compiles in code which will enable a "force-crash" HIL keyboard
|
||
|
sequence. When the Reset key is typed twice in succession (within
|
||
|
half a second) the kernel will panic. Note that the HIL Reset key
|
||
|
sends a NMI to the processor which will get the CPUs attention no
|
||
|
matter what it is doing (i.e. as long as it isn't halted). Alas,
|
||
|
also note that the NMI is only sent when the keyboard is in "cooked"
|
||
|
(ITE) mode. If it is in "raw" mode (i.e. X-server is running) the
|
||
|
Reset key is just another keypress event. A cheezy substitute in
|
||
|
this case is holding down the upper right-most unlabeled key and
|
||
|
then pressing the unlabeled key to its left. Note that this only
|
||
|
works if HIL (level 1) interrupts are not masked.
|
||
|
|
||
|
DEBUG
|
||
|
Compiles in a variety of consistency checks and debug printfs
|
||
|
throughout the hp300 MD code and device drivers.
|
||
|
|
||
|
COMPAT_HPUX
|
||
|
Enables HP-UX binary compatibility mode. Allows a variety of
|
||
|
"recent" HP-UX binaries to be run unchanged. Due to the
|
||
|
evolutionary and "as-needed" nature of this code, "recent" is
|
||
|
anywhere from release 6.2 to 8.0 of HP-UX. It will run 8.0
|
||
|
shared-library binaries (assuming all the necessary shared-libraries
|
||
|
are installed in the filesystem).
|
||
|
|
||
|
COMPAT_OHPUX
|
||
|
Compile in old 4.2-ish HP-UX (pre-6.0?) compatibility code.
|
||
|
|
||
|
FPCOPROC
|
||
|
Compile in code to support the 68881 and above FPU. Should always
|
||
|
be defined, since all supported SPUs have one. Don't even know if
|
||
|
it will compile, much less work, without this option. Defined in
|
||
|
the prototype makefile (hp300/conf/Makefile.hp300).
|
||
|
|
||
|
DCMSTATS
|
||
|
Compile in code to collect a variety of transmit/receive statistics
|
||
|
for the 98642 4-port MUX.
|
||
|
|
||
|
WAITHIST
|
||
|
Compile in code to collect statistics about the distribution of
|
||
|
wait-times for various busy waits in the SCSI host-adaptor driver.
|
||
|
|
||
|
STACKCHECK
|
||
|
Enables two types of kernel stack checking in hp300/hp300/locore.s:
|
||
|
1. stack "overflow". On every clock interrupt we ensure that
|
||
|
the current kernel stack has not grown into the user struct
|
||
|
page, i.e. size exceeded UPAGES-1 pages.
|
||
|
2. stack "underflow". Before every rte to user mode we ensure
|
||
|
that we will be exactly at the base of the stack after the
|
||
|
exception frame has been popped.
|
||
|
This option can degrade performance considerably, use it only if
|
||
|
you suspect a problem with kernel stacks.
|
||
|
|
||
|
SCSI_REVPRI
|
||
|
Changes autoconf to start matching logical SCSI devices starting
|
||
|
at slave 6 and working backwards instead of starting at slave 0
|
||
|
and working up. Later releases of the HP boot ROM search for
|
||
|
boot devices in this manner. This is apparently the order in
|
||
|
which priority is given to slaves on the host adaptor. Define
|
||
|
this if you use wildcarding and want to stay in sync with the
|
||
|
boot ROM's strategy.
|
||
|
|
||
|
MAPPEDCOPY
|
||
|
Use page remapping to do large copyin/copyouts. When defined
|
||
|
the default is to use mapped copy for operations on one page
|
||
|
or more except on machines with virtually-indexed caches.
|
||
|
See initcpu() in machdep.c
|
||
|
|
||
|
BUFFERS_UNMANAGED
|
||
|
Set up the buffer cache "below" the machine independent VM.
|
||
|
Normally, in startup() we use vm_map operations to initially
|
||
|
assign physical memory to the buffers. This creates a map with
|
||
|
a huge number of map entries (twice the number of buffers)
|
||
|
which serve no purpose since remaining buffer operations
|
||
|
(i.e. pagemove) work below the MI layer anyway. Defining this
|
||
|
symbol will cause startup() to use pmap operations to map the
|
||
|
initial pages leaving the buffer_map one big entry.
|