Commit Graph

2043 Commits

Author SHA1 Message Date
reinoud df2b9ae2bd Initial commit of wscons for the RiscPC/A7000 arm32 family. There is still lots
to do notably the mouse, some issues about 4 bpp modes and most of all Xwscons !

This code will still allow usage of the old vidcconsole complete with X etc.
Note that the wscons code can now only be booted with the new bootloader but
kernels compiled with vidcconsole can still be booted the old way.
2001-03-20 18:20:53 +00:00
reinoud 482f11868a Added dependency for "VIDCCONSOLE" (old console code) for the physcon char
device on console (makedev(4,0)) to aid in wscons transition.
2001-03-20 15:39:16 +00:00
reinoud adbed15428 Replace `bitsperpixel' by `log2_bpp' for thats the value that is in it
and not the number of bits per pixel !
2001-03-20 12:52:03 +00:00
reinoud e8f67fd5b7 `bitsperpixel' in the bootconfig structure is replaced by `log2_bpp'
for thats the value that is in it anyway and not the number of bits per pixel !
This to avoid confusion.
2001-03-20 12:50:08 +00:00
reinoud 2ac5b2f7cf Replace `bitsperpixel' by `log2_bpp' for thats the value that is in it
and not the number of bits per pixel !
2001-03-20 12:48:37 +00:00
bjh21 34cca2e23e Pull in shared podulebus drivers. 2001-03-20 00:01:37 +00:00
bjh21 2821b16ef4 Quick hack implementation of region ops. Not very pretty, but good enough
to get ei(4) working on arm32.
2001-03-19 23:56:45 +00:00
bjh21 4d5762c860 This file depends on <machine/io.h>. 2001-03-19 23:03:59 +00:00
bjh21 e7cc62cc44 A few #defines for the common podulebus API. 2001-03-19 22:59:13 +00:00
rearnsha 51e6b460ab Slightly smaller code and tune for StrongARM. 2001-03-19 22:51:51 +00:00
rearnsha 77d7115444 Spelling mistake (saftey -> safety). No functional change. 2001-03-18 18:49:37 +00:00
rearnsha f8ffa07954 Always restore the spl value when returning form physconkbd. 2001-03-18 17:03:26 +00:00
rearnsha 62dd3b3608 Fix a couple of cases where we could return without restoring the
SPL value.  Fixes a problem with the Xserver on A7000 kernels.
2001-03-18 17:00:56 +00:00
bjh21 614827277d Switch over to using podulebus_irq_establish(). 2001-03-18 16:58:55 +00:00
bjh21 5c98fe3fec Gratuitous change of signature for podulebus_irq_establish(). It now takes
an opaque podulebus_intr_handle_t, which can be found in podulebus_attach_args.
It's actually the slot number, but don't tell anyone.
2001-03-18 15:56:04 +00:00
bjh21 6c42a5d73a Move over to using podulebus_irq_establish. 2001-03-18 01:31:03 +00:00
bjh21 63059bd6dc Remove redundant sc_ih from struct ea_softc. 2001-03-18 01:30:30 +00:00
bjh21 b369fdfd44 Use podulebus_irq_establish().
To avoid complexity, don't bother with ea_irq_claim() and ea_irq_release() any
more.  This driver will be replaced with an MI one soon eough -- it just
happened to be convenient for me to test.
2001-03-18 00:00:43 +00:00
bjh21 f98a674d6d Add podulebus_irq_establish(), with the same spec as the arm26 one. 2001-03-17 23:58:43 +00:00
bjh21 697e84ed46 Update for new location of podules.h and podule_data.h 2001-03-17 20:34:43 +00:00
bjh21 e6a3d0d5c9 Move generated files from sys/arch/arm32/podulebus to sys/dev/podulebus. 2001-03-17 20:32:00 +00:00
bjh21 255336b13c Migrate known-podules list from arch/arm32/podulebus to dev/podulebus. 2001-03-17 19:05:19 +00:00
bjh21 17b6222740 Small beginnings of podulebus convergence: Have podule drivers print colons
in attach messages, rather than doing it in podulebusprint().
2001-03-17 18:46:25 +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 b01c113e98 ARM7TDMI != ARM7 for our purposes (it has an ARMv4 CP15). 2001-03-10 20:03:51 +00:00
bjh21 1f9f430e03 Patch from Richard Earnshaw:
Add some calls to drain the write buffers -- these are particularly
important when we are trying to synchronize I$ and D$.
2001-03-09 16:24:51 +00:00
bjh21 5a6e5a05e3 Increase the size of regions for which we use the single line flush
commands -- profiling shows this to be a major win over flushing the
entire cache (since the likelihood is that such lines won't be in the
cache anyway).

Patch supplied by Richard Earnshaw.
2001-03-09 16:17:19 +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 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 88951e75fa Rather than using a list of CPU IDs, take a heuristic approach to working
out which set of functions to use.  This should help cope with the fact that
my list of CPU IDs is probably incomplete.
2001-03-04 23:13:29 +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 aa34be4532 Make "options ARMFPE" work again.
Mostly due to Richard Earnshaw.
2001-03-04 14:32:12 +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 aada69afd5 Synch with file movement. 2001-03-04 05:15:39 +00:00
matt fb62f0c378 These have moved to ../../arm/arm (disksubr*.c) or ../../arm/arm32
(everything else).
2001-03-04 05:14:06 +00:00
matt 5d1d7ca9ca Remove a shark dependency in machdep. Use booted_kernel instead of
boot_kernel to be similiar to booted_device.
2001-03-04 01:50:53 +00:00
bjh21 c32dba2092 Remove support for /dev/cpu*. This code has never done anything useful anyway. 2001-03-03 18:04:34 +00:00
reinoud 5cc6423696 Fixed the bug that crept into giving support for moving IOMDs during startup.
Initially I gave it the type `int *iomd_base' but some macro's defined in
iomdreg.h calculated with the value asuming it to be an int ... thus all the
registers offsets were multiplied by four and that can only mean trouble !
The kernel boots again ever happily. Sorry for the inconvenience... it was
a good bug hunt though!
2001-03-02 01:46:57 +00:00
bjh21 5b15e666a1 ARM7100 -> ARM710A, following information from reinoud. 2001-03-01 23:45:56 +00:00
bjh21 c25aec3d9f PCB convergence, part the first:
Move the pointer to the current user trapframe from struct mdproc to struct
pcb (as on arm26).  Only tested by compiling kernels on arm32 and
hpcarm (dnard seems to be incomplete anyway).  Someone should try running one.
2001-02-28 18:15:42 +00:00
reinoud 4cb4b8642c Make it compile again... 2001-02-27 20:27:17 +00:00
reinoud 3500dc208f Centralise declaration of memc_base 2001-02-27 20:23:11 +00:00
reinoud b8c8050369 Define iomd_base ... make it compile again 2001-02-27 19:57:51 +00:00
reinoud 5cd12d1f9e Make it compile again 2001-02-27 18:33:26 +00:00
reinoud d4eb8fb142 Also forgot to declare the iomd_base. 2001-02-27 18:30:46 +00:00
reinoud d35a86c1a6 Forgot to declare iomd_base since it isnt in iomdreg.h anymore due to the
inclusion of this file in assembler.
2001-02-27 18:29:36 +00:00