Commit Graph

1036 Commits

Author SHA1 Message Date
eeh 09c04e2283 Update for new signal structures in struct proc. 2000-12-29 17:07:12 +00:00
sommerfeld 851de295eb Change pci_intr_map to get interrupt source information from a "struct
pci_attach_args *" instead of from four separate parameters which in
all cases were extracted from the same "struct pci_attach_args".

This both simplifies the driver api, and allows for alternate PCI
interrupt mapping schemes, such as one using the tables described in
the Intel Multiprocessor Spec which describe interrupt wirings for
devices behind pci-pci bridges based on the device's location rather
the bridge's location.

Tested on alpha and i386; welcome to 1.5Q
2000-12-28 22:59:06 +00:00
itojun efa2b7073c make mbstate_t bigger (32 -> 128 bytes).
XXX if you have libc after citrus locale import, please recompile libc,
and your applications that use mbstate_t (rather rare).  really sorry
for the mess.
2000-12-26 10:35:28 +00:00
jdolecek e9e91a0fb5 split off thread specific stuff from struct sigacts to struct sigctx, leaving
only signal handler array sharable between threads
move other random signal stuff from struct proc to struct sigctx

This addresses kern/10981 by Matthew Orgass.
2000-12-22 22:58:52 +00:00
eeh 4c3121006d Use an extent map for I/O addresses instead of a base so addresses can
be both allocated and freed.
2000-12-21 22:19:21 +00:00
itojun 823498203f populate _BSD_MBSTATE_T_. add warning regarding to rune_t. 2000-12-21 06:03:47 +00:00
mrg 43251365b4 com_attach_subr() prints the newline for us. 2000-12-20 16:19:09 +00:00
thorpej 2563d39a6e This is long since obsolete. 2000-12-19 18:12:48 +00:00
mrg 3f647a126c clockattach(): print the hostid as a 32-bit value to avoid 64-bit sign extension. 2000-12-19 05:09:06 +00:00
mrg 32b8108b06 s/%qx/%llx/ 2000-12-18 15:57:15 +00:00
mrg dd2f1cdf71 - rename 32bit USRSTACK32, and define USRSTACK to that if !__arch64__, so that
64bit code can see USRSTACK32
- bump the limits
2000-12-18 14:48:26 +00:00
pk c421b5eb92 Pull over revision 1.23 from sparc:
Fake a label only if it appears to be blank, and if so use RAW_PART
	instead of 0.
2000-12-17 22:39:18 +00:00
pk 065dbd3604 Make pointer formats work with a 32-bit compiler. 2000-12-17 21:54:20 +00:00
pk 51dca5ed7c Fix printf() pointer formats & make them work with a 32-bit compiler. 2000-12-17 21:43:54 +00:00
pk 4d082438e0 Literal `%' in format string => `%%' 2000-12-17 21:42:21 +00:00
pk 107489f7a1 Remove spurious `#define DEBUG' 2000-12-17 21:41:43 +00:00
jdolecek cacec11253 delete obsolete comment 2000-12-17 15:52:39 +00:00
martin ee0eb24c13 Don't include opt_*.h if compiling as LKM. 2000-12-14 10:24:42 +00:00
jdolecek ca57e681bd g/c obsolete vtrace(2) stuff 2000-12-13 18:13:05 +00:00
eeh ce7f4ef73f Don't use rwindow_save() since the stack has already been made COW. 2000-12-11 18:51:55 +00:00
eeh 264fbb89af Cleanup types in DEBUG printf()s. 2000-12-10 19:52:17 +00:00
eeh 40638d9f35 Zero proc 0 stack pages so the pcb is cleared out before use. 2000-12-10 19:33:02 +00:00
martin d9d7c42e0c Remove esp specific function from ddb when esp @ sbus is not included
in the kernel config. Makes compiling sbus-less kernels possible again.
2000-12-08 17:29:12 +00:00
eeh 873101cd21 Fix a bug in rwindow_save() that always wrote out window 0 in 64-bit
code and caused problems with ksh.
2000-12-07 01:05:55 +00:00
eeh 297dba1163 Add a call to db_esp() and make `mach phys /u' read user addresses. 2000-12-07 01:03:17 +00:00
eeh 660d1fc6c7 Fixup calculating where fpstate should be saved in the signal trampoline
code so it doesn't overwrite something important like the registers.
2000-12-07 00:59:42 +00:00
eeh a5a8c50c48 Initialize pcb_lastcall so db_dump_pcb() will not bomb on non-DEBUG kernels. 2000-12-07 00:53:29 +00:00
mrg 703ec39a02 fix warnings in DEBUG & DIAGNSTIC code. 2000-12-06 01:47:49 +00:00
fvdl 3de7a35dc2 More cast / format cleanup to make this compile cleanly in 32bit mode. 2000-12-04 20:40:07 +00:00
fvdl b5f5b707ea Make gcc happy about casts. 2000-12-04 20:33:12 +00:00
fvdl 95ed1f82c4 Make gcc like a cast. 2000-12-04 20:29:34 +00:00
fvdl 2ccdc61f62 Avoid (safe) cast warnings. 2000-12-04 20:19:49 +00:00
fvdl 2c81c82473 Comment out caxsa, it's not used. Avoids 32 bit compile errors. 2000-12-04 20:14:05 +00:00
fvdl 42efb3639a Avoid a warning in bus_dmamap_load_uio by inserting a 'return 0' for
good measure in this unimplemented function.
2000-12-04 20:12:10 +00:00
eeh c5080ee564 Fix uninitialized variable bug and code cleanup. 2000-12-04 17:26:41 +00:00
fvdl 2fb588e51d Warning police. Mostly useless format warnings. Switch Makefile for
kernel compiles to the warning flags that other ports also use.
2000-12-04 16:01:18 +00:00
mrg 247f2c42d7 Remove __BROKEN_CONFIG_UNIT_USAGE. (sync with sparc) 2000-12-04 09:56:56 +00:00
mrg ac9988aef0 remove duplicate function prototypes. 2000-12-04 01:39:04 +00:00
fvdl a21f36eeb2 Make softintr_establish prototype match other ports, avoiding compile
warnings.
2000-12-03 14:49:50 +00:00
fvdl 1f04bc7933 TRAPWIN is defined by default in trap.c, don't define it here. 2000-12-03 14:49:14 +00:00
mrg 3da40e83e7 const poison to avoid a warning. 2000-12-02 03:57:26 +00:00
eeh bf3bbac849 Don't allow pmap_collect() to run on the kernel pmap since it will
undo the work of pmap_growkernel().
2000-12-01 17:17:29 +00:00
soren 66864e1f05 Removed increased BUFCACHE/BUFPAGES. 2000-11-27 08:55:41 +00:00
chs 0ac52aaf1d remove MD functions for printing vnodes and buffers since there are
MI versions now.
2000-11-21 16:34:52 +00:00
chs c62d17a551 rationalize the use of b_flags for geteblk() buffers.
rather than assigning to the whole field, set or clear individual flags,
which implies that the B_BUSY and B_INVAL flags will remain set.
this allows us to make the assertion in brelse() that B_BUSY is set,
which is the purpose of all this.
2000-11-20 08:24:08 +00:00
mrg 5d04f7b69d update to reality. sync with GENERIC32. 2000-11-19 15:23:55 +00:00
mrg 1368967d8c fix some comments. 2000-11-19 15:22:51 +00:00
mrg e97f9e9f7a use OpenFirmware, not prom version 0, operations. eeprom(8) works now. 2000-11-18 23:45:05 +00:00
mrg a2ea64e265 sync with sparc port. add support for OF_setprop(), OF_nextprop(),
OF_interpret() and OF_milliseconds().
2000-11-18 23:43:06 +00:00
mrg d6d4159b1a s/register// 2000-11-18 03:52:50 +00:00
mrg 40095eb6a1 struct pcb's lastcall is const char * 2000-11-18 03:51:14 +00:00
mrg 0485f611f1 remove dead debugging code. 2000-11-18 03:49:38 +00:00
mrg 215d0d2dcd pull over from sparc port's mem.c:
>revision 1.26
>date: 2000/11/13 15:31:44;  author: pk;  state: Exp;  lines: +10 -1
>Detect "EOF" conditions on the memory-special files.
2000-11-17 23:18:53 +00:00
eeh efaf3dbb74 Remove unnecessary header file that causes linker issues. 2000-11-10 17:47:55 +00:00
eeh 132d16957c Clean up config and fix things so kbd.h is generated even w/no keyboard. 2000-11-10 16:05:40 +00:00
mrg 3ea4c67b6b remove unused variable 2000-11-10 11:57:26 +00:00
eeh ccf7f1446f Fix ILP32 bug in probe_get(). 2000-11-09 00:35:02 +00:00
eeh c3a041249b Enable clean up keyboard attach and make formatting prettier. 2000-11-09 00:06:47 +00:00
eeh 17b69d1833 Attach the sunkbd line discipline to zstty. 2000-11-09 00:02:54 +00:00
eeh 954a7b9824 Switch to sunkbd for both com and zstty. 2000-11-09 00:00:40 +00:00
eeh 71b0c155a0 Support for MI console magic framework. 2000-11-08 23:41:42 +00:00
eeh 052afce2a5 Use new MI console magic framework. 2000-11-08 23:40:31 +00:00
eeh 2b8da88d55 Remove debug printfs. 2000-11-08 23:24:12 +00:00
ad e6be92ad99 Pull in dev/i2o/files.i2o. 2000-11-08 19:48:51 +00:00
eeh b43f8c30e4 pmap_growkernel() needs to return the new end of kernel. 2000-11-02 00:24:05 +00:00
eeh 23a0c49039 Adapt to the new line discipline scheme. 2000-11-02 00:21:03 +00:00
eeh b19423f823 Pass along bus frequency. 2000-11-01 06:19:59 +00:00
eeh 400b7c8ee0 Add pmap_growkernel(). 2000-10-29 23:30:35 +00:00
eeh 9746513520 Add bpp and make com match the sparc port. 2000-10-28 23:19:31 +00:00
pk bee12f6a67 Restore revision 1.102.
I hope it sticks this time..
2000-10-22 21:28:27 +00:00
eeh ad3ec5f6af Fix hang in 32-bit kernels caused by relocation of KERNBASE. 2000-10-20 16:43:54 +00:00
mrg cb17e80035 fix a comment. 2000-10-20 05:47:03 +00:00
mrg 82d7f3e331 #include <machine/sparc64.h> for prom_printf() prototype. 2000-10-20 05:32:35 +00:00
mrg f39b5cf92e wrap long lines. 2000-10-19 12:25:04 +00:00
mrg bc4dd913e7 #if 0 unused code. 2000-10-19 05:44:39 +00:00
mrg d66f9f3321 add a cast to fix a warning. 2000-10-19 05:38:35 +00:00
mrg 88c611ff12 - remove an unused variable
- in db_setpcb(), update 'struct proc *p' each loop iteration.  (found by
gcc warning).
2000-10-19 05:30:29 +00:00
mrg 1191037add remove unneeded cast. 2000-10-19 05:28:50 +00:00
jdolecek 2fa1ccfa6e bootpath_build(): implement slighly more clever algorith to find boot
flags in the bootpath: only treat the rest as boot flags if the '-'
follows whitespace (space or tab)

This should fix the "boot disk4 netbsd-20001004-RFHS8036" lossage
Hubert Feyer pointed out in private e-mail.

Tested by: jdolecek (userland version)
Reviewed by: eeh
2000-10-04 23:05:08 +00:00
eeh 6638fc7c06 Fix interrupt lossage problem and some cosmetic changes. 2000-10-04 22:18:25 +00:00
pk d26132e2be cpu_initialize: global registers aren't preserved across calls to
prom_printf(), so replace %g3 with %l7 (which isn't used despite
the `usage' comment).

Also, clean up white-space turds.
2000-10-01 19:13:16 +00:00
eeh 8e5075103f This seems to fix the interrupt lossage of non-debug kernels. 2000-09-29 17:02:38 +00:00
eeh 15eaba378c Only call pcons_dopoll() if there's a pcons device. 2000-09-29 00:27:13 +00:00
eeh 5c98160d2b Separate user and kernel address spaces and move the kernel down to
0x0000000001000000 -- 0x00000000f0000000, below the PROM where the
PROM thinks we should be.
2000-09-28 19:56:13 +00:00
eeh d21456569e Fix INTR_SETUP() to properly distinguish kernel and user addresses.
Make microtime() return the correct time on %tick machines.

Re-enable debug stuff in dostart for now to detect kernel mapping issues.
2000-09-28 19:27:49 +00:00
eeh 1090c8a9cf probeget() actually handles 64-bit values so fix the prototype. 2000-09-28 19:16:35 +00:00
eeh 0ca74ba0d8 Fix the `trap type 0x10' problem. Apparently, something has changed and
now makes use of lockmgr().  Since we broke into the debugger from an interrupt,
we don't have a curproc, so when lockmgr() tries to find our PID it barfs,
causing another break into DDB which then calls the mysterious code that
calls lockmgr() again.....

So set doing_shutdown while we're in DDB so lockmgr ignores locks.
2000-09-28 18:54:39 +00:00
eeh 6776b270ae Remove unneeded cache flushes. 2000-09-28 15:47:27 +00:00
eeh a6205d98a9 Poll pcons for input on softints in case someone want to break into the debugger. 2000-09-28 15:38:49 +00:00
eeh abeb734bb9 Cannot distinguish kernel and user addresses any more. 2000-09-28 15:34:38 +00:00
eeh 5b577f0c8f Add a command that locates the page structure corresponding to a pa. 2000-09-28 15:32:36 +00:00
eeh 3a2599ebec Don't take ref/mod faults on DMA segments mapped in to the kernel. 2000-09-28 15:28:43 +00:00
eeh a5a8082482 Use prom_printf() for debugging instead of printf() since the console may
not be functional.
2000-09-28 15:23:06 +00:00
eeh 25ce73d7b3 Fix bad path specifier for finding fpu sources. 2000-09-28 15:19:56 +00:00
eeh 2b673aaef8 Add -V and -D bootflags to print out debug info in pmap_bootstrap() and
a fix for non-DEBUG kernels.
2000-09-27 18:20:33 +00:00
eeh 8a0dc83e07 Fix for prev (define fl). 2000-09-27 18:16:01 +00:00
eeh 008eadbac6 UltraSPARC machines don't have FP queues. Don't let userland code set them.
It tends to break the FPU emulation code.
2000-09-26 22:05:50 +00:00
pk 2e79bfed2d Missing `#if defined(MULTIPROCESSOR) || defined(LOCKDEBUG)' 2000-09-25 21:02:38 +00:00
jdolecek b1f94e26ab don't specify number of ptys if >= 16 (current default initial number)
pty comments: normalize and g/c what is no longer relevant
2000-09-24 15:59:26 +00:00
jdolecek 49c105ffdb add new macro BOOT_FLAG() (defined in <sys/boot_flag.h>) - this
maps standard boot flags to corresponding RB_* values
use BOOT_FLAG() in port's MD code as appropriate

as discussed on tech-kern, add new boot flags -v, -q for booting
verbosely or quietly, and corresponding AB_VERBOSE/AB_QUIET
boot flags; also add FreeBSD-compatible bootverbose macro and
NetBSD-specific bootquiet macro

for hpcmips, use new bootverbose instead of it's own hpcmips_verbose

Tested on i386, and to limited extend (compile of affected files) also for
mvme68k, hp300, luna68k, sun3.
2000-09-24 12:32:31 +00:00
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