Commit Graph

23801 Commits

Author SHA1 Message Date
wdk caa807ac35 * Tidy up reading of Mips volume header information
All compatable values are copied from the MIPS volume header to the
  BSD disklabel structures.

* Add support for writing Mips volume header.

* Remove support for writing NetBSD label directly (this was broken)

These changes allow the kernel to read either a BSD disklabel created under
NetBSD/sparc or a MIPS volume header created under RISC/os.

There is a small amount of losage with the conversion between the 2
types of disk labels (mainly to do with file system types).
A table is used to map partition numbers and types between the two
types, and unless someone does something real fancy (or crazy) it should
work in both senario's

This change will allow the stand alone shell to directly load a NetBSD
kernel and mount a file system, avoiding the need for a seperate disk or
bootp server to bootstrapping NetBSD.

NetBSD/mipsco is now self sufficiant.  We are not far from having a
miniroot filesystem and removing the need to have another NetBSD
machine to create the base filesystems.

Minor Trap for young players:
   The root partition must be created with 'newfs -O' in order for the
   stand alone shell to boot the kernel

TODO:
   Add support for writing NetBSD disk labels back in - it will be useful
   for non boot disks.   I'm just not sure how to control the 2 behavours
2000-08-22 11:59:34 +00:00
tsubai eaa177d2f1 Add a missing entry to chrtoblktbl. 2000-08-22 11:48:23 +00:00
tsubai f406aae2d2 MD part of mcount. 2000-08-22 11:25:49 +00:00
joda 71cabc49dd (rbus_pccbb_parent_mem): make the rbus minimum start address
configurable (RBUS_MIN_START), since default value of 1GB doesn't work
well on some ThinkPads
2000-08-22 08:42:55 +00:00
erh df316aa06c Change the heap limit from 40000 to 50000 so the heap is the same size as it was before the "Hack from Hell'. 2000-08-22 02:46:30 +00:00
scw 72f826d727 A VMEbus RAM board configured for use by mvme68k can now be
treated as just another available VMEbus slave image as far as
bus_dma(9) is concerned.

To preserve faster onboard memory, mvmebus_dmamem_alloc() will
allocate first from the offboard VMEbus RAM slave image if present,
and assuming its address modifier matches the caller's constraints.
This can be overidden by specifying the BUS_DMA_ONBOARD_RAM flag.
2000-08-21 20:50:13 +00:00
tsubai 365ec2aa42 Scheduler locking changes. 2000-08-21 18:46:03 +00:00
bjh21 a776e1268d General cleanup of definitions of translation table stuff.
Also add PPN[8] for the A540.  Now all I need are two more RAM cards for my
A540 so I can test it.
2000-08-21 14:37:51 +00:00
itohy 5755dca55d Fix typos.
No functional changes.
2000-08-21 07:39:42 +00:00
thorpej 23a7f255d4 Make sure we provide splsched() as described in spl(9). 2000-08-21 02:06:31 +00:00
thorpej 2648536e0c Add experimental code for pausing other CPUs upon a CPU's
entry into the debugger.  While I'm here, add splsched()
as per spl(9).
2000-08-21 02:03:12 +00:00
scw 3cac59ee4f Expand on how VMEbus master addressing modes are specified, to better
deal with dynamic address modifier generation based on the CPU's
function code pins.

Also implement VMEbus slave mode for mvme147. (Not yet 100% working.)
2000-08-20 21:51:31 +00:00
thorpej a86d1f4891 Add a lock around the scheduler, and use it as necessary, including
in the non-MULTIPROCESSOR case (LOCKDEBUG requires it).  Scheduler
lock is held upon entry to mi_switch() and cpu_switch(), and
cpu_switch() releases the lock before returning.

Largely from Bill Sommerfeld, with some minor bug fixes and
machine-dependent code hacking from me.
2000-08-20 21:50:06 +00:00
scw 3f2adcb2b0 Checkpoint of code to add VMEbus slave support using vme_dmamap* and
vme_dmamem*.

This is still a work in progress, but seems to DTRT on mvme167 so far.

TODO:
	. Get VMEbus slave mode going on mvme147. This should be easy.
	. Fix up the A16 slave mappings.
	. Bounce buffer support. (Messy, but pretty much a `must have'.)
	. Figure out how to deal with `location monitor' interrupts
	  within the framework. (Useful for Busnet, among other things.)
	. It would be nice to make use of the VMEchip2's DMA facilities...
2000-08-20 17:07:41 +00:00
bjh21 567f2768d1 Implement the easy ptrace requests and turn off the difficult ones. 2000-08-20 15:16:49 +00:00
mrg e144281c4e move ofwboot & bootblk here; add a Makefile to build ofwboot.net 2000-08-20 14:58:36 +00:00
mrg 85737336b4 add/merge sparc64 support. 2000-08-20 14:57:16 +00:00
mrg 9bea0e1a52 fix ultrasparc support. 2000-08-20 14:56:28 +00:00
mrg b74059e5cf move everything to arch/sparc/stand; leave the Makefile behind. 2000-08-20 14:53:19 +00:00
mrg 651a58c846 add SOFTDEP 2000-08-20 14:51:56 +00:00
pk 4ec48d799f fbio.h moded to sys/dev/sun.
Retain symlink from /usr/include/machine.
2000-08-20 14:02:59 +00:00
bjh21 ba6517aa9c Adjust register spacing to take A0 into account. This should make supporting
8-bit uses of the 8005 (such as, I suspect, 8-bit Ether3 cards) easier.
2000-08-20 13:43:23 +00:00
bjh21 ef49e5cd42 Exclude cpu_Debugger if DDB is not defined. 2000-08-20 13:41:44 +00:00
tsubai 31ec486214 Correct asm parameter to avoid gcc uninitialized warning. 2000-08-20 07:48:45 +00:00
tsubai 1267826d5d Increase stack size. 2000-08-20 07:04:59 +00:00
tsubai 58aaeaae7f In decr_intr(), update lasttb only when clock interrupt is not masked. 2000-08-20 07:02:41 +00:00
tsubai d832bf8e95 Add "type" argument to openpic_enable_irq(). 2000-08-20 06:56:42 +00:00
thorpej dd87a44f4a Initialize PV head simple locks, done slightly differently than
in the sommerfeld_i386mp_1 branch.
2000-08-19 19:48:53 +00:00
wdk 9ac68bcb51 - Add support for calling most prom firmware functions
- Using the prom getenv function determine the correct console port

- Remove old prom function hooks

- Tidy up bootflags (remove upper case names, fixup RB_ASKNAME) as
  recommended by Jaromír Doleèek
2000-08-19 12:13:46 +00:00
wrstuden 17c0d4d853 Add some new partition types, and flags. Have the Apple Partition Map
code ignore the new partition types, and look for the new "USR" partition
flag.

From SUNAGAWA Keiki <kei_sun@ba2.so-net.ne.jp> with slight changes by me.

Closes PR port-macppc/10046
2000-08-18 22:40:28 +00:00
bjh21 cc396125ae Add support for clearing IRQ 0, which is latched by the IOEB (on IOEB systems). 2000-08-18 12:50:00 +00:00
sato d5b133164a - disable warning: add missing argument. 2000-08-18 07:33:14 +00:00
bjh21 a81231398b Oops. Remember to close the comment! 2000-08-17 22:09:10 +00:00
wdk 702ec79b19 #include <mips/locore.h> no longer required since implementing bus_space(9)
remove unused extern variable that is never used in mipsco port
2000-08-17 21:26:34 +00:00
bjh21 6bc85d382a Add cdevsw entries for bpf, tun, com, lpt. 2000-08-17 16:31:52 +00:00
bjh21 7fd0191223 Hard-wire the unit number of the on-board wdc so podules don't confuse it.
Add commented-out wd, atapibus etc in GENERIC and FOURMEG.  Not yet tested.
2000-08-17 13:38:51 +00:00
msaitoh 4a9013cf38 add code to mask mmucr register (SH4 only)
I'm sorry, I'd forgotten to commit it for a long time.
2000-08-17 13:13:28 +00:00
msaitoh a8fe4a6776 check INTEVT_SCIF (SH4 only)
I'm sorry, I'd forgotten to commit it for a long time.
2000-08-17 13:07:51 +00:00
wdk b9333bd4e7 Check for memory aliases when sizing physical memory. Remove 32MB memory
restriction.

Tested with 32 x 1MB SIMM's plus mix of 4MB and 1MB SIMM's to ensure the
aliases is detected in all memory configuratiions.
2000-08-17 05:05:01 +00:00
msaitoh 7369c6d979 add an INTEVT code for WDT 2000-08-17 00:01:53 +00:00
bjh21 999646a30b Add some extra levels for MI drivers. 2000-08-16 23:58:29 +00:00
bjh21 d7eebd9227 Basic driver for CHIPS 82C710 Universal Peripheral Controller and friends,
as used on later arm26 system (A5000, A4, A3010, A3020, A4000).

What we have got:
...
upc0 at iobus0 base 0x010000: config state bb 87 1c 00 00
fdc at upc0 offset 0x3f4 not configured
wdc0 at upc0 offset 0x1f0
lpt0 at upc0 offset 0x278
com0 at upc0 offset 0x3f8: ns8250 or ns16450, no fifo
...

What we haven't got:
 - FDC support (found, but not configured).
 - Clearing lpt interrupts on arm26 systems (needs help from IOEB).
 - A upc(4) manual page.
 - More than minimal testing (my A3020s don't have root devices).
 - A proper probe routine (arm26 can't use one anyway).
2000-08-16 23:56:08 +00:00
wdk 4cad781e16 Parse bootflags and attempt to find the root device from the boot command line 2000-08-16 21:54:43 +00:00
wdk bf69eb6def Trap and report memory parity errors 2000-08-16 21:00:39 +00:00
pk 1f76e23f2c Drop two `#ifdef SUN4U's, since `sparc{64}/include/instr.h' are now synced. 2000-08-16 11:36:36 +00:00
pk d48d0665e9 Sync with sparc64. 2000-08-16 11:30:38 +00:00
pk 814e226e9d Fix two printf formats: `%ld' -> `%d'. 2000-08-16 11:29:42 +00:00
mrg ac5a03b4eb find loadfile_machdep.h on sparc64. 2000-08-16 08:24:01 +00:00
mrg 286b5c3fbf backout previous; unintentional. 2000-08-16 08:21:52 +00:00
mrg ecd972e9cb include the sparc loadfile_machdep.h as-is; we can blow this header away
completely later.
2000-08-16 08:17:49 +00:00
mrg 3eeab3822d deal with 64 bit ELF 2000-08-16 08:16:58 +00:00
thorpej b0dc085df7 Move the TSS selector out of the PCB and put it into mdproc. We
need to access this when we have the proclist locked for reading,
and thus cannot store it in the PCB (which may be swapped out).

As part of this, call pmap_activate() from cpu_switch() to switch
to the new address space, and refresh the PCB's copy of the LDT
selector from the pmap structure (see above paragraph).  We need
to do this for MP support anyhow.

Fixes a "panic: spinlock_switchcheck: CPU 0 has 1 spin locks" via
gdt_compact() reported by Nathan Williams.
2000-08-16 04:44:35 +00:00
thorpej 5a7793edd9 Implement MP-safe lazy FP context switching, modeled on the
way Bill Sommerfeld implemented it for x86 (and bug fixes
fed back to Bill :-)
2000-08-15 22:16:17 +00:00
ross 37262919a9 Edit adv0 comment to include "SCSI"; now 'grep -v -i SCSI GENERIC' works. 2000-08-15 20:09:26 +00:00
fvdl 534b45c853 Move identifycpu to a place where it gets called earlier in the process,
so that special setup functions needed for some CPUs will be run before
some things (like UVM) are inited.

Add vm_page_zero_enable = FALSE to the cyrix 6x86 case, as page zeroing
while idle causes problems.
2000-08-15 18:21:44 +00:00
thorpej c7b8439ec4 - Make lazy I-sync a little safer -- always mark the pmap as needing
I-sync in pmap_remove_mapping() if the old mapping had PG_EXEC, and
  kick curcpu (IMB) or other CPUs (via an IPI) only if the pmap was
  the kernel pmap or active on other CPUs (curcpu is handled in userret()).
- Use lazy I-sync everywhere, (hopefully) eliminating the last of the
  I-sync issues for multiprocessor support.
- Eliminate some memory barriers added in a couple of previous revisions,
  after some discussion on port-alpha/tech-smp.

Still some lazy I-sync optimization possibilites:
- pmap_changebit() does not need to I-sync when only write-protecting
  a page.
- pmap_asn_alloc() may be able to cancel a pending lazy I-sync when a
  new ASN is allocated.  Need to double check against Green Book or
  Brown Book.
2000-08-15 05:21:20 +00:00
wdk 33016f23e0 * Tidy up interrupt handlers by implementing an intr_establish()
handler to hook up device interrupts and softc callbacks.

   Suggested by:  Jason Thorpe and Toru Nishimura

*  Fixup the indenting in a few places to conform to NetBSD style
2000-08-15 04:56:45 +00:00
wdk 374fb8efbc Decrement the block count to compensate for 64 bytes prefetched to fill
the DMA FIFO on non block aligned writes.   Not doing this causes large
writes (>4k) that are not aligned to incorrectly write 64bytes
of data every 4k interval.   This only occurs on raw devices - typically
newfs fails to create a clean filesystem.
2000-08-14 21:04:44 +00:00
thorpej f10ccf00b1 Remove an unnecessary MB in __cpu_simple_unlock(), per sections
5.3.3 and 5.3.4 of the Green Book, and a discussion w/ cgd@netbsd.org.
2000-08-14 20:28:28 +00:00
thorpej f80d70f19a Just add the mmap argument to vga_common_attach(), don't bother
with vga_extended_attach().
2000-08-14 20:14:50 +00:00
nonaka d07d2e70be Fix link problem. 2000-08-14 17:51:41 +00:00
thorpej b80f38bf8b Issue a memory barrier before clearing a lock, as per section 5.5.3
of the Green Book and a discussion on tech-smp and port-alpha.
2000-08-14 17:18:50 +00:00
ragge d9bb2fc1fa Clear result registers before using them.
Be more informative if unimplemented addressing modes.
2000-08-14 11:16:52 +00:00
kleink 378b9a84c3 At splsoftclock(), don't block softnet but softclock. 2000-08-14 10:09:06 +00:00
kleink 4fddd7dacc * Make spllower()ing functions not return the previous priority level,
as specified in spl(9).
* In due course, ipmlement splx() via spllower().
2000-08-14 09:55:41 +00:00
kleink 1790b00d25 Replace the body of lcsplx() with an open-coded version of spllower()
and return the previous priority level, which is actually expected by
cpu_switch() in order to it be stashed into the PCB.
2000-08-14 08:58:39 +00:00
thorpej 86ef3ea256 Clean this up a little bit, and issue a Specific EOI after
dispatching an EISA interrupt.
2000-08-14 05:38:23 +00:00
wdk 1e59559e3e intrcnt[] counters should be handled by the port specific interrupt handlers.
This change facilitates the migration from intrcnt[] to the new evcnt(9)
framework without breaking all of the mips based ports.
2000-08-14 04:36:34 +00:00
thorpej b022657405 Add support for EISA configuration space on the Jensen (it's
mapped differently than on other EISA sysetms).
2000-08-14 02:14:24 +00:00
christos cabafb6c60 cast to u_long before casting to u_int to appease lint. 2000-08-13 22:45:01 +00:00
thorpej 5d5752af8b More MP cleanup:
- pmap_zero_page() and pmap_copy_page(): if MULTIPROCESSOR, issue
  a memory barrier after we zero/copy the page, to ensure that
  other CPUs see the correct data.
- XXX Should we use MB, or is WMB good enough?

Also, bzero -> memset, bcopy -> memcpy.
2000-08-13 22:43:42 +00:00
thorpej cdc6dac7f1 More MP cleanup:
- Make sure to do an MB after a PTE is set to a new value, so that
  other processors see it.
- Use lazy I-sync in two pmap_page_protect() and in pmap_changebit(),
  so that it is MP-safe.  XXX Two more places where IMB is used in
  the raw, but they're not in the common path.

There'll be some more lazy I-sync cleanups soon.
2000-08-13 22:30:18 +00:00
augustss de0b1dd11d Go to splhigh() before calling power hooks and maintain this level
while suspended.  When waking up the power hooks are again called at
splhigh() and then the level is lowered.
This prevents interrupts from reaching a device before the power hook
has reinitialized it.
2000-08-13 22:26:27 +00:00
jdolecek 47b371580e make this usable as INSTALL-like kernel suitable for boot floppy
enable supported stuff, add also SCSI devices (only sd* and cd* uncommented)
2000-08-13 21:55:33 +00:00
soren 6f1de2d858 s/dev/obio/ 2000-08-13 19:25:13 +00:00
thorpej f49fa3615c Add some XXXSMP to places were imb is still used in the raw. 2000-08-13 18:41:15 +00:00
thorpej cd04e9fb14 Add MULTIPROCESSOR versions of PMAP_SYNC_ISTREAM_{KERNEL,USER}(). 2000-08-13 18:22:21 +00:00
thorpej 325f9ccafc Add alpha_multicast_ipi(). 2000-08-13 18:20:55 +00:00
scw b77bc217e1 Pull a bunch of common code from vme_pcc.c and vme_two.c into
the new mvmebus.[ch] files, and put down some initial code to
deal with VMEbus slave mode.
2000-08-13 17:00:51 +00:00
bjh21 9d7a3f8ed7 Shuffle debugging code around to make debugging copy{in,out,}str easier. 2000-08-13 12:32:48 +00:00
bjh21 4014c03b26 Replace copyinstr, copyoutstr and copystr with slightly more sensible
assembler versions.
2000-08-13 12:31:26 +00:00
jdolecek 40dc315f3b #if 0 bogus mca_intr_establish() added possibly mistakely
by cgd in rev. 1.2
2000-08-13 10:38:38 +00:00
itojun 85dda25e94 move "options PULLDOWN_TEST" into sys/sys/mbuf.h (in #ifdef _KERNEL),
as it is no wthe default setting for everyone.

the reason we still use the name "PULLDOWN_TEST" while it is now default:
kame code sharing.
2000-08-13 01:31:15 +00:00
wdk 3f55a7b9aa Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
2000-08-12 22:57:55 +00:00
scw e09ab8e986 G/C an unused variable. 2000-08-12 20:09:12 +00:00
bjh21 5317f1db63 General cleanup and factoring out of common code in ea_readbuf and ea_writebuf. 2000-08-12 18:18:52 +00:00
bjh21 7d96bc05ba Make various types unsigned, for ease of comparison.
Use bus_space_read_multi_2 and bus_space_write_multi_2 to copy packets to/from
board.
2000-08-12 17:03:44 +00:00
bjh21 f096772215 Two changes for endianness-independence (when we finally split of the SEEQ 8005
driver and make it MI):

Set the ByteSwap bit on big-endian hosts, so we can use 16-bit transfers to get
at packets whatever.

Treat Tx/Rx headers as arrays of four bytes rather than as 32-bit words.
2000-08-12 15:29:35 +00:00
bjh21 7d83a5201a bus_space version of if_ea.c -- should have been committed before.
Transmit and receive buffer sizes aren't an intrinsic property of the card,
so they belong in if_ea.c rather than if_eareg.h.

Correct some comments in if_ea.c
2000-08-12 14:06:29 +00:00
bjh21 4493200775 Use bus_space stuff. No more ReadShort and WriteShort.
Also a few minor cleanups.
2000-08-12 13:35:08 +00:00
bjh21 7ba12358d7 return isn't a function call 2000-08-12 12:20:17 +00:00
bjh21 b108872b97 Remove spurious reset of card in probe routine -- it can almost certainly
safely be left till attach time.
2000-08-12 12:15:59 +00:00
bjh21 ef01128d16 Avoid gratuitously copying data on transmission as well, and hence do away
with the 2k packet buffer in the softc.
2000-08-12 11:56:46 +00:00
msaitoh 4c0e0bb61c - enable KERNFS and PROCFS
- disable NULLFS and UMAPFS
2000-08-12 06:59:01 +00:00
msaitoh 7803e30fde - remove "options PMAP_NEW"
- enable "options INET"
 - enable "pseudo-device loop"
2000-08-12 06:53:37 +00:00
thorpej 65c9982dfa Back out part of previous which was unintended. 2000-08-11 18:26:09 +00:00
msaitoh 7e0d8cf541 hide InitializeBSD if DONT_INIT_BSC is defined 2000-08-11 15:11:22 +00:00
msaitoh 18f2e17644 fix the first (temporary) kernel stack address
from	IOM_RAM_BEGIN + 0x003ff000
	to	IOM_RAM_BEGIN + IOM_RAM_SIZE - 0x00001000
2000-08-11 14:51:08 +00:00
thorpej e4eb846113 Add depca at eisa. 2000-08-11 03:05:19 +00:00
thorpej e931f846ff #if 0 out a debugging printf. 2000-08-11 01:02:39 +00:00
thorpej e207174eb0 Add functions to read EISA configuration data for MEM, IRQ, DMA, and IO.
XXX Just error stubs on the i386 right now -- someone needs to write
XXX EISA BIOS code for i386.
2000-08-11 00:43:18 +00:00
thorpej 30f7d691a0 Declare the ECU data in an MI location, so that drivers can
use it.
2000-08-10 23:30:08 +00:00
bjh21 e801d41011 Remove void casts from splx(). It returns void anyway. 2000-08-10 23:06:38 +00:00
bjh21 c636092423 Use ETHER_IS_MULTICAST where relevant. 2000-08-10 23:03:04 +00:00
bjh21 24ab4fb4f8 Check the podule has a description before using it. 2000-08-10 22:57:01 +00:00
bjh21 2fb8a3feb8 Clean up packet reception. Notably, copy data straight from the card to
mbuf(s) without using the packet buffer in the softc.  Also, clean up error
messages.
2000-08-10 22:43:45 +00:00
jeffs 95ac0dc817 In db_disasm() use fuword() to fetch user addresses. Mainly to avoid
bad EPCs from losing the initial ddb context when panicing, but also
helps with typos.
2000-08-10 22:31:26 +00:00
soda be6120309f add commented out PCIBIOS_INTR_GUESS 2000-08-10 21:33:17 +00:00
soda 834cceb3ae move PCIBIOS_INTR_FIXUP_FORCE, PCIBIOS_INTR_GUESS and PCIBIOS_IRQS_HINT
to opt_pcibios.h.
2000-08-10 21:21:02 +00:00
soda b63f6b5096 Add another option PCIBIOS_INTR_GUESS for no compatible ICU found case.
Under this option, if only one IRQ is available for the link,
we assumes that the IRQ is already connected, and configure
PCI Interrupt Configuration Register accordingly.
This is what Linux pcmcia-cs-3.1.19 does by default.

This fixes unconfigured pccbb interrupt problem of
Sharp Mebius MN-5500. It's interrupt router is ITExpress Inc. IT8330G.
(http://www.ite.com.tw/, vendor=0x1283, product=0x8330)
Problem reporeted by Kitagawa <sk@kiu.ac.jp> in
http://www.kaynet.or.jp/~kay/ml/netbsd-pcmcia/msg/msg00608.html
2000-08-10 21:18:27 +00:00
eeh 7c49c54392 Fix signal delivery. 2000-08-10 18:33:47 +00:00
mrg 7d27fced15 remove some ".sparc64" file suffixes that are not necessary. 2000-08-10 13:34:39 +00:00
mrg 3f0e682019 add sparc64 support. 2000-08-10 13:27:47 +00:00
mrg b8dfc193d0 merged with the sparc installboot 2000-08-10 12:18:14 +00:00
jeffs fc28236a58 Tweak printf format to compile with printf changes. 2000-08-10 08:27:54 +00:00
scw 0dc48bfa8f Add a `/t' modifier to the m68k ddb's `trace' command. This enables
one to perform a kernel traceback of any (non-swapped-out) process in
the system. For example, to show the traceback for PID 178:

  db> t/t 0t178
  trace: pid 178 at 0xabcd68
  _mi_switch(0x109f60) + 164
  ...
  db>
2000-08-10 08:02:35 +00:00
jeffs 6f9d8d6cd3 Tweak to compile with printf format changes. 2000-08-10 08:01:24 +00:00
jeffs 22bda73efd To be safe when called from interupt, [fs]uswintr need to preserve
cpu_onfault.  By Etan Solomita (ethan@geocast.com).
2000-08-09 23:03:24 +00:00
jeffs 0b5e00636a Fix a bug in how .S routines call _mcount to allocate stack before
use.  By Ethan Solomita (ethan@geocast.com).
2000-08-09 22:52:36 +00:00
msaitoh 90f4e30815 2nd argument of SYS___syscall(code, ...) is quad alignmented.
On little endian mode, 1st argument is not r5 but r4.
2000-08-09 22:11:17 +00:00
tv 8df356a34f %r, %n -> db_format_radix() 2000-08-09 20:09:25 +00:00
tv 5165243e6c %lz -> db_format_hex() 2000-08-09 20:00:30 +00:00
tshiozak dec20dab0e set MB_LEN_MAX to 32. I forgot the modification for arm26 yesterday. 2000-08-09 16:43:59 +00:00
tv 29550fc608 kprintf -> printf format attribute 2000-08-09 16:34:25 +00:00
tv ccb5bdbdd9 %b -> bitmask_snprintf() 2000-08-09 03:02:52 +00:00
tv 650553215e %b -> bitmask_snprintf() 2000-08-09 02:26:26 +00:00
shin bf38a18dfc Define bus_space_*_stream_N functions as their non-stream counterparts. 2000-08-09 02:12:50 +00:00
tshiozak 51a53de0d5 Preparation for the future introduction of multibyte locale.
- MB_LEN_MAX is increased to 32.
 - To ensure binary compatibility for old executables
   under multibyte locale, versioned setlocale is added.
 - __mb_len_cur definision is added in setlocale.c
   and enable it in stdlib.h .
   It is also important for multibyte locale stuffs,
   but I just forgot.
2000-08-08 22:31:13 +00:00
soda d5046f18c7 note "vm_page_zero_enable = FALSE" 2000-08-08 21:17:15 +00:00
bjh21 b642a6e612 ANSIfication and general cleaning. 2000-08-08 21:16:59 +00:00
soda 7f4849dc04 disable page zero in the idle loop on untested machines and pica for now.
this kluge fixes a problem that commands dump core on NEC Image RISCstation
which seems to be OEM of pica.
2000-08-08 21:11:46 +00:00
tv 91537bce4a sizeof(fmtstring) + 8 wasn't enough for the string; that won't cope with the
printed version.  Make a little more room for the bitmask_snprintf() call.
2000-08-08 19:59:41 +00:00
ragge d254a73539 Remove some unneccessary TBIA's. Keep track of wired pages.
Fix PR#8503 (refcount error).
2000-08-08 19:06:52 +00:00
ragge a8b7c77ff8 Be sure that cache is enabled. 2000-08-08 17:54:46 +00:00
soren 026723bccd Update for counter interrupt PSL change. 2000-08-08 16:56:03 +00:00
ragge 73bb1e9018 Write code to handle unimplemented instructions trapped via SCB vector 0x18.
This may happen on machines missing parts of the instruction set (like
some floating point formats).
Only one new instruction added; POLYD, so that the libm assembly files can
be used on architectures missing that instruction.
Also; include emulation code if compile-time option INSN_EMULATE is defined
instead of trying to match on which cputype it is.
N.B. POLYD isn't fully implemented, just enough to make libm happy.
2000-08-08 16:48:12 +00:00
scw a92a92c554 Avoid calling printf() when we're either in DDB, or about to call
Debugger(). Use db_printf() instead.

This fixes a problem whereby it was impossible to enter the debugger
if the CPU was spinning in lockmgr() for the proclist lock, because
printf() calls logwakeup(), which eventually calls proclist_lock_read(),
which then spins in lockmgr() yet again...

[Note: This change was prematurely committed to the 1.5 branch by
       mistake. Since it would've been pulled up anyway, I won't
       be sending a pullup request.]
2000-08-08 08:26:21 +00:00
mark 3dc04c2b47 Fix compile problem. Fixes PR 10670. 2000-08-08 08:19:38 +00:00
msaitoh 468e8d8cef unused file (use 'makeoptions LDSCRIPBASE="shl.x"' for little endian) 2000-08-08 05:24:28 +00:00
jdolecek 3d73ef5a2b convert to use conf/newvers_stand.sh, minor Makefile adjustments 2000-08-07 22:38:10 +00:00
bjh21 e74a0fd322 Major formatting cleanups. If I'm going to work on this driver, I want to be
able to read it.
2000-08-07 22:21:44 +00:00
tv 0b7e5ad5a0 %b -> bitmask_snprintf() 2000-08-07 18:46:30 +00:00
leo a9d83b6c6f Add ahdilabel to SUBDIR. 2000-08-07 14:30:39 +00:00
mrg 44b648a013 make "make depend" work. 2000-08-07 13:50:55 +00:00
leo 3f496a2588 AHDI label editor 2000-08-07 09:23:40 +00:00
shin f0803f8192 protect doubleword register from interrupt. 2000-08-06 12:30:36 +00:00
shin 04e4950cbb detect and eliminate phantom keys. 2000-08-05 05:55:27 +00:00
tsutsui de31126ed6 Fix keyboard related panic when ite device is configured
but not attached, per port-hp300/10750.
Approved by thorpej.
2000-08-04 17:22:09 +00:00
hannken 8e764c2ae5 Add missing `#ifdef SUN4U', `FTYPE_LNG' is only defined on sparc64. 2000-08-04 14:44:40 +00:00
augustss 6ee3189cb6 Alphabetize. 2000-08-04 11:51:37 +00:00
enami bdd9be2dc3 Don't print newline here since it is supposed that more message is printed. 2000-08-04 04:52:37 +00:00
hubertf 54c5777f78 sync with GENERIC rev. 1.72 2000-08-04 02:23:22 +00:00
hubertf 97ec6e11d8 Explain what the strip pseudo-device is for 2000-08-04 02:17:46 +00:00
soda 9baf1fff99 NEC RISCserver 2200 support by bob meader <bob@cci.net>.
Now NetBSD works with RISCserver 2200.
2000-08-03 23:58:23 +00:00
nathanw b3e0af3d32 Fix a problem uncovered by rev 1.5 of pcibios.c:
Avoid interpreting the upper 32 bits of 64-bit BARs as a 32-bit BAR.
Otherwise, the code would assume that the value 0 was incorrect and either:
(a) [on bus 0] "fix up" the address to some nonzero value, thus placing
    the decoded address range outside of 32-bit address space, or
(b) [elsewhere] completely disable the device.

The fact that this behaviour depends on the bus number of the device is
already XXX'd.

XXX: This will need revisiting if and when we ever want to handle a PCI bus
XXX: with more than 32 bits of address space on an i386.

The onboard Adaptec 7890 on my Dell Precision Workstation 410 works again.
2000-08-03 20:10:45 +00:00
eeh dd5c54d05c Add fpu emulation instrumentation and fixup FCMP and FCMPE emulation for v9.
And rename the 128-bit `x' routines to `q' to match v9 terminology:
	i - 32-bit int
	x - 64-bit int
	s - 32-bit fp
	d - 64-bit fp
	q - 128-bit fp
2000-08-03 18:32:07 +00:00
msaitoh ac06675f56 add COMPAT_14 2000-08-03 11:30:30 +00:00
msaitoh 9b50348e47 set internal register correctly (SH4) 2000-08-03 08:19:26 +00:00
nathanw e8b50cf289 Use the same idiom for iterating over allproc as everywhere else in the kernel. 2000-08-02 22:47:44 +00:00
eeh 7abe1d5edf Garbage collection. 2000-08-02 22:26:35 +00:00
eeh 345d748512 PDB_BOOT and PDB_BOOT1 should not be the same value. 2000-08-02 22:25:45 +00:00
eeh 7ec33e899f Get kernel profiling to work. Now if only gprof worked.... 2000-08-02 22:24:38 +00:00
wiz 81b49011ff uvm_inherit.h was removed, and doesn't seem to be needed here. 2000-08-02 15:24:40 +00:00
ragge cf62d07e82 Fix bug that trashed the SPT if any copy* function were used before
the first swtch().
2000-08-02 12:13:22 +00:00
msaitoh e049977033 check _BYTE_ORDER instead of BYTE_ORDER 2000-08-02 11:32:41 +00:00
tsubai 2c691df1ec uvm/uvm_inherit.h was removed. 2000-08-02 09:06:56 +00:00
tsubai eef346a5ec Don't try to change subordinate bus number if pchb != grackle (for now). 2000-08-02 09:02:46 +00:00
soda d6945520db Use cpu_intr() definition from mips/cpu.h instead of local one
like other mips ports.
2000-08-02 08:57:15 +00:00
jeffs 8d300a3b14 setregs() cache sync turns out not to be needed with kern_exec 1.104
(which was 2 weeks after our internal trees full sync).
2000-08-02 06:46:47 +00:00
soda 0cbe0d600f fix oversight introduced in previous my commmitment (revision 1.4),
pointed out by Michael Shalayeff <mickey@openbsd.org>.
2000-08-02 02:54:41 +00:00
eeh dfe3516515 Include NONPLUS and just set the extras we need for 64-bit kernels. 2000-08-02 02:23:58 +00:00
jeffs e1cf55c8a8 Make mips3_FlushICache() convert a0 into a KSEG0 + virtual index like
the _2way and mips3_FlushDCache(). This lets all mips3 cache ops accept
user virtual addresss w/o a tlb miss.  Since this is now done in both
ICache flush routines, no need to do it in pmap.c.  Fixed R4400
stability problems with setregs() cache flushing.
2000-08-01 23:38:26 +00:00
jeffs e6bdec31fd Fix vmapbuf() to call uvm_km_valloc_perfer_wait() call, but trunc_page()
to the prefer arg so we free the correct page.
2000-08-01 22:45:05 +00:00
eeh a8cd48f9e6 `mem' is now a pointer, not an array. Fixes kernel coredumps. 2000-08-01 16:49:47 +00:00
briggs 8d6c85d001 Remove hack for unswapped read/write_multi in swapped space.
Driver now uses read/write_multi_stream_2.
2000-08-01 13:08:39 +00:00
tsubai 43b5c0039c Enable rnd. 2000-08-01 08:23:37 +00:00
augustss 37ae63598b Add midi at clcs. 2000-08-01 08:16:54 +00:00
uch ae581ace81 reserve AGP space to avoid resource conflict. 2000-08-01 05:23:59 +00:00
eeh 57d2ec0b98 Overhaul cache flush code and coredump code. 2000-08-01 00:40:15 +00:00
eeh 568dca001c Cleanup trapstate handling and garbage collect old stuff. 2000-08-01 00:36:05 +00:00
eeh e5a87444c7 Cleanup trapframe and TSTATE handling. 2000-08-01 00:34:13 +00:00
eeh 6f9bfddd60 Add UVM_PAGEIDLE_ZERO. 2000-08-01 00:31:15 +00:00
eeh cacbbd1117 Garbage collection. 2000-08-01 00:28:55 +00:00
eeh d09c8ea0f1 Revamp cache flush routines. 2000-08-01 00:28:02 +00:00
eeh 07fc19421d Pull in <machine/frame.h> to define BIAS and CC64FSZ. 2000-08-01 00:25:02 +00:00
eeh aeb88321db Call the parent bus dvmamap_unload function to clear the cache rather
than do it ourselves.
2000-08-01 00:22:41 +00:00
minoura 3094e3b89d include <sys/types.h> to define u_int. 2000-07-31 23:40:02 +00:00
briggs 3f1e17a340 Define bus_space_*_stream_N functions as their non-stream counterparts. 2000-07-31 22:43:46 +00:00
briggs 3ce3697584 Add bus_space_*_stream_N functions. 2000-07-31 22:40:25 +00:00
briggs bd823b939e Fix code to read a string from the nubus board--it was not terminating
the string properly when the string on the board is longer than the
pre-allocated space.
2000-07-31 22:39:17 +00:00
eeh ede765839e Look for fpu files in the sparc subdirectory where they now reside. 2000-07-31 22:17:05 +00:00
msaitoh 9c331f1f89 use 'makeoptions LDSCRIPTBASE="sh.x"' (or shl.x) to select ldscript file 2000-07-31 20:57:45 +00:00
briggs 2cc07c0541 Add a DIAGNOSTIC panic if (count-using) bus_space macros are called with
a count of zero.  Some drivers do this accidentally and some bus_space
implementations will fail if count is passed as zero (they are set up in
a do-{}-while structure).
2000-07-31 14:59:15 +00:00
mrg 978acd5367 sync with GENERIC32; enable rnd 2000-07-31 13:21:45 +00:00
mrg ec14782383 hardcode onboard "hme" to "hme0" 2000-07-31 13:16:24 +00:00
mrg b5ce82b4a0 define BDPRINTF in the !DEBUG case to nothing. PR#10688. 2000-07-31 05:40:22 +00:00
briggs 3717acff97 We may wish to install from an SMC-based ethernet, too. 2000-07-31 02:06:48 +00:00
briggs f5882c7ffa Make sure that bus_space read/write functions that take a count will not be
called if count is zero.  The smc91cxx driver, for example, may try to call
bus_space_write_multi_2() with a count of 0.
2000-07-30 23:17:23 +00:00
briggs 2f76646af1 Some uncommitted poking around. No functional change. 2000-07-30 21:48:54 +00:00
briggs 1e909ae3ca Add SMC-based ethernet and nsphy (AsanteFAST) and ukphy (just in case). 2000-07-30 21:46:39 +00:00
briggs e74ae8ee59 M.d. glue for nubus SMC 91cxx-based cards--including Focus Interlan and
AsanteFAST.
2000-07-30 21:43:40 +00:00
briggs fb9995989b Make bus_space_write_region_2 usage match prototype. 2000-07-30 21:41:59 +00:00
briggs d13747524c Fixup for bogus assumptions about bus_space_handle_t. 2000-07-30 21:40:49 +00:00
briggs c131e0d1b7 Remove unsupported Focus hardware--this is now probed in if_sm_nubus. 2000-07-30 21:40:09 +00:00
briggs 2bb296de77 Update hack to point to bus_space_handle base address. 2000-07-30 21:39:16 +00:00
briggs 9c85d4dc6a Add byte-swap and stride options to bus_space. Allocate as normal, then
call mac68k_bus_space_handle_swapped() or mac68k_bus_space_handle_set_stride().
Stride is untested.  Swapped code works for SMC ethernet.
2000-07-30 21:38:02 +00:00
briggs a3f6fd2274 Add nubus attachment for smc91cxx driver. 2000-07-30 21:36:04 +00:00
bjh21 77a537a1ba Use M_SOFTINTR for soft interrupt sructures 2000-07-30 16:39:18 +00:00
takemura 537da4726d Refresh screen when the system resume. 2000-07-30 11:16:54 +00:00
tsubai 5f1e746912 Remove duplicated entry 22 in chrtoblk table.
Pointed out by Greg Kritsch on port-macppc mailing list.
2000-07-30 07:17:27 +00:00
simonb 1483e8c25e Fix "suggest parentheses around assignment ..." warning in normally
unused code segment.
2000-07-30 06:11:38 +00:00
takemura b5e3ec56a8 Remove src/sys/dev/apm/*. (They've gone to arch/hpcmips/dev/apm.) 2000-07-30 04:41:15 +00:00
takemura bb1a798cbe Move from sys/dev/apm. And rename apm -> apmdev. 2000-07-30 04:29:22 +00:00
thorpej d760e0b407 Add code to read the EISA configuration NVRAM as set up by
an EISA Configuration Utility.  Code to access this data
is forthcoming.

XXX This could probably be made MI at some point.
2000-07-29 23:18:46 +00:00
jdolecek e25636b5da g/c RB_DFLTROOT
I've tried hard to find also various usage() messages and remove the
appropriate flag from there as well, hopefully all occurences are covered.
2000-07-29 20:06:27 +00:00
tsubai 25e447156e Fix printf format string. (recently SECDAY changed from unsigned long to int) 2000-07-29 11:11:53 +00:00
tsubai f23a2f015d Set hostid. 2000-07-29 08:21:43 +00:00
scw 44c9e5e16e Really make this work for `dependall'. Also strip bootst.bug before
running it through wrtvid.
2000-07-28 20:08:20 +00:00
eeh fe3f6176b4 Make 64-bit stack traces look prettier. 2000-07-28 19:10:33 +00:00
eeh 652a74ef51 Don't dump if there's no address space reserved for it. 2000-07-28 19:08:25 +00:00
tv 0505a9e28a Eliminate the other %:, using vsnprintf followed by printf. 2000-07-28 15:40:24 +00:00
minoura 85ae8ebac7 Prototype netintr(). 2000-07-28 14:58:01 +00:00
tv ce9fd05593 Avoid a nonstandard %: format: printf("%:", fmt, ap) -> vprintf(fmt, ap) 2000-07-28 14:46:37 +00:00
bjh21 4d52022987 Comment tidying 2000-07-28 09:54:56 +00:00
bjh21 61edac627c Convert the arm26 rtc driver to use pk's new todr(9) interface internally.
Nothing outside the driver will notice until we get proper MI I^2C.
2000-07-27 23:51:43 +00:00
scw 379de37900 Make these work for the `dependall' target. 2000-07-27 21:06:53 +00:00
mason 4a353b5330 Moving to a default of 64 PTYs. 2000-07-27 17:53:35 +00:00
cgd b63ed164a1 convert PRID handling to use macros on an int, not bit-fields.
there's no reason to use bit-fields, and they just complexity to
the header.
2000-07-27 17:29:05 +00:00
scw 0d5db1f645 Bump DFLDSIZ to 32MB since 16MB is no longer enough for some
parts of `make build'.
2000-07-27 14:48:58 +00:00
mrg 256fc99a68 include the 32-bit kernel, not myself 2000-07-27 14:39:50 +00:00
mrg 8b5a1a1dea do the 32 bit / 64 bit name swap, as per GENERIC. 2000-07-27 14:38:45 +00:00
mrg cc41b6af8f remove COMPAT_AOUT option. 2000-07-27 14:34:06 +00:00
scw 8f4e16a29e G/C some obsolete HP-UX related flags, and prevent multiple
inclusion while I'm here.
2000-07-27 14:26:15 +00:00
scw 110b948408 G/C MDP_HPUXTRACE since it is never set anywhere, so we don't actually
support HP-UX processes doing the tracing.
2000-07-27 14:25:14 +00:00
mrg a254dae933 ebus sc_is is a pointer now, already. 2000-07-27 14:17:10 +00:00
mrg dea4c479f5 intr_list_handler() should only take one argument. it ignored the 2nd anyway. 2000-07-27 14:13:50 +00:00
mrg 556a915306 add commented LOCKDEBUG 2000-07-27 14:10:25 +00:00
mrg 2726e45533 fix warnings. 2000-07-27 13:59:26 +00:00
mrg 270fd5cc55 delete unused variable. 2000-07-27 13:58:54 +00:00
mrg eafc0ade2d fix warnings. 2000-07-27 13:57:23 +00:00
bjh21 926ed939b6 Fix grammatical error in panic msg 2000-07-27 10:12:31 +00:00
jeffs 3eae1609f1 Fix to actually compile MIPS1 only. 2000-07-27 08:28:36 +00:00
jeffs e4a0934c13 Do not attempt mips3 style cache flush on mips1 in setregs() as it
is illegal to flush on user addresses.  In theory the race exists
on MIPS1, but it is rather unlikely in common use.  I have
seen it with regress/sys/kern/sigtramp on a QED 5231 system.
2000-07-27 06:28:06 +00:00
cgd 4adc7b9704 add nops after jals in PANIC and PRINTF. (these macros are often used in
code which has noreorder set, and they're not used with nops afterwards,
as is appropriate in that case, so put the nops in the macros.)
2000-07-27 05:01:06 +00:00
matt 63466a9699 Un __P. 2000-07-26 21:50:48 +00:00
pk 2079f86890 On-board devices on psycho machines seem to have the `interrupt' property
in the parent bus format (i.e. an INO) rather than being represented as
an PCI interrupt line. Provide a hack to work around this in pci_attach_hook().
2000-07-26 17:46:56 +00:00
jeffs ca2a49c4cf Back-out vmapbuf() change for now as locally it has been found to sleep
in some circumstances that don't sleep when not using pmap_prefer().
2000-07-26 16:24:38 +00:00
ragge 1d79c50d61 Oops, forgot a debug return. 2000-07-26 15:16:55 +00:00
pk e668bc0310 Use the mk48txx driver for time-of-day clock access. 2000-07-26 13:39:36 +00:00
pk 785d8d91b9 Remove unused <sys/dev/ic/intersil7170.h>
Remove unused `extern struct idprom idprom'
Pull in <dev/clock_subr.h>
2000-07-26 12:39:20 +00:00