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
thorpej
1b71762f33
Move disklabel_acorn.h to <sys/disklabel_acorn.h>, much like we did
...
with disklabel_mbr.h. More cleanup yet to come.
2001-11-25 16:22:47 +00:00
thorpej
b8ed19b4ef
No longer need <machine/undefined.h>.
2001-11-23 21:23:30 +00:00
thorpej
0a824f32cb
No longer need <machine/pte.h>.
2001-11-23 20:43:03 +00:00
thorpej
0ab1aedd0d
No longer need <machine/cpufunc.h>
2001-11-23 19:40:45 +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
bjh21
294f95152f
db_interface.c:
...
Include <ddb/db_access.h> for db_read_bytes etc prototypes.
Add prototype for db_trapper().
Move prototypes for "machine" subcommands to db_machdep.h.
db_machdep.h:
Add prototypes for "machine" subcommands.
2001-11-16 14:39:30 +00:00
bjh21
77c5245c8f
Fix names of bus_space_copy_region_1() and bus_space_copy_region_2().
2001-11-16 13:34:03 +00:00
soren
662f877587
MAXSLP is defined to be a machine-independent scheduling parameter,
...
so move it into sys/param.h.
2001-11-15 18:06:11 +00:00
bjh21
54edd2d848
Define BOOT_ELF32. Don't define ELFSIZE.
2001-10-31 17:59:38 +00:00
bjh21
82b2265851
Add loadfile_machdep.h, which has been missing since I committed boot26.
2001-10-31 17:58:54 +00:00
bjh21
9eca213216
Since arm26 uses ELF, set MACHINE_ARCH to "arm".
2001-10-21 14:19:34 +00:00
bjh21
34666c7150
Set POOL_SUBPAGE to 4096, in a bid to improve memory efficiency.
2001-10-07 12:45:03 +00:00
bjh21
6b3d54743f
Install <machine/pte.h>.
2001-10-06 20:30:02 +00:00
bjh21
5321796010
Add a minimal bus_space_mmap which always fails. The MEMC can only map DRAM
...
into the user's address space -- I/O devices can only ever be got at by the
kernel.
2001-09-11 11:38:59 +00:00
bjh21
c30b958988
Add fiq_installhandler(), so the current FIQ owner can change what handler
...
they've got installed without relinquishing the FIQ.
2001-09-10 23:17:48 +00:00
matt
7ce6450eac
Add a merged <pcb.h> for arm26/arm32.
2001-09-03 19:20:27 +00:00
simonb
023bdd2bf2
Use comments around the token after a #endif.
2001-08-31 04:44:54 +00:00
bjh21
6825e7d5ea
Garbage-collect pcb_onfault_lj, since it's unused and doesn't exist on
...
arm32 ports.
2001-08-26 14:15:07 +00:00
bjh21
9c45cae8df
Make cmos_read() and cmos_write() globally visible, and make the instance
...
they operate on implicit. Also, stop abusing cf_unit, and remove a vast
swathe of unused code.
2001-08-26 12:24:24 +00:00
bjh21
7da5d70599
Add fiq_on() and fiq_off(), to enable and disable FIQs at the CPU.
...
Call fiq_off() from start() and fiq_on() from cpu_configure(), so we're certain
not to get any FIQs during autoconfiguration.
2001-08-25 17:55:24 +00:00
bjh21
35228f775a
Two related changes:
...
Make splhigh disable IRQs at the CPU rather than at the IOC. This has the
potential to be faster, and more importantly ensures that splhigh() blocks
FIQ downgrades.
Have a variable which indicates that a FIQ downgrade is required, and ensure
that the IOC "force IRQ" bit is turned on in this case. This ensures that
FIQ downgrades don't get lost if something happens to be fiddling with the
interrupt mask at the wrong moment.
2001-08-21 22:47:17 +00:00
bjh21
9aa4896361
More FIQ support. This gives me enough to handle FIQs, and to downgrade them
...
to IRQs as necessary. All these interfaces are subject to change in the light
of experience.
2001-08-20 23:08:10 +00:00
bjh21
9d345bfc35
New header file for FIQ-related definitions.
...
Currently just contains the FIQ numbers, until I decide on an API.
2001-08-13 22:59:40 +00:00
bjh21
bd6d4d6b77
Use <arm/param.h> to get shared definitions.
2001-08-07 22:26:56 +00:00
bjh21
1ede42fe57
Add <machine/sysarch.h> to go with sysarch().
2001-07-28 19:14:00 +00:00
bjh21
f3b9fa04ed
Only declare kernel objects ifdef _KERNEL.
2001-07-28 12:53:06 +00:00
bjh21
b8a09ee766
Add dummy "podloader" functions on arm32, and move their declarations to the MI
...
header file. This should allow MI drivers to use the podloader functions,
though obviously they'll have to be able to cope if podulebus_initloader()
fails.
2001-07-04 13:58:04 +00:00
thorpej
8eb3b954f1
Don't need to prototype child_return() here, it's in <sys/proc.h>.
2001-06-14 22:56:55 +00:00
bjh21
ca5de264b4
Change the structure of a bus_space_handle_t in a desperate bid to avoid using
...
function pointers. It now contains two base addresses, one for 8-bit
transfers and one for 16-bit transfers. This should make it possible for me
to handle the Castle EtherSCSI card, which uses and address line to select
transfer width to the i82595.
2001-06-12 20:16:22 +00:00
bjh21
0c870e10e0
Convert bus_space_{read,write}_multi_1() into macros, since they're just
...
wrappers round {read,write}_multi_1() anyway.
2001-06-02 21:31:02 +00:00
bjh21
73bc600e40
Use _LOCORE to recognize assembler in the kernel, not ASSEMBLER (which doesn't
...
get set).
2001-05-13 13:47:23 +00:00
bjh21
2af5062ab7
Add <machine/bootconfig.h> on arm26, and add an <arm/bootconfig.h> for it to
...
include (since all the contents are MI).
2001-05-13 13:46:23 +00:00
bjh21
e08b3af21d
Add stub <machine/cpufunc.h> for arm26.
2001-05-06 18:25:27 +00:00
bjh21
3fc08cf178
Implement pmap_resident_count() and pmap_wired_count() properly.
2001-05-05 14:20:05 +00:00
bjh21
8afb876f73
Make the common <arm/profile.h> work on arm26 and arm32, choosing whether
...
to munge R15 or not at runtime. Also make it work with both ELF and a.out.
2001-05-04 00:11:15 +00:00
thorpej
cf67ac7122
Per discussion w/ chuck and chuck, restructure the md page stuff
...
to use a structure called "vm_page_md", and use __HAVE_VM_PAGE_MD
and __HAVE_PMAP_PHYSSEG.
2001-05-01 02:19:13 +00:00
bjh21
a6b4c8d3da
Strip the PSR bits off values of R15 before passing them to _mcount(). This
...
makes call-graph profiling actually work (hooray!).
2001-04-30 23:41:11 +00:00
bjh21
e5b19b546c
Add two functions, int_off_save() and int_restore(), for mcount to use to
...
disable interrupts without getting into a loop or screwing up irq_handler().
Also use them.
2001-04-30 19:57:10 +00:00
thorpej
2b27ac7a99
Add a VM_MDPAGE_MEMBERS macro that defines pmap-specific data for
...
each vm_page structure. Add a VM_MDPAGE_INIT() macro to init this
data when pages are initialized by UVM. These macros are mandatory,
but ports may #define them to nothing if they are not needed/used.
This deprecates struct pmap_physseg. As a transitional measure,
allow a port to #define PMAP_PHYSSEG so that it can continue to
use it until its pmap is converted to use VM_MDPAGE_MEMBERS.
Use all this stuff to eliminate a lot of extra work in the Alpha
pmap module (it's smaller and faster now). Changes to other pmap
modules will follow.
2001-04-29 22:44:31 +00:00
bjh21
271fb855ce
Arrange to restore R14 on return from __mcount, so that profiled assembler
...
routines will work. We could put this in _PROF_PROLOGUE, but this seems
lighter-weight and possibly cleaner.
2001-04-26 22:09:57 +00:00
thorpej
a60e816e7a
Provide a pmap_resident_count() that simply expands to 0.
2001-04-25 18:03:19 +00:00
bjh21
05d087e7c7
Remove definitions of CLKF_*. They're defined in <arm/cpu.h> now.
2001-04-24 18:15:44 +00:00
bjh21
074987f4a3
Ensure that we have some idea what a label_t is, even in userland.
2001-04-16 17:30:32 +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