Commit Graph

18165 Commits

Author SHA1 Message Date
leo 24ae5a32cf We need more 'stand' functions (From Julian Coleman). 1999-03-15 07:46:11 +00:00
nisimura 210ea7eabe - Decouple "ibus" from TURBOchannel.
- Nuke mainbus_softc definition (it's empty).
1999-03-15 07:43:05 +00:00
christos 16f90e3d2a Enable EXEC_ELF32... It only adds 4K to the kernel, and makes an ELF
install floppy to work (from Andrew Gillham)
1999-03-15 07:22:18 +00:00
nisimura 1990f5b094 - Make compilable with 32bit long integer system. 1999-03-15 05:28:07 +00:00
nisimura cfbd3e5737 - Adjust function declarations. 1999-03-15 03:25:33 +00:00
tsubai 79c71e0bae Check the accessibility before reading from configuration space. 1999-03-15 03:03:10 +00:00
nisimura 3ac70670ef - Eliminate 'conf.h' from MIPS common code. 1999-03-15 02:47:10 +00:00
nisimura 17e168c9b3 - Nuke old leftover; round four. This file has little usefuls, and
target MIPS ports are expected to have 'machine/conf.h' if necessary.
1999-03-15 02:43:48 +00:00
tsubai 07e094073c Remove bogus comment. 1999-03-15 02:26:10 +00:00
tsubai da1be4ffd8 Fix mkdep ``cc: No input files'' error when SFILES is empty. 1999-03-15 01:55:32 +00:00
nisimura 10b5625b87 - Nuke old leftover; round three. Remove never-used functions.
XXX Needs to eliminate TURBOchannel exposure here.
1999-03-15 01:54:56 +00:00
tsubai b4374e3ce0 Implement badaddr() and trap machine-check in badaddr. 1999-03-15 01:29:07 +00:00
jonathan ef79649fc1 MI ioasic softc and child-device structs, gc duplicate struct definitions.
Add MI ioasic functions, but dont enable on alpha until tested.
1999-03-15 01:25:26 +00:00
mrg b0eb09de11 remove lderr in "make clean" 1999-03-15 01:15:06 +00:00
mrg c1122adb50 delete netbsd.aout and netbsd.ecoff in "make clean" 1999-03-15 01:12:00 +00:00
jonathan 78bc84c223 Clean up initializers for pmax ioasic children. Use same struct as alpha. 1999-03-14 23:59:53 +00:00
jonathan e662ad5ecc Clean up names for SCC interrupt bits. 1999-03-14 23:59:03 +00:00
is ba07737bc0 Use the 1/256s-resolution when reading the DraCo battery backed clock 1999-03-14 22:42:12 +00:00
jonathan 69d2d27c1b Use bus_space tags and handles, embedded in MD hooks AM7930_{READ_WRITE}_REG
to handle MD delay and bus padding. Tested on sparc2 by David Brownlee.

Should use regmaps, but that breaks sparc pDMA assembly code.
1999-03-14 22:29:00 +00:00
mycroft deab09f540 Only need one of vga_isa and vga_pci. 1999-03-14 10:34:18 +00:00
mycroft cac14a50bc Update to -current, switch to wscons. 1999-03-14 10:31:43 +00:00
dbj 00c8d4dd90 changed dma start alignment from 4 to 16 so that the cache flush
functions always have cache line aligned segments.
continued experimentation with scsi driver.
1999-03-14 10:31:05 +00:00
veego 58d4f7ae24 Add support for future PicassoIV's which use an autoconfig space of 64MB.
The framebuffer base address is then at a different offset.
The patch is from Klaus Burkert.
1999-03-14 09:17:19 +00:00
sommerfe 82f8a7dee9 Turn off biosboot_ser until makefile issues get worked out.. 1999-03-14 05:50:38 +00:00
jonb 6d636069d6 Allow "make depend" to work again. (It currently freaks out since the
SFILES variable is empty...)
1999-03-14 05:03:35 +00:00
simonb e4dd1abb05 Merge contents of filesystem.c into conf.c, and remove declaration of
errno from conf.c and put it in boot.c.
1999-03-14 00:57:06 +00:00
fvdl 35d517b9f1 Hack to make biosboot_ser work.
XXX The makefile structure in src/sys/arch/i386/stand is very bad.
1999-03-14 00:04:06 +00:00
is bed6716015 Identify the chip type when attaching. 1999-03-13 22:43:30 +00:00
is a02a989bcf The 53c720 and up are really different. For example, the method to determine,
when disconnecting etc., how much data were transferred, has changed.
Symptom: SIOP invalid instructions when doing data transfers to disks that
disconnect.
XXX The bits etc. need to be defined correctly in the siopreg.h file, and
symbolic values used.
1999-03-13 21:30:55 +00:00
tron 32e0182e15 $(OBJS) -> ${OBJS} 1999-03-13 20:58:25 +00:00
ragge 4d77aa3c15 Avoid warning if !QBA. 1999-03-13 20:26:50 +00:00
drochner c0433847af make complaints about missing platform support match reality 1999-03-13 19:46:58 +00:00
is 48c33b2e56 Adjust to match the assembled code 1999-03-13 19:42:52 +00:00
ragge 0c86849162 Oops, forgot this file. 1999-03-13 15:44:01 +00:00
ragge f9b0eec83a Change vsbus to take a locator for all devices.
Figure out interrupt vector/mask on vsbus by forcing all devices to
generate interrupts in the match routine, like on unibus.
1999-03-13 15:16:47 +00:00
ragge 9f6b94f820 Outdated files. 1999-03-13 15:14:29 +00:00
drochner 71f26e545a pull in a part of [nisimura-pmax-wscons] rev 1.5.4.3: remove unneeded
kdbpeek() prototype
1999-03-13 13:16:29 +00:00
drochner 6bcfb2cd72 g/c regdef.h 1999-03-13 13:07:43 +00:00
drochner 93d26ccd4b g/c regdef.h (went into asm.h) 1999-03-13 13:05:49 +00:00
drochner 7482575685 regdef.h is gone 1999-03-13 11:24:59 +00:00
drochner 0265284ce4 This file is unneeded since <mips/regdef.h> went into <mips/asm.h>. 1999-03-13 11:24:11 +00:00
drochner 2b8eb20358 Remove unneeded <mips/regdef.h>. Its contents went into asm.h while ago. 1999-03-13 11:20:55 +00:00
jonathan 9797e6cf17 Pad out mips1 inter-tick delay loop with two nops, to match
gcc-2.7.2.2+myc1 calibration.
XXX rewrite in assembler to remove compiler dependency.
1999-03-13 00:05:39 +00:00
perry 21ce7a4f23 nuke ovbcopy reference 1999-03-12 23:08:11 +00:00
perry 2bbefd75ec remove ovbcopy reference 1999-03-12 23:05:42 +00:00
perry 240d1ad927 remove ovbcopy references 1999-03-12 23:03:31 +00:00
perry 5b25cace4c ovbcopy -> memmove 1999-03-12 22:59:23 +00:00
perry 02a2323b29 ovbcopy->memmove 1999-03-12 22:56:21 +00:00
perry a92175a153 nuke ovbcopy 1999-03-12 22:54:58 +00:00
perry d446fb449c exterminate ovbcopy. patches provided by Erik Bertelsen, pr-7145 1999-03-12 22:42:30 +00:00
is d662e94812 fix some typos introduced when integrating the driver 1999-03-12 20:17:47 +00:00
sommerfe fc47c0c742 Also build serial bootblocks by default, installing into
/usr/mdec/biosboot_ser.sym
Change Makefile.booters to not assume `version' file is in source directory.
1999-03-12 16:07:57 +00:00
nisimura e846ee9b9b - Nuke old leftover; round two. XXX Still there 3MAX's IOASIC disguise.
Rework will be done in conf/files.pmax, anyway.
1999-03-12 08:15:27 +00:00
nisimura 57edf91cbc - Nuke old leftover bogocities, round one; externs for non-existent
functions, less-intuitive #define's in inappropriate header files.
1999-03-12 07:13:14 +00:00
nisimura f875c6618a - Exclude 'tc_machdep.h' from installed in /usr/include/machine/ directory. 1999-03-12 07:03:21 +00:00
tsubai f7c4c841ed Don't remove .mdebug section. 1999-03-12 06:42:48 +00:00
sommerfe df8e0043e3 Fix compile warning in getcomaddr() 1999-03-12 04:14:37 +00:00
fvdl 8371eb7a88 Clean up the BIOS disk matching code a bit (better naming, one structure
and sysctl to export to userland). Also, only use total number of sectors
given in the extended parameters if the physical chs geometry is
marked invalid. Hopefully fixes a problem where BIOSs would not correctly
fill in this field.
1999-03-12 01:01:41 +00:00
fvdl bc38bb1052 Declare nhd to be unsigned char, as we're only copying one byte to it.
From Matthias Drochner.
1999-03-11 12:34:36 +00:00
fair 02b2bb48b7 Apply patch from PR#6443 to set LED properly when BLINK option is
not set.
1999-03-11 06:44:40 +00:00
mark 303ca6c449 Make pmap_extract() understand L2 large page PTEs. Normally small page
PTEs are used but during bootstrap the kernel may be mapped with large page
PTE to save TLB entries.
1999-03-10 20:54:17 +00:00
sommerfe 2ec4ac3d65 Increase default MSGBUFSIZE due to more and chattier drivers in -current 1999-03-10 18:02:22 +00:00
jonb fae90a3604 Move DEFAULT to GENERIC so make snapshot works. Comment out makeoptions
line in INSTALL so it will config.
1999-03-10 13:35:33 +00:00
drochner b477d700f2 add support for 3c905b TX 1999-03-10 10:37:38 +00:00
mycroft 5ec1e5beab Add an ieee.h. 1999-03-10 08:13:01 +00:00
ross 0325be06dd New file, included if present for ${MACHINE_ARCH} by bsd.kmod.mk. 1999-03-10 06:41:48 +00:00
eeh 6158292dbb PMAP_PGARG doesn't do the right thing for us. 1999-03-10 01:54:16 +00:00
fvdl bdb770bc34 Create a list of native disks too, and make it retrievable. It contains
all matching BIOS disks per entry, so that we have complete match info.
Enable the matching code.
1999-03-10 01:28:24 +00:00
is 5cbe57d881 Missing part of CS Mk. III changes 1999-03-09 20:31:34 +00:00
is 0fed7b2d06 The SCSI clock is 50 MHz for this board. 1999-03-09 20:25:46 +00:00
fvdl 06d4fb4d0d While at it, add K6-III recognition too. 1999-03-09 16:05:34 +00:00
fvdl 70a96d92da Recognize Pentium III 1999-03-09 15:48:15 +00:00
is d88de4e70d Don't predefine anything 1999-03-09 15:14:32 +00:00
is dab82f6dd3 Regenerate. 1999-03-09 15:09:00 +00:00
ragge fb6b53bfe4 Basic KA48 (VAXstation 4000 VLC) support.
From Michael Kukat <michael@camaronet.de>
1999-03-09 12:57:57 +00:00
is 58a9c554c6 Regenerated. 1999-03-09 12:22:13 +00:00
is 75774fd854 Fix language. 1999-03-09 12:20:41 +00:00
is aed99bc63d Pacify CPP. 1999-03-09 12:15:30 +00:00
is 22e4689589 Add an entry for the Cyberstorm Mk. III / CyberstormPPC SCSI driver by
Michael Hitch.
1999-03-09 11:58:56 +00:00
ragge 98e97e2329 unsigned int -> int. 1999-03-09 11:43:13 +00:00
mrg 3ca216fd8a fix NRND usage 1999-03-09 00:37:01 +00:00
drochner 743494ae88 add a function to pass the "memory map" ie the outcome of INT15/0xe820,
to the kernel
1999-03-08 21:44:48 +00:00
drochner 6fb323453d add a definition to pass the "memory map", ie the outcome of INT15/0xe820,
to the kernel
1999-03-08 21:42:48 +00:00
drochner 0cb921e61e change the interface for getmementry() to hold the iterator in an
argument and to return success or error explicitely.
Now we can "error" and "end of list" cleanly; this should fix the
problem where the last list element was ignored.
1999-03-08 21:38:28 +00:00
tsubai 6662cda7a2 Use mips/ecoff_machdep.h. 1999-03-08 06:38:06 +00:00
tsubai 8b3054fb87 Add big-endian definitions. 1999-03-08 06:36:59 +00:00
tsubai 8b5452906b Use objcopy to convert ELF kernel to ECOFF. 1999-03-08 06:33:26 +00:00
fvdl 1cd0b43e81 bios disk matching needs more work for a few cases. Disable until
I have time to look at it further.
1999-03-08 01:26:00 +00:00
fvdl eed16d934a Match BIOS <-> NetBSD devices after autoconf. Match by a checksum
and a partition table compare. Define a sysctl to get the info
out.
1999-03-08 00:12:28 +00:00
fvdl 5db52a7a6b Add some fields to the already defined, but unused, bootinfo structure
for BIOS geometry. Define CPU_BIOS_GEOM sysctl value in cpu.h.
1999-03-08 00:10:42 +00:00
fvdl f8e221511b * query BIOS geometry information, possibly using the int 13 extensions.
* pass them on to the kernel
* print a message if the 2nd stage bootloader returns (i.e. fails)
  instead of just hanging.
1999-03-08 00:09:24 +00:00
pk e951781842 _C_LABEL() is not implied by _ENTRY(). 1999-03-07 22:36:04 +00:00
is 6505010dab Added very preliminary version of Symbios 53c7[27]0c driver and Cyberstorm
Mk. III SCSI backend, by Michael Hitch.
XXX No wide transfers supported at the moment.
1999-03-07 22:16:19 +00:00
he e9f9c1625e Add handling of OMAGIC files, where exec header isn't part of the
text segment.  Needed for woring installboot, since biosboot.sym is OMAGIC.
1999-03-07 20:03:44 +00:00
ragge e1305e82d9 New boot program for vax. Appearance similar to the i386 boot blocks. 1999-03-06 16:36:04 +00:00
ragge 816acbe3ac pmap_physseg must be visible. 1999-03-06 11:11:11 +00:00
mycroft e7f1ddf4a1 Update for psm -> pms conversion. 1999-03-06 06:12:49 +00:00
jonathan 0086af45ef DDB command `mach kvotop' to map kernel-virtual addreses to physical addresses. 1999-03-06 02:45:54 +00:00
mycroft 8a90f14119 Brace ourselves for egcs... 1999-03-06 01:29:53 +00:00
mhitch 263d2c47a5 Read-only unnmanaged pages on MIPS3 need the RO attribute bit, otherwise the
tlbmod exception panics.  This appears to have been incorrect even in the pica
pmap.c, which I pulled in for the pmax.  Fixes Xcfbpmax crashes on R40x0
systems with sfb framebuffer.

Fix resident_count tracking so it doesn't go negative.  UVM will change a
page mapping without removing the original mapping.  That was causing a
problem early on when getting UVM working on the mips, and the explicit
pmap_remove() done by pmap_enter() was decrementing the resident_count.
Do the pmap_remove() first, then check if the current mapping is not valid
and increment the resident_count.
1999-03-05 22:25:07 +00:00
mhitch 12ec406bcf Remove a couple of 'XXX MIPS3?' comments in the tlbmod exeception handling -
I now know what it's doing, and it is correct for MIPS3.
1999-03-05 22:18:07 +00:00
fvdl 5a32d4bb8b Make bootblocks really work this time. From Christos. 1999-03-05 20:33:08 +00:00
pk 3846cac1e1 Use `-Ttext' switch & collect ld options in LINKFLAGS. 1999-03-05 11:13:39 +00:00
pk da1407c412 Use <machine/asm.h> to construct C identifiers. 1999-03-05 11:12:16 +00:00
pk 994c338f0a Apply C_LABEL() to `esym' too. 1999-03-05 11:07:03 +00:00
pk ebd1f5abc9 Have pseudo function return a value. 1999-03-05 10:55:55 +00:00
pk 29db4ce692 Use macros from <machine/asm.h> to construct C labels. 1999-03-05 10:45:25 +00:00
pk a1aa41e201 consinit: cover all cases. 1999-03-05 08:30:33 +00:00
tsubai 61fbe51007 First-cut of profiling support.
XXX userland only, for now.
1999-03-05 07:59:13 +00:00
mycroft 69d7e3bcdc Nuke wdc at isapnp. 1999-03-05 07:33:42 +00:00
mycroft 0d847118f6 XXX Disable PnP until pcic_isapnp works on this port. 1999-03-05 07:33:19 +00:00
scottr 2ea6ea5db5 Add the PowerBook 170 to what appears to be the correct
class of systems, based on the Apple dev notes for this system.
1999-03-05 06:45:41 +00:00
scottr 44a3f70740 Remove ADB_DEBUG; it's not fatal, but it adds a bunch of code that's
disabled by default.
1999-03-05 06:33:18 +00:00
tsubai 5023765f61 Adapt Open Firmware 3.x. 1.x and 3.x are not bug-compatible... 1999-03-05 06:21:17 +00:00
tsubai 4bdf0d9244 Modify parseargs() so that device names can contain '-'. 1999-03-05 06:18:38 +00:00
tsubai c6a8ff5d24 RSS accounting. 1999-03-05 06:11:18 +00:00
tsubai 96f0fb14a1 Add RSS accounting. 1999-03-05 06:10:48 +00:00
lukem 6bf077c969 support BUFCACHE (a la the work i did for the i386, etc)
XXX: this worked a while ago when i last tested, but i haven't
compiled it recently. the code looks sane, however
1999-03-05 03:26:36 +00:00
kleink 9fe70fa4aa Need to include DDB headers only if DDB is defined. 1999-03-04 23:18:28 +00:00
christos 4b494ca224 Fix the symbol reading problem... 1999-03-04 20:46:23 +00:00
is 946db35c9b Modifications to aucc.c for more input formats and 14bit stereo output.
By Bernardo Innocenti, submitted as PR 6787.
Some KNF-ifying done by myself, so you might want to blame me instead
if the original patch worked for you.
	-is
1999-03-04 20:45:01 +00:00
drochner 66f3455141 make the mipse[lb]->mips translation really work
(the S/// doesn't work as I'm now telling the 3rd time),
put the translation onto a separate line to make it more understandable
1999-03-04 19:46:09 +00:00
dbj bb8f1300ce moved declaration of nextdma_intr into correct header file. 1999-03-04 14:18:25 +00:00
gwr 3828f3a600 Add idprom.c and libsa files that are now separate
(sprintf.c subr_prf.c ...)
1999-03-04 08:19:38 +00:00
gwr 8cf14656b3 On Sun3X machines, use the PROM sif_macaddr function,
but only on PROM 3.0 or later.  With older PROMs, ask
the idprom module to find it (just like on the Sun3).
1999-03-04 08:13:42 +00:00
gwr 631e2be71e Separate checksum function from the fetch/copy functions.
Compute the checksum on only IDPROM_CKSUM_SIZE bytes.
1999-03-04 08:06:59 +00:00
gwr 78eab1b1b9 Replace sun3_etheraddr with sun3_getidprom (used by idprom.c) 1999-03-04 07:56:41 +00:00
chs ae4890afdf fix printf format types and other stale DEBUG code. 1999-03-04 06:47:21 +00:00
chs 6b8f2e95a4 fix printf format types. 1999-03-04 06:46:23 +00:00
gwr 69dc3a4695 Add IDPROM_CKSUM_SIZE 1999-03-04 05:57:18 +00:00
mjacob 7c785b8a35 Well, sizeof needs to be printed with a %lu- I guess not many people build
debug kernels!
1999-03-04 02:16:56 +00:00
nisimura 7c40ddedec - Nuke old leftover. This has no useful information and not used by any
other files.
1999-03-04 01:48:09 +00:00
tron 6b8842ab8e Include "bsd.prog.mk" earlier so that "CFLAGS" doesn't get clobbered. 1999-03-03 20:32:58 +00:00
tron d897bddc77 Fix creation of keymap files. 1999-03-03 19:54:05 +00:00
leo 206c18b1cb Dump max. datasize (MAXDSIZ) to 64MB and decouple the maximum stack size
(MAXSSIZ) from the MAXDSIZ.
1999-03-03 16:25:01 +00:00
dbj 1f4e96b222 continued experimentation trying to understand why we drop
scsi write completion interrupts (the dma appears to complete ok)
Now copy read tail buffer after we bus_dma_sync it and not before.
1999-03-03 16:02:23 +00:00
jonathan 3eeb52dee0 Makefile ${MACHINE_ARCH} changes for mips{eb,el}, as suggested by
Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
1999-03-03 12:00:18 +00:00
simonb 5129c4fcd5 Fix spel in comment. 1999-03-03 06:46:02 +00:00
itohy a2bbc02716 Fix parameter type mismatch. 1999-03-02 18:18:38 +00:00
pk cf93b65b10 Print version prettier. 1999-03-02 13:41:03 +00:00
pk e2909faa19 Sanatize consinit() a bit. 1999-03-02 13:40:05 +00:00
jonathan 74c847de33 Fix up eliding nested interrupts. 1999-03-02 12:23:58 +00:00
dbj e7058e7205 turn on diagnostic check in dma for controller bits at shutdown.
adjusted esp overrun to avoid diagnostic check triggering.
1999-03-02 12:11:24 +00:00
jonathan 19ad1c6c19 Re-enable 3MIN clock intrs after servicing. Prepare to do same for ttys. 1999-03-02 09:37:35 +00:00
jonathan 004971519d Do callouts for IOCTL asic lance interrupts before SCSI callouts. 1999-03-02 09:24:17 +00:00
nisimura 370ab4d04e - Make compilable with DECstation. Looks running well on MI SCSI enabled
kernel.  Will be relocated to sys/dev/tc/ soon.
1999-03-02 01:44:30 +00:00
thorpej 673ddc8f39 Style nits in last. 1999-03-01 22:24:53 +00:00
scottr 624b6ac9a6 Implement the BUFCACHE kernel config option. 1999-03-01 21:32:24 +00:00
matthias 470ebb82a6 Define PMAP_NEED_PROCWR and make pmap_procwr flush the icache.
Thank's to Ignatios Souvatzis noticing this.
1999-03-01 14:27:59 +00:00
simonb 1397fd691b fix spel. 1999-03-01 12:46:16 +00:00
simonb d9c1c30e0e If we get an error (file or bootblocks too big), unlink xxboot and
bootxx and exit(1) so a make will fail.  Especially in the too big
case, we don't want a make to work!
1999-03-01 11:52:34 +00:00
mark 98c62c02c3 Since all the calls to the postmortem debug code have been removed by
various folks, the actual code can be removed as well.
1999-03-01 10:01:52 +00:00
jonathan 0d4c6bb54a Recalibrate MIPS3 delay constants.
XXX mips4, faster clocks than 100MHz?
1999-03-01 08:37:05 +00:00
mark d4a3aa46b4 Add support for tracing other processes with trace /t. 1999-03-01 05:48:31 +00:00
simonb 19893da01b Add a callback to the PROM routine clear_cache. Not needed now, but
used in two-stage bootblocks.
1999-03-01 04:05:18 +00:00
simonb 33fe56f80f Fix prototype for clear_cache (takes an address and length, not void). 1999-03-01 04:01:50 +00:00
kim d3a3d58726 Try not to run when kernel is in secure mode. 1999-03-01 01:05:51 +00:00
simonb 19221fa28e A 5800 is a kn5800. 1999-03-01 00:18:13 +00:00
jonathan 5f9b5ac4f4 Garbage-collect pmax writebuffer drain when invalidating caches, pass 0:
Change `#ifdef pmax' to `#ifdef PMAX_CACHEFLUSH_FORCES_WBFLUSH'.
1999-02-28 21:53:00 +00:00
mhitch cb8e3b18a7 Change switch_exit() to use the *current* proc0 stack pointer, instead of
the *initial* stack pointer.  The proc0 stack is being used by proc0 (i.e.
uvm_scheduler).  This had been working because switch_exit() wasn't
overwriting any critical areas of the stack - unless kernel profiling
was turned on.
1999-02-28 20:36:31 +00:00
ross e47e3c9f45 schedclk() -> schedclock(), for consistency with hardclock(), statclock(), ...
update comments for recent scheduler mods
1999-02-28 18:14:57 +00:00
explorer 3ebb419571 Update to slightly altered rnd_attach_source() api 1999-02-28 17:08:05 +00:00
scw 5a1959a811 Push 'curproc' on the stack, not 'cachectl'. (I own Ignatios one brick :) 1999-02-28 16:49:04 +00:00
drochner d57c7b76ca replace ENTRY() label in data segment which broke the code completely 1999-02-28 11:45:44 +00:00
mark 3aca0028f1 Fix else ambiguity. 1999-02-28 10:01:08 +00:00
mark 8b41c31868 Fix compiler warning. 1999-02-28 09:59:33 +00:00
is 04e9e604aa Regenerate. 1999-02-28 07:45:13 +00:00
is c3f462a037 Alas, Melody boards don't configure in a DraCo. 1999-02-28 07:42:47 +00:00
scottr e640c5d7cc Move all IPL setup to intr.c, and do some sanity checking. 1999-02-28 04:52:07 +00:00
mark b8ca758af8 Implement pmap_procwr() the arm32 part of fix for pr 6152. 1999-02-28 01:49:25 +00:00
eeh 89c4b1c360 Let's try to make prom_cnget() work. 1999-02-28 00:29:24 +00:00
eeh b6bf56be36 Use block load/store in pmap_zero_page()/pmap_copy_page(). 1999-02-28 00:26:46 +00:00
eeh 1f9186e111 Teach it some VIS instructions. 1999-02-28 00:23:58 +00:00
eeh 4ffa956fbb Fix up alignment issues dumping physical memory. 1999-02-28 00:22:32 +00:00
is 27fc050f1d Oops.
Forgot to commit this LONG ago.
1999-02-27 20:46:56 +00:00
is 0fe440926c Correct type of 3rd argument. 1999-02-27 19:31:58 +00:00
tsubai 78665b6502 Increase default data size to compile libbfd without `virtual memory
exhausted'.  Suggested by Scott Reynolds.
1999-02-27 18:32:31 +00:00
pk f008a1bbd0 Missing `break'. 1999-02-27 16:13:59 +00:00
pk 49035b27c8 Do not call printf() from a CPU that is spinning up; defer the probe
messages to cpu_attach() where the boot processor takes care of them.
This also necessitates a slight change in the way the FPU name is stored.
1999-02-27 13:11:21 +00:00
mark d6f8b575ea Add PCI-PCI bridge device.
Up maxusers to 32.
1999-02-27 11:19:25 +00:00
mark bbd7276407 Add PCI-PCI bridge devices. 1999-02-27 11:18:27 +00:00
mark 54e053627e Implement bus_space_{read,write}_region_2().
Make bus_space_copy_region_2() work correctly for overlapping regions.
1999-02-27 11:14:27 +00:00
mark 77d06b9612 Remove a debug hack. 1999-02-27 11:12:44 +00:00
scottr d32ed292af defopt BUFCACHE and BUFPAGES. 1999-02-27 06:39:34 +00:00
scottr 21c8d6ed43 Fix tyop in last. 1999-02-27 05:28:35 +00:00
scottr c1037ea51f Support the BUFCACHE option. 1999-02-27 03:26:09 +00:00
jonathan 63deecd7e6 Define C structures (struct kernframe, struct trapframe)
for kernel-to-user trapframe.  Use C structs in genassym.cf.
1999-02-27 02:54:05 +00:00
is 19d0a457aa oops. void->int 1999-02-26 22:55:33 +00:00
is f71d843a65 synchronize types, and s/curproc/p/ in one forgotten place 1999-02-26 22:37:57 +00:00
is 8474ed8a1e MVME68K specific part of fix for PR 6152 1999-02-26 22:16:35 +00:00
is d04273bac7 sun3 part of fix for PR 6152 1999-02-26 22:03:28 +00:00
is 0f5ed05445 next68k specific part of PR 6152 fix 1999-02-26 21:34:38 +00:00
is 5e073f4807 MIPS part of fix for PR 6152, sligtly changed from M.Hitch's version 1999-02-26 19:03:39 +00:00
tsubai b10dbdb37a Initialize BAT registers in the first place. 1999-02-26 18:36:15 +00:00
is bce0bda05c x68k specific part of fix for PR 6152 1999-02-26 16:07:07 +00:00
tsubai 01614b7217 Implement pmap_procwr().
(Not tested.  gdb doesn't work on powerpc yet.)
1999-02-26 14:40:45 +00:00
is d93a991a48 Make cpu_model big enough to hold the DNARD cpu's identification, and a bit
more.
1999-02-26 12:05:49 +00:00
thorpej 3dfa044911 Move declaration of prom_slock. 1999-02-26 03:59:14 +00:00
thorpej 2b5175cd53 Fix printf formats. 1999-02-26 03:57:10 +00:00
is 84971e3a6f mac68k part of pr 6152 fix, and missing bits for the others 1999-02-25 23:13:39 +00:00
is 7cf63be6cb Atari part of fix for pr 6152 1999-02-25 22:47:18 +00:00
is 75469a775e hp300 part of the fix for pr 6152 1999-02-25 22:34:41 +00:00
is fde637530e Machine independent part of fix for PR 6152 (gdb doesn't work on machines
with UVM and seperate I&D-Cache). Mostly by Michael Hitch, but pass struct
proc * instead of the pmap. Reason: said machine will need a method to do
the syncing operation for "curproc", too; this way more code can be shared.
1999-02-25 21:54:53 +00:00
is 435f80f928 prepare for gdb fix 1999-02-25 19:51:22 +00:00
ross 321c6be8de Enable eap (Ensoniq AudioPCI), sb (SoundBlaster), and sv (S3 SonicVibes). 1999-02-25 12:37:39 +00:00
christos e13149e632 Don't need to stick the interpreter at 0 anymore, it relocates itself. 1999-02-25 10:18:04 +00:00
thorpej 07304bd858 On multiprocessor systems, it is possible that a lev1map might be in use
by two processors concurrently.  This means that we cannot modify the
lev1map in use by the processor which wishes to use the PROM.

Fix this by creating a separate lev1map for PROM users.  This lev1map
is a copy of the kernel_lev1map, with the exception of the necessary
PROM mapping.  When a processor wishes to use the PROM, it switches
its PTBR to point at the prom_lev1map, performs the PROM operation,
and switches back to its previous lev1map.

Note that kernels without multiprocessor support use the old method
of modifying the current lev1map.

Also, serialize access to the PROM via a spin lock.
1999-02-25 03:43:14 +00:00
thorpej 45a5ad4153 Fix an uninitialized variable. 1999-02-24 23:35:25 +00:00
drochner 9e8c9e9594 -pull in exec.c, needed since loadfile.c
-don't pull in tftp.c anymore, it's in libsa now
1999-02-24 19:38:17 +00:00
thorpej 726091e400 Explicitly include opt_multiprocessor.h, rather then relying on its
implicit inclusion by pmap.h.
1999-02-24 19:36:04 +00:00
drochner f1d1de8c7a moved to mi lib/libsa 1999-02-24 19:32:34 +00:00
thorpej a65d3ba579 Note that the way the temporary PROM mapping is handled is completely
broken on multiprocessor systems.
1999-02-24 19:25:56 +00:00
thorpej 4cdbd84b63 First-cut at multiprocessor TLB shootdown. This simple implementation can
probably be improved somewhat, but an attempt to be efficient has been
made.

Note: TLB shootdowns are NOT YET ENABLED.
1999-02-24 19:22:16 +00:00
thorpej 911465b54c Restructure the IPI code a little, allowing multiple IPIs to be sent at
once.  Add a way to broadcast an IPI to all processors (except the sender,
obviously).  Add an IPI for TLB shootdown.
1999-02-24 19:17:09 +00:00
drochner 6ed35ee84b sync to [nisimura-pmax-wscons] version
(only change: include register definitions from regdef.h)
1999-02-24 18:36:32 +00:00
chs 31ef6fbb8d add RODATA(), which is like ENTRY() but without the _PROF_PROLOGUE. 1999-02-24 16:02:19 +00:00
simonb e73260106c This stuff is _hopelessly_ out of date, and will almost certainly never
be used again.  (Famous last words :-)
1999-02-24 14:26:25 +00:00
simonb 61b327c2ac Remove bootconf.c from CLEANFILES; not used anymore. 1999-02-24 13:54:54 +00:00
pk 9efc61e01c Accept __syscall() in NetBSD a.out emulation. 1999-02-23 06:47:05 +00:00
thorpej 76e4555f2c Now that we have the kthread mechanism, massively clean up the way
additional processors are spun up on multiprocessor Alpha systems.
Now, each processor gets its own idle thread (the primary processor
uses proc0).  This idle thread is used in switch_exit(), rather than
explicitly referencing proc0.

Also, make `curproc', `fpcurproc', and `curpcb' per-cpu values.  This
required some data structure rearrangement; cpu info is now statically
allocated in the BSS, rather than via malloc(), and cpu_softc is gone.
(Modeled somewhat after NetBSD/sparc's multiprocessor info structures.)
1999-02-23 03:20:00 +00:00
ross 16204c31ac Generate the new schedclk() call into the MI kernel. Set schedhz
here to indicate that.
1999-02-23 02:56:40 +00:00
ross b4a33c4e60 Scheduler bug fixes and reorganization
* fix the ancient nice(1) bug, where nice +20 processes incorrectly
  steal 10 - 20% of the CPU, (or even more depending on load average)
* provide a new schedclk() mechanism at a new clock at schedhz, so high
  platform hz values don't cause nice +0 processes to look like they are
  niced
* change the algorithm slightly, and reorganize the code a lot
* fix percent-CPU calculation bugs, and eliminate some no-op code

=== nice bug === Correctly divide the scheduler queues between niced and
compute-bound processes. The current nice weight of two (sort of, see
`algorithm change' below) neatly divides the USRPRI queues in half; this
should have been used to clip p_estcpu, instead of UCHAR_MAX.  Besides
being the wrong amount, clipping an unsigned char to UCHAR_MAX is a no-op,
and it was done after decay_cpu() which can only _reduce_ the value.  It
has to be kept <= NICE_WEIGHT * PRIO_MAX - PPQ or processes can
scheduler-penalize themselves onto the same queue as nice +20 processes.
(Or even a higher one.)

=== New schedclk() mechansism === Some platforms should be cutting down
stathz before hitting the scheduler, since the scheduler algorithm only
works right in the vicinity of 64 Hz. Rather than prescale hz, then scale
back and forth by 4 every time p_estcpu is touched (each occurance an
abstraction violation), use p_estcpu without scaling and require schedhz
to be generated directly at the right frequency. Use a default stathz (well,
actually, profhz) / 4, so nothing changes unless a platform defines schedhz
and a new clock.  Define these for alpha, where hz==1024, and nice was
totally broke.

=== Algorithm change === The nice value used to be added to the
exponentially-decayed scheduler history value p_estcpu, in _addition_ to
be incorporated directly (with greater wieght) into the priority calculation.
At first glance, it appears to be a pointless increase of 1/8 the nice
effect (pri = p_estcpu/4 + nice*2), but it's actually at least 3x that
because it will ramp up linearly but be decayed only exponentially, thus
converging to an additional .75 nice for a loadaverage of one. I killed
this, it makes the behavior hard to control, almost impossible to analyze,
and the effect (~~nothing at for the first second, then somewhat increased
niceness after three seconds or more, depending on load average) pointless.

=== Other bugs === hz -> profhz in the p_pctcpu = f(p_cpticks) calcuation.
Collect scheduler functionality. Try to put each abstraction in just one
place.
1999-02-23 02:56:03 +00:00
jonathan 68a5ad19be Fix off-by-one width: 220, not 221. confirmed against PROM setup. 1999-02-23 01:35:56 +00:00
simonb 381c553a53 Use -Os to reduce code size (from Krister Walfridsson). 1999-02-23 01:23:26 +00:00
thorpej fbca0a78d7 Do all the fancy printf format checking. 1999-02-23 01:00:51 +00:00
is e6da344c31 Update. 1999-02-22 22:07:37 +00:00
is 74ad0ecb0d Generate the MIT-assembler-format files statically. They nearly never change,
and if so, should be generated via the new Makefile and committed, too.
1999-02-22 21:25:05 +00:00
tsubai 16442fd649 Add MESH SCSI driver.
Sort entries.
1999-02-22 20:25:43 +00:00
thorpej ca42d26309 GENERIC already has DDB. 1999-02-22 19:14:46 +00:00
pk 372e76a3bb Since V2 & V3 proms already pass us ihandles for stdin and stdout,
there's no need to open the device a second time. It suffices to
just convert the `ihandles' to `phandles'.
1999-02-22 17:15:30 +00:00
simonb ffa92484e2 Update cpp defines to current reality. 1999-02-22 11:57:18 +00:00
simonb 74f2d414ef Load the bootblocks at 0x8070000 so that ramdisk kernels don't
overwrite the beginning of the bootblocks.
1999-02-22 11:53:57 +00:00
simonb 69ba0d255c Update list of source files to reflect reality. 1999-02-22 11:31:46 +00:00
simonb c3baaf3ba5 Lightweight memset routine. 1999-02-22 11:26:15 +00:00
simonb 31f50e4868 Assembly stubs to PROM callback routines. 1999-02-22 11:22:40 +00:00
simonb 80ef484669 Use sys/lib/libsa/ routines now. 1999-02-22 11:21:21 +00:00
simonb 74df4f53e0 Allow code in sector zero (from Michael Hitch).
Also in start.S:
 + Removed unused printf routine.
 + Removed unused dummy __main for gcc.
 + s/bzero/memset/.
1999-02-22 11:01:43 +00:00
simonb 09cca9e076 Don't use the conf.c->bootconf.c guff, remove last tape support,
and actually install the bootblocks.
1999-02-22 10:53:13 +00:00
simonb 3d6a630813 Break single read and printf of text+data into two separate reads and
printfs.  Better aesthetically, especially with a twiddle.
1999-02-22 10:23:53 +00:00
simonb 63e306cbe7 Use "#ifdef UFS_NOCLOSE/UFS_NOWRITE" instead of "#ifdef SMALL". 1999-02-22 10:18:40 +00:00
simonb 6932c61287 Use memset() instead of bzero(). 1999-02-22 10:16:52 +00:00
simonb e87d6bf17e More tape support not needed. 1999-02-22 09:25:16 +00:00
simonb 50ae7be229 Don't implicitly type the devopen() function.
Don't include machine/dec_prom.h.
1999-02-22 08:24:47 +00:00
simonb 2e4a4cb289 Revert to a simple memcpy implementation - a memcpy() PROM callback is not
available on all DECstation models.
1999-02-22 08:22:21 +00:00
simonb 2407241a09 Sync with sys/lib/libsa/ufs.c. Now the same except for the memset/memcpy
#defines at the top.
1999-02-22 08:16:57 +00:00
fvdl f927176889 Add internal 3com PHYs for the ex driver. 1999-02-22 07:44:50 +00:00
simonb ddf48f18a0 Remove traces of tape support - we're nowhere near handling it at the
moment.
1999-02-22 07:17:44 +00:00
mycroft 0dbf3ab3ca Use DMAMODE_DEMAND. Not tested, but presumed to work. 1999-02-22 02:56:13 +00:00
mycroft 0d22ee1396 Use DMAMODE_DEMAND. Tested on an AS200. 1999-02-22 02:52:24 +00:00
jonathan 8b01b985e7 Cannot do mcount() profiling in TLB exception-handler code. 1999-02-22 00:21:39 +00:00