123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977 |
- .TH PLAN9.INI 8
- .SH NAME
- plan9.ini \- configuration file for PCs
- .SH SYNOPSIS
- .I none
- .SH DESCRIPTION
- When booting Plan 9 on a PC, the DOS program
- .IR 9load (8)
- first reads a DOS file
- containing configuration information from the boot disk.
- This file,
- .BR plan9.ini ,
- looks like a shell script containing lines of the form
- .IP
- .EX
- name=\f2value\fP
- .EE
- .LP
- each of which defines a kernel or device parameter.
- .PP
- Blank lines and
- Carriage Returns
- .IB ( \er )
- are ignored.
- .B #
- comments are ignored, but are only recognised if
- .L #
- appears at the start of a line.
- .PP
- For devices, the generic format of
- .I value
- is
- .IP
- .EX
- type=TYPE [port=N] [irq=N] [mem=N] [size=N] [dma=N] [ea=N]
- .EE
- .LP
- specifying the controller type,
- the base I/O port of the interface, its interrupt
- level, the physical starting address of any mapped memory,
- the length in bytes of that memory, the DMA channel,
- and for Ethernets an override of the physical network address.
- Not all elements are relevant to all devices; the relevant values
- and their defaults are defined below in the description of each device.
- .PP
- The file is used by
- .B 9load
- and the kernel to configure the hardware available.
- The information it contains is also passed to the boot
- process, and subsequently other programs,
- as environment variables
- (see
- .IR boot (8)).
- However, values whose names begin with an asterisk
- .B *
- are used by the kernel and are not converted into environment variables.
- .PP
- The following sections describe how variables are used.
- .SS ETHERNET
- .SS \fLetherX=value\fP
- This defines an Ethernet interface.
- .IR X ,
- a unique monotonically increasing number beginning at 0,
- identifies an Ethernet card to be probed at system boot.
- Probing stops when a card is found or there is no line for
- .BR etherX+1 .
- After probing as directed by the
- .BI ether X
- lines, any remaining Ethernet cards that can be automatically
- detected are added.
- Almost all cards can be automatically detected.
- For debugging purposes, automatic probing can
- be disabled by specifying the line
- .BR *noetherprobe= .
- This automatic probing is only done by the kernel, not by
- .IR 9load (8).
- Thus, if you want to load a kernel over the Ethernet, you need
- to specify an
- .B ether0
- line so that
- .I 9load
- can find the Ethernet card, even if the kernel would
- have automatically detected it.
- .PP
- Some cards are software configurable and do not require all options.
- Unspecified options default to the factory defaults.
- .PP
- Known
- .IR TYPE s
- are
- .\" .TF ga620
- .TF vt6102
- .PD
- .TP
- .B igbe
- The Intel 8254X Gigabit Ethernet controllers,
- as found on the Intel PRO/1000 adapters for copper (not fiber).
- Completely configurable.
- .TP
- .B igbepcie
- The Intel 8256[36], 8257[12], and 82573[ev] Gigabit Ethernet
- PCI-Express controllers.
- Completely configurable.
- .TP
- .B rtl8169
- The Realtek 8169 Gigabit Ethernet controller.
- Completely configurable.
- .TP
- .B ga620
- Netgear GA620 and GA620T Gigabit Ethernet cards,
- and other cards using the Alteon Acenic chip such as the
- Alteon Acenic fiber and copper cards,
- the DEC DEGPA-SA and the SGI Acenic.
- Completely configurable.
- .TP
- .B dp83820
- National Semiconductor DP83820-based Gigabit Ethernet adapters, notably
- the D-Link DGE-500T.
- Completely configurable.
- .TP
- .B vgbe
- The VIA Velocity Gigabit Ethernet controller.
- Known to drive the VIA8237 (ABIT AV8), but at 100Mb/s full-duplex only.
- .TP
- .B m10g
- The Myricom 10-Gigabit Ethernet controllers.
- .TP
- .B i82557
- Cards using the Intel 8255[789] Fast Ethernet PCI Bus LAN Controller such as the
- Intel EtherExpress PRO/100B.
- Completely configurable, no options need be given.
- If you need to force the media, specify
- one of the options (no value)
- .BR 10BASE-T ,
- .BR 10BASE-2 ,
- .BR 10BASE-5 ,
- .BR 100BASE-TX ,
- .BR 10BASE-TFD ,
- .BR 100BASE-TXFD ,
- .BR 100BASE-T4 ,
- .BR 100BASE-FX ,
- or
- .BR 100BASE-FXFD .
- Completely configurable.
- .TP
- .B 2114x
- Cards using the Digital Equipment (now Intel) 2114x PCI Fast Ethernet Adapter Controller,
- for example the Netgear FA310.
- Completely configurable, no options need be given.
- Media can be specified the same was as for the
- .BR i82557 .
- Some cards using the
- .B PNIC
- and
- .B PNIC2
- near-clone chips may also work.
- .TP
- .B 83815
- National Semiconductor DP83815-based adapters, notably
- the Netgear FA311, Netgear FA312, and various SiS built-in
- controllers such as the SiS900.
- On the SiS controllers, the Ethernet address is not detected properly;
- specify it with an
- .B ea=
- attribute.
- Completely configurable.
- .TP
- .B rtl8139
- The Realtek 8139 Fast Ethernet controller.
- Completely configurable.
- .TP
- .B vt6102
- The VIA VT6102 Fast Ethernet Controller (Rhine II).
- .TP
- .B smc91cxx
- SMC 91cXX chip-based PCMCIA adapters, notably the SMC EtherEZ card.
- .TP
- .B elnk3
- The 3COM Etherlink III series of cards including the 5x9, 59x, and 905 and 905B.
- Completely configurable, no options need be given.
- The media may be specified by setting
- .B media=
- to the value
- .BR 10BaseT ,
- .BR 10Base2 ,
- .BR 100BaseTX ,
- .BR 100BaseFX ,
- .BR aui ,
- and
- .BR mii .
- If you need to force full duplex, because for example the Ethernet switch does not negotiate correctly,
- just name the word (no value)
- .B fullduplex
- or
- .BR 100BASE-TXFD .
- Similarly, to force 100Mbit operation, specify
- .BR force100 .
- Port 0x110 is used for the little ISA configuration dance.
- .TP
- .B 3c589
- The 3COM 3C589 series PCMCIA cards, including the
- 3C562 and the 589E.
- There is no support for the modem on the 3C562.
- Completely configurable, no options need be given.
- Defaults are
- .EX
- port=0x240 irq=10
- .EE
- The media may be specified as
- .B media=10BaseT
- or
- .BR media=10Base2 .
- .TP
- .B ec2t
- The Linksys Combo PCMCIA EthernetCard (EC2T),
- EtherFast 10/100 PCMCIA cards (PCMPC100) and integrated controllers (PCM100),
- the Netgear FA410TX 10/100 PCMCIA card
- and the Accton EtherPair-PCMCIA (EN2216).
- Completely configurable, no options need be given.
- Defaults are
- .EX
- port=0x300 irq=9
- .EE
- These cards are NE2000 clones.
- Other NE2000 compatible PCMCIA cards may be tried
- with the option
- .EX
- id=string
- .EE
- where
- .B string
- is a unique identifier string contained in the attribute
- memory of the card (see
- .IR pcmcia (8));
- unlike most options in
- .BR plan9.ini ,
- this string is case-sensitive.
- The option
- .B dummyrr=[01]
- can be used to turn off (0) or on (1) a dummy remote read in the driver
- in such cases,
- depending on how NE2000 compatible they are.
- .TP
- .B ne2000
- Not software configurable. 16-bit card.
- Defaults are
- .EX
- port=0x300 irq=2 mem=0x04000 size=0x4000
- .EE
- The option (no value)
- .B nodummyrr
- is needed on some (near) clones to turn off a dummy remote read in the driver.
- .TP
- .B amd79c970
- The AMD PCnet PCI Ethernet Adapter (AM79C970).
- (This is the Ethernet adapter used by VMware.)
- Completely configurable, no options need be given.
- .TP
- .B wd8003
- Includes WD8013 and SMC Elite and Elite Ultra cards. There are varying degrees
- of software configurability. Cards may be in either 8-bit or 16-bit slots.
- Defaults are
- .EX
- port=0x280 irq=3 mem=0xD0000 size=0x2000
- .EE
- BUG: On many machines only the 16 bit card works.
- .TP
- .B sink
- A
- .B /dev/null
- for Ethernet packets \(em the interface discards sent
- packets and never receives any.
- This is used to provide a test bed for
- some experimental Ethernet bridging software.
- .TP
- .B wavelan
- Lucent Wavelan (Orinoco) IEEE 802.11b
- and compatible PCMCIA cards.
- Compatible cards include the Dell TrueMobile 1150
- and the Linksys Instant Wireless Network PC Card.
- Port and IRQ defaults are 0x180 and 3 respectively.
- .IP
- These cards take a number of unique options to aid in
- identifying the card correctly on the 802.11b network.
- The network may be
- .I "ad hoc"
- or
- .I managed
- (i.e. use an access point):
- .EX
- mode=[adhoc, managed]
- .EE
- and defaults to
- .IR managed .
- The 802.11b network to attach to
- .RI ( managed
- mode)
- or identify as
- .RI ( "ad hoc"
- mode),
- is specified by
- .EX
- essid=string
- .EE
- and defaults to a null string.
- The card station name is given by
- .EX
- station=string
- .EE
- and defaults to
- .IR "Plan 9 STA" .
- The channel to use is given by
- .EX
- channel=number
- .EE
- where
- .I number
- lies in the range 1 to 16 inclusive;
- the channel is normally negotiated automatically.
- .IP
- If the card is capable of encryption,
- the following options may be used:
- .EX
- crypt=[off, on]
- .EE
- and defaults to
- .IR on .
- .EX
- key\fIN\fP=string
- .EE
- sets the encryption key
- .I N
- (where
- .I N
- is in the range 1 to 4 inclusive) to
- .IR string ;
- this will also set the transmit key to
- .I N
- (see below).
- There are two formats for
- .I string
- which depend on the length of the string.
- If it is exactly 5 or 13 characters long it is assumed
- to be an alphanumeric key; if it is exactly 10 or 26 characters
- long the key is assumed to be in hex format (without a leading
- .IR 0x ).
- The lengths are checked,
- as is the format of a hex key.
- .EX
- txkey=number
- .EE
- sets the transmit key to use to be
- .I number
- in the range 1 to 4 inclusive.
- If it is desired to exclude or include unencrypted packets
- .EX
- clear=[off, on]
- .EE
- configures reception and defaults to inclusion.
- .IP
- The defaults are intended to match the common case of
- a managed network with encryption and a typical entry would
- only require, for example
- .EX
- essid=left-armpit key1=afish key2=calledraawaru
- .EE
- if the port and IRQ defaults are used.
- These options may be set after boot by writing to the device's
- .I ctl
- file using a space as the separator between option and value, e.g.
- .EX
- echo 'key2 1d8f65c9a52d83c8e4b43f94af' >/net/ether0/0/ctl
- .EE
- .IP
- Card-specific power management may be enabled/disabled by
- .EX
- pm=[on, off]
- .EE
- .TP
- .B wavelanpci
- PCI Ethernet adapters that use the same Wavelan
- programming interface.
- Currently the only tested cards are those based on the
- Intersil Prism 2.5 chipset.
- .
- .SS DISKS, TAPES
- (S)ATA controllers are autodetected.
- .SS \fLusbX=type=uhci\fP
- This specifies the settings for a USB UHCI controller.
- Like the Ethernet controllers, USB controllers are autodetected
- after scanning for the ones listed in
- .IR plan9.ini .
- Thus, most systems will not need a
- .B usbX
- line.
- Also like the Ethernet controllers, USB autoprobing can be
- disabled by specifying the line
- .BR *nousbprobe= .
- .SS \fLscsiX=value\fP
- This defines a SCSI interface which cannot be automatically detected
- by the kernel.
- .PP
- Known
- .IR TYPE s
- are
- .TP
- .B aha1542
- Adaptec 154x series of controllers (and clones).
- Almost completely configurable, only the
- .EX
- port=0x300
- .EE
- option need be given.
- .PP
- NCR/Symbios/LSI-Logic 53c8xx-based adapters
- and Mylex MultiMaster (Buslogic BT-*) adapters are
- automatically detected and need no entries.
- .PP
- By default, the NCR 53c8xx driver searches for up to 32 controllers.
- This can be changed by setting the variable
- .BR *maxsd53c8xx .
- .PP
- By default the Mylex driver resets SCSI cards by using
- both the hard reset and SCSI bus reset flags in the driver interface.
- If a variable
- .BR *noscsireset
- is defined, the SCSI bus reset flag is omitted.
- .SS \fLaoeif=\fP\fIlist\fP
- This specifies a space-separated
- .I list
- of Ethernet interfaces to be bound at boot to the ATA-over-Ethernet driver,
- .IR aoe (3).
- For example,
- .LR "aoeif=ether0 ether1" .
- Only interfaces on this list will initially be accessible via AoE.
- .SS \fLaoedev=e!#æ/aoe/\fIshelf\fL.\fIslot\fR
- This specifies an ATA-over-Ethernet device accessible via the interfaces
- named in
- .IR aoeif
- on AoE
- .I shelf
- and
- .I slot
- to use as a root device for bootstrapping.
- .SS AUDIO
- .SS \fLaudioX=value\fP
- This defines a sound interface.
- .PP
- Known types are
- .TF ess1688
- .PD
- .TP
- .B sb16
- Sound Blaster 16.
- .TP
- .B ess1688
- A Sound Blaster clone.
- .PP
- The DMA channel may be any of 5, 6, or 7.
- The defaults are
- .IP
- .EX
- port=0x220 irq=7 dma=5
- .EE
- .SS Uarts
- Plan 9 automatically configures COM1 and COM2, if found,
- as
- .B eia0
- (port 0x3F8, IRQ4)
- and
- .B eia1
- (port 0x2F8, IRQ3)
- respectively.
- These devices can be disabled by adding a line:
- .IP
- .EX
- eia\fIX\fP=disabled
- .EE
- .LP
- This is typically done in order to reuse the IRQ for
- another device.
- .PP
- Plan 9 used to support various serial concentrators,
- including the TTC 8 serial line card and various models
- in the Star Gate Avanstar series of intelligent serial boards.
- These are no longer supported; the much simpler
- Perle PCI-Fast4, PCI-Fast8, and PCI-Fast16 controllers
- have taken their places.
- These latter cards are automatically detected
- and need no configuration lines.
- .PP
- The line
- .B serial=type=com
- can be used to specify settings for a PCMCIA modem.
- .SS \fLmouseport=value\fP
- This specifies where the mouse is attached.
- .I Value
- can be
- .TP
- .B ps2
- the PS2 mouse/keyboard port. The BIOS setup procedure
- should be used to configure the machine appropriately.
- .TP
- .B ps2intellimouse
- an Intellimouse on the PS2 port.
- .TP
- .B 0
- for COM1
- .TP
- .B 1
- for COM2
- .SS \fLmodemport=value\fP
- Picks the UART line to call out on.
- This is used when connecting to a file server over
- an async line.
- .I Value
- is the number of the port.
- .SS \fLconsole=value params\fP
- This is used to specify the console device.
- The default
- value is
- .BR cga ;
- a number
- .B 0
- or
- .B 1
- specifies
- .I COM1
- or
- .I COM2
- respectively.
- A serial console is initially configured with the
- .IR uart (3)
- configuration string
- .B b9600
- .B l8
- .B pn
- .BR s1 ,
- specifying 9600 baud,
- 8 bit bytes, no parity, and one stop bit.
- If
- .I params
- is given, it will be used to further
- configure the uart.
- Notice that there is no
- .B =
- sign in the
- .I params
- syntax.
- For example,
- .IP
- .EX
- console=0 b19200 po
- .EE
- .LP
- would use COM1 at 19,200 baud
- with odd parity.
- .SS "PC CARD"
- .SS \fLpccard0=disabled\fP
- Disable probing for and automatic configuration of PC card controllers.
- .SS \fLpcmciaX=type=XXX irq=value\fP
- If the default IRQ for the
- PCMCIA
- is correct, this entry can be omitted. The value of
- .B type
- is ignored.
- .SS \fLpcmcia0=disabled\fP
- Disable probing for and automatic configuration of PCMCIA controllers.
- .SS BOOTING
- .SS \fLbootfile=value\fP
- This is used to direct the actions of
- .IR 9load (8)
- by naming the device and file from which to load the kernel.
- .SS \fLrootdir=dir\fP
- .SS \fLrootspec=spec\fP
- These are used by
- .IR 9load (8)
- to identify the directory
- .I dir
- to make the root directory for the kernel, and the
- file system specifier
- .I spec
- (see
- .B mount
- in
- .IR bind (2))
- on which it can be found.
- These are usually used to test variant file systems for distributions, etc.
- .SS \fLbootargs=value\fP
- The value of this variable is passed to
- .IR boot (8)
- by the kernel as the name of the root file system.
- It is typically used to specify additional arguments to
- pass to
- .IR kfs (4)
- or
- .IR ipconfig (8).
- For example, if the system is to run from a local
- .IR kfs (4)
- partition, the definition might read
- .BR bootargs=local!#S/sdC0/fs .
- See
- .IR boot (8)
- for more.
- .SS \fLnobootprompt=value\fP
- Suppress the
- .L "root from"
- prompt and use
- .I value
- as the answer instead.
- .SS \fLuser=value\fP
- Suppress the
- .L "user"
- prompt and use
- .I value
- as the answer instead.
- .SS \fLdebugfactotum=\fP
- Causes
- .IR boot (8)
- to start factotum with the
- .B -p
- flag, so that it can be debugged.
- .SS \fLventi=value\fP
- When booting from a local fossil server backed by a local
- or remote venti server,
- this variable specifies how to establish the connection to the
- venti server.
- See
- .IR boot (8)
- for more.
- .SS \fLcfs=value\fP
- This gives the name of the file holding the disk partition
- for the cache file system,
- .IR cfs (4).
- Extending the
- .B bootargs
- example, one would write
- .BR cfs=#S/sdC0/cache .
- .SS \fLbootdisk=value\fP
- This deprecated variable was used to specify the disk used by
- the cache file system and other disk-resident services.
- It is superseded by
- .B bootargs
- and
- .BR cfs .
- .SS \fLpartition=value\fP
- This defines the partition table
- .IR 9load (8)
- will examine to find disk partitioning information.
- By default, a partition table in a Plan 9 partition
- is consulted; if no such table is found, an old-Plan 9
- partition table on the next-to-last or last sector
- of the disk is consulted.
- A value of
- .B new
- consults only the first table,
- .B old
- only the second.
- .SS \fLfs=a.b.c.d\fP
- .SS \fLauth=a.b.c.d\fP
- These specify the IP address of the file and authentication server
- to use when mounting a network-provided root file system.
- They are used only if the addresses cannot be determined via DHCP.
- .SS PROCESSOR
- .SS \fL*norealmode=\fP
- The PC kernel switches the processor to 16-bit real mode
- to run BIOS interrupts, for example to find the memory map or to enable VESA.
- This variable disables such switches.
- .SS \fL*noe820scan=\fP
- When available, the PC kernel uses the BIOS E820 memory map
- to size memory. This variable disables the scan.
- .SS \fL*maxmem=value\fP
- This defines the maximum physical address that the system will scan when sizing memory.
- By default the PC operating system will scan up to 3.75 gigabytes
- (0xF0000000, the base of kernel virtual address space), but setting
- .B *maxmem
- will limit the scan.
- .B *maxmem
- must be less than 3.75 gigabytes.
- This variable is not consulted if using the E820 memory map.
- .SS \fL*kernelpercent=value\fP
- This defines what percentage of available memory is reserved for the kernel allocation pool.
- The remainder is left for user processes. The default
- .I value
- is
- .B 30
- on CPU servers,
- .B 60
- on terminals with less than 16MB of memory,
- and
- .B 40
- on terminals with memories of 16MB or more.
- Terminals use more kernel memory because
- .IR draw (3)
- maintains its graphic images in kernel memory.
- This deprecated option is rarely necessary in newer kernels.
- .SS \fL*nomce=value\fP
- If machine check exceptions are supported by the processor,
- then they are enabled by default.
- Setting this variable to
- .B 1
- causes them to be disabled even when available.
- .SS \fL*nomp=\fP
- A multiprocessor machine will enable all processors by default.
- Setting
- .B *nomp
- restricts the kernel to starting only one processor and using the
- traditional interrupt controller.
- .SS \fL*ncpu=value\fP
- Setting
- .B *ncpu
- restricts the kernel to starting at most
- .I value
- processors.
- .SS \fL*pcimaxbno=value\fP
- This puts a limit on the maximum bus number probed
- on a PCI bus (default 255).
- For example, a
- .I value
- of 1 should suffice on a 'standard' motherboard with an AGP slot.
- This, and
- .B *pcimaxdno
- below are rarely used and only on troublesome or suspect hardware.
- .SS \fL*pcimaxdno=value\fP
- This puts a limit on the maximum device number probed
- on a PCI bus (default 31).
- .SS \fL*nopcirouting=\fP
- Disable pci routing during boot. May solve interrupt routing
- problems on certain machines.
- .SS \fL*nodumpstack=\fP
- Disable printing a stack dump on panic.
- Useful if there is only a limited cga screen available,
- otherwise the textual information about the panic may scroll off.
- .\" .SS \fL*nobios=\fP
- .\" what does this do? something with pci
- .SS \fLioexclude=value\fP
- Specifies a list of ranges of I/O ports to exclude from use by drivers.
- Ranges are inclusive on both ends and separated by commas.
- For example:
- .EX
- ioexclude=0x330-0x337,0x430-0x43F
- .EE
- .SS \fLumbexclude=value\fP
- Specifies a list of ranges of UMB to exclude from use by drivers.
- Ranges are inclusive on both ends and separated by commas.
- For example:
- .EX
- umbexclude=0xD1800-0xD3FFF
- .EE
- .SS \fLapm0=\fP
- This enables the ``advanced power management'' interface
- as described in
- .IR apm (3)
- and
- .IR apm (8).
- The main feature of the interface is the ability to watch
- battery life (see
- .IR stats (8)).
- It is not on by default because it causes problems on some laptops.
- .SS VIDEO
- .SS \fLmonitor=value\fP
- .SS \fLvgasize=value\fP
- These are used not by the kernel but by
- .I termrc
- (see
- .IR cpurc (8))
- when starting
- .IR vga (8).
- .SS \fL*dpms=value\fP
- This is used to specify the screen blanking behavior of the MGA4xx
- video driver.
- Values are
- .BR standby ,
- .BR suspend ,
- and
- .BR off .
- The first two specify differing levels of power saving;
- the third turns the monitor off completely.
- .SS NVRAM
- .SS \fLnvram=file\fP
- .SS \fLnvrlen=length\fP
- .SS \fLnvroff=offset\fP
- This is used to specify an nvram device and optionally the length of the ram
- and read/write offset to use.
- These values are consulted by
- .I readnvram
- (see
- .IR authsrv (2)).
- The most common use of the nvram is to hold a
- .IR secstore (1)
- password for use by
- .IR factotum (4).
- .SS \fLnvr=value\fP
- This is used by the WORM file server kernel to locate a file holding information
- to configure the file system.
- The file cannot live on a SCSI disk.
- The default is
- .B fd!0!plan9.nvr
- (sic),
- unless
- .B bootfile
- is set, in which case it is
- .B plan9.nvr
- on the same disk as
- .BR bootfile .
- The syntax is either
- .BI fd! unit ! name
- or
- .BI hd! unit ! name
- where
- .I unit
- is the numeric unit id.
- This variant syntax is a vestige of the file server kernel's origins.
- .SH Multiple Configurations
- .PP
- A
- .B plan9.ini
- file may contain multiple configurations,
- each within a block beginning with a line
- .EX
- [tag]
- .EE
- A special block with the tag
- .B menu
- gives a list of blocks from which the user may
- interactively select the contents of
- .BR plan9.ini .
- There may also be multiple blocks with the tag
- .B common
- which will be included in all selections;
- if any lines appear in
- .B plan9.ini
- before the first block,
- they are treated as a
- .B common
- block.
- .LP
- Within the
- .B menu
- block the following configuration lines are allowed:
- .SS \fLmenuitem=tag[, description]
- The block identified by
- .B tag
- will appear in the presented menu.
- The menu entry will consist of the
- .B tag
- unless the optional
- .B description
- is given.
- .SS \fLmenudefault=tag[, timeout]
- Identifies a default block to be given in the
- menu selection prompt.
- If the optional
- .B timeout
- is given (in seconds),
- the default block will be selected if there is no user
- input within the timeout period.
- .SS \fLmenuconsole=value[, baud]
- Selects a serial console upon which to present the menu
- as no
- .B console
- or
- .B baud
- configuration information will have been processed yet
- (the
- .B plan9.ini
- contents are still to be decided...).
- .LP
- In response to the menu being printed,
- the user is prompted to select a menu item from the list.
- If the numeric response is followed by a
- .BR p ,
- the selected configuration is printed and the menu presented
- again.
- .LP
- The line
- .EX
- menuitem=tag
- .EE
- is prefixed to the selected configuration as an aid to
- user-level initialization scripts.
- .SH EXAMPLES
- .PP
- A representative
- .BR plan9.ini :
- .IP
- .EX
- % cat /n/c:/plan9.ini
- ether0=type=3C509
- mouseport=ps2
- modemport=1
- serial0=type=generic port=0x3E8 irq=5
- monitor=445x
- vgasize=1600x1200x8
- %
- .EE
- .PP
- Minimum CONFIG.SYS and AUTOEXEC.BAT files to use
- COM2 as a console:
- .IP
- .EX
- % cat /n/c:/config.sys
- SHELL=COMMAND.COM COM2 /P
- % cat /n/c:/autoexec.bat
- @ECHO OFF
- PROMPT $p$g
- PATH C:\eDOS;C:\eBIN
- mode com2:96,n,8,1,p
- SET TEMP=C:\eTMP
- %
- .EE
- .PP
- Simple
- .B plan9.ini
- with multiple configurations:
- .IP
- .EX
- [menu]
- menuitem=vga, Plan 9 with VGA
- menuitem=novga, Plan 9 no automatic VGA
- menudefault=vga
- [vga]
- monitor=multisync135
- vgasize=1024x768x8
- [novga]
- [common]
- ether0=type=i82557
- audio0=type=sb16 port=0x220 irq=5 dma=1
- .EE
- .PP
- With this, the following menu will be presented on boot:
- .IP
- .EX
- Plan 9 Startup Menu:
- ====================
- 1. Plan 9 with VGA
- 2. Plan 9 no automatic VGA
- Selection[default==1]:
- .EE
- .PP
- Selecting item 1 generates the following
- .B plan9.ini
- to be used by the remainder of the bootstrap process:
- .IP
- .EX
- menuitem=vga
- monitor=multisync135
- vgasize=1024x768x8
- ether0=type=i82557
- audio0=type=sb16 port=0x220 irq=5 dma=1
- .EE
- .PP
- and selecting item 2:
- .IP
- .EX
- menuitem=novga
- ether0=type=i82557
- audio0=type=sb16 port=0x220 irq=5 dma=1
- .EE
- .SH "SEE ALSO"
- .IR 9load (8),
- .IR booting (8),
- .IR boot (8)
- .SH BUGS
- Being able to set the console device to other than a
- display is marginally useful on file servers; MS-DOS
- and the programs which run under it are so tightly bound
- to the display that it is necessary to have a display if any
- setup or reconfiguration programs need to be run.
- Also, the delay before any messages appear at boot time
- is disconcerting, as any error messages from the BIOS
- are lost.
- .PP
- This idea is at best an interesting experiment that needs another iteration.
|