OpenFirmware settings on running system
Ross Gohlke
ross at grinz.com
Fri Sep 25 13:07:03 UTC 2009
It's time for my annual attempt at a working SMP Xserve.
(http://lists.freebsd.org/pipermail/freebsd-ppc/2008-November/003362.html)
So far so good:
% dmesg
...
FreeBSD 8.0-BETA2 #0: Sun Sep 20 19:58:58 CDT 2009
root at rorty:/usr/obj/usr/src/sys/GENERIC_TUNED
cpu0: Motorola PowerPC 7455 revision 2.1, 1000.06 MHz
cpu0: HID0 8450c0bc<EMCP,TBEN,NAP,DPM,ICE,DCE,SGE,BTIC,LRSTK,FOLD,BHT>
real memory = 2135805952 (2036 MB)
avail memory = 2068119552 (1972 MB)
FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
cpu0: dev=ff87f908 (BSP)
cpu1: dev=ff880bc8
...
I have a boot-ready mirror on the second drive.
I would like to be able to change Open Firmware's boot-device setting
while the system is running.
% nvram -p
nvram: /dev/powermac_nvram: No such file or directory
I do have a custom kernel, but powermac_nvram is defined in GENERIC, and
I did not override it. Here are my kernel configurations.
## /usr/src/sys/powerpc/conf/GENERIC_TUNED
include GENERIC
ident GENERIC_TUNED
include GENERIC_STRIPPED
include NOTES_STRIPPED
include PF
maxusers 256
options SMP # Symmetric MultiProcessor Kernel
options EXT2FS # ext2/3fs
## /usr/src/sys/powerpc/conf/GENERIC (unedited)
...
device powermac_nvram # Open Firmware configuration NVRAM
...
## /usr/src/sys/powerpc/conf/GENERIC_STRIPPED (only contains overrides
of GENERIC)
nomakeoptions DEBUG #Build kernel with gdb(1) debug symbols
nooptions KTRACE #ktrace(1) syscall trace support
nooptions STACK #stack(9) support
nooptions AUDIT # Security event auditing
nooptions KDB #Enable the kernel debugger
nooptions DDB #Support DDB
nooptions INVARIANTS #Enable calls of extra sanity
checking
nooptions INVARIANT_SUPPORT #Extra sanity checks of internal
structures, required by INVARIANTS
nooptions WITNESS #Enable checks to detect
deadlocks and cycles
nooptions WITNESS_SKIPSPIN #Don't run witness on spinlocks
for speed
nodevice atapifd # ATAPI floppy drives
nodevice atapist # ATAPI tape drives
nodevice sa # Sequential Access (tape etc)
nodevice dc # DEC/Intel 21143 and various
workalikes
nodevice fxp # Intel EtherExpress PRO/100B
(82557, 82558)
nodevice ulpt # Printer
nodevice urio # Diamond Rio 500 MP3 player
nodevice aue # ADMtek USB Ethernet
nodevice axe # ASIX Electronics USB Ethernet
nodevice cdce # Generic USB over Ethernet
nodevice cue # CATC USB Ethernet
nodevice kue # Kawasaki LSI USB Ethernet
nomakeoptions DEBUG #Build kernel with gdb(1) debug symbols
nooptions KTRACE #ktrace(1) syscall trace support
nooptions STACK #stack(9) support
nooptions AUDIT # Security event auditing
nooptions KDB #Enable the kernel debugger
nooptions DDB #Support DDB
nooptions INVARIANTS #Enable calls of extra sanity
checking
nooptions INVARIANT_SUPPORT #Extra sanity checks of internal
structures, required by INVARIANTS
nooptions WITNESS #Enable checks to detect
deadlocks and cycles
nooptions WITNESS_SKIPSPIN #Don't run witness on spinlocks
for speed
nodevice atapifd # ATAPI floppy drives
nodevice atapist # ATAPI tape drives
nodevice sa # Sequential Access (tape etc)
nodevice dc # DEC/Intel 21143 and various
workalikes
nodevice fxp # Intel EtherExpress PRO/100B
(82557, 82558)
nodevice ulpt # Printer
nodevice urio # Diamond Rio 500 MP3 player
nodevice aue # ADMtek USB Ethernet
nodevice axe # ASIX Electronics USB Ethernet
nodevice cdce # Generic USB over Ethernet
nodevice cue # CATC USB Ethernet
nodevice kue # Kawasaki LSI USB Ethernet
## /usr/src/sys/powerpc/conf/NOTES_STRIPPED
nodevice fdc
nodevice ppc
nodevice splash
# when splash works enable *_saver
nodevice blank_saver
nodevice daemon_saver
nodevice dragon_saver
nodevice fade_saver
nodevice fire_saver
nodevice green_saver
nodevice logo_saver
nodevice rain_saver
nodevice snake_saver
nodevice star_saver
nodevice warp_saver
nodevice daemon_saver
nodevice star_saver
nodevice snake_saver
# isa
nodevice pcii
nodevice tnt4882
# sound
nodevice snd_cmi
# wants gdb_cur
nooption PPC_DEBUG
nooption PPC_PROBE_CHIPSET
nooption SC_NO_MODE_CHANGE
nooption UKBD_DFLT_KEYMAP
## /usr/src/sys/powerpc/conf/PF
device pf
device pflog
device pfsync
options ALTQ
options ALTQ_CBQ # Class Bases Queuing (CBQ)
options ALTQ_RED # Random Early Detection (RED)
options ALTQ_RIO # RED In/Out
options ALTQ_HFSC # Hierarchical Packet Scheduler (HFSC)
options ALTQ_PRIQ # Priority Queuing (PRIQ)
#options ALTQ_NOPCC # Required for SMP build
How can I edit OF boot-device setting while running?
Great work! The system is running smooth and fast right now, though not
doing much... yet.
Thanks,
Ross Gohlke
More information about the freebsd-ppc
mailing list