Commit Graph

450 Commits

Author SHA1 Message Date
bjh21
e416135347 Driver for the standard Archimedes Econet interface, based around the
Motorola 6854 ADLC.
2001-09-10 23:41:48 +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
chris
0e7661f023 Update pmap_update to now take the updated pmap as an argument.
This will allow improvements to the pmaps so that they can more easily defer expensive operations, eg tlb/cache flush, til the last possible moment.

Currently this is a no-op on most platforms, so they should see no difference.

Reviewed by Jason.
2001-09-10 21:19:08 +00:00
reinoud
a425cc29ac Make it compile again if for some configuration there are no FIQ's ... It
complained about the unused label.
2001-09-10 02:21:42 +00:00
matt
7ce6450eac Add a merged <pcb.h> for arm26/arm32. 2001-09-03 19:20:27 +00:00
atatat
5f25c01eff Comment out bridge pseudo devices from ports that don't
__HAVE_GENERIC_SOFT_INTERRUPTS.  bridge(4) doesn't compile there.
2001-09-01 23:08:40 +00:00
atatat
97c67a9bae Add bridge pseudo devices to GENERIC configs 2001-09-01 21:52:23 +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
66da5fecf2 KASSERT the presence of a FIQ downgrade handler before we try to call it. 2001-08-26 12:25:38 +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
0ff76b5187 Add fiq_off() and fiq_on(). 2001-08-26 12:20:59 +00:00
bjh21
3f9dc1b3e8 In ioc_attach(), use ioc_irq_setmask() and ioc_fiq_setmask() rather than
twiddling registers directly.  Also, remove an outdated comment.
2001-08-25 17:59:38 +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
bf5b029d44 Make sure that soft interrupts are initialised in a "not pending" state. 2001-08-25 17:45:32 +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
8a979a066f Change various return sequences to the APCS-32 versions. 2001-08-21 22:42:17 +00:00
bjh21
1def612c66 Correctly restore the spl if we fail to claim the FIQ. 2001-08-21 22:40:39 +00:00
bjh21
1d4ae5d285 Use int_off_save and int_restore rather than int_off and int_on. 2001-08-20 23:28:05 +00:00
bjh21
45b5bdc5e5 Split off the pm_entries array from the rest of struct pmap. This makes
memory allocation for it more efficient (since pm_entries is 4096 bytes long),
and will allow pm_entries to be freed for swapped processes.
2001-08-20 23:12:54 +00:00
bjh21
8ec27f2ebe Implementation of fiq_{get,set}regs.
Also, don't leave space for a FIQ handler in kernels with no FIQing devices.
2001-08-20 23:10:51 +00:00
bjh21
13f36f67c6 Don't initialise a podule's loader multiple times. 2001-08-20 23:09:12 +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
1061e51a8a One from the vaults: Add lint stubs. 2001-08-20 22:56:10 +00:00
wiz
c52d355d71 "wierd" is weird. 2001-08-20 12:20:01 +00:00
chs
316cd176c8 in vunmapbuf(), call pmap_*remove() explicitly since uvm_km_free_wakeup()
will soon no longer do it for us.
2001-08-19 17:43:44 +00:00
bjh21
8b7128e398 Changes in aid of FIQ support:
Add ioc_fiq_setmask().
  Change ioc_irq_status_full() to use the request registers rather than the
  status registers.  This is brings it into line with the Unix baclplane, and
  makes detecting downgraded FIQs possible.
2001-08-19 15:27:44 +00:00
bjh21
63011ec08f Add lint stubs. Not actually tested or anything. 2001-08-13 23:16:11 +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
a3119c10de Report link status correctly for 10BASE-T. 2001-08-11 20:42:45 +00:00
bjh21
12a3da3896 Add RASOPS_SMALL. 2001-08-10 20:14:17 +00:00
bjh21
beb2e3fe5d Cast size_t argument appropriately for printf format. 2001-08-10 18:51:06 +00:00
bjh21
b5560b60b9 No need to mention procfs_machdep.c here -- it's in files.arm anyway. 2001-08-10 18:24:20 +00:00
bjh21
bd6d4d6b77 Use <arm/param.h> to get shared definitions. 2001-08-07 22:26:56 +00:00
chris
9522cf08d4 Share procfs_machdep.c across arm. 2001-08-05 13:09:45 +00:00
bjh21
8c3ac05de9 Bump version for * command addition. 2001-08-03 00:41:12 +00:00
bjh21
33452511ed Add a single * command, *boot26, so that the module can be manually invoked
after it's loaded.
2001-08-03 00:40:23 +00:00
bjh21
b471d90032 Add OS_Module. 2001-08-03 00:32:30 +00:00
bjh21
6e82ab9796 Wrap boot26 in a minimal relocatable module. When *RMRun, it just copies the
existing boot26 code to 0x8000 and runs it.
2001-08-02 23:55:55 +00:00
bjh21
3e749936d6 Script to generate a help string for a RISC OS module from the same sources
as newvers_stand.sh uses.
2001-08-02 23:47:07 +00:00
bjh21
4eebbc71e2 Don't force booters to have srt0.S at the start if they don't want to.
Also allow them to override the filetype they end up with.
2001-08-02 23:38:04 +00:00
bjh21
a2ac0e50f5 Bump version number for loadfile changes. 2001-08-02 20:24:03 +00:00
bjh21
1ede42fe57 Add <machine/sysarch.h> to go with sysarch(). 2001-07-28 19:14:00 +00:00
bjh21
c5ae075e50 Add a very simple sysarch() implementation so that libarm32 will work.
This should go when arm26 uses cpufunc like everyone else.
2001-07-28 19:12:50 +00:00
bjh21
0847de74d2 Add copyright notices. Use MEMC_PHYS_BASE rather than 0x02000000. 2001-07-28 13:49:25 +00:00
bjh21
ddf906b00d Use ld -N (OMAGIC), since this saves the 32k of RAM (by not putting a gap
between text and data) and means that loadfile only needs one backward seek
to load the file rather than two (which is important for gzipped kernels).
2001-07-28 13:48:32 +00:00
bjh21
f3b9fa04ed Only declare kernel objects ifdef _KERNEL. 2001-07-28 12:53:06 +00:00
bjh21
ec79dd3942 Add installation glue. 2001-07-28 12:44:54 +00:00
bjh21
9139a37393 New arm26 bootloader. Mostly a translation of BBBB into C, using libsa so
we get goodies like gzipped kernels for free.
2001-07-27 23:13:49 +00:00
bjh21
0ad24007df Add assorted stuff that we need in order to shut RISC OS down cleanly. 2001-07-27 23:09:15 +00:00