thorpej
2c0cb97fa8
Add a sleep routine for the SA-11x0.
2002-01-30 00:25:07 +00:00
briggs
2341768d92
Two changes for XScale:
...
1) Add defparam XSCALE_CCLKCFG to define a parameter for the
CCLKCFG register. Default it to '9' on the IQ80310.
2) Add a sleep call to the xscale CPU function vector (replacing
the nullop) which should drop the CPU into "idle" mode when
cpu_switch finds nothing on the run queues.
2002-01-24 04:23:18 +00:00
bjh21
0598bbd10f
Separate out syscall() out into three parts:
...
swi_handler() does stuff that all SWIs will need, then calls
curproc->p_emul->e_syscall.
syscall() handles native NetBSD system calls.
linux_syscall() handles Linux system calls.
2002-01-17 17:26:03 +00:00
bjh21
6462506466
Crude first cut at ARMLinux binary compatibility. Successfully runs
...
"/emul/linux/bin/echo hello, world", dynamically linked.
2002-01-14 23:14:32 +00:00
bjh21
9fe68c4f64
Combined syscall handler for all ARM ports. This is basically the arm32
...
version, made readable and compatible with arm26. In addition, this adds
support for NetBSD/arm's newly allocated SWI range.
2002-01-12 20:02:13 +00:00
bjh21
2b44bd85c5
On arm26, vectors.S needs to be at the start of the kernel text, so that it's
...
on a page boundary and can be mapped straight into zero page. This means it
has to be in MD_SFILES on arm26, and not in SFILES.
This probably leaves kernel_text in the wrong place, but it at least leaves the system bootable.
2002-01-07 21:15:50 +00:00
bjh21
00bd2cbdac
Merge ast() and userret() between arm32 and arm26. The implementation used
...
is the arm32 one.
2001-12-21 22:56:16 +00:00
thorpej
014157862c
* Share a common vector page between arm26 and arm32.
...
* Use a common set of exception handlers for all arm32 platforms.
* New FIQ framework based on discussions with Ben Harris, shared
between arm26 and arm32.
2001-12-20 01:20:21 +00:00
lukem
ecb81c3f6d
- convert usage of "defopt" to "defflag" where the relevant option does
...
not support a value (e.g., it's to be used as "options FOO" instead of
"options FOO=xxx"). options that take a value were converted to
defparam recently.
- minor whitespace & formatting cleanups
2001-11-28 10:21:10 +00:00
thorpej
534b950d29
Move the interrupt-related file declarations into port-specific
...
config descriptions so that each port choose whether or not to
use it.
2001-11-26 20:33:43 +00:00
thorpej
c5269c1608
Make the ARM, Ltd. floating point emulator work w/ ELF.
2001-11-24 03:39:17 +00:00
thorpej
87fe867c21
Move the ARM, Ltd. floating point emulator to arch/arm.
2001-11-24 01:26:23 +00:00
thorpej
67fd41ddbf
Add 26-bit and 32-bit types.h files, which indicate the programming
...
model in use for a given platform (__PROG26 vs __PROG32), then pulls
in <arm/types.h>. Change each ARM port to pull in <arm/arm26/types.h>
or <arm/arm32/types.h> as appropriate. Change all references to PROG26
and PROG32 to __PROG26 and __PROG32. Eliminate the opt_progmode.h
header file.
2001-11-22 17:59:57 +00:00
lukem
03aef4723c
cleanup:
...
options SPACE TAB
makeoptions TAB
psuedo-device TAB
remove trailing whitespace
replace multiple spaces -> tabs
options "FOO" -> options FOO
options "FOO=bar" -> options FOO=bar
options "FOO=\"bar\"" -> options FOO="\"bar\""
2001-11-20 12:56:17 +00:00
thorpej
9e1b785626
Split all the model/version-specific cpufuncs into separate files
...
corresponding to the model/version.
2001-11-10 23:14:08 +00:00
rearnsha
0dbc5bbfab
Add CPU_ARM9 to opt_cputypes.h
2001-10-18 14:03:43 +00:00
matt
ff5f5ea027
Don't compile SPL/INTR stuff if NEWINTR is defined.
2001-09-05 17:08:41 +00:00
chris
9522cf08d4
Share procfs_machdep.c across arm.
2001-08-05 13:09:45 +00:00
matt
03b77c0534
Add a CPU_XSCALE defopt (for eventual support).
2001-07-31 17:00:24 +00:00
chris
27f96e8440
Move the generic arm32 files into arm/arm32 from arm32/arm32, tested kernel builds on cats and riscpc.
2001-07-28 13:28:03 +00:00
bjh21
ea353a48e1
Purge CPU_ARM7500. Thanks to Reinoud's work, it's no longer needed.
2001-07-10 20:43:57 +00:00
rjs
35dc2ba462
Initial copy of SA11x0 support from hpcarm.
2001-07-08 23:20:04 +00:00
bjh21
cb36bacea5
Merge arm32/dev/bus_space_notimpl.S and hpcarm/hpcarm/bus_space_notimpl.S
...
into arm/arm/bus_space_notimpl.S. They were identical anyway.
This file has no excuse for being in assembler, but I'll leave that for another
day.
2001-06-18 22:26:15 +00:00
bjh21
95fe4db7e3
Replace arm/arm32/db_trace.c and arm26/arm26/db_trace.c with a unified version
...
in arm/arm. This version is based on the arm26 version, and includes dumping
the contents of stack frames, with automatic determination of the save code
pointer offset.
2001-06-05 09:25:05 +00:00
chris
878db7cfb8
Add support for ARM7TDMI, as provided in a patch from John Fremlin to port-arm32.
...
Shouldn't effect any currently in tree ports.
2001-06-03 18:32:33 +00:00
bjh21
7d9a4dbad7
Move blockio.S from sys/arch/arm32/arm32 to sys/arch/arm/arm, since I want to
...
start using it on arm26.
hpcarm gets to keep its own version, since it's not identical and I haven't
got an hpcarm box to test.
2001-05-29 23:03:20 +00:00
chris
8901caf8ff
Create an asm based version of in4_cksum based on the sparc version.
...
Also don't compute psuedo header for nxt == 0
2001-05-23 19:33:48 +00:00
bjh21
b9ded015f4
strstr() is no longer used in the kernel. G/C it.
2001-05-13 14:17:36 +00:00
bjh21
61044be691
Move get_bootconf_option() into a new file, sys/arch/arm/arm/bootconfig.c,
...
since it's in no way machine-dependent. It's not really ARM-specific either,
but I don't think it's useful enough to be made part of the MI kernel.
2001-05-13 13:44:33 +00:00
bjh21
6d4648fa03
Move "defopt PMAP_DEBUG" into files.arm, since it's used by code in arch/arm.
2001-05-06 18:31:14 +00:00
bjh21
f9087c439b
Move cpufunc stuff from arm32/arm32 to arm/arm. The only change involved is
...
to add recognition of the SA-1100 and SA-1110 for compatibility with hpcarm
(which is now using this code as well).
2001-05-06 18:01:42 +00:00
matt
1a5fe5b583
Split cpu from mainbus so that cpu can attached to other buses (like ofbus).
2001-04-20 18:08:48 +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
d005972168
"needs-flag" for cpu is no longer needed.
2001-03-11 00:11:05 +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
matt
b7cd0eeaac
Move arm32/arm32/ast.c to arm/arm32/ast.c
2001-03-06 07:52:35 +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
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
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
4a5fdbf390
disksubr*.c are now shared. Start moving files from ../../arm32/arm32
2001-03-04 05:17:41 +00:00
bjh21
4b483d7606
Move "options ARMFPE" to files.arm, so generic ARM files can use it.
2001-02-27 17:56:31 +00:00
bjh21
740551d1d1
Add PROG32 and PROG26 options.
...
These are intended to indicate what size of program space is in use, and hence
how to get at the PSR bits. They're currently set automatically by the CPU
type options.
2001-02-25 17:23:11 +00:00
bjh21
6f2aa0d0ba
Allow "cpu" to have children. In the long term, this may be the best way to
...
handle co-processors. In the short term, it's a necessary hack to get arm26
kernels to configure.
2001-02-25 15:31:39 +00:00
reinoud
142f62c206
Moved the mainbus files to the arm/conf/file.arm from the arm32 and the
...
hpcarm/conf/files.hpcarm
2001-02-24 21:43:01 +00:00
reinoud
c1f753f9b4
Big patch for merging common include files of the new hpcarm tree and the old arm32
...
tree into the new arm substree. All moved files are relinked with a stub that included
the file from the new location; this might be done better later.
2001-02-23 21:23:45 +00:00
bjh21
9b6de1da90
Move cpu_coredump() from arm32/arm32/vm_machdep.c to arm/arm/vm_machdep_arm.c.
...
Also ANSIfy it and use it on arm26.
2001-02-13 22:54:25 +00:00
bjh21
284047a2b2
Move sendsig() and sys___sigreturn14() from arm26/arm26/vm_machdep.c and
...
arm32/arm32/machdep.c into arm/arm/sig_machdep.c, merging and ANSIfying in
the process.
The code is based on the arm32 version, so I don't think anything should break
there.
2001-02-13 13:19:52 +00:00
bjh21
a4e55e0f13
Shared ARM ptrace(2) implementation. Mostly the same as the arm32
...
version, but with some #ifdefs for arm26.
Also, don't define PT_STEP, since we don't implement it. This should
reduce code size a little.
2001-02-11 17:03:04 +00:00
bjh21
78c0ba909e
Separate out sigcode into its own file, since it's shared by arm26 and arm32.
2001-01-13 00:06:50 +00:00