Commit Graph

208 Commits

Author SHA1 Message Date
soren
b63ced481c Note kernel load adress change. 2001-11-22 01:30:03 +00:00
soren
60ae71115a Change the kernel load address offset from 512K to 420K, the Irix
convention for debugging kernels.
2001-11-22 01:11:51 +00:00
thorpej
b2fe046c8c Move the kernel forward in memory, starting it 512K in from the
bottom of RAM.  The bootloader is now loaded 2K in from the bottom
of RAM, so we need to make space for it.
2001-11-22 00:59:23 +00:00
thorpej
aabfa72384 - Clean up the bootloader Makefiles somewhat.
- Build an ECOFF version of the bootloader as "boot".  As a temporary
  measure (due to a bug in libbfd which has not yet been fixed, but
  for which a work-around exists as a patch), install and ELF version
  of the bootload as well as "boot.elf".  "boot.elf" will go away once
  the toolchain issue is resolved.
2001-11-22 00:58:07 +00:00
thorpej
3975cecee7 - Adjust bootinfo to work sanely in an ARCS world, and pass some
info along to the kernel (currently just the symbol table info).
- Don't bother with the startprog dance; we don't need to do anything
  special, here, so just call the entry point directly.
- A bunch of random cleanup.
2001-11-21 23:33:17 +00:00
thorpej
38afb59582 - Check for provided bootinfo from the bootloader. If we find it,
save off DDB symbol table information.
- Make loading of memory work reliably with the bootloader; for each
  candidate memory type from ARCS (which now includes LoadedProgram),
  check to see if the kernel is within that chunk, and load the pages
  around it if it is.
2001-11-21 23:27:20 +00:00
thorpej
741c7a2997 sbic -> wd33c93, in preparation for the core driver going into
sys/dev/ic.
2001-11-21 23:22:25 +00:00
soren
482d429ddc Install loader in /usr/mdec. 2001-11-21 22:14:51 +00:00
soren
57bd30a92c s/pmax/sgimips/ in comments. 2001-11-21 22:13:55 +00:00
thorpej
e2397b7f93 Change symtab info to unsigned longs. 2001-11-21 20:31:49 +00:00
thorpej
4b1d2d4ce9 Add bootinfo stuff for NetBSD/sgimips. Changes to kernel and bootloader
forthcoming.
2001-11-21 20:29:31 +00:00
thorpej
4e63f44f6c Initial cut at a bootloader for NetBSD/sgimips, by Michael Hitch. 2001-11-21 19:09:06 +00:00
thorpej
bcc50e9703 Use strncmp() when looking up volume files. 2001-11-20 23:09:45 +00:00
thorpej
c8f26da0bd - General code cleanup (and enable warnings).
- It's perfectly legal to have an 8 byte volume filename; the trailing
  NUL is not required in this case.
- Default the partition type to "4.2BSD", not "EFS".
2001-11-20 23:07:16 +00:00
rafal
52f4b0490c Stylistic fix to last. 2001-11-20 21:21:03 +00:00
soren
3f54e2c74f Add stand to SUBDIR. 2001-11-20 18:37:00 +00:00
soren
0f71151d6e stand Makefile. 2001-11-20 18:36:31 +00:00
soren
1e6da897d3 Michael Hitch's volume header tool. 2001-11-20 18:35:22 +00:00
soren
5ecc88dc2f Correct previous, pointed out by mhitch:
makebootdev() sets not booted_device but booted_protocol, so test for that.
2001-11-20 18:06:40 +00:00
thorpej
f934d91c74 The 2nd SCSI controller is now supported; remove it from the TODO list. 2001-11-20 17:38:31 +00:00
rafal
6c04d91bae Post Jason's autoconfig cleanup, the DMA tags are actually passed in from
the parent, so we don't need to look at the innards of bus_dma anymore.
Also, remove the Todo item pertaining to autoconfig cleanup from the list
in the comments.
2001-11-20 16:10:49 +00:00
rafal
c4596a56c0 Fix up Jason's last cleanup (thanks for that, btw!!)... Don't attach
hpc child devices that don't match our systype.  Attempting to attach
a wdsc1 on my Challenge S locks the box hard.
2001-11-20 16:09:00 +00:00
lukem
0fa231134c - replace "defopt" with "defparam" for options which must take a value,
as config(8) will warn for value-less defparam options
- minor whitespace/formatting cleanup
- consolidate opt_tcp_recvspace.h and opt_tcp_sendspace.h into opt_tcp_space.h
2001-11-20 14:34:18 +00:00
lukem
03aef4723c cleanup:
options SPACE TAB
	makeoptions TAB
	psuedo-device TAB
	remove trailing whitespace
	replace multiple spaces -> tabs
	options "FOO" -> options FOO
	options "FOO=bar" -> options FOO=bar
	options "FOO=\"bar\"" -> options FOO="\"bar\""
2001-11-20 12:56:17 +00:00
lukem
99bccc3cab - pull in opt_kgdb.h where necessary
- replace opt_kgdb_machdep.h with opt_kgdb.h
- defparam opt_kgdb.h:
	KGDB_DEV KGDB_DEVNAME KGDB_DEVADDR KGDB_DEVRATE KGDB_DEVMODE
- move from opt_ddbparam.h to opt_ddb.h:
	DDB_FROMCONSOLE DDB_ONPANIC DDB_HISTORY_SIZE DDB_BREAK_CHAR SYMTAB_SPACE
- replace KGDBDEV with KGDB_DEV
- replace KGDBADDR with KGDB_DEVADDR
- replace KGDBMODE with KGDB_DEVMODE
- replace KGDBRATE with KGDB_DEVRATE
- use `9600' instead of `0x2580' for 9600 baud rate
- use correct quotes for  options KGDB_DEVNAME="\"com\""
- use correct quotes for  options KGDB_DEV="17*256+0"
- remove unnecessary dependancy on Makefile for kgdb_stub.o
- minor whitespace cleanup
2001-11-20 08:43:19 +00:00
soren
f270ebd294 Remove obsolete comment. 2001-11-19 17:39:54 +00:00
soren
b76c8dbfc9 Remove netbsd.high Ind* load address hack and use a separate
distribution GENERIC instead.
2001-11-19 17:39:31 +00:00
soren
db0828bda0 Remove driver options that don't belong in std.sgimips. 2001-11-19 17:38:24 +00:00
soren
3fe377a8b9 s/sgi/sgimips/
Remove __NO_SOFT_SERIAL_INTERRUPT.
2001-11-19 17:36:41 +00:00
soren
a36dfe843b Since we can get boot device information from both the boot loader
and the firmware, we allow it to be set only once, so the boot
loader is given highest priority.
2001-11-19 17:35:15 +00:00
soren
6413de2df4 Get L2 cache line size from ARCS.
Remove hack to disable (standard) L2 caches.
2001-11-19 17:33:02 +00:00
soren
ce57fc2bba Also check SystemPartition when finding boot device. Especially
when netbooting, it is practical to load the kernel directly.
2001-11-19 17:29:53 +00:00
soren
77a301e0e8 s/sgi/sgimips/ 2001-11-19 17:28:23 +00:00
thorpej
38b076b60c zsc does not needs-count 2001-11-18 08:24:33 +00:00
thorpej
431af33735 Tweak for HPC autoconfig changes. 2001-11-18 08:21:38 +00:00
thorpej
be010c72ef * Clean up HPC autoconfiguration a little. Pass device register and
DMA register offsets, as well as IRQ, to children.  Use direct
  config.  Use machine type/subtype to determine which devices are
  present.
* Add support for the second SCSI controller on the Indigo2.
2001-11-18 08:16:15 +00:00
thorpej
8edf2c6d98 * Add a callback to the front-end for the 33c93 driver to reset
the controller/SCSI bus.
* Implement controller/SCSI bus reset on SGI HPC3 SCSI using the
  "channel reset" bit in the SCSI DMA channel control register.
2001-11-18 05:14:38 +00:00
thorpej
21c0578357 Walk the ARCS device tree to find the L2 cache size. 2001-11-17 01:19:58 +00:00
mhitch
636eb23869 When loadfile() leaves the ELF header at the end of the kernel, it enables
erroneous code that tries to compute the end of the symbol table.  Disable
that for now so that kernels don't hang when booted from the disk.
2001-11-14 22:47:16 +00:00
thorpej
bd15cfaed8 Merge the thorpej-mips-cache branch onto the trunk. This is an
overhaul of how caches are handled for NetBSD's MIPS ports.
2001-11-14 18:26:21 +00:00
thorpej
af66038f73 Merge the thorpej-mips-cache branch onto the trunk. This is an
overhaul of how caches are handled for NetBSD's MIPS ports.
2001-11-14 18:15:10 +00:00
hubertf
95bf3bc4cd add pseudo-device rnd - it's needed by sshd 2001-11-14 13:25:19 +00:00
rafal
1a9f819d84 Make microtime(9) do interpolation to get better-than-hz resolution, if
the platform supplies a clkread function that does something other than
return 0 (which is the default unless overridden by the platorm code).
Supply such a function for the IP22; even if it isn't perfect, it goes
a long way to making ntp usable.

While I'm at it, move the ticks-per-hz variable out of the struct platform
since it's really private to the per-platform interrupt/clock code.

XXX: No clkread function supplied for IP32, since it has other problems --
like a hardcoded ticks-per-hz, but the same code as on the IP22 could be
used.
2001-11-11 17:21:40 +00:00
soren
3566ffe886 Fix vnd pastoes. 2001-11-11 00:38:30 +00:00
wdk
571fbc80c7 Tidy up debug logic
Fix compile errors when DIAGNOSTIC or DEBUG options disabled.
2001-11-10 22:54:54 +00:00
wdk
7f5269c58f NetBSD Disklabel and SGI Volume header support. Based on NetBSD/mipsco
due to its similarities.

Patch has been tested by many people on the sgimips list for some time with
no complaints.

Contributed by: Christopher SEKIYA <wileyc@rezrov.net>
2001-11-10 07:35:17 +00:00
wdk
de81761c50 Complete overhaul of WD33c93 SCSI driver
- Full support for SCSI-2 Tagged commands (enabled by default)
 - Implement save and restore datapointer messages
 - Formalize interface between MI and MD drivers.
 - decouple interface between MD driver and DMA routines
 - Use scsipi layer where appropriate (Tags, Sync Negotiations etc)
 - control blocks stored using kernel pool(9) functions
 - evcnt(9) compliant counters
 - Enable advanced features on later WD33c93 chips.
   (Identify message out phase is hardware assisted)
 - Improved timeout support (one per active control block)
 - Improved MESG_IN and MESG_OUT handling
 - Start to tidy up debugging output
 - Numerous bug fixes and cleanups throughout

Changes are based largely on the NCR53c9x MI driver for ideas on
how to DTRT.
2001-11-10 07:32:42 +00:00
thorpej
e727e3f180 Split elf32 vs. elf64 handling in loadfile(), including support for
each separately and explicitly.  BOOT_ELF is now BOOT_ELF32 and
BOOT_ELF64, and ELFSIZE should no longer be defined in loadfile_machdep.h.
2001-10-31 17:20:45 +00:00
thorpej
90a2bc2cf7 For MIPS kernel Makefiles, don't set ENDIAN in std.${MACHINE}. Instead,
explicitly set MACHINE_ARCH to the appropriate thing.  Makefile.mips will
then set all of the internal variables it needs to accordingly.
2001-10-23 20:40:00 +00:00
mhitch
b216e63487 Use boot arguments to try to determine the boot device. The OSLoadPartition
string, if present, will override the second argument (which may be the
path/kernel being loaded).  This will provide a way to netboot the kernel
and allow the root device be set to a disk partition.
2001-10-18 02:36:33 +00:00