Commit Graph

1036 Commits

Author SHA1 Message Date
eeh ece5d6d3f0 Define __BUS_SPACE_HAS_STREAM_METHODS now we have them. 2000-09-22 21:01:55 +00:00
eeh 57ebc2eb53 Remove some unsupported devices and add support for the `com' device. 2000-09-21 23:46:49 +00:00
eeh e3a80e9511 Add support for the `com' driver and Sun Keyboard/Mouse line disciplines. 2000-09-21 23:44:06 +00:00
eeh 805ffd07cc Sun Keyboard/Mouse line discipline support. 2000-09-21 23:14:40 +00:00
eeh ac3f296768 Guts of the Sun Keyboard/Mouse line disciplines.
N.B. They don't recognize L1-A yet.
2000-09-21 22:25:08 +00:00
eeh 0596b6b6dc Make the improved %tick changes work with machines that use the counter-timer
for the clock.
2000-09-17 19:23:37 +00:00
eeh 903720d945 Add bus_space*stream*() methods. I hope they work. 2000-09-16 14:07:58 +00:00
thorpej 72a24b4eae Add an align argument to uvm_map() and some callers of that
routine.  Works similarly fto pmap_prefer(), but allows callers
to specify a minimum power-of-two alignment of the region.
How we ever got along without this for so long is beyond me.
2000-09-13 15:00:15 +00:00
eeh 022746fd14 This really does seem to fix the ref/mod issues. (Yeah, like were did we hear that before?) 2000-09-12 19:42:26 +00:00
eeh 5be9d50b09 Fix new version of microtime. 2000-09-12 04:16:29 +00:00
eeh cc7f95986b (Hopefully) fix clock skew on machines that us %tick for the clock (UIIi). 2000-09-11 23:29:31 +00:00
eeh 870af94ef7 Add locking to pmap operations and support multiple physical memory segments. 2000-09-11 23:27:22 +00:00
eeh cb2350a90d Don't take protection faults on I/O mappings. 2000-09-11 22:37:34 +00:00
eeh df698d172e Fix some sign extension bugs. 2000-09-11 22:36:35 +00:00
eeh 6c00d395e1 Don't take protection faults on I/O pages. 2000-09-11 22:34:02 +00:00
eeh 2f28900566 Make sbus_wenable() and ebus_wenable() work on 32-bit kernels. 2000-09-09 23:29:06 +00:00
eeh 0d01e04003 Add support for write protecting clock registers. 2000-09-01 19:04:49 +00:00
eeh 67ca76fd68 Use casx instead of stx to change entries in the page table trees. 2000-08-31 20:14:55 +00:00
eeh 65f1bb68b5 Add support for multiple memory segments. 2000-08-31 19:12:45 +00:00
eeh a17d71cd4b Fix register sheduling bug in st?a() routines and add casxa(). 2000-08-31 19:08:47 +00:00
soren 55dbdb6091 Typo. 2000-08-30 14:59:48 +00:00
eeh bbede65f5b Fix E250 identification. 2000-08-28 18:01:23 +00:00
eeh a0f2ab32f7 Make 64-bit clean. 2000-08-26 16:02:06 +00:00
pk baa6bfe332 The `fb' device is optional. 2000-08-25 08:12:49 +00:00
thorpej 4db6fc7542 Make need_resched() take a "struct cpu_info *" argument. This
causes gives a primitive form of processor affinity.  Its use in
roundrobin() still needs some work.
2000-08-25 01:04:06 +00:00
eeh 61197aa4f0 Add workaround for E250s. 2000-08-24 22:00:04 +00:00
nathanw 5127aa189d In fdioctl(), allocate fd_formb dynamically when needed, rather than on
the stack, and remove the no-longer-necessary PHOLD()/PRELE() calls
in fdformat().

(This eliminates 1/3 of the instances of PHOLD()/PRELE() in the kernel code.)

XXX We still have too many mostly-redundant floppy drivers.
2000-08-24 20:04:28 +00:00
eeh 5ca48b896d Update the scheduler to the new locking scheme. 2000-08-23 21:35:56 +00:00
pk 7c10808744 Use common fb.c from sys/dev/sun. 2000-08-23 13:41:58 +00:00
pk 194a6c2d97 remove pfourreg.h. 2000-08-23 12:08:16 +00:00
pk 408d2f01d0 Brooktree DAC support now lives in sys/dev/sun. 2000-08-23 10:08:48 +00:00
pk 837ef2bae6 This driver is now in sys/dev/sbus. 2000-08-23 10:07:46 +00:00
pk aa81eb0f8b This file is now in sys/dev/sun. 2000-08-23 10:07:25 +00:00
pk c85ada8053 These drivers are now in sys/dev/sun 2000-08-23 10:05:46 +00:00
pk 317a570728 These devices will never be found on sun4u machines. 2000-08-22 21:43:35 +00:00
pk 1e1790859a Pull in sys/dev/sun/files.sun.
Remove driver declarations that are now in /sys/dev/{sbus,sun}
2000-08-22 21:35:45 +00:00
thorpej 58e7a6954b Add spllock(). See spl(9) for details. 2000-08-22 19:46:26 +00:00
thorpej 23a7f255d4 Make sure we provide splsched() as described in spl(9). 2000-08-21 02:06:31 +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 814e226e9d Fix two printf formats: `%ld' -> `%d'. 2000-08-16 11:29:42 +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
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
eeh 7c49c54392 Fix signal delivery. 2000-08-10 18:33:47 +00:00
mrg b8dfc193d0 merged with the sparc installboot 2000-08-10 12:18:14 +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
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
tv 0b7e5ad5a0 %b -> bitmask_snprintf() 2000-08-07 18:46:30 +00:00
mrg 44b648a013 make "make depend" work. 2000-08-07 13:50:55 +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
eeh dfe3516515 Include NONPLUS and just set the extras we need for 64-bit kernels. 2000-08-02 02:23:58 +00:00
eeh a8cd48f9e6 `mem' is now a pointer, not an array. Fixes kernel coredumps. 2000-08-01 16:49:47 +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
eeh ede765839e Look for fpu files in the sparc subdirectory where they now reside. 2000-07-31 22:17:05 +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
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
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
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
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
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
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
mycroft 11142830f9 Switch back to newvers_stand.sh. Dunno why it bombed the first time. 2000-07-25 21:53:55 +00:00
mycroft 714a495a4a Duh, hp300 -> sparc64. 2000-07-25 20:48:19 +00:00
mycroft 234b20f27c Put back missing newvers.sh. 2000-07-25 20:47:44 +00:00
mrg 219910d2e6 add disabled LOCKDEBUG; re-enable all the phy drivers 2000-07-25 17:26:36 +00:00
pk 320361c474 Re-instate a couple of delay slot NOPs marked `XXX spitfire bug?' 2000-07-25 15:15:32 +00:00
mycroft b77782d785 Optimization to pmap_zero_page(): we only need to use the first 16 FP regs,
as in bzero().
2000-07-24 16:21:02 +00:00
mycroft fe9795a1e5 Fix a whitespace glitch. 2000-07-24 16:08:18 +00:00
mycroft a0ae8e1ecb Pull in the bzero() changes from libc for real, with a couple of kernel-
specific hacks:
* Make the bias handling depend on STKB, so it switches correctly for 32-bit
  kernels.
* Use the 32-bit stw/ld for 32-bit kernels.
* Add a few `-STKB's that were missed in the previous change.
2000-07-24 15:57:07 +00:00
pk 98127a7ee3 Cosmetic & readability:
- local label cleanup in interrupt handling code;
	- in debugging sections when testing `intrdebug': use a unique
	  local label (97) to enhanced clarity;
	- comment-out unused code;
	- kill a bug as the satisfying result of doing all of the above.
2000-07-24 14:55:56 +00:00
pk 1045aba51d Define UVM_PAGE_IDLE_ZERO. 2000-07-24 09:14:56 +00:00
eeh 2933116823 Fix stack issues in bzero. 2000-07-24 07:40:40 +00:00
mycroft 2f13e00500 Revert the previous change for now. I don't have time to debug it tonight. 2000-07-24 06:30:34 +00:00
mycroft ac182d9c19 Er, eliminate the -p link option as well, which just outputs huge amounts
of spooge.
2000-07-24 04:54:16 +00:00
mycroft 711ffefeac Nuke lderr. 2000-07-24 04:45:49 +00:00
mycroft 0c2ad746ea Slight rearrangement. 2000-07-24 04:39:01 +00:00
mycroft b65d3e93c9 Make this a bit safer against errors by using some .tmp files. 2000-07-24 02:00:39 +00:00
mycroft 62fe935649 Give this a prayer of working with obj dirs. 2000-07-24 01:55:59 +00:00
mycroft 8de9ab874b Make this at least pretend to compile. 2000-07-24 01:51:44 +00:00
mycroft 51b68e1fdd Fix compiler warnings. 2000-07-24 01:49:37 +00:00
mycroft 2f39009bda Fix multiple problems with floating point and structure handling. 2000-07-23 21:36:56 +00:00
mycroft acbf46fbf4 Copy bzero change from libc. 2000-07-23 20:39:14 +00:00
eeh 999ba2b285 Give 64-bit processes access to a full 64-bit address space (90% of which
they can't use anyway, but that's another issue.)
2000-07-23 07:02:19 +00:00
eeh 526bc1de59 Include <machine/frame.h> to get the definition of BIAS and CC64FSZ. 2000-07-23 06:57:55 +00:00
mrg 46a7cab70a make this usable for for userland asm, which needs CC64FSZ 2000-07-23 06:15:33 +00:00
jdolecek 01d7296690 switch to sys/conf/newvers_stand.sh for generation of version file
slighly adjust the Makefile WRT vers.c and SRCS & CLEANFILES
sync the message in boot/version with other ports using newvers_stand.sh
2000-07-21 22:06:11 +00:00
eeh 263f73d7f4 Now we're running 64-bit userland don't panic the system if a process steps
into the address space hole.
2000-07-20 23:29:50 +00:00
eeh 0a25b480c6 Clean up disassembly of sparc v9 insns and handling of negative values. 2000-07-20 20:43:21 +00:00
pk 4badffe2c1 For now, alias `network' to `hme'. 2000-07-20 16:29:03 +00:00
pk 71169064c4 Since `intrcnt' points to an array of long ints, reserve the appropriate
amount of space depending on _LP64. Provide macros to load/store signed
and unsigned long ints.

Also, make the `intrcnt' and `intrpending' arrays 16 entries long, as on
sparc/v9 interrupt #15 is just a regular interrupt.
2000-07-20 13:28:39 +00:00
eeh 6996dd8691 Fix merge problem. 2000-07-19 15:48:25 +00:00
eeh 25f8633edd Add an option to poll the ROM console from hardclock you can break into DDB
even if callouts are disabled.
2000-07-19 15:41:53 +00:00
mrg e3fc09812a make myetheraddr() work even if the clock hasn't been setup yet 2000-07-19 10:20:09 +00:00
eeh 422e1b7236 Disable interrupt interlock using ih->ih_pending field. Seems to cause
more problems than it solves.
2000-07-19 04:36:42 +00:00
eeh 625dc5189f Miscellaneous cleanup. 2000-07-19 03:24:07 +00:00
eeh 067b7521b5 Fix PIC bugs. 2000-07-18 22:38:11 +00:00
pk 59a7148fe9 address casts: long -> u_long 2000-07-18 20:19:56 +00:00
pk db76bf893e Cast pointer to `u_long' (not `long') for correct results. 2000-07-18 20:15:36 +00:00
pk 602e908589 Correct args usage comment in probeget.
Whitespace cleanup.
2000-07-18 20:14:45 +00:00
pk 1d14ce3842 probeget: 9 -> 0x9 2000-07-18 19:27:57 +00:00
pk c0e91fb184 If `ih_pending' is set simply return from the trap, don't schedule another
soft interrupt.
2000-07-18 19:25:26 +00:00
pk a49fddc9b3 openfirmware: don't lower %pil 2000-07-18 12:52:56 +00:00
pk 34270e85bd Use probeget() in pci_config_read() for the psycho, to avoid bus
faults when probing PCI space.
2000-07-18 11:37:31 +00:00
pk 073e24cd1b Set up register bank sharing bwteen psycho A & B based on matching
physical addresses.  Allocate IOMMU state separately and refer to it
from both psycho_softc's.
2000-07-18 11:35:03 +00:00
mrg faaa100d6e #if 0 some dumpsys() debugging messages 2000-07-18 05:18:35 +00:00
mrg d2626038cd kill dead files. 2000-07-18 04:21:17 +00:00
mrg 040268c10e s/auxreg/auxio/ 2000-07-18 04:17:23 +00:00
pk 1d1b0968f1 IF we're changing hz, change tick accordingly too. 2000-07-17 18:32:25 +00:00
pk ec726f07ca Kill typos in interrupt code. 2000-07-17 17:06:00 +00:00
pk 966115ff9e probeget: do the same song and dance as ld*a() macros in ctlreg.h do. 2000-07-17 14:08:43 +00:00
eeh eb5863f522 #ifdef BOOT_DEBUG --> BDPRINTF(PDB_BOOT, (...)) 2000-07-15 14:26:39 +00:00
eeh 4eacbabe76 Make 64-bit stack tracebacks look decent. 2000-07-14 21:07:10 +00:00
eeh 6667752114 Move some macro definitions out of genassym and into locore.s 2000-07-14 21:04:16 +00:00
eeh 3143adecfb Tell gcc that stores clobber "memory". Probably makes no difference since
they should not be used to access normal memory anyway.
2000-07-14 21:02:11 +00:00
eeh 41da794863 Make all the inline functions static. 2000-07-14 21:00:17 +00:00
eeh 7b6085ff22 Add support for 64-bit PIC and dynamic linking. 2000-07-14 20:59:07 +00:00
pk 9de310aebe Use per-PBM control/status register addresses provided by the PROM.
Print version/implementation info.
2000-07-14 15:13:35 +00:00
pk 04fe9636ba Provide details on the `psy_csr' register. 2000-07-14 15:09:51 +00:00
pk 8258c0e780 Fix padding in struct pci_ctl. 2000-07-14 13:17:12 +00:00
pk e5a9cce870 Cast physmem to u_int64_t before applying ctob(). 2000-07-14 13:15:44 +00:00
pk 68edef1bf6 Back out previous for now; it requires a system wide prototype change. 2000-07-14 09:58:52 +00:00
pk c32ffb8447 Make `physmem' an `unsigned int', so it can properly represent large memory
configurations.
2000-07-14 00:02:35 +00:00
pk 9da8631e2b printf() format for 64-bit integers `tf_pc' and `tf_npc'. 2000-07-13 16:44:03 +00:00
mrg c0f74e1bda remove memreg.h. 2000-07-13 06:30:16 +00:00
mrg 22820972ac remove vaddrs.h 2000-07-13 06:25:55 +00:00
mrg 81ec8bef47 remove old (bogus) comment. 2000-07-13 06:23:07 +00:00
mrg d5a1bec37e bump some system values. 2000-07-13 05:40:51 +00:00
pk 7e8f67ad97 No need to fetch the psycho's own registers as thet are already passed
down from the parent bus.  Also account for the difference in `reg'
properties in psycho vs sabre chips.
2000-07-12 21:49:44 +00:00
pk f56554a578 If there is no "interrupt-map" property on the ebus node, assume the
child "interrupt" properties are already in a format suitable for
the parent bus.
2000-07-12 21:07:36 +00:00
eeh 1f45545899 Add UltraSPARC III specific flag bit. Currently ignored. 2000-07-11 21:55:11 +00:00
eeh f10d7699fc Break into debugger by typing `+++++', 2000-07-10 20:24:23 +00:00
eeh 7403ef3d00 Need to include <sys/exec_elf.h> to make things happy. So much for adding
dead code.
2000-07-10 01:15:17 +00:00
eeh 048f1387db Function signature for bus_intr_establish() changed. 2000-07-10 01:11:14 +00:00
eeh 1cfb5e6456 Grab and use the memory model info from the flags in the ELF header. 2000-07-09 22:39:17 +00:00
eeh ec71379542 Use TSO memory model for 32-bit userland. 2000-07-09 22:02:32 +00:00
eeh e5cd515b89 Upgrate interrupt handling:
1) use interrupt vectors for specific zs chips rather than polling
	   all of them.

	2) use softintr_schedule() and schedule it for a particular device
	   rather than poll all devices.
2000-07-09 21:58:43 +00:00
eeh f43ab74a43 Shuffle around some fields to waste less space on LP64. 2000-07-09 21:55:24 +00:00
pk 406e0f779f Add a `device class' interrupt level argument (from machine/intr.h)
to bus_interrupt_establish().

It's currently only used in sparc64/dev/psycho.c to assign a CPU interrupt
level to devices in PCI slots.
2000-07-09 20:57:41 +00:00
mrg 152f5c5f28 remove unused variable. 2000-07-09 13:35:54 +00:00
eeh 5a7cb20576 gdb requires a `struct fpstate' so provide one. 2000-07-08 19:25:14 +00:00
mrg 065b56c096 backout part of previous: turn off intrdebug, and another debug message 2000-07-08 05:04:01 +00:00
pk 2c1dc518bd Changes for readability:
- #define LP64 dependent STACKFRAME macro once
	- use a LOAD_ASCIZ macro for setting up the format string
	  for debug messages.
2000-07-07 23:28:28 +00:00
eeh 468c727a28 Temporary fix to prevent the clock from stopping on UIIi machines. 2000-07-07 19:59:36 +00:00
eeh 14b1b05f10 Rename GENERIC to GENERIC32 and GENERIC64 to GENERIC to allow snapshots to
build properly.
2000-07-07 19:11:56 +00:00
mrg 2b69bc2115 BUFCACHE=20 2000-07-07 14:22:57 +00:00
mrg b91804af6c split up debug flags so i can turn off some of them 2000-07-07 13:10:34 +00:00
pk cacf690261 Try both the BOOTPARAM and DHCP protocol (in that order as is the custom
with Sun machines).
2000-07-07 12:59:16 +00:00
mrg 4b21f66d57 work around a bug passing arguments to iommu_dvma_load_raw() 2000-07-07 12:53:29 +00:00
mrg c0f4ea2a12 check that this *entry* is BUSCLASS_NONE (not the current device) in
bus_compatible().  fixes boot device detection on sbus.  while i'm here,
sprinkle DPRINTF()s in the boot device detection code.
2000-07-07 12:44:47 +00:00
mrg 9a6c45e283 options BUFCACHE=20, plus a 64 bit config. 2000-07-07 08:44:16 +00:00
eeh 3f2289a3d7 Handle bus_dma aligment properly. 2000-07-07 02:50:19 +00:00
eeh 6a1f10a7d5 Added two new options to the bootblock: -V turns on verbose mode and -D
makes it load but not execute.  If fcode-debug? is enabled in the firmware
an arbitrary file can then be loaded with:

ok " <path>" do-boot
2000-07-06 17:15:07 +00:00
eeh 63d57aa16a Fixup counter-timer interrupt lossage. 2000-07-06 14:13:05 +00:00
pk f6d8b8e963 We want to index the PCI `interrupt clear' registers with the Interrupt
Number Offset.  (this stuff needs a serious cleanup).
2000-07-05 12:11:59 +00:00
sommerfeld 502fc00210 Comment out EON ISO-over-ip tunneling pseudo-driver, and document as
broken/fragile.  Unlikely to be of much use, and confuses new users
when their system crashes when they, or their dhclient stumble over
it.  See kern/10500, kern/8994 for the gory details.
2000-07-05 04:07:22 +00:00
eeh 968524445a Prevent interrupts from being posted if they are active and deprecate polled
interrupts.  This seems to eliminate the spurious interrupts.
2000-07-03 17:56:06 +00:00
eeh 58c36586cd Use the same IPLs as everyone else. 2000-07-03 17:42:37 +00:00
mrg 16fd30ec1d - add a bus class check to the conversion of prom names to NetBSD driver
names, as we need to convert `pci' to both `psycho' and `simba'.  add
a member to dev_compat_table[] for this, using BUSCLASS_NONE for when
we don't care (all other cases, currently).  add `ide' -> `pciide' and
`disk' -> `wd' mappings here, also.
- "psycho" is a BUSCLASS_MAINBUS device; it has UPA attachment semantics.


this fixes bootpath detection for IDE disks.
2000-07-03 14:38:05 +00:00
pk 2310f6d755 Add `ahc' (Adaptec 2940, et.al. SCSI controller); it is known to work. 2000-07-02 21:11:26 +00:00
eeh f504adf782 Clean up interrupt handling some more. 2000-07-02 16:13:21 +00:00
mrg f3e6e48cb8 update to reality:
- TRAPWIN is defined in locore.s
- don't config netbsd_wd0
- enable MSDOSFS and FFS_IE
- enable INET6 & IPSEC*
- enable ipfilter
- comment sbus & zs at sbus
- enable scsi devices seeing we have scsi bus support
- hardwire the onboard hme as 'hme0'
- disable audiocs for now
- disable rnd for now
2000-07-02 15:02:29 +00:00
mrg 585f7645bf iommu_dvmamap_load*(), pass an alignment constraint, as well as
EX_BOUNDZERO, to extent_alloc().  this fixes problems with it
(extent_alloc()) returning incorrect values, when the start of
the extent is not aligned as strongly as the requested area..

raw access to ide disks now works.
2000-07-02 14:00:38 +00:00
mrg 15c79c03c2 use bitmask_snprintf(). 2000-07-02 13:35:35 +00:00
mrg 9ec4bcf95b whoops; turn off trapdebug again. 2000-07-02 12:39:01 +00:00
cgd a5c13f9ad4 Kwality control:
* put #includes of opt headers and headers to get protos used by
  net/netisr_dispatch.h in net/netisr.h (if !defined(_LOCORE)) (rather than
  in netisr_dispatch.h itself, and potentially nowhere, respectively).
* require netisr.h to be included before netisr_dispatch.h.
* minor additional cleanup of both netisr.h and netisr_dispatch.h.
* clean up uses to remove now-unnecessary header file inclusions, and
  local prototypes of the fns.
* convert netisr dispatch implementations which didn't use
  netisr_dispatch.h (pc532) to use it.
2000-07-02 04:40:33 +00:00
eeh 707e41f21e Fix interrupt delivery on UltraSPARC IIi machines. 2000-06-30 22:58:01 +00:00
eeh 3250ce2976 Reserve a page for dumping the kernel. 2000-06-30 22:17:53 +00:00
itojun d738f90fd7 raise MSIZE from 128 to 256.
- for sizeof(void *) == 8 arch, this is mandatory.  MHLEN is too small
  already (less than 80) and there are chances for unwanted packet loss due
  to m_pullup restriction.
- for other cases, the change should avoid allocating clusters in most cases
  (even when you have IPv4 IPsec tunnel, or IPv6 with moderate amount of
  extension header)

portmasters: if your arch chokes with the change (high memory usage or
whatever), please backout the change for your arch.
2000-06-30 17:55:11 +00:00
itojun d76ae83df8 add PULLDOWN_TEST for all the platforms.
XXX should be moved to somewhere else when stabilized
2000-06-30 17:10:15 +00:00
eeh ff9280f4ee This seems to fix the problem in __semctl13.c without breaking anyghing else. 2000-06-29 20:15:24 +00:00
pk 8906c1b836 Fix bus_space_read_region_{2,4,8}(). 2000-06-29 14:10:16 +00:00
mrg 4d14e81c0b remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-29 07:37:53 +00:00
kleink d82c31e07e Typo. 2000-06-27 08:43:02 +00:00
kleink bb2ed0f487 G/c _BSD_INTPTR_T_ and _BSD_UINTPTR_T_. 2000-06-27 05:53:22 +00:00
kleink 47b5c5e3b1 Resolve some formatting nits; add __intptr_t and __uintptr_t. 2000-06-27 04:58:51 +00:00
pk 7d89e9904d We want prom_claim_phys() to return the address passed into it. 2000-06-26 19:45:54 +00:00
pk 9b1e1aeb66 prom_claim_phys: it appears one result argument too many was specified.
Now we can return the actual result of the call rather than merely
reflecting the input.
2000-06-26 19:41:20 +00:00
pk ff54ba628e prom_claim_phys: set `align' parameter to 0 (meaning: get the chunk at the
specified address).
2000-06-26 19:36:07 +00:00
kleink e695f72a2e Add <machine/int_types.h>, which provides namespace-pure definitions
of exact-width integer types.
2000-06-26 15:42:16 +00:00
eeh 7e7c0311e4 Advertise we have __GENERIC_SOFT_INTERRUPTS. 2000-06-26 15:13:26 +00:00
mrg 2f159a1bac remove/move more mach vm header files:
<vm/pglist.h> -> <uvm/uvm_pglist.h>
	<vm/vm_inherit.h> -> <uvm/uvm_inherit.h>
	<vm/vm_kern.h> -> into <uvm/uvm_extern.h>
	<vm/vm_object.h> -> nothing
	<vm/vm_pager.h> -> into <uvm/uvm_pager.h>

also includes a bunch of <vm/vm_page.h> include removals (due to redudancy
with <vm/vm.h>), and a scattering of other similar headers.
2000-06-26 14:20:25 +00:00
simonb 889c658b5b Change the kernel mmap interface so that the offset to map is an
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes.  Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".

Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
2000-06-26 04:55:19 +00:00
mrg 53be5b215c <vm/vm_pageout.h> is already empty; kill it totally. 2000-06-25 13:49:33 +00:00
eeh 2e1e35d58e Enable interrupts. 2000-06-24 23:27:23 +00:00
eeh 6c5d2dbbac With these changes the kernel seems almost stable again. 2000-06-24 20:48:36 +00:00
eeh 8e1fd2e3c6 Remove a couple of references to vaddrs.h that slipped through. 2000-06-24 16:51:34 +00:00
eeh 49bf46caf7 Add PROM symbols to 32-bit kernels too. 2000-06-24 04:42:55 +00:00
eeh 85cab8fe27 More VM cleanup:
Move the cpu_info structure above the interrupt stack so it won't
	get corrupted if the stack overflows.

	Flush the D$ before and after all MMU bypass accesses since the
	D$ latches all of those.
2000-06-24 04:38:20 +00:00
eeh 25bb978ba8 Printing out %pc values should now be safe. 2000-06-24 04:26:45 +00:00
eeh 0db2dfd53f Make these interrupt levels reflect reality a bit better. 2000-06-24 04:25:08 +00:00
eeh cc02c0d142 masterpaddr is gone. 2000-06-24 04:24:10 +00:00
eeh be308420d4 Get rid of vaddrs.h. 2000-06-24 04:20:58 +00:00
eeh 3bc65c6d9e Use probeget to read kernel data to prevent the machine from falling over if the PC goes bad. 2000-06-23 19:52:57 +00:00
eeh e9b3925f8b Make probeget() and probeset() really work for a change. 2000-06-23 19:50:54 +00:00
kleink 133ea38323 Add a WEAK_ALIAS() macro. 2000-06-23 12:18:45 +00:00
fvdl 1ee7d22c0b Remove prefix construction for softdeps. Add SOFTDEP option to GENERIC. 2000-06-22 20:27:49 +00:00
eeh d24721788a Correct calculation of length for dma segments in iommu_dmamap_load(). 2000-06-22 18:18:19 +00:00
eeh 75eaa6ba70 lda is unsigned, ldswa is signed. Fixes a 32-bit sign extension bug. 2000-06-20 18:06:12 +00:00
eeh 245619bad4 Have separate data and text segments, make text read-only. 2000-06-19 23:30:32 +00:00
eeh 4ffba8be2a Fix uninitialized pointer bug. 2000-06-19 22:29:15 +00:00
mrg cafc122317 catch up with fpu changes. 2000-06-18 08:13:45 +00:00
mrg f44ba0a4dc back out part of previous. 2000-06-18 08:13:26 +00:00
mrg fab0adad15 iommu_flush becomes iommu_strbuf_flush cuz that's what it does. 2000-06-18 07:17:40 +00:00
mrg 70a9c29b9b give BSDB_MAP a value. add a shushing cast. 2000-06-18 07:13:41 +00:00
mrg b6026e7c35 kill dead code. 2000-06-18 07:12:39 +00:00
mrg fde87ed5d6 add a (u_long) cast for quietness 2000-06-18 07:10:23 +00:00
mrg 0bd5307bf8 remove an unused variable. 2000-06-18 07:05:09 +00:00
mrg 9105157268 duplicate "file" should only include "compile-with" 2000-06-18 07:03:35 +00:00
mrg 4f9416205c update to reality 2000-06-18 07:02:04 +00:00
mrg e36a32c98f obsolete these; use the merge sparc version. 2000-06-18 06:58:30 +00:00
mrg 41d83cead7 use arch/sparc/fpu 2000-06-18 06:57:15 +00:00
mrg f007a974bb turn off softdep for now; we have enough other things to worry about. 2000-06-15 18:23:52 +00:00
mrg eccc09d9de fix a couple of errors in the previous. from eeh. 2000-06-15 15:51:07 +00:00
mrg e26f7acd77 my Ultra-1 2000-06-15 13:50:20 +00:00
veego 223d7455c7 Remove the obsolete config fragments for kernel crypto, because the IPsec
crypto code is now in the kernel source tree.
2000-06-14 22:02:13 +00:00
eeh 3517559eb5 Missing paren. 2000-06-13 05:04:05 +00:00
eeh fb0404cc75 Start reorganizing the kernel for MULTIPROCESSOR support. 2000-06-12 23:32:46 +00:00
eeh 65bca8bde2 Fix OF_val2sym and OF_sym2val. 2000-06-12 23:26:38 +00:00
eeh 3dfb9ee7ac More debugging support. 2000-06-12 23:20:54 +00:00
eeh 0146a569d2 Comment describing the IOMMU DVMA address space layout. 2000-06-12 23:19:05 +00:00
eeh cc29e9b22c ebus_ca needs to specify enough memory to hold an ebus_softc, not a struct device. 2000-06-12 22:36:59 +00:00
mrg 69d1f5db9d clean up cruft. 2000-06-12 05:31:30 +00:00
mrg fdfb59b4b9 ih_map & ih_clr are volatile. 2000-06-12 05:29:43 +00:00
mrg 9918c00a61 formatting nit. 2000-06-12 05:27:27 +00:00
eeh d26027dd5b Only use 32-bit addresses for all accesses that don't bypass the MMU.
Makes SBus work again.
2000-06-10 20:51:43 +00:00
eeh c69e701de8 Separate COPTS from CFLAGS to fix problems w/unoptimized files, and add
lfs_loop.c to the list that breaks optimization.
2000-06-09 15:28:21 +00:00
mrg ed15212269 myetheraddr(): don't lose badly when the clock hasn't been attached yet. 2000-06-09 05:27:40 +00:00
eeh 7539c8d1ce Turn on PCI MEM and DMA. 2000-06-08 23:03:17 +00:00