Commit Graph

2285 Commits

Author SHA1 Message Date
thorpej
3fe7e33bdc When loading the bounce buffer into the DMA map, don't
pass in a proc, because the bounce buffer belongs to the
kernel.
2002-01-25 20:49:25 +00:00
thorpej
4e990d9ccb Overhaul of the ARM cache code. This is mostly a simplification
pass.  Rather than providing a whole slew of cache operations that
aren't ever used, distill them down to some useful primitives:

	icache_sync_all         Synchronize I-cache
	icache_sync_range       Synchronize I-cache range

	dcache_wbinv_all        Write-back and Invalidate D-cache
	dcache_wbinv_range      Write-back and Invalidate D-cache range
	dcache_inv_range        Invalidate D-cache range
	dcache_wb_range         Write-back D-cache range

	idcache_wbinv_all       Write-back and Invalidate D-cache,
				Invalidate I-cache
	idcache_wbinv_range     Write-back and Invalidate D-cache,
				Invalidate I-cache range

Note: This does not yet include an overhaul of the actual asm files
that implement the primitives.  Instead, we've provided a safe default
for each CPU type, and the individual CPU types can now be optimized
one at a time.
2002-01-25 19:19:22 +00:00
thorpej
dac6fe0dba Fix a prototype. 2002-01-25 18:16:24 +00:00
manu
d397792cbb Added clockctl 2002-01-12 12:36:31 +00:00
thorpej
f68aaee236 - A few adjustments for cross-building (address an XXX here later).
- Create an OMAGIC a.out and objcopy it to a flat binary image; the
  Shark OpenFirmware can load the plain binary image, and we will
  need to employ this strategy when we switch to ELF.
2002-01-09 23:47:04 +00:00
thorpej
3c2bddcbc9 Fixup cache I$ clean code. 2002-01-09 23:18:10 +00:00
chris
8dd3ca5994 Finish up the changes to get LOOSE_PROTOTYPES working for cats.
Note that this leaves a few inconsistencies (no more than we already had though) eg initarm is now prototyped in arm32/machdep.h, however only cats currently makes use of that header.
2002-01-07 22:58:07 +00:00
thorpej
3835413bc1 Overhaul of the ISA autoconfiguration code to support direct
configuration of devices logically attached to the ISA bus:

* Change the isa_attach_args to have arrays of io, mem, irq, drq
  resources.
* Add a "pnpnames" and a linked list of "pnpcompatnames" to the
  isa_attach_args.  If either of these members are non-NULL,
  direct configuration of the bus is being performed.  Add an
  ISA_DIRECT_CONFIG() macro to test for this.
* Drivers are not allowed to modify the isa_attach_args unless
  direct configuration is not being performed and the probe fucntion
  is returning success.
* Adapt device drivers -- currently, all driver probe routines return
  "no match" if ISA_DIRECT_CONFIG() evaluates to true.
2002-01-07 21:46:56 +00:00
chris
e3a3a9f56f Make some of the arm32 files build with LOOSE_PROTOTYPES not set in the makefile. Turned up a few mismatched functions. Note that this isn't all of the arm32 files. Aim will be to get arm32 kernels built with LOOSE_PROTOTYPES not set. 2002-01-05 22:41:46 +00:00
lukem
1f5f54d132 add <sys/systm.h> (for libkern.h) now that -ffree-standing is in effect 2001-12-31 15:01:51 +00:00
thorpej
36b6f0cf4a Clean up a little, bump KERNEL_VM_SIZE to 0x06000000 (we have that
much room -- from 0xf1000000 to 0xf7000000 [start of OFW]).
2001-12-21 00:23:17 +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
4d3393a2c8 Remove the MACHINE_ARCH assignment. 2001-12-19 17:43:19 +00:00
tv
8e6f7afb5b MKfoo=no -> NOfoo 2001-12-12 01:48:43 +00:00
atatat
b45c51b1fc Roll the rest of the ports over to the new MI kernel build machinery.
Any problems reported by testers have been fixed, and massive
cross-compiling of kernels has shown that any problems that remain
with actually building kernels are not related to this.
2001-12-09 05:00:40 +00:00
bjh21
979ce3fa95 Explicitly declare ofw_device_register(), since it's not in any header file.
Yes, this is nasty, but it's not as if this port has long to live, does it?
2001-12-08 01:22:45 +00:00
bjh21
4c64633edc Remove more acorn32 leftovers. 2001-12-08 01:16:53 +00:00
bjh21
8a16a572d7 Remove references to things that have disappeared in the acorn32 split. 2001-12-06 23:51:04 +00:00
bjh21
352d57f9e1 Remove IOMD support, since NetBSD/arm32 doesn't support IOMD systems any more. 2001-12-06 11:54:07 +00:00
bouyer
e01670eb4e Convert to new ata/atapi attach structs. 2001-12-02 22:54:26 +00:00
thorpej
818da5433c Make this compile again after the cs8900 driver changes. 2001-11-28 19:32:07 +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
28466919a2 Use <machine/intr.h> rather than <machine/irqhandler.h> 2001-11-27 01:03:52 +00:00
thorpej
8cd82ab7b7 Move interrupt-related stuff out of the generic 32-bit ARM genassym.cf
and into platform-specific genassym.cf files.
2001-11-27 00:15:58 +00:00
thorpej
ed112809c9 Allow port-specific Makefile fragments to specify a list of additional
genassym.cf fragments, if desired.
2001-11-26 23:44:58 +00:00
thorpej
c8c624e4aa Don't include <machine/psl.h> directly. 2001-11-26 20:49:04 +00:00
thorpej
e0c4ce6999 Use <arm/arm32/psl.h> rather than <machine/psl.h>. 2001-11-26 20:43:46 +00:00
thorpej
87cab44e4e Delete <machine/psl.h> from the ARM ports. It's not a header that
we need to provide to MI code or to userland, and it's also not a
header that generic ARM code should be including directly.
2001-11-26 20:41:42 +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
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
525c88a3c4 Cleanup, don't install headers that userland doesn't need. 2001-11-24 03:56:48 +00:00
thorpej
fc2c469259 The ARM, Ltd. floating point emulator has moved to arch/arm. 2001-11-24 01:27:11 +00:00
thorpej
598f003e0a More G/C. 2001-11-24 01:16:54 +00:00
thorpej
1cfe216e3b Garbage-collect more acorn32-specific stuff. 2001-11-24 01:15:36 +00:00
thorpej
99ae803762 Gerbage-collect a lot of stuff long since moved to arch/acorn32. 2001-11-24 01:11:51 +00:00
thorpej
1a60d78375 These files are no longer used; the Acorn RiscPC port is now
NetBSD/acorn32.
2001-11-24 01:02:21 +00:00
thorpej
ef9741def9 No need to install bootconfig.h 2001-11-24 00:57:43 +00:00
thorpej
49592e9870 No need to install irqhandler.h 2001-11-23 23:34:48 +00:00
thorpej
b8ed19b4ef No longer need <machine/undefined.h>. 2001-11-23 21:23:30 +00:00
thorpej
fc019be5fd Use <arm/undefined.h> instead of <machine/undefined.h>. 2001-11-23 21:18:29 +00:00
thorpej
dbbad6df48 profileio.h is a Shark-specific header, so don't reference an
ARM-generic verion (it's going away).
2001-11-23 20:47:17 +00:00
thorpej
0a824f32cb No longer need <machine/pte.h>. 2001-11-23 20:43:03 +00:00
thorpej
a41a73c44a No longer need <machine/cpus.h> 2001-11-23 19:51:32 +00:00
thorpej
889b84bdfc Use <arm/cpus.h>, not <machine/cpus.h> 2001-11-23 19:46:35 +00:00
thorpej
0ab1aedd0d No longer need <machine/cpufunc.h> 2001-11-23 19:40:45 +00:00
thorpej
969599022a Use <arm/cpufunc.h>, not <machine/cpufunc.h>. 2001-11-23 19:36:48 +00:00
thorpej
5101f01dff Move even more constants into the shared 32-bit vmparam.h header.
Cleanup elsewhere will have to be done before we can sanitize this
header any further.
2001-11-23 18:16:10 +00:00
thorpej
15c76e3c84 - Move more contents of various <machine/vmparam.h> files into
<arm/arm32/vmparam.h> (mostly the stuff that's tied to the pmap
  implementation).
- Since the MMU definitions in pte.h are specific to ARM processors
  that support 32-bit mode, move pte.h to <arm/arm32/pte.h>.
- Make the Netwinder startup file build again (use PT_B|PT_C, rather
  than PT_CACHEABLE, since the latter expands to a variable these days).
2001-11-23 17:39:03 +00:00
thorpej
0ec8fbad4d Extra whitespace removal. 2001-11-23 17:29:00 +00:00
thorpej
fec02f1259 No need to pull in <machine/pte.h> directly. 2001-11-23 17:23:40 +00:00