Commit Graph

29 Commits

Author SHA1 Message Date
mrg 8daa58f52b remove include of <vm/vm.h> and <machine/pmap.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-29 07:40:05 +00:00
pk 618d3d0fde VME/IOMMU DMA load must also relocate DVMA addresses to the start of VME space. 2000-06-27 09:05:23 +00:00
simonb 889c658b5b Change the kernel mmap interface so that the offset to map is an
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes.  Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".

Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
2000-06-26 04:55:19 +00:00
pk 560d1ea54c Implement vme_dmamap_create/vme_dmamap_destroy, which allows us to
select the appropriate DVMA subrange for VME devices.
2000-06-25 13:07:34 +00:00
pk d982283952 vme4_dmamap_[un]load: ensure enough DVMA space is allocated to cover the
buffer and store that amount in the DMA map to avoid re-computation.
Also add a cache flush as the bus_dmamap_sync() don't do that yet.
2000-06-18 19:30:21 +00:00
cgd cffb580806 Implement the more flexiable `evcnt' interface as discussed (briefly) on
tech-kern and now documented in evcnt(9).
2000-06-04 19:14:14 +00:00
pk 2d12c9e33b The bus_dma(9) implementation now allocates DVMA addresses in
bus_dmamap_load_*() routines only. Note that DMA memory buffers
allocated with bus_dmamem_alloc() _must_ be loaded by bus_dmamap_load_raw().
2000-05-09 22:39:35 +00:00
pk c6b6f3883a Remove old-style boot device recognition. 2000-01-11 12:59:43 +00:00
thorpej 1946167939 Update for pmap_enter() API change. No functional difference. 1999-11-13 00:30:26 +00:00
thorpej 3ebbe095e0 Change the pmap_extract() interface to:
boolean_t pmap_extract(pmap_t, vaddr_t, paddr_t *);
This makes it possible for the pmap to map physical address 0.
1999-07-08 18:05:21 +00:00
drochner 33104934d9 update for new VME framework 1999-06-30 15:18:58 +00:00
pk 87a17d4466 Initialize the VME bus tag. 1999-04-14 10:28:23 +00:00
mycroft 9c6b797796 Changes for modified pmap_enter() API:
* Map the message buffer with access_type = VM_PROT_READ|VM_PROT_WRITE `just
  because'.
* Map the file system buffers with access_type = VM_PROT_READ|VM_PROT_WRITE to
  avoid possible problems with pagemove().
* Do not use VM_PROT_EXEC with either of the above.
* Map pages for /dev/mem with access_type = prot.  Also, DO NOT use
  pmap_kenter() for this, as we DO NOT want to lose modification information.
* Map pages in dumpsys() with VM_PROT_READ.
* Map pages in m68k mappedcopyin()/mappedcopyout() and writeback() with
  access_type = prot.
* For now, bus_dma*(), pmap_map(), vmapbuf(), and similar functions still use
  access_type = 0.  This should probably be revisited.
1999-03-26 23:41:25 +00:00
fvdl 1461618ead Make this compile for SUN4 only. 1999-02-08 00:13:20 +00:00
pk 6a8119ff1d Sanity check from Matthias Drochner. 1999-01-15 00:26:24 +00:00
pk 0a6347a24d Provide an error entry point like sbus and memory. 1998-09-19 16:45:43 +00:00
pk 6f2539f8a6 getpropA() => getprop(). 1998-08-30 21:26:46 +00:00
pk 66795e62e7 Move sparc_vme_dmamem_map() outside `#ifdef SUN4M' 1998-08-23 10:40:38 +00:00
pk 2a6be00de5 Rename DVMA constants. 1998-08-23 10:05:53 +00:00
pk 363b678b9e Flesh out more of the sun4 busdma functions. 1998-08-20 20:46:59 +00:00
pk 32a5557426 Adapt to changes in the base bus_dma* functions. 1998-07-30 22:29:34 +00:00
pk 741c837f77 Get to DMA map functions through parent tag, instead of calling some base
functions directly.
1998-07-30 18:54:06 +00:00
pk beb02e6b82 Use bus space methods to implement the vme bus space functions. 1998-04-07 20:21:55 +00:00
pk 681b358c19 Account for bus_space(9)-style bus attachment scheme. 1998-03-21 20:30:49 +00:00
pk 0725302eac vme_bus_probe() takes an `offset' argument. 1998-02-06 00:22:41 +00:00
thorpej 8abe76d2f0 Add offset and length parameters to bus_dmamap_sync(), used for specifiying
partial syncs of a DMA mapping.
1998-02-04 05:12:46 +00:00
thorpej 99cc8482d1 Change the last argument of bus_dmamap_sync() from bus_dmasync_op_t to int,
and allow more than one synchronization operation to be specified in
a single call.  Dissallow mixing of PRE and POST operations.
1998-02-04 01:57:27 +00:00
pk f060ed68ba sparc_vme_probe(): handle callback argument. 1998-02-04 01:01:14 +00:00
pk f8ba1e0bd9 sparc/VME bus implementation. 1998-01-25 16:06:25 +00:00