Commit Graph

122 Commits

Author SHA1 Message Date
rearnsha 50e1e30747 Put back that old (not) unused include file. But only include it
when ARMFPE is defined.  Since that is the only time we use it.
2001-04-18 20:27:33 +00:00
kleink f06533a1ee Add definitions of C99 integer format conversion macros.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 17:13:04 +00:00
kleink 739cb75837 Add definitions of C99 specified-width integer type limits.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 15:29:02 +00:00
kleink cdcf9f46c5 Add definitions of C99 integer constant macros.
Tidy Makefiles up a little.
2001-04-14 22:46:19 +00:00
kleink a7c20e5788 Add definitions of C99 integer constant macros. 2001-04-14 22:38:33 +00:00
kleink 7affdab52e Add definitions of C99 minimum-width and greatest-width integer types.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-14 12:19:49 +00:00
thorpej bf2dcec4f5 Remove the use of splimp() from the NetBSD kernel. splnet()
and only splnet() is allowed for the protection of data structures
used by network devices.
2001-04-13 23:29:55 +00:00
kleink 9133b51cd8 Replace the 'unsigned __COMPILER_INT64__' construct with a new name,
__COMPILER_UINT64__, to be supplied - if such a case is made, it shouldn't
be assumed that the unsigned type-specifier may be applied to it.
2001-04-12 22:01:18 +00:00
reinoud d2b84b36d2 Removing an old unused include 2001-04-04 21:40:20 +00:00
toshii dfddb1e107 Increase spl_masks[] size by one and set the extra element to 0.
irq_entry accesses here.
2001-03-31 12:22:37 +00:00
bjh21 bfc2063e69 Create an ARM2-specific undefined-instruction handler which deals with the
undef/SWI bug and handles emulating SWP.

Untested bacuse my ARM2 machine isn't currently set up.
2001-03-17 18:12:09 +00:00
chs ac3bc537bd eliminate the KERN_* error codes in favor of the traditional E* codes.
the mapping is:

KERN_SUCCESS			0
KERN_INVALID_ADDRESS		EFAULT
KERN_PROTECTION_FAILURE		EACCES
KERN_NO_SPACE			ENOMEM
KERN_INVALID_ARGUMENT		EINVAL
KERN_FAILURE			various, mostly turn into KASSERTs
KERN_RESOURCE_SHORTAGE		ENOMEM
KERN_NOT_RECEIVER		<unused>
KERN_NO_ACCESS			<unused>
KERN_PAGES_LOCKED		<unused>
2001-03-15 06:10:32 +00:00
toshii 300d398485 Move references to arm/arm/disksubr*.c from files.arm to
files.{arm26,arm32,dnard}.
2001-03-14 14:39:45 +00:00
bjh21 c3c5158d00 Change the value of tf_pc in undefined-instruction handlers on arm32. It now
always points to the undefined instruction in question.  It's up to the
handler to advance it to the next instruction if it wants execution to
continue there.  This is how things have always worked on arm26.
2001-03-13 23:56:48 +00:00
bjh21 ce3ad2275b Update FPU detection to use remove_coproc_handler(). 2001-03-13 23:51:48 +00:00
bjh21 c72a18bddc Separate out the SIGTRAP (gdb breakpoint) generator from undefinedinstruction()
so it's no longer a special case.
2001-03-13 20:22:02 +00:00
bjh21 ce5529eabf Change undefined instruction handler to use a linked list for each
co-processor.  This is necessary so we can have several handlers for
CP0 (used as a catch-all for non-CP instructions).

Handlers are now removed using remove_coproc_handler(), rather than by calling
install_coproc_handler() with a NULL handler.

Because install_coproc_handler() can now allocate memory, there's a version
for use at boot time that doesn't.
2001-03-11 16:18:39 +00:00
bjh21 4624a1247e Make this suitable for use on arm26 as well. 2001-03-11 16:02:21 +00:00
bjh21 5f8b55f7c3 Pass a softc pointer around everywhere, and use it when we need the name of
the device.

Don't pretend that fpe0 and fpu0 exist as devices (they don't).

G/C a few items related to /dev/cpu* support.
2001-03-11 15:05:43 +00:00
bjh21 f61ad8fa80 G/C more unused elements of struct _cpu. 2001-03-11 00:14:56 +00:00
bjh21 d005972168 "needs-flag" for cpu is no longer needed. 2001-03-11 00:11:05 +00:00
bjh21 ca5024c3a1 Add code to point out to the user if their CPU isn't supported, and to
suggest what kernel options to use to get it to work.
2001-03-10 21:27:06 +00:00
bjh21 b362a4bef3 Change the meaning of cpu_class. It now has one value for each core we
support, which corresponds to one for each CPU_* option, or one for each
cpufunc structure.

Also remove some more residual code for the support of multiple and non-ARM
CPUs.
2001-03-10 20:15:46 +00:00
bjh21 c24be229f5 Don't allow the I and F (IRQ and FIQ disable) flags to be set in the PSR
by sigreturn.  This prevents user processes disabling interrupts by messing
with their signal context.
2001-03-10 20:08:55 +00:00
rearnsha bf5e18af99 Add param.h to INCS. 2001-03-10 18:32:25 +00:00
bjh21 0bcb071684 Correct CPU_ID_ISOLD() and CPU_ID_IS7(). 2001-03-10 16:19:59 +00:00
bjh21 f6c36838ae Use the same undefined-instuction handler on both arm26 and arm32. The handler
is derived mostly from the arm32 version, but with a check for an obscure ARM2
bug thrown in.

arm26 fpu and cpu drivers use the new interface for catching undefined
instructions.
2001-03-08 21:30:35 +00:00
thorpej 2c4c690f14 Add the BUS_DMA_STREAMING flag. 2001-03-07 22:42:16 +00:00
bjh21 4ada0ac792 Create cpufunc_null_fixup() to replace all the CPU-specific abort-fixup
routines that did nothing.
2001-03-06 22:29:13 +00:00
matt b7cd0eeaac Move arm32/arm32/ast.c to arm/arm32/ast.c 2001-03-06 07:52:35 +00:00
bjh21 3ec18a1616 General prettification (mostly comments). 2001-03-05 23:29:32 +00:00
bjh21 78eae7d026 ANSIfy. 2001-03-05 23:14:22 +00:00
bjh21 83b8de43dd Move undefined.c from sys/arch/{arm32/arm32,hpcarm/hpcarm} to sys/arch/arm/arm
in preparation for making it usable on arm26 as well.
2001-03-05 23:06:14 +00:00
bjh21 25ec015449 Merge setregs() from sys/arch/arm32/arm32/machdep.c,
sys/arch/hpcarm/hpcarm/machdep.c and sys/arch/arm26/arm26/vm_machdep.c
into sys/arch/arm/arm/arm_machdep.c.
2001-03-04 23:25:00 +00:00
matt d6fc837c17 more vm_offset_t/vm_size_t -> {p,v}{addr,size}_t changes
move pmap_* declarations to pmap.h.  fix conflicts this
exposed (e.g different definitions for pmap_bootstrap).
2001-03-04 19:05:55 +00:00
bjh21 0618726202 ANSIfy while I'm here. 2001-03-04 15:40:17 +00:00
bjh21 496829a88b Make compat_13_sys_sigreturn() work on arm26, and move it from
arch/arm/arm32/compat_13_machdep.c to arch/arm/arm/compat_13_machdep.c.
2001-03-04 15:27:03 +00:00
bjh21 aa34be4532 Make "options ARMFPE" work again.
Mostly due to Richard Earnshaw.
2001-03-04 14:32:12 +00:00
bjh21 ab8e9aaefd Add CPU ID for ARM7500FE (determined empirically from two I've got here). 2001-03-04 14:26:26 +00:00
matt 93c0e77b0f Only define MACHINE & MACHINE_ARCH in port-dependent param.h.
Everything else (since it's common) is from <arm/arm32/param.h>
2001-03-04 08:28:51 +00:00
matt 58438fb425 Move compat_13_machdep.c, strstr.c, copystr.S, bcopyinout.S, and
bcopy_page.S to arm/arm32 and remove port-local copies.
2001-03-04 08:25:38 +00:00
matt 4679f9115c Convert some vm_size_t to vsize_t/psize_t. Change vaddr_t to paddr_t
where appropriate.
2001-03-04 07:30:19 +00:00
matt f97f725bc9 Remove OFW hooks. Allow ports to add there own hooks via
ARM_EXTRA_DB_COMMANDS.
2001-03-04 05:40:03 +00:00
matt 4a5fdbf390 disksubr*.c are now shared. Start moving files from ../../arm32/arm32 2001-03-04 05:17:41 +00:00
matt 8655276e9a Move these from arm32/arm32 2001-03-04 05:11:41 +00:00
matt 4e6f220e99 Move these from arm32/arm32 2001-03-04 05:08:43 +00:00
matt 7d33ba27bf Move from arm32/arm32. s/vm_offset_t/vaddr_t/g 2001-03-04 05:08:09 +00:00
matt 79efd2285e These are same between arm32 & arm26. 2001-03-04 05:06:51 +00:00
matt 6755bfc8c1 s/vm_offset_t/vaddr_t/g 2001-03-04 04:15:58 +00:00
matt 7af4578cfc s/vm_offset_t/vaddr_t/g 2001-03-04 03:40:58 +00:00