thorpej
895f21a679
Prototype freebsd_syscall_intern() in freebsd_machdep.h so that
...
freebsd_exec.c has access to it.
2000-12-18 23:29:46 +00:00
thorpej
ad4f387a4c
Put back the INITIALLY_{ENABLED,LEVEL_TRIGGERED}() PROM brain-damage
...
work-around. It's required in order for the DEC Multia (a very
brain-damaged little machine) to work properly.
Submitted by Juergen Weiss <weiss@uni-mainz.de>, addresses
port-alpha/11202.
2000-12-18 21:49:08 +00:00
scw
e82303a96d
s/MDECDIR/MDEC_DIR/
2000-12-18 21:27:01 +00:00
jdolecek
02f7f5ef0e
make compilable within LKM
2000-12-18 20:49:17 +00:00
jdolecek
6701524af4
put back the rval[1] microoptimization, this is no longer used by FreeBSD emulation
2000-12-18 20:40:25 +00:00
jdolecek
2db538c869
separate the freebsd syscall code similarily to other emulations
2000-12-18 20:38:27 +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
jdolecek
214db5ca6b
Store edx to rval[1], so that it won't get zeroed spuriously - this made
...
shared FreeBSD binaries coredump.
This solves port-i386/11708 by Atsushi Onoe.
XXX it may be worth it to split FreeBSD syscall code off syscall.c similar way
XXX as other emulations
2000-12-18 11:37:08 +00:00
minoura
6f08eabd1f
%reg -> %%reg in asm() directive.
2000-12-18 02:46:49 +00:00
bjh21
c25ab2f1ec
Rudimentary facilities for extracting the card's Ethernet address from the
...
ROM. Only works on one of my two cards, though. It looks like we'll need
to use the RISC OS loader on the podule to get this right. *mutter*
2000-12-18 00:46:47 +00:00
tsubai
9812c28653
Clean up unused variables.
2000-12-17 23:24:25 +00:00
tsubai
600a78f5a5
Move variable tickspending to clock.c; it's used in only clock.c.
2000-12-17 23:16:22 +00:00
tsubai
00940e9045
Switch to the idle stack in the idle loop.
2000-12-17 22:57:35 +00:00
jmc
3926121843
Comment out the isa wss driver.
...
GENERIC is the kernel used on new installs and too many things overlap the
resources (irq mostly) the default isa version may be using which causes
panics on reboot.
2000-12-17 22:53:52 +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
bjh21
4942923809
Handle detecting the available media and state of medium selection links
...
on EtherLan 100 (and presumably 500) boards.
2000-12-17 22:29:26 +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
thorpej
0a8ec4baf3
Add an at isapnp.
2000-12-17 20:35:45 +00:00
jdolecek
cacec11253
delete obsolete comment
2000-12-17 15:52:39 +00:00
jmc
d1c6f1123f
Add pnpbios_getiosize
2000-12-17 07:59:14 +00:00
jmc
50445038df
Change the attach routine so it handles all the known cases that pnpbios
...
returns for floppy controllers i/o ports. i.e.
1. 1 range of length 4 (which conveniently "forgets" the ctl i/o port),
2. 2 ranges: 1 of length 4 and the ctl i/o port.
3. 1 range of length 6 which goes to the end of the ctl i/o.
Make this line up with the MI fdc code by mapping in a range of 4 on the
base i/o and then either direct or submapping the ctl i/o. In the one case
where the BIOS lies and says it's not there just map it in anyways. (but note
the fact to the end user).
2000-12-17 07:58:37 +00:00
mycroft
f25d5fc601
Fix another obvious linesw problem.
2000-12-16 21:16:22 +00:00
mycroft
8a6c4ba10b
Fix an obvious braino in the line discipline change.
2000-12-16 21:09:18 +00:00
bjh21
72735aa75a
Correct embarrassing null-pointer-dereference bug. Also fixes interrupt
...
enabling.
Default to 10base2 for now, since automatic media selection doesn't work.
2000-12-16 18:24:36 +00:00
bjh21
3ebcd51009
I think bit 0 of the status register is the interrupt status on read.
2000-12-16 18:23:14 +00:00
bjh21
3c5709c088
Separate out checkvectors(), so it can be used elsewhere for debugging.
2000-12-16 16:45:11 +00:00
simonb
4cf1e73334
Use sys/conf/newvers_stand.sh instead of local script.
2000-12-16 04:20:24 +00:00
tsutsui
e9da06d897
Add options COMPAT_LINUX (sync with GENERIC).
2000-12-15 18:19:03 +00:00
itohy
cf27186531
Remove empty lines from cpp output since make doesn't seem to like them.
2000-12-15 07:16:36 +00:00
tsubai
0763c14571
Make this compile again.
2000-12-15 01:16:48 +00:00
thorpej
cd414d81ab
Glue in ALTQ.
2000-12-14 23:55:31 +00:00
jeffs
1c726aab7f
For MIPS software masking option, when returning to user mode apply
...
the mask to all interrupts to catch changes in the mask state faster.
Does not affect platforms w/o this option enabled.
2000-12-14 21:29:51 +00:00
jeffs
19adf5c987
Make userret() "static __inline". This lets it be inlined, even if you
...
do not have the compiler inline normal functions to save space. It helps
a bit on lmbench.
2000-12-14 21:24:53 +00:00
bjh21
395a883e48
Pull across arm32 rev 1.19:
...
Remove ALTENTRY(). It's dangerous and should not be used.
2000-12-14 20:50:56 +00:00
mycroft
fbcb53e0b5
Sync with -current, add COMPAT_LINUX.
2000-12-14 20:46:06 +00:00
bjh21
e266a563d8
Filter out non-ASCII characters from podule descriptions.
...
I think my MIDI card had a \r at the end, which was confusing.
2000-12-14 20:40:29 +00:00
scw
5cabdd3709
Some snippets of documentation for mvme68k...
2000-12-14 20:30:14 +00:00
bjh21
84d111ea01
Move RCSID to the end of locore so it doesn't end up in zero page if we
...
compile with an asm.h which doesn't know about section .ident.
2000-12-14 20:30:03 +00:00
bjh21
a6b4048c85
Get ELF RCSIDs back
2000-12-14 20:26:42 +00:00
mycroft
e06ad67fa5
Remove ALTENTRY(). It's dangerous and should not be used.
2000-12-14 20:15:26 +00:00
bjh21
14198dc0bd
Sync with arm32 -- they've got ELF stuff there these days.
2000-12-14 19:28:12 +00:00
bjh21
acff6e4375
Use _C_LABEL rather than _C_FUNC.
2000-12-14 19:22:39 +00:00
marcus
724713366e
Made weak_alias create correct labels on sh-elf.
2000-12-14 18:47:30 +00:00
mycroft
c0d0ffef4e
Some #ifdefs to make LKMs happy.
2000-12-14 18:44:20 +00:00
mycroft
33d5c07c1b
Clean up #includes.
2000-12-14 18:34:59 +00:00
mycroft
1b77a6e458
Add COMPAT_LINUX.
2000-12-14 18:28:30 +00:00
mycroft
3c073877f3
osf1_locore.s -> osf1_sigcode.s, to match the global convention.
...
Add linux_syscall.c.
2000-12-14 18:06:13 +00:00
mycroft
3418812d3c
Partial syscall cleanup, as per other ports.
2000-12-14 10:33:42 +00:00
martin
ee0eb24c13
Don't include opt_*.h if compiling as LKM.
2000-12-14 10:24:42 +00:00
onoe
a7125e435c
Add PCI version of Aironet, not tested at all.
...
ISA/ISApnp version won't come since I don't know about isa...
2000-12-14 04:11:25 +00:00
mycroft
0a01b4476a
Do the previous with a forwarding declaration of struct proc instead.
2000-12-14 00:41:50 +00:00
mycroft
473eee8c82
Wrap mdproc in #ifdef _KERNEL.
2000-12-14 00:38:20 +00:00
jdolecek
ca57e681bd
g/c obsolete vtrace(2) stuff
2000-12-13 18:13:05 +00:00
kleink
7ed30e9594
This code wasn't written in Utah or Berkeley.
2000-12-13 09:41:57 +00:00
mycroft
008f44277d
Do the fast/slow path separation, a la x86.
2000-12-13 07:53:58 +00:00
mycroft
108d17eb16
Do the md_syscall, __HAVE_MINIMAL_EMUL and __HAVE_SYSCALL_INTERN thangs.
2000-12-13 03:16:36 +00:00
mycroft
716c484ada
Remove unnecessary #includes.
2000-12-13 01:24:46 +00:00
mycroft
760ab2591f
Oops; add PROC_PC().
2000-12-13 00:46:31 +00:00
mycroft
dc26c1ab17
Start cleanup of syscall(), similar to i386 and arm32. getpid() rate on my
...
AS200 goes from ~279000/s to ~446000/s.
2000-12-13 00:38:20 +00:00
simonb
79b09f2c56
Bump the initial data size limit to 32MB - large enough to compile a
...
kernel with an ELF toolchain.
2000-12-12 23:46:22 +00:00
sato
595779fbdc
delete unused HPCFB_BSTORE codes.
2000-12-12 22:41:02 +00:00
he
4ce4648c24
Add the an(4) driver to these configurations as well.
2000-12-12 21:14:51 +00:00
mycroft
a34a3ecb5e
Slight tweak.
2000-12-12 20:49:16 +00:00
mycroft
a7889f8229
Whoops. Previous change was not correct.
2000-12-12 20:30:12 +00:00
mycroft
2c7eaf2b50
Minor code rearrangement.
2000-12-12 20:22:49 +00:00
mycroft
a8ac146577
Adjust for userret() interface change.
2000-12-12 19:45:47 +00:00
mycroft
ea3353ea19
Clean up some DEBUG stuff, move want_resched check from userret() to ast().
2000-12-12 19:41:50 +00:00
mycroft
4944313b38
GC a little more cruft, and use __HAVE_MINIMAL_EMUL.
2000-12-12 18:26:43 +00:00
mycroft
d90febaada
More cleanup.
2000-12-12 18:13:29 +00:00
thorpej
c5293456da
Adapt to bpfattach() changes, and further centralize the bpfattach()
...
and bpfdetach() calls into link-type subroutines where possible.
2000-12-12 18:00:22 +00:00
mycroft
9e9c8e676b
Adjust some profiling stuff for the kernel.
2000-12-12 17:38:45 +00:00
mycroft
5e6430ffd8
Clean this up and add profiling stuff.
2000-12-12 07:35:25 +00:00
mycroft
9fc58d6908
Whoops, lay off the crack.
2000-12-12 06:36:19 +00:00
mycroft
446f34fb60
suswintr() and fuswintr() return -1 on error, not 0.
2000-12-12 06:32:39 +00:00
mycroft
7057d01bbc
Inline need_resched() and need_proftick(). Make need_proftick() actually *do*
...
something!
2000-12-12 06:06:05 +00:00
mycroft
6a719db6e7
Still more cleanup.
2000-12-12 05:35:48 +00:00
mycroft
c656add165
More cleanup.
2000-12-12 05:26:38 +00:00
mycroft
e58eb48f25
Begin cleaning up the syscall path, a la i386.
2000-12-12 05:21:02 +00:00
nisimura
a141a84ce1
Relocate boot flag detection from consinit() to more logical place.
2000-12-12 04:07:35 +00:00
nisimura
80195863fc
This file is a replicant of hp300. The following is peculair to
...
the original HPBSD implementation and HP hardware design.
* Portions of the last segment of KVA space (0xFFF00000 -
* 0xFFFFFFFF) are mapped for a couple of purposes. 0xFFF00000
* for UPAGES is used for mapping the current process u-area
* (u + kernel stack). The very last page (0xFFFFF000) is mapped
* to the last physical page of RAM to give us a region in which
* PA == VA. We use the first part of this page for enabling
* and disabling mapping. The last part of this page also contains
* info left by the boot ROM.
Nuke lptpa because that is irrelavant for LUNA.
Put #if defined(M68040) for consistency postponing efforts of LUNA-2.
2000-12-12 04:06:08 +00:00
mycroft
0175db6e40
#ifdef KTRACE some stuff.
2000-12-12 03:33:16 +00:00
bjh21
afb44982ee
Correct the mangled-vectors check.
2000-12-11 23:51:58 +00:00
bjh21
0692c35dda
Since BBBB correctly disables the CPU cache at startup, we now decide whether
...
to leave it disabled based on the bottom bit of cpu0's cf_flags.
2000-12-11 23:46:50 +00:00
onoe
9c25e9208a
Port 'an' driver for Aironet PC4500/PC4800 IEEE802.11 card from FreeBSD.
...
This is very adhoc work for IETF meeting.
- Since it seems that 'an' and 'wi' have similar hardware, low level
functions should be shared.
- There are PCI/ISA cards of Aironet but not supported yet.
- The wiconfig interface is changed so that wiconfig cannot be used.
- 'ancontrol' of FreeBSD is not ported.
- Only infrastructure mode is tested.
- WEP is not supported.
Though I only have an Aironet card, Cisco card should be expected to work.
2000-12-11 23:16:50 +00:00
bjh21
d606f7e6e0
Move most of the RISC OS shutdown into BASIC code.
...
Issue Service_PreReset to get the hardware to a sane state.
Use *ShutDown to log off fileservers.
Use the correct arguments to Cache_Control.
Using Service_PreReset seems to have rendered the Podule_ReadID trick
unnecessary, so g/c it.
2000-12-11 22:19:18 +00:00
scw
b875ed466e
Some micro-optimisations to _spl() and _splraise(), saving one instruction
...
in the former, and three to seven in the latter.
2000-12-11 20:05:33 +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
marcus
83334549fb
Initial import of port "dreamcast" (cloned from port "evbsh3").
2000-12-11 18:19:12 +00:00
mycroft
9a8fbe25bc
Handle the VM86-mode syscall problem by changing the syscall vector when
...
jumping in or out of VM86 mode.
2000-12-11 17:36:03 +00:00
mycroft
1ef2795be9
Separate the syscall handlers into two versions -- one which does ktrace, and
...
one which doesn't. Dynamically switch.
There's more to do on this, but I have to go to work.
2000-12-11 16:49:15 +00:00
tsutsui
c8a3a939e3
space -> TAB
2000-12-11 15:38:43 +00:00
tsutsui
7212823f47
Set USPACE_ALIGN to USPACE on mips.
2000-12-11 15:37:32 +00:00
tron
d0de1ec852
Protect against multiple inclusion.
2000-12-11 11:39:06 +00:00
tron
c6cdb692f3
Include "machine/frame.h" to avoid lint errors while building "libc".
2000-12-11 10:22:55 +00:00
mycroft
e6d33b69ec
Nuke reference to trace.h.
2000-12-11 05:41:06 +00:00
mycroft
0f17615da7
There is no Berkeley code in any of these files.
2000-12-11 05:37:01 +00:00
mycroft
f495cd9dc6
Introduce 2 new flags in types.h:
...
* __HAVE_SYSCALL_INTERN. If this is defined, e_syscall is replaced by
e_syscall_intern, which is called at key places in the kernel. This can be
used to set a MD syscall handler pointer. This obsoletes and replaces the
*_HAS_SEPARATED_SYSCALL flags.
* __HAVE_MINIMAL_EMUL. If this is defined, certain (deprecated) elements in
struct emul are omitted.
2000-12-11 05:28:59 +00:00
mycroft
6a4dfe5f24
Slight tweak.
2000-12-11 02:48:07 +00:00
scw
5d5ebb1b73
Simplify the reboot code:
...
Always jump through the PROM's reset vector, regardless of board type.
Fix a stack offset problem in the mvme147 reset code path.
2000-12-10 20:00:21 +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
mycroft
66610a4779
Introduce PROC_PC(), which is used to get a process's user PC. If this is
...
defined, call addupc_intr() directly from statclock() in the system time case,
using the same P_OWEUPC path if the copyin/copyout fails.
Use this in i386 to remove profiling code from the normal userret() path.
2000-12-10 19:29:30 +00:00
chs
b9423d9d52
in pmap_enter(), do not mark the page modified just because we mapped it
...
for write to a kernel address. callers may now use the "flags" argument
to cause this to happen when desired.
2000-12-10 19:25:44 +00:00
scw
8ace7abc75
A small splx()/spl0()/soft interrupt related optimisation. If we're
...
dropping to spl0, use inline code to check if a soft interrupt is
pending instead of taking the hit of a function call to do the check.
2000-12-10 18:43:02 +00:00
scw
c5b6f43634
Define `splzs()' to be `splserial()' instead of `spl4()', which was
...
wrong anyway since it blindly set SPL to 4 regardless of the prevailing
level.
2000-12-10 18:00:24 +00:00
bjh21
4f1ee09e5f
It looks like UBC_WINSIZE needs to be at least PAGE_SIZE.
2000-12-10 14:28:45 +00:00
jdolecek
1683c206a4
provide dymmy symbol 'syscall' to make ppc kernels
...
linkable after recent emul changes - it's used in emul_netbsd and friends
XXX this is probably wrong solution; should powerpc have separate
XXX syscall() as other ports do ?
2000-12-10 12:49:54 +00:00
jdolecek
8ca533ee5b
since this is now standalone and not called via syscall(), we need to
...
update statistics and set p->p_md.md_regs accordingly here
do the errno translation uncoditionally
2000-12-10 12:23:50 +00:00
jdolecek
603884ff22
syscall(): no emulation using this needs errno mapping, G/C the code
2000-12-10 12:09:59 +00:00
matt
3d9cc98e9a
Add VAX 4000/200
2000-12-10 03:37:56 +00:00
bjh21
4f5619bc7c
Prototype kdb_trap().
2000-12-10 01:31:48 +00:00
bjh21
7e79390d64
Delint.
2000-12-10 01:27:35 +00:00
bjh21
6073fc61bf
Indirect the SWI handler through the current emulation, thus providing a
...
syscall() for MI code. Hope it never calls it itself.
2000-12-10 01:18:52 +00:00
bjh21
477863502b
DIAGNOSTIC check for mangled exception vectors.
2000-12-10 01:02:04 +00:00
scw
1a0a12c5b4
Bah. Somehow the a.out versions of the bootxx symbols got deleted; put
...
them back.
2000-12-09 22:33:24 +00:00
scw
a3dc741c03
Delete the commented out EXEC_ELF32 now that it's in std.mvme68k.
...
(Spotted by Simon Burge)
2000-12-09 21:02:09 +00:00
matt
2e13ae83bc
cpp/lorder/mkdep don't have cross specific versions.
2000-12-09 20:42:06 +00:00
bjh21
559ea94aca
Fix arguments to ktrsys*() functions.
2000-12-09 18:57:17 +00:00
bjh21
6d66ade542
We no longer have zeropage.S. It was merged into locore.S last week.
2000-12-09 18:54:01 +00:00
bjh21
86dd29d1f5
Add a definition of BUS_SPACE_ALIGNED_POINTER.
2000-12-09 18:47:15 +00:00
bjh21
8df54708da
If we get an odd IOEB type, tell the user. I have a feeling issue 1 A5000s
...
might trip this.
2000-12-09 18:04:05 +00:00
bjh21
38d918f85f
Proper support for the Unix backplane in those machines that have one.
...
Not very well-tested, but it seems to work.
2000-12-09 17:52:44 +00:00
bjh21
facbe746d0
Provide friendly names for the IRQs as they're wired in normal machines.
2000-12-09 15:16:01 +00:00
bjh21
3e0d9a1b4a
Fix multiple-file loading. Bump version number to 0.41.
2000-12-09 13:30:25 +00:00
jdolecek
44d7fef20a
make locore.s call emulation-specific syscall code directly
...
this should improve speed of emulation syscall path (avoids one function call,
and emulations syscall can use the trapframe trick)
Idea: Charles Hannum
2000-12-09 13:20:04 +00:00
jdolecek
6f0fceeb1d
the call to emulation-specific syscall function will be handled differently,
...
don't do it explicitly
2000-12-09 12:57:17 +00:00
jdolecek
87a6bee3a9
prototype ibcs2_syscall() in compat/ibcs2/ibcs2_exec.c
2000-12-09 12:45:44 +00:00
jdolecek
8f9b01eba1
prototype svr4_syscall() (only) in compat/svr4/svr4_exec.c
2000-12-09 12:44:26 +00:00
jdolecek
45144cbd17
put userret() into header file machine/userret.h and pull it where needed
2000-12-09 11:21:52 +00:00
mjacob
af2807f9f7
Finally fix this driver to be sensible about the ENDIAN dance. It's not
...
quite simply a question of the Qlogic being little endian and having
to have stuff swapped on big endian machines- it also has to do with the
fact that the SBus and PCI DMA layouts are wierd with respect to this.
At any rate, now finally fixed- works on Mac G4, tested it on a SS10
for sparc, checked on alpha to see if I've broken anything, and as
soon as I get another spare afternoon I'll finally install a sparc64
version which should just work (as it'll be like the Mac).
2000-12-09 08:06:31 +00:00
mycroft
b2052e5951
GC garbage in userret() and *_syscall().
2000-12-09 06:34:07 +00:00
mycroft
afc49e36eb
Set md_regs before call the alternate syscall handler.
...
Remove the EMUL_HAS_SYS___syscall test, because the handler is no longer shared
with SVR4.
Rather than comparing with e_nsysent, just mask the value. This is only done
to protect us from malicious programs anyway.
2000-12-09 06:33:15 +00:00
mycroft
3340782619
Add a separate svr4_syscall().
2000-12-09 06:30:54 +00:00
briggs
cd0841b357
Clear interrupts on the Apple "Boogie" card. Information grovelling
...
and testing by Lucas Lay.
2000-12-09 05:14:31 +00:00
mycroft
7a70c438c8
Couple more tweaks to eliminate unnecessary cycles.
2000-12-09 02:46:17 +00:00
mycroft
57fdd67be5
Do the resched check *only* on an AST.
...
Also, there is no reason to save the original PC; there are no restartable
syscalls that change the PC -- and even if there were, they wouldn't do it
in the restart case.
2000-12-09 02:18:16 +00:00
mycroft
5415a63e13
Rework the way the nested task and trace flags are handled when entering the
...
old (lcall) syscall gate. This speeds up that path a little.
2000-12-08 23:14:04 +00:00
mycroft
985a81f23b
GC unneeded code.
2000-12-08 22:32:09 +00:00
mycroft
73e35a46eb
Increase all of the limits.
2000-12-08 21:51:35 +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
briggs
50b56fe1a2
Do not define the same symbol with two different values. PR#11664.
2000-12-08 14:28:44 +00:00
nisimura
8df2fd7ff9
A forgotten commit that should be done at the time when zs_ioasic.c was
...
changed.
2000-12-08 09:42:44 +00:00
itohy
c8ca4dd604
Add register prefix in asm() directives.
2000-12-08 03:00:05 +00:00
itohy
5d2d4230c8
Fix asm() directive.
2000-12-08 02:59:38 +00:00
itohy
c2245838be
1. Add register prefix.
...
2. movb #0x01,0x01800003@ -> movb #0x01,0x01800003 (found by tsutsui).
2000-12-08 02:59:12 +00:00
thorpej
8f1cd7c976
pmap_growkernel() has been implemented.
2000-12-07 22:18:55 +00:00
thorpej
cb717a97fa
Fix MP race condition introduced in the previous.
2000-12-07 22:11:40 +00:00
thorpej
55ecab37a0
Fix a silly MP race condition introduced in the previous.
2000-12-07 21:53:46 +00:00
bjh21
4c4e11c0f8
Merge zero page into the start of locore. This allows us to just map the
...
start of the kernel text segment in at address 0 to get zero-page properly
mapped. This should save us one page, but that may need a bit of extra
shuffling before we can easily tell UVM about it.
2000-12-07 21:48:58 +00:00
scw
3c748b810f
Missed this one in yesterday's bootloader commits:
...
Change BUGCRT from bugcrt.o to bugstart.o.
2000-12-07 21:37:51 +00:00
bjh21
2d96994642
It seems that i-cubed used the "A" suffix on card types (along with "Lk" and
...
probably some others) to indicate the software mix on the card, while we
were using it to indicate Acorn-branded variants. Change over to using "AEH"
for the latter.
2000-12-07 21:24:33 +00:00
bjh21
bd3f8674a0
Regen
2000-12-07 21:23:54 +00:00
bjh21
65cdac60a6
It seems that i-cubed used the "A" suffix on card types (along with "Lk" and
...
probably some others) to indicate the software mix on the card, while we
were using it to indicate Acorn-branded variants. Change over to using "AEH"
for the latter, and while we're at it clean up the descrptions and add some
that were missing.
2000-12-07 21:23:32 +00:00
thorpej
ac083d0b74
Use a pool cache for PDPs. This results in a 20% improvement in a
...
loop of 10000 fork/exit operations on a 400MHz Celeron.
2000-12-07 20:19:05 +00:00
jdolecek
ce6253238c
convert to use genassym.cf & genassym.sh, as other ports do
2000-12-07 17:51:06 +00:00
jdolecek
101ce19db1
generate dependencies for assym.h for make depend, fix dependency
...
for maxusers (make assym.h depend on Makefile)
2000-12-07 17:32:33 +00:00
thorpej
0abaa8b70d
Nothing calls pmap_release() except for pmap_destroy(). Merge the two.
2000-12-07 17:12:21 +00:00
thorpej
b4b01fe8e6
Nothing calls pmap_pinit() except for pmap_create(), so merge the two.
2000-12-07 17:09:26 +00:00
toddpw
6b0841e32b
Fix PR port-mac68k/11343
2000-12-07 10:57:17 +00:00
kleink
9cee15bd12
In the ELF toolchain, use __mcount instead of mcount.
2000-12-07 10:14:08 +00:00
scw
3f7cfb70ef
Add "options COMPAT_AOUT_M68K".
2000-12-07 08:40:06 +00:00
thorpej
5c7e0ada43
Use a pool cache for L1 PT pages. When we can allocate a cached,
...
constructed L1 PT page, this saves us from having to copy the kernel
L1 PTEs into the user L1 PT page at fork time (it's already set up).
A simple test shows a 1 second improvement of a rapid fork/exit operation
10000 times on a 533MHz 21164A (12s to 11s).
2000-12-07 05:59:07 +00:00
matt
f7b27589e3
Enable VS4000/90 SCSI controller in INSTALL kernel.
2000-12-07 01:24:25 +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
matt
a8ea1009e7
Add ThinkPad 820 audio driver (attaches but does not yet work).
2000-12-06 23:42:34 +00:00
is
7223efb0b9
Make this new-GAS ready. Code by Steve Woodford.
2000-12-06 21:31:05 +00:00
chs
4fa4734937
go back to the first version of the pte/pde dance now that kvtopte()
...
has been changed to consisently return a pointer into the recursive
page table mapping.
2000-12-06 03:20:35 +00:00
chs
2a95fc3517
in kvtopte(), return the mapping of the pde in the recursive page-table
...
mapping space rather than the mapping in the kernel address space.
2000-12-06 03:13:47 +00:00
simonb
7ca0abc4db
Use 'make print-objdir' to get obj directory instead of guessing.
2000-12-06 02:35:19 +00:00
mrg
703ec39a02
fix warnings in DEBUG & DIAGNSTIC code.
2000-12-06 01:47:49 +00:00
scw
ac80517816
Add some #defines for offsets into the bugargs structure, and make the
...
register names usable within assembly code.
2000-12-05 21:57:13 +00:00
scw
86c7dac956
Replace the startup C code with assembler, which avoids having to
...
explicitly tell the compiler what registers the Bug args come in on.
2000-12-05 21:54:33 +00:00
scw
7da5cde117
bootxx doesn't need the code relocating stub linked in.
2000-12-05 21:51:38 +00:00
scottr
7fdcf44432
Don't reference a zs-specific variable unless NZSC is not zero.
...
Fixes PR 11566.
2000-12-05 21:38:38 +00:00
scw
634dc65636
Backout the last change; I'll deal with it another way.
2000-12-05 19:54:09 +00:00
scw
1f9f7cbe53
UPAGES -> 2 as recommended by Chuck Silvers.
2000-12-05 18:46:10 +00:00
scw
2ec144518f
Add loadfile_machdep.h to list of installed machine headers.
2000-12-05 18:42:18 +00:00
scw
37f5782c0a
Update pm_stats.resident_count when entering pages in the kernel pmap.
2000-12-05 16:07:39 +00:00
jdolecek
94e024dc14
constify
2000-12-05 10:45:09 +00:00
jdolecek
dae7d6d77c
actually, pte is normally in user address space, but can also be in kernel
...
address space for LARGEPAGES kernel; to handle both, do the same dance
as for loc
2000-12-05 10:26:12 +00:00
mycroft
e4ae5a1406
In mem_regions(), deal with the case of a run of consecutive holes.
...
Now the cube works with the memory in any order.
2000-12-05 05:16:00 +00:00
briggs
e7a6bcd6eb
Add the DrHw Apple 24AC "Boogie" video card.
...
Thanks to Lucas Lay <segfault@mac.com> for digging it up.
2000-12-05 05:05:52 +00:00
briggs
3503f0999b
Add defines for:
...
Apple WGS SCSI / cache card
FWB JackHammer SCSI card
2000-12-05 05:02:36 +00:00
bjh21
2caf09a602
regen
2000-12-05 00:44:21 +00:00
bjh21
1bdf317d96
Add the 16bit podules I got from abs (ColourCard, Centronics, sampler, MIDI).
2000-12-05 00:43:55 +00:00
scw
bfcd71c79c
Clean up the build process to ensure libsa/libbug are built
...
before linking the bootloaders.
2000-12-04 21:25:57 +00:00
scw
349445391c
Make this work with the ELF tape bootloader.
2000-12-04 21:24:34 +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
scw
5a17a935bc
Declare `start' in addition to `_start'.
2000-12-04 20:31:16 +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
scw
269a30a733
s/a6/fp/ again...
2000-12-04 18:48:18 +00:00
scw
e267f2466b
Add support for ELF boot blocks.
2000-12-04 18:44:51 +00:00
scw
b29bcb645b
The LOAD_TEXTA flag is required when loading a.out kernels.
...
Also add some non-standalone versions for the benefit of installboot(8).
2000-12-04 18:41:51 +00:00
scw
c28723715c
Prefix the register names with `%'.
2000-12-04 18:40:05 +00:00
scw
d0da91f9e2
Use -fomit-frame-pointer when compiling bugcrt.c; a6 needs to be reserved
...
for Bug arguments.
2000-12-04 18:35:16 +00:00
eeh
c5080ee564
Fix uninitialized variable bug and code cleanup.
2000-12-04 17:26:41 +00:00
tsubai
1b4a9cb335
Move INTSTK and SPILLSTK definitions to locore.[Ss] to allow allocation of
...
them in early startup.
2000-12-04 17:05:50 +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
scottr
fc6d3c5f48
Unmap the valkyrie register space when we're finished with it in
...
the match function. It's not like we can save that state for later,
and we don't use it anyway.
2000-12-04 06:25:19 +00:00
scottr
b21b6272fa
Fix PR 11000: The esp driver needs two longwords in DAFB register space to
...
implement pseudo-DMA transfers with the SCSI controller. This caused our
match to fail when we couldn't map the entire DAFB register/control space
for our own use. Instead, we map only (about) what we will need in two
separate regions.
As a consequence we no longer do Turbo SCSI configuration here; indeed, it
may have caused us trouble later on if we actually changed the values
stored in those registers in the esp driver.
2000-12-04 06:23:36 +00:00
mrg
ce0e1dea34
sync relocs with sparc64.
2000-12-04 01:49:34 +00:00
mrg
ac9988aef0
remove duplicate function prototypes.
2000-12-04 01:39:04 +00:00
mrg
3806c27f34
sync a comment with sparc64/include/types.h
2000-12-04 01:33:36 +00:00
simonb
a8a26dd42a
Remove __BROKEN_CONFIG_UNIT_USAGE, not needed on pmax.
2000-12-03 23:00:42 +00:00
scw
9fc2cc70dc
Include the a.out m68k compatibility module.
2000-12-03 15:40:06 +00:00
scw
2e68384b0c
Back out the previous change after discussion with thorpej and cgd.
2000-12-03 15:38:30 +00:00
scw
53323bf36d
Revert the previous change, after discussion with thorpej and cgd.
2000-12-03 15:37:46 +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
takemura
1021bf4bf1
Change hf_baseaddr usage. Now it potins frame buffer start address instead
...
of hf_baseadd + hf_offset. You should use hf_baseaddr only in kernel and
you should use hf_offset only with mmap system call from userland.
2000-12-03 13:43:40 +00:00
takemura
e7c346ccba
- CRT control exists only in GC01R.
...
- add some symbols.
- fix some typo.
2000-12-03 13:24:33 +00:00
ad
f237da87bf
Hook the iop device in.
2000-12-03 13:19:07 +00:00
takemura
94e15f37c8
Cancel previous change and revert to revision 1.35.
...
You can't pmap_steal_memory to allocate proc0 bacase physical memory
detection calls badaddr which needs proc0.
2000-12-03 12:57:37 +00:00
takemura
e678d47b5e
Add #UVMHIST line (commented out).
2000-12-03 12:29:28 +00:00
matt
dc80dfbf5d
Use shared Makefile.mips
2000-12-03 07:59:47 +00:00
matt
cc1a776969
Add DEFGP/CROSSDIR for hpcmips.
2000-12-03 07:55:12 +00:00
matt
b0ffdfd51c
Use shared Makefile.mips
2000-12-03 07:46:43 +00:00
matt
b927e12eee
Remove redundant depend of fp.S
2000-12-03 07:44:43 +00:00
simonb
26ca0704e4
Use shared Makefile.mips
2000-12-03 07:39:34 +00:00
matt
8bddbd2266
Include FP support if NOFPU is *NOT* defined.
2000-12-03 07:21:50 +00:00
matt
825cb46de5
Revert back to a machinearch (really cputype) of mips. Put ENDIAN back.
2000-12-03 07:05:21 +00:00
matt
c1dbeee6d0
Deal with lack of floating point on hpcmips, etc.
2000-12-03 06:04:50 +00:00
matt
866f93d61f
Change arch from mips to mipsel/mipseb as appropriate. Nuke the ENDIAN
...
makeoption. Key off MACHINE_ARCH for adding -EB/-EL to CFLAGS/AFLAGS/LD/
LINKFLAGS.
2000-12-03 05:30:31 +00:00
matt
ecf6f5a91f
Add a POST_STRIP_SYSTEM_LD_FLAGS for mipsco and pmax.
2000-12-03 04:52:38 +00:00
matt
a0a88e0a71
Use shared Makefile.mips
2000-12-03 04:51:26 +00:00
matt
bd338a518c
Deal with -Wstrict-prototypes -Wmissing-prototypes
2000-12-03 04:51:04 +00:00
tsutsui
e89ff0051b
Add some ELF stuff. (not tested)
...
XXX should use MI loadfile(). (see sparc)
2000-12-03 03:35:40 +00:00
tsutsui
b00d07faa9
Enable LOAD_HDR and COUNT_HDR. (would be required on ELF)
2000-12-03 02:56:25 +00:00
matt
5e67131b91
Start using a Makefile.mips. Use a combination of makeoptions and
...
Makefile.sgimips.inc which has sgimips specific stuff.
2000-12-03 02:07:04 +00:00
matt
c77ccc45d8
Make this stuff compile with -wstrict-prototpes -wmissing-prototypes.
...
More use of prototypes inside includes should be done.
2000-12-03 01:42:29 +00:00
matt
ab27bbe9b2
Need to add -EB for ASFLAGS as well. Don't use -EB in LINKFLAGS but add
...
-EB to LD so that libkern/libcompat get it as well.
2000-12-02 20:27:37 +00:00
jdolecek
2b0dca1878
db_disasm(): pte is in kernel address space, so use kvtopte() to get pde,
...
otherwise it would trip over KASSERT() in vtopte() and cycle
2000-12-02 19:34:54 +00:00
scw
57b29e6754
Fix symbol table loading.
2000-12-02 17:28:08 +00:00
ragge
f8a6a4ce46
Add lkkbd/lkms/fonts, remove lkc.
2000-12-02 17:18:54 +00:00
ragge
2f2f3de2ed
Recent lkkbd/lkms/lkc changes.
2000-12-02 17:15:37 +00:00
ragge
cfcd7e9e98
Use lkkbd. Add hardware cursor support. Use wsfont fonts instead of the
...
old QDSS fonts (support not finished). KNF cleanup.
2000-12-02 17:14:00 +00:00
ragge
3321363123
Remove lkc, add lkkbd/lkms support.
2000-12-02 17:09:43 +00:00
ragge
a81d92ef69
Add prototype.
2000-12-02 17:08:32 +00:00
ragge
37bfa1d6e8
Add fusword() + a MP change.
2000-12-02 17:07:55 +00:00
ragge
e392e575c1
lkc is gone, long live wskbd.
2000-12-02 17:07:27 +00:00
scw
6de7ccd2d3
On exit from syscalls, don't trash %A0 if the process is
...
using the COMPAT_AOUT_M68K emulation package.
2000-12-02 17:00:46 +00:00
jdolecek
e9b63338d7
add prototype for ibcs2_syscall()
2000-12-02 16:13:34 +00:00
jdolecek
65203b4ec6
if IBCS2_MACHDEP_HAS_SEPARATED_SYSCALL is defined, put ibcs2_syscall to
...
emul_ibcs2
define IBCS2_MACHDEP_HAS_SEPARATED_SYSCALL in i386 ibcs2_machdep.h
2000-12-02 16:09:44 +00:00
jdolecek
6719ee1cf7
as discussed on tech-kern, put linux and ibcs2 syscall code to separate
...
files and change syscall() to call p->p_emul->e_syscall() if it's not NULL
2000-12-02 16:03:23 +00:00
scw
e4326b372a
Set things up so that DDB can get to the symbol table in ELF kernels.
2000-12-02 13:57:05 +00:00
scw
66a84140b8
Use "EMUL_HAS_SYS___syscall" instead of checking p->p_emul.
...
Removes dependency on COMPAT_AOUT_M68K.
2000-12-02 13:45:14 +00:00
sato
0f6c05e8d7
- polling battery voltage value from A/D port.
...
currently polling only.
if verbose mode, kernel print A/D raw value every polling.
2000-12-02 08:35:45 +00:00
matt
7168049e66
Add -EB to make building kernel on LE systems easier.
2000-12-02 06:23:48 +00:00
matt
305bef7250
Cleanup/fixup gten support. Add TNF copyright (opps). This now outputs
...
text correctly. There is no colormap support (e.g. the mechanisms are in
place but does yet talk to the hardware).
2000-12-02 05:46:46 +00:00
mrg
3da40e83e7
const poison to avoid a warning.
2000-12-02 03:57:26 +00:00
matt
0b76f4efdf
Add support for the IBM ThinkPad 820 G10 display (which is a WD90C24A behind
...
a funky PCI-VLBUS bridge).
2000-12-01 21:54:01 +00:00
jdolecek
f3d1c08b2a
check emul flags for EMUL_HAS_SYS___syscall instead of comparing
...
callp to sysent; the COMPAT_AOUT hack is gone
2000-12-01 19:50:17 +00:00
kei
4389b3cbed
fix a typo in the printf message.
2000-12-01 18:09:01 +00:00
kei
b134a87a76
fix a typo in comment. remove a whitespace at the end of line.
2000-12-01 18:07:11 +00:00
tsutsui
a8fdbdec1c
Remove unused pcbb() macro.
2000-12-01 17:57:43 +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
bjh21
cb5273b547
First attempt at an EtherH driver. Can just about transmit and receive
...
packets. Interrupt enabling is left to the RISC OS driver, medium selection
is untested and it's hard-wired to the MAC address of my card. Not really
for production use.
2000-12-01 14:28:36 +00:00
soren
ff0f7c1ab4
No longer used.
2000-12-01 07:56:18 +00:00
soren
2cc519bba5
<pc/display.h> has been moved to <dev/ic/pcdisplay.h>.
2000-12-01 07:55:10 +00:00
scw
97490c9997
Add __attribute__((__packed__)) to cpu_disklabel to get around
...
the ELF padding/alignment constraints.
2000-12-01 00:02:22 +00:00
scw
75f2f8f242
Delete an extraneous underscore in the last commit.
2000-11-30 23:47:45 +00:00
scw
bd8955b9b6
Only try to attach those devices which have been configured
...
in the kernel config file.
2000-11-30 22:54:31 +00:00
scw
c4a189ad74
Print some more details of the memory managed by each ASIC.
2000-11-30 22:51:35 +00:00
scw
ba98135ea8
Add EXEC_ELF32
2000-11-30 22:31:27 +00:00
scw
7051df32f5
Support booting an ELF kernel, plus numerous tweaks due to
...
the gas.new/ELF transition.
2000-11-30 22:26:26 +00:00
scw
9121962f0e
Copy the syscall return value into A0, as per the SVR4 ABI.
...
Also prepare for COMPAT_AOUT_M68K.
2000-11-30 21:29:11 +00:00
scw
d3251e5074
Prepare to switch mvme68k bootloader over to the MI loadfile().
2000-11-30 21:20:43 +00:00
scw
7248616dee
Ditch an extra % in a register prefix, and s/a6/fp/
2000-11-30 21:18:07 +00:00
scw
71ca01981e
Prepare for the m68k ELF transition:
...
o Add register prefixes for the benefit of gas.new
o Wrap global symbols in the m68k/asm.h macros
o Fix `#' comments so the source can be run through the C pre-processor
2000-11-30 21:00:51 +00:00
bjh21
9307dc5373
Reduce default UBC_NWINS to save precious KVM.
2000-11-30 20:59:36 +00:00
bjh21
32b19479ca
Drastically reduce PAGER_MAP_SIZE so we don't run out of KVM so soon.
2000-11-30 12:16:00 +00:00
nisimura
3077a68aa3
Reduce UPAGES from 3 to 2.
2000-11-30 02:55:50 +00:00
jdolecek
73f3cd8c7e
LKMify
2000-11-29 21:51:49 +00:00
jdolecek
7924882d2e
remove unneded opt_compat_osf1.h stuff
2000-11-29 21:50:49 +00:00
tsubai
e4bfefe7bd
Make spl functions no-inline. This saves size and even it runs faster on
...
some systems.
2000-11-29 17:55:52 +00:00
minoura
0bbc767215
Adjust the ramdisk size.
2000-11-29 14:45:27 +00:00
jdolecek
9cdf00b4bb
remove rules for genassym.c, it's no longer pertinent
2000-11-29 13:02:51 +00:00
jdolecek
0e8ae0e54a
convert to use common genassym.cf
2000-11-29 12:55:11 +00:00
tsutsui
7dc077e6f5
Change UPAGES from 3 to 2. (sync with hp300)
2000-11-29 12:32:06 +00:00
aymeric
5deecf29d2
Fall back to previous memory segments detection code if BIOS reports no
...
correct memory segment.
This prevents some systems from losing with `can't find end of memory'.
Discussed with Bill Sommerfeld.
2000-11-29 09:56:02 +00:00
scw
614e494d9e
Add register prefixes.
2000-11-29 09:18:32 +00:00
scw
930411f925
Missed a couple of register prefixes...
2000-11-29 09:11:53 +00:00
scw
fecb49d172
Add register prefixes.
2000-11-29 09:09:39 +00:00
thorpej
5f3a256833
Allocate the DMA windows out of the PCI memory extent map after
...
DMA is initialized.
2000-11-29 06:30:09 +00:00
thorpej
96294f7b26
Do the additional PCI memory initialization after configuring DMA.
2000-11-29 06:29:10 +00:00
thorpej
8f20972db2
Revert previous -- we'll do it differently.
2000-11-29 06:21:12 +00:00
thorpej
d615083897
The AMD 751 doesn't have DMA windows, so allocate the RAM out of the
...
PCI memory extent map. Bad things will happen if we try to assign
a device where RAM is mapped into PCI space.
2000-11-29 05:56:49 +00:00
thorpej
8ebabb1aae
Increase the number of static extent descriptors from 8 to 16,
...
and add a means for calling a chip-specific init hook.
2000-11-29 05:53:29 +00:00