The NetBSD Project

CVS log for src/sys/arch/arm/arm32/bus_dma.c

[BACK] Up to [cvs.NetBSD.org] / src / sys / arch / arm / arm32

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.144 / (download) - annotate - [select for diffs], Fri Jul 28 06:21:02 2023 UTC (8 months ago) by rin
Branch: MAIN
CVS Tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, HEAD
Changes since 1.143: +3 -4 lines
Diff to previous 1.143 (colored) to selected 1.136 (colored)

arm/bus_dma: Fix misleading comment:

- * For a virtually-indexed write-back cache, we need
- * to do the following things:
+ * For a write-back cache, we need to do the following things:

This comment was written long ago when we supported only virtually-
indexed caches for arm. But subsequent comments are valid also for
physically-indexed cache.

Revision 1.143 / (download) - annotate - [select for diffs], Mon Apr 3 06:42:57 2023 UTC (11 months, 3 weeks ago) by skrll
Branch: MAIN
Changes since 1.142: +14 -12 lines
Diff to previous 1.142 (colored) to selected 1.136 (colored)

Use PRI{u,x}{BUSSIZE,VADDR,PADDR} etc

Revision 1.142 / (download) - annotate - [select for diffs], Mon Apr 3 06:39:10 2023 UTC (11 months, 3 weeks ago) by skrll
Branch: MAIN
Changes since 1.141: +11 -11 lines
Diff to previous 1.141 (colored) to selected 1.136 (colored)

More KNF

Revision 1.141 / (download) - annotate - [select for diffs], Mon Apr 3 06:35:13 2023 UTC (11 months, 3 weeks ago) by skrll
Branch: MAIN
Changes since 1.140: +6 -6 lines
Diff to previous 1.140 (colored) to selected 1.136 (colored)

Some KNF

Revision 1.140 / (download) - annotate - [select for diffs], Mon Apr 3 06:33:55 2023 UTC (11 months, 3 weeks ago) by skrll
Branch: MAIN
Changes since 1.139: +3 -3 lines
Diff to previous 1.139 (colored) to selected 1.136 (colored)

spaces -> TAB

Revision 1.139 / (download) - annotate - [select for diffs], Sat Feb 25 08:05:46 2023 UTC (13 months ago) by skrll
Branch: MAIN
Changes since 1.138: +3 -7 lines
Diff to previous 1.138 (colored) to selected 1.136 (colored)

Don't refer to physical_{start,end} here and just pass minimum (0UL)
address and maximum (~0UL) physical address.  The values are passed
through to uvm_pglistalloc which knows about the RAM ranges.

Revision 1.138 / (download) - annotate - [select for diffs], Tue Oct 11 22:03:37 2022 UTC (17 months, 2 weeks ago) by andvar
Branch: MAIN
CVS Tags: netbsd-10-base, netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10
Changes since 1.137: +3 -3 lines
Diff to previous 1.137 (colored) to selected 1.136 (colored)

fix typos in log messages s/bus_dmamem_create/bus_dmamap_create/ and
s/bus_dmamem_load/bus_dmamap_load/.
Inspired by recent similar fixes in OpenBSD.

Revision 1.137 / (download) - annotate - [select for diffs], Tue Jul 26 20:08:54 2022 UTC (20 months ago) by andvar
Branch: MAIN
CVS Tags: bouyer-sunxi-drm-base, bouyer-sunxi-drm
Changes since 1.136: +3 -3 lines
Diff to previous 1.136 (colored)

s/functin/function/ in copy pasted comment.

Revision 1.136 / (download) - annotate - [selected], Tue May 24 19:55:10 2022 UTC (22 months ago) by andvar
Branch: MAIN
Changes since 1.135: +3 -3 lines
Diff to previous 1.135 (colored)

s/entrace/entrance/ in copy pasted comment.

Revision 1.135 / (download) - annotate - [select for diffs], Sun Feb 6 22:21:25 2022 UTC (2 years, 1 month ago) by mrg
Branch: MAIN
Changes since 1.134: +21 -3 lines
Diff to previous 1.134 (colored) to selected 1.136 (colored)

if we have to bounce a buffer, clear our anything already setup in
the map before trying again.

riastradh@ noticed that a map had two types of mbuf types, and this
seems to avoid it as seen on eqos(4) on quartz64.

add a couple more event counts for bus dma events.

ok @skrll @raistradh @jmcneill


XXX: pullup-8 and pullup-9 probably.

Revision 1.134 / (download) - annotate - [select for diffs], Mon Dec 20 13:58:58 2021 UTC (2 years, 3 months ago) by skrll
Branch: MAIN
Changes since 1.133: +3 -3 lines
Diff to previous 1.133 (colored) to selected 1.136 (colored)

_bus_dmatag_subregion is always EOPNOTSUPP for !_ARM32_NEED_BUS_DMA_BOUNCE
No need to check {min,max}_addr. Compiler did the right thing, but...

Revision 1.133 / (download) - annotate - [select for diffs], Mon Aug 30 22:56:26 2021 UTC (2 years, 6 months ago) by jmcneill
Branch: MAIN
Changes since 1.132: +6 -3 lines
Diff to previous 1.132 (colored) to selected 1.136 (colored)

Add storage for an iommu cookie in bus_dmamap_t and store untranslated CPU
address in bus_dma_segment_t.

Revision 1.124.2.3 / (download) - annotate - [select for diffs], Sat Apr 3 22:28:16 2021 UTC (2 years, 11 months ago) by thorpej
Branch: thorpej-futex
Changes since 1.124.2.2: +25 -18 lines
Diff to previous 1.124.2.2 (colored) next main 1.125 (colored) to selected 1.136 (colored)

Sync with HEAD.

Revision 1.132 / (download) - annotate - [select for diffs], Sun Feb 7 10:47:40 2021 UTC (3 years, 1 month ago) by skrll
Branch: MAIN
CVS Tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-i2c-spi-conf, thorpej-futex2-base, thorpej-futex2, thorpej-futex-base, thorpej-cfargs2-base, thorpej-cfargs2, thorpej-cfargs-base, thorpej-cfargs, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Changes since 1.131: +10 -3 lines
Diff to previous 1.131 (colored) to selected 1.136 (colored)

Check for programming errors in _bus_dmamap_load_buffer

Revision 1.131 / (download) - annotate - [select for diffs], Sun Feb 7 10:20:35 2021 UTC (3 years, 1 month ago) by skrll
Branch: MAIN
Changes since 1.130: +3 -3 lines
Diff to previous 1.130 (colored) to selected 1.136 (colored)

pretty print

Revision 1.130 / (download) - annotate - [select for diffs], Sun Feb 7 10:19:49 2021 UTC (3 years, 1 month ago) by skrll
Branch: MAIN
Changes since 1.129: +17 -17 lines
Diff to previous 1.129 (colored) to selected 1.136 (colored)

Consistently use %#x, etc

Revision 1.124.2.2 / (download) - annotate - [select for diffs], Sun Jan 3 16:34:51 2021 UTC (3 years, 2 months ago) by thorpej
Branch: thorpej-futex
Changes since 1.124.2.1: +50 -11 lines
Diff to previous 1.124.2.1 (colored) to selected 1.136 (colored)

Sync w/ HEAD.

Revision 1.129 / (download) - annotate - [select for diffs], Tue Dec 22 13:07:32 2020 UTC (3 years, 3 months ago) by skrll
Branch: MAIN
Changes since 1.128: +32 -8 lines
Diff to previous 1.128 (colored) to selected 1.136 (colored)

Count bus_dmamap_sync events for coherent ranges and non-coherent ranges

Revision 1.128 / (download) - annotate - [select for diffs], Sun Dec 20 10:34:33 2020 UTC (3 years, 3 months ago) by jmcneill
Branch: MAIN
Changes since 1.127: +3 -3 lines
Diff to previous 1.127 (colored) to selected 1.136 (colored)

style fix

Revision 1.127 / (download) - annotate - [select for diffs], Sat Dec 19 23:22:18 2020 UTC (3 years, 3 months ago) by jmcneill
Branch: MAIN
Changes since 1.126: +19 -4 lines
Diff to previous 1.126 (colored) to selected 1.136 (colored)

No need to allocate bounce buffers if we have a single range that covers
all of physical memory.

Revision 1.124.2.1 / (download) - annotate - [select for diffs], Mon Dec 14 14:37:47 2020 UTC (3 years, 3 months ago) by thorpej
Branch: thorpej-futex
Changes since 1.124: +43 -14 lines
Diff to previous 1.124 (colored) to selected 1.136 (colored)

Sync w/ HEAD.

Revision 1.126 / (download) - annotate - [select for diffs], Fri Dec 4 07:12:57 2020 UTC (3 years, 3 months ago) by skrll
Branch: MAIN
Changes since 1.125: +20 -14 lines
Diff to previous 1.125 (colored) to selected 1.136 (colored)

Use __func__ in panic calls (and misc style changes)

Revision 1.125 / (download) - annotate - [select for diffs], Fri Dec 4 07:11:35 2020 UTC (3 years, 3 months ago) by skrll
Branch: MAIN
Changes since 1.124: +25 -2 lines
Diff to previous 1.124 (colored) to selected 1.136 (colored)

Update stats in the coherent case.  Reported by jmcneill.

Revision 1.124 / (download) - annotate - [select for diffs], Sat Oct 24 14:51:59 2020 UTC (3 years, 5 months ago) by skrll
Branch: MAIN
Branch point for: thorpej-futex
Changes since 1.123: +15 -14 lines
Diff to previous 1.123 (colored) to selected 1.136 (colored)

Fix the logic around "parent is a subset and can be re-used" in
bus_dmatag_subregion.  Thanks to mrg@ for spotting the problem.

Revision 1.123 / (download) - annotate - [select for diffs], Tue Sep 8 10:30:17 2020 UTC (3 years, 6 months ago) by skrll
Branch: MAIN
Changes since 1.122: +31 -10 lines
Diff to previous 1.122 (colored) to selected 1.136 (colored)

A few bus_dmatag_subregion fixes

- return EOPNOTSUPP if min_addr isn't less than max_addr
- fix the subset check to ensure that all the ranges in the parent tag are
  within the {min,max}_addr range.  If so we can just continue to use the
  parent tag.
- when building the new ranges read the parent tag range rather than un-
  initialised memory.
- remove the max_addr != 0xffffffff check - the overflow should be handled
  by the unsigned arithmetic for arm32.
- add a KASSERT
- add comments

Revision 1.122 / (download) - annotate - [select for diffs], Sat Jun 20 07:10:36 2020 UTC (3 years, 9 months ago) by skrll
Branch: MAIN
Changes since 1.121: +3 -2 lines
Diff to previous 1.121 (colored) to selected 1.136 (colored)

KNF #includes

Remove some unnecessary ones while I'm here.

Revision 1.108.2.3 / (download) - annotate - [select for diffs], Mon Apr 13 08:03:32 2020 UTC (3 years, 11 months ago) by martin
Branch: phil-wifi
Changes since 1.108.2.2: +53 -39 lines
Diff to previous 1.108.2.2 (colored) to branchpoint 1.108 (colored) next main 1.109 (colored) to selected 1.136 (colored)

Mostly merge changes from HEAD upto 20200411

Revision 1.108.2.2 / (download) - annotate - [select for diffs], Wed Apr 8 14:07:28 2020 UTC (3 years, 11 months ago) by martin
Branch: phil-wifi
Changes since 1.108.2.1: +7 -9 lines
Diff to previous 1.108.2.1 (colored) to branchpoint 1.108 (colored) to selected 1.136 (colored)

Merge changes from current as of 20200406

Revision 1.121 / (download) - annotate - [select for diffs], Sat Mar 14 18:08:38 2020 UTC (4 years ago) by ad
Branch: MAIN
CVS Tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh
Changes since 1.120: +5 -7 lines
Diff to previous 1.120 (colored) to selected 1.136 (colored)

- Hide the details of SPCF_SHOULDYIELD and related behind a couple of small
  functions: preempt_point() and preempt_needed().

- preempt(): if the LWP has exceeded its timeslice in kernel, strip it of
  any priority boost gained earlier from blocking.

Revision 1.118.2.1 / (download) - annotate - [select for diffs], Sat Feb 29 20:18:17 2020 UTC (4 years ago) by ad
Branch: ad-namecache
Changes since 1.118: +4 -4 lines
Diff to previous 1.118 (colored) next main 1.119 (colored) to selected 1.136 (colored)

Sync with head.

Revision 1.98.8.1 / (download) - annotate - [select for diffs], Tue Feb 25 19:20:43 2020 UTC (4 years, 1 month ago) by martin
Branch: netbsd-8
CVS Tags: netbsd-8-2-RELEASE
Changes since 1.98: +4 -4 lines
Diff to previous 1.98 (colored) next main 1.99 (colored) to selected 1.136 (colored)

Pull up following revision(s) (requested by skrll in ticket #1510):

	sys/arch/arm/arm32/bus_dma.c: revision 1.119
	sys/arch/arm/arm32/bus_dma.c: revision 1.120

Make sure to convey a failure to the calling function
Likely fix for PR kern/54999, but that was a one-off panic.
 -
Fix previous for non-_ARM32_NEED_BUS_DMA_BOUNCE builds

Revision 1.115.2.3 / (download) - annotate - [select for diffs], Tue Feb 25 19:16:23 2020 UTC (4 years, 1 month ago) by martin
Branch: netbsd-9
CVS Tags: netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE
Changes since 1.115.2.2: +4 -4 lines
Diff to previous 1.115.2.2 (colored) to branchpoint 1.115 (colored) next main 1.116 (colored) to selected 1.136 (colored)

Pull up following revision(s) (requested by skrll in ticket #721):

	sys/arch/arm/arm32/bus_dma.c: revision 1.119
	sys/arch/arm/arm32/bus_dma.c: revision 1.120

Make sure to convey a failure to the calling function
Likely fix for PR kern/54999, but that was a one-off panic.
 -
Fix previous for non-_ARM32_NEED_BUS_DMA_BOUNCE builds

Revision 1.120 / (download) - annotate - [select for diffs], Sat Feb 22 08:22:09 2020 UTC (4 years, 1 month ago) by skrll
Branch: MAIN
CVS Tags: is-mlppp-base, is-mlppp, ad-namecache-base3
Changes since 1.119: +3 -3 lines
Diff to previous 1.119 (colored) to selected 1.136 (colored)

Fix previous for _ARM32_NEED_BUS_DMA_BOUNCE

Revision 1.119 / (download) - annotate - [select for diffs], Fri Feb 21 23:27:06 2020 UTC (4 years, 1 month ago) by maya
Branch: MAIN
Changes since 1.118: +3 -3 lines
Diff to previous 1.118 (colored) to selected 1.136 (colored)

Make sure to convey a failure to the calling function

Likely fix for PR kern/54999, but that was a one-off panic.

Revision 1.115.2.2 / (download) - annotate - [select for diffs], Wed Nov 6 09:43:19 2019 UTC (4 years, 4 months ago) by martin
Branch: netbsd-9
CVS Tags: netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1
Changes since 1.115.2.1: +11 -4 lines
Diff to previous 1.115.2.1 (colored) to branchpoint 1.115 (colored) to selected 1.136 (colored)

Pull up following revision(s) (requested by jmcneill in ticket #399):

	sys/arch/arm/arm32/bus_dma.c: revision 1.117
	sys/arch/arm/arm32/bus_dma.c: revision 1.118
	sys/external/bsd/drm2/drm/drm_gem_cma_helper.c: revision 1.8

bus_dmamem_map: honour BUS_DMA_PREFETCHABLE hint

Map buffer objects with BUS_DMA_PREFETCHABLE.

Do not try to use direct map for prefetchable mappings

Revision 1.118 / (download) - annotate - [select for diffs], Tue Nov 5 10:21:31 2019 UTC (4 years, 4 months ago) by jmcneill
Branch: MAIN
CVS Tags: phil-wifi-20191119, ad-namecache-base2, ad-namecache-base1, ad-namecache-base
Branch point for: ad-namecache
Changes since 1.117: +3 -3 lines
Diff to previous 1.117 (colored) to selected 1.136 (colored)

Do not try to use direct map for prefetchable mappings

Revision 1.117 / (download) - annotate - [select for diffs], Tue Nov 5 09:57:47 2019 UTC (4 years, 4 months ago) by jmcneill
Branch: MAIN
Changes since 1.116: +10 -3 lines
Diff to previous 1.116 (colored) to selected 1.136 (colored)

bus_dmamem_map: honour BUS_DMA_PREFETCHABLE hint

Revision 1.115.2.1 / (download) - annotate - [select for diffs], Tue Sep 24 02:52:09 2019 UTC (4 years, 6 months ago) by martin
Branch: netbsd-9
Changes since 1.115: +9 -7 lines
Diff to previous 1.115 (colored) to selected 1.136 (colored)

Pull up following revision(s) (requested by jmcneill in ticket #236):

	sys/arch/arm/arm32/bus_dma.c: revision 1.116

bus_dmamap_load_raw: support coherent mappings
bus_dmamap_sync: support syncing "raw" buffer types

Revision 1.116 / (download) - annotate - [select for diffs], Sat Aug 24 11:51:26 2019 UTC (4 years, 7 months ago) by jmcneill
Branch: MAIN
Changes since 1.115: +9 -7 lines
Diff to previous 1.115 (colored) to selected 1.136 (colored)

bus_dmamap_load_raw: support coherent mappings
bus_dmamap_sync: support syncing "raw" buffer types

Revision 1.115 / (download) - annotate - [select for diffs], Fri Jun 14 09:09:12 2019 UTC (4 years, 9 months ago) by skrll
Branch: MAIN
CVS Tags: netbsd-9-base
Branch point for: netbsd-9
Changes since 1.114: +39 -34 lines
Diff to previous 1.114 (colored) to selected 1.136 (colored)

Simplify the _ARM32_NEED_BUS_DMA_BOUNCE #ifdefs and rely on compiler
optimisation of the bouncing = false case.

Drain the write buf (aka DSB) in more cases

Catch all CPUs that support speculation. (thunderx isn't CPU_CORTEX)

Revision 1.108.2.1 / (download) - annotate - [select for diffs], Mon Jun 10 22:05:51 2019 UTC (4 years, 9 months ago) by christos
Branch: phil-wifi
Changes since 1.108: +9 -12 lines
Diff to previous 1.108 (colored) to selected 1.136 (colored)

Sync with HEAD

Revision 1.114 / (download) - annotate - [select for diffs], Sat Jun 8 11:57:27 2019 UTC (4 years, 9 months ago) by skrll
Branch: MAIN
CVS Tags: phil-wifi-20190609
Changes since 1.113: +2 -5 lines
Diff to previous 1.113 (colored) to selected 1.136 (colored)

Fix comment

Revision 1.106.2.5 / (download) - annotate - [select for diffs], Sun Sep 30 01:45:37 2018 UTC (5 years, 5 months ago) by pgoyette
Branch: pgoyette-compat
CVS Tags: pgoyette-compat-merge-20190127
Changes since 1.106.2.4: +3 -3 lines
Diff to previous 1.106.2.4 (colored) to branchpoint 1.106 (colored) next main 1.107 (colored) to selected 1.136 (colored)

Ssync with HEAD

Revision 1.113 / (download) - annotate - [select for diffs], Fri Sep 14 10:13:02 2018 UTC (5 years, 6 months ago) by skrll
Branch: MAIN
CVS Tags: pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, isaki-audio2-base, isaki-audio2
Changes since 1.112: +3 -3 lines
Diff to previous 1.112 (colored) to selected 1.136 (colored)

Fix  BUS_DMASYNC_PREREAD|BUS_DMASYNC_PREWRITE for aarch64.

The readonly mbuf optimisation is for the old arm pmap.

Revision 1.106.2.4 / (download) - annotate - [select for diffs], Thu Sep 6 06:55:25 2018 UTC (5 years, 6 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.106.2.3: +7 -7 lines
Diff to previous 1.106.2.3 (colored) to branchpoint 1.106 (colored) to selected 1.136 (colored)

Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)

Revision 1.112 / (download) - annotate - [select for diffs], Mon Sep 3 16:29:23 2018 UTC (5 years, 6 months ago) by riastradh
Branch: MAIN
CVS Tags: pgoyette-compat-0906
Changes since 1.111: +7 -7 lines
Diff to previous 1.111 (colored) to selected 1.136 (colored)

Rename min/max -> uimin/uimax for better honesty.

These functions are defined on unsigned int.  The generic name
min/max should not silently truncate to 32 bits on 64-bit systems.
This is purely a name change -- no functional change intended.

HOWEVER!  Some subsystems have

	#define min(a, b)	((a) < (b) ? (a) : (b))
	#define max(a, b)	((a) > (b) ? (a) : (b))

even though our standard name for that is MIN/MAX.  Although these
may invite multiple evaluation bugs, these do _not_ cause integer
truncation.

To avoid `fixing' these cases, I first changed the name in libkern,
and then compile-tested every file where min/max occurred in order to
confirm that it failed -- and thus confirm that nothing shadowed
min/max -- before changing it.

I have left a handful of bootloaders that are too annoying to
compile-test, and some dead code:

cobalt ews4800mips hp300 hppa ia64 luna68k vax
acorn32/if_ie.c (not included in any kernels)
macppc/if_gm.c (superseded by gem(4))

It should be easy to fix the fallout once identified -- this way of
doing things fails safe, and the goal here, after all, is to _avoid_
silent integer truncations, not introduce them.

Maybe one day we can reintroduce min/max as type-generic things that
never silently truncate.  But we should avoid doing that for a while,
so that existing code has a chance to be detected by the compiler for
conversion to uimin/uimax without changing the semantics until we can
properly audit it all.  (Who knows, maybe in some cases integer
truncation is actually intended!)

Revision 1.106.2.3 / (download) - annotate - [select for diffs], Sat Jul 28 04:37:27 2018 UTC (5 years, 8 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.106.2.2: +3 -3 lines
Diff to previous 1.106.2.2 (colored) to branchpoint 1.106 (colored) to selected 1.136 (colored)

Sync with HEAD

Revision 1.111 / (download) - annotate - [select for diffs], Tue Jul 17 12:31:16 2018 UTC (5 years, 8 months ago) by christos
Branch: MAIN
CVS Tags: pgoyette-compat-0728
Changes since 1.110: +3 -3 lines
Diff to previous 1.110 (colored) to selected 1.136 (colored)

use unintmax_t instead of u_quad_t.

Revision 1.110 / (download) - annotate - [select for diffs], Tue Jul 17 05:29:07 2018 UTC (5 years, 8 months ago) by martin
Branch: MAIN
Changes since 1.109: +3 -3 lines
Diff to previous 1.109 (colored) to selected 1.136 (colored)

Revert previous and cast to u_quad_t instead (t is for ptrdiff_t and off_t
does not match that on all arm)

Revision 1.109 / (download) - annotate - [select for diffs], Mon Jul 16 23:10:41 2018 UTC (5 years, 8 months ago) by christos
Branch: MAIN
Changes since 1.108: +3 -3 lines
Diff to previous 1.108 (colored) to selected 1.136 (colored)

fix incorrect printf format (off_t needs t)

Revision 1.106.2.2 / (download) - annotate - [select for diffs], Wed May 2 07:20:03 2018 UTC (5 years, 10 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.106.2.1: +4 -4 lines
Diff to previous 1.106.2.1 (colored) to branchpoint 1.106 (colored) to selected 1.136 (colored)

Synch with HEAD

Revision 1.108 / (download) - annotate - [select for diffs], Fri Apr 27 07:53:07 2018 UTC (5 years, 11 months ago) by maxv
Branch: MAIN
CVS Tags: phil-wifi-base, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502
Branch point for: phil-wifi
Changes since 1.107: +4 -4 lines
Diff to previous 1.107 (colored) to selected 1.136 (colored)

M_CLUSTER -> M_EXT_CLUSTER

Revision 1.106.2.1 / (download) - annotate - [select for diffs], Sat Apr 7 04:12:11 2018 UTC (5 years, 11 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.106: +33 -52 lines
Diff to previous 1.106 (colored) to selected 1.136 (colored)

Sync with HEAD.  77 conflicts resolved - all of them $NetBSD$

Revision 1.107 / (download) - annotate - [select for diffs], Sun Apr 1 04:35:03 2018 UTC (5 years, 11 months ago) by ryo
Branch: MAIN
CVS Tags: pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407
Changes since 1.106: +33 -52 lines
Diff to previous 1.106 (colored) to selected 1.136 (colored)

Add initial support for ARMv8 (AARCH64) (by nisimura@ and ryo@)

- sys/arch/evbarm64 is gone and integrated into sys/arch/evbarm. (by skrll@)
- add support fdt. evbarm/conf/GENERIC64 fdt (bcm2837,sunxi,tegra) based generic 64bit kernel config. (by skrll@, jmcneill@)

Revision 1.106 / (download) - annotate - [select for diffs], Sun Mar 4 08:04:59 2018 UTC (6 years ago) by skrll
Branch: MAIN
CVS Tags: pgoyette-compat-base, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315
Branch point for: pgoyette-compat
Changes since 1.105: +13 -8 lines
Diff to previous 1.105 (colored) to selected 1.136 (colored)

Less ifdefs -> more readable.

NFC intended

Revision 1.105 / (download) - annotate - [select for diffs], Sat Mar 3 18:14:27 2018 UTC (6 years ago) by skrll
Branch: MAIN
Changes since 1.104: +5 -7 lines
Diff to previous 1.104 (colored) to selected 1.136 (colored)

Style

Revision 1.104 / (download) - annotate - [select for diffs], Sat Mar 3 18:11:25 2018 UTC (6 years ago) by skrll
Branch: MAIN
Changes since 1.103: +2 -4 lines
Diff to previous 1.103 (colored) to selected 1.136 (colored)

Rely on the cache operations to perform the necessary barriers.

Revision 1.103 / (download) - annotate - [select for diffs], Sat Mar 3 16:16:24 2018 UTC (6 years ago) by skrll
Branch: MAIN
Changes since 1.102: +6 -5 lines
Diff to previous 1.102 (colored) to selected 1.136 (colored)

Wrap some long lines

Revision 1.102 / (download) - annotate - [select for diffs], Sat Mar 3 16:14:06 2018 UTC (6 years ago) by skrll
Branch: MAIN
Changes since 1.101: +2 -11 lines
Diff to previous 1.101 (colored) to selected 1.136 (colored)

Remove unnecessary includes

Revision 1.101 / (download) - annotate - [select for diffs], Fri Dec 29 08:58:57 2017 UTC (6 years, 3 months ago) by skrll
Branch: MAIN
Changes since 1.100: +8 -8 lines
Diff to previous 1.100 (colored) to selected 1.136 (colored)

More KNF

Revision 1.100 / (download) - annotate - [select for diffs], Fri Dec 29 08:56:49 2017 UTC (6 years, 3 months ago) by skrll
Branch: MAIN
Changes since 1.99: +32 -32 lines
Diff to previous 1.99 (colored) to selected 1.136 (colored)

KNF
cvS: ----------------------------------------------------------------------

Revision 1.57.2.4 / (download) - annotate - [select for diffs], Sun Dec 3 11:35:51 2017 UTC (6 years, 3 months ago) by jdolecek
Branch: tls-maxphys
Changes since 1.57.2.3: +96 -27 lines
Diff to previous 1.57.2.3 (colored) next main 1.58 (colored) to selected 1.136 (colored)

update from HEAD

Revision 1.99 / (download) - annotate - [select for diffs], Fri Nov 3 15:31:48 2017 UTC (6 years, 4 months ago) by skrll
Branch: MAIN
CVS Tags: tls-maxphys-base-20171202
Changes since 1.98: +3 -3 lines
Diff to previous 1.98 (colored) to selected 1.136 (colored)

Fix a comment

Revision 1.89.2.5 / (download) - annotate - [select for diffs], Sun Feb 5 13:40:03 2017 UTC (7 years, 1 month ago) by skrll
Branch: nick-nhusb
Changes since 1.89.2.4: +9 -8 lines
Diff to previous 1.89.2.4 (colored) to branchpoint 1.89 (colored) next main 1.90 (colored) to selected 1.136 (colored)

Sync with HEAD

Revision 1.95.2.1 / (download) - annotate - [select for diffs], Sat Jan 7 08:56:10 2017 UTC (7 years, 2 months ago) by pgoyette
Branch: pgoyette-localcount
Changes since 1.95: +16 -11 lines
Diff to previous 1.95 (colored) next main 1.96 (colored) to selected 1.136 (colored)

Sync with HEAD.  (Note that most of these changes are simply $NetBSD$
tag issues.)

Revision 1.98 / (download) - annotate - [select for diffs], Thu Jan 5 09:08:45 2017 UTC (7 years, 2 months ago) by msaitoh
Branch: MAIN
CVS Tags: prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-localcount-20170107, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, nick-nhusb-base-20170204, netbsd-8-base, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, matt-nb8-mediatek-base, matt-nb8-mediatek, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan
Branch point for: netbsd-8
Changes since 1.97: +6 -5 lines
Diff to previous 1.97 (colored) to selected 1.136 (colored)

Update the dmamp argument only when the allocation succeeded.

Revision 1.97 / (download) - annotate - [select for diffs], Fri Dec 23 07:15:27 2016 UTC (7 years, 3 months ago) by cherry
Branch: MAIN
Changes since 1.96: +5 -5 lines
Diff to previous 1.96 (colored) to selected 1.136 (colored)

"Make NetBSD great again!"

Introduce uvm_hotplug(9) to the kernel.

Many thanks, in no particular order to:

TNF, for funding the project.

Chuck Silvers - for multiple API reviews and feedback.
Nick Hudson - for testing on multiple architectures and bugfix patches.
Everyone who helped with boot testing.

KeK (http://www.kek.org.in) for hosting the primary developers.

Revision 1.89.2.4 / (download) - annotate - [select for diffs], Mon Dec 5 10:54:49 2016 UTC (7 years, 3 months ago) by skrll
Branch: nick-nhusb
Changes since 1.89.2.3: +9 -5 lines
Diff to previous 1.89.2.3 (colored) to branchpoint 1.89 (colored) to selected 1.136 (colored)

Sync with HEAD

Revision 1.96 / (download) - annotate - [select for diffs], Sat Nov 5 14:26:23 2016 UTC (7 years, 4 months ago) by skrll
Branch: MAIN
CVS Tags: nick-nhusb-base-20161204
Changes since 1.95: +9 -5 lines
Diff to previous 1.95 (colored) to selected 1.136 (colored)

Also return early from _bus_dmamap_sync if we're not bouncing and there
are no {pre,post} ops

Now the KASSERT doesn't fire on cats

Revision 1.95 / (download) - annotate - [select for diffs], Sat Jun 18 16:51:44 2016 UTC (7 years, 9 months ago) by skrll
Branch: MAIN
CVS Tags: pgoyette-localcount-base, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, nick-nhusb-base-20161004, nick-nhusb-base-20160907, localcount-20160914
Branch point for: pgoyette-localcount
Changes since 1.94: +19 -19 lines
Diff to previous 1.94 (colored) to selected 1.136 (colored)

Trailing whitespace.

Revision 1.89.2.3 / (download) - annotate - [select for diffs], Sun Dec 27 12:09:30 2015 UTC (8 years, 3 months ago) by skrll
Branch: nick-nhusb
Changes since 1.89.2.2: +40 -4 lines
Diff to previous 1.89.2.2 (colored) to branchpoint 1.89 (colored) to selected 1.136 (colored)

Sync with HEAD (as of 26th Dec)

Revision 1.94 / (download) - annotate - [select for diffs], Sun Oct 18 15:34:08 2015 UTC (8 years, 5 months ago) by jmcneill
Branch: MAIN
CVS Tags: nick-nhusb-base-20160529, nick-nhusb-base-20160422, nick-nhusb-base-20160319, nick-nhusb-base-20151226
Changes since 1.93: +40 -4 lines
Diff to previous 1.93 (colored) to selected 1.136 (colored)

implement _bus_dmamap_load_raw, ok skrll@

Revision 1.89.2.2 / (download) - annotate - [select for diffs], Tue Sep 22 12:05:37 2015 UTC (8 years, 6 months ago) by skrll
Branch: nick-nhusb
Changes since 1.89.2.1: +33 -20 lines
Diff to previous 1.89.2.1 (colored) to branchpoint 1.89 (colored) to selected 1.136 (colored)

Sync with HEAD

Revision 1.93 / (download) - annotate - [select for diffs], Mon Aug 24 04:51:18 2015 UTC (8 years, 7 months ago) by matt
Branch: MAIN
CVS Tags: nick-nhusb-base-20150921
Changes since 1.92: +10 -3 lines
Diff to previous 1.92 (colored) to selected 1.136 (colored)

Fix mbuf dmasyncing for extended MMU kernels.

Revision 1.92 / (download) - annotate - [select for diffs], Fri Aug 21 20:52:47 2015 UTC (8 years, 7 months ago) by matt
Branch: MAIN
Changes since 1.91: +9 -3 lines
Diff to previous 1.91 (colored) to selected 1.136 (colored)

Assert we aren't trying to sync a read-only mbuf as PREREAD.

Revision 1.86.2.3 / (download) - annotate - [select for diffs], Wed May 27 05:33:29 2015 UTC (8 years, 10 months ago) by msaitoh
Branch: netbsd-7
CVS Tags: netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0
Changes since 1.86.2.2: +4 -4 lines
Diff to previous 1.86.2.2 (colored) to branchpoint 1.86 (colored) next main 1.87 (colored) to selected 1.136 (colored)

Pull up following revision(s) (requested by skrll in ticket #805):
	sys/arch/arm/include/arm32/pmap.h: revision 1.138
	sys/arch/arm/arm/cpufunc.c: revision 1.151
	sys/arch/arm/arm32/bus_dma.c: revision 1.90
	sys/arch/arm/broadcom/bcm53xx_pax.c: revision 1.14
	sys/arch/arm/arm32/bus_dma.c: revision 1.91
	sys/arch/arm/samsung/exynos_space.c: revision 1.2
	sys/arch/arm/arm32/db_machdep.c: revision 1.23
	sys/arch/arm/allwinner/awin_space.c: revision 1.4
	sys/arch/arm/include/rwlock.h: revision 1.9
	sys/arch/arm/amlogic/amlogic_space.c: revision 1.2
	sys/arch/arm/zynq/zynq_space.c: revision 1.2
	sys/arch/arm/broadcom/bcm2835_space.c: revision 1.7
	sys/arch/arm/arm32/pmap.c: revision 1.317
	sys/arch/arm/include/locore.h: revision 1.19
	sys/arch/arm/include/mutex.h: revision 1.20
	sys/arch/arm/include/lock.h: revision 1.31
	sys/arch/arm/include/lock.h: revision 1.32
	sys/arch/arm/broadcom/bcmgen_space.c: revision 1.5
- Kill redundant semicolons.
- Indentation.
- Improve inline asm around dsb/dmb/isb:
  - always use volatile and mark them as memory barrier
  - use the common version from locore.h in all places not included from
    userland

Revision 1.89.2.1 / (download) - annotate - [select for diffs], Mon Apr 6 15:17:52 2015 UTC (8 years, 11 months ago) by skrll
Branch: nick-nhusb
Changes since 1.89: +4 -4 lines
Diff to previous 1.89 (colored) to selected 1.136 (colored)

Sync with HEAD

Revision 1.91 / (download) - annotate - [select for diffs], Wed Feb 25 13:52:42 2015 UTC (9 years, 1 month ago) by joerg
Branch: MAIN
CVS Tags: nick-nhusb-base-20150606, nick-nhusb-base-20150406
Changes since 1.90: +4 -4 lines
Diff to previous 1.90 (colored) to selected 1.136 (colored)

Improve inline asm around dsb/dmb/isb:
- always use volatile and mark them as memory barrier
- use the common version from locore.h in all places not included from
  userland

Revision 1.90 / (download) - annotate - [select for diffs], Thu Feb 12 10:23:48 2015 UTC (9 years, 1 month ago) by joerg
Branch: MAIN
Changes since 1.89: +4 -4 lines
Diff to previous 1.89 (colored) to selected 1.136 (colored)

Kill redundant semicolons.

Revision 1.86.2.2 / (download) - annotate - [select for diffs], Fri Nov 14 07:29:13 2014 UTC (9 years, 4 months ago) by martin
Branch: netbsd-7
Changes since 1.86.2.1: +15 -2 lines
Diff to previous 1.86.2.1 (colored) to branchpoint 1.86 (colored) to selected 1.136 (colored)

Pull up the following revisions, requested by skrll in ticket #222:
src/sys/arch/arm/arm32/locore.S  1.37
src/sys/arch/arm/arm32/bus_dma.c 1.87

Make the initial svcstack is doubleword aligned if EABI.

With PMAP_NEED_ALLOC_POOLPAGE, before using pmap_map_poolpage make sure
the page comes from the same freelist that pmap_map_poolpage uses.

Revision 1.86.2.1 / (download) - annotate - [select for diffs], Mon Nov 10 19:57:26 2014 UTC (9 years, 4 months ago) by martin
Branch: netbsd-7
Changes since 1.86: +4 -2 lines
Diff to previous 1.86 (colored) to selected 1.136 (colored)

Pull up following revision(s) (requested by skrll in ticket #209):
	sys/arch/arm/pic/pic.c: revision 1.25
	sys/arch/arm/arm/cpufunc_asm_armv7.S: revision 1.21
	sys/arch/arm/arm32/pmap.c: revision 1.312
	sys/arch/arm/arm32/bus_dma.c: revision 1.89
	sys/arch/arm/arm32/pmap.c: revision 1.313
	sys/arch/arm/arm32/pmap.c: revision 1.314
	sys/arch/arm/arm32/pmap.c: revision 1.315
	sys/arch/arm/arm32/pmap.c: revision 1.316
Include opt_multiprocessor.h
When allocing a l1page, if a page isn't available, use uvm_wait to wait
for one to become available.  Should fix PR/49364.
Post a dmb before invalidating the cache in the post-{read,write}
operations to ensure that any/all cachelines brought in via speculation
are really flushed.
Ensure all memory operations are complete by before wfi. For example, the
cpu could have just been in uvm_pageidlezero.
In pmap_fault_fixup re-instate the TLB flush for the shared L1 case that
occurs for non-ARM_MMU_EXTENDED kernels.
This fixes rump/rumpkern/t_sp:stress_killer on rpi which is currently
non-ARM_MMU_EXTENDED
Remove an unnecessary flush that sneaked in as part of break-before-make
change.
Remove an XXXNH comment.
Update PTE_SYNC_CURRENT to add a dsb for armv7 - part of the
break-before-make fix.

Revision 1.89 / (download) - annotate - [select for diffs], Sun Nov 9 09:18:07 2014 UTC (9 years, 4 months ago) by skrll
Branch: MAIN
CVS Tags: nick-nhusb-base
Branch point for: nick-nhusb
Changes since 1.88: +4 -2 lines
Diff to previous 1.88 (colored) to selected 1.136 (colored)

Post a dmb before invalidating the cache in the post-{read,write}
operations to ensure that any/all cachelines brought in via speculation
are really flushed.

Revision 1.88 / (download) - annotate - [select for diffs], Sat Oct 18 08:33:24 2014 UTC (9 years, 5 months ago) by snj
Branch: MAIN
Changes since 1.87: +3 -3 lines
Diff to previous 1.87 (colored) to selected 1.136 (colored)

src is too big these days to tolerate superfluous apostrophes.  It's
"its", people!

Revision 1.87 / (download) - annotate - [select for diffs], Mon Sep 8 22:12:12 2014 UTC (9 years, 6 months ago) by matt
Branch: MAIN
Changes since 1.86: +15 -2 lines
Diff to previous 1.86 (colored) to selected 1.136 (colored)

With PMAP_NEED_ALLOC_POOLPAGE, before using pmap_map_poolpage make sure
the page comes from the same freelist that pmap_map_poolpage uses.

Revision 1.57.2.3 / (download) - annotate - [select for diffs], Wed Aug 20 00:02:45 2014 UTC (9 years, 7 months ago) by tls
Branch: tls-maxphys
Changes since 1.57.2.2: +75 -53 lines
Diff to previous 1.57.2.2 (colored) to selected 1.136 (colored)

Rebase to HEAD as of a few days ago.

Revision 1.84.2.1 / (download) - annotate - [select for diffs], Sun Aug 10 06:53:50 2014 UTC (9 years, 7 months ago) by tls
Branch: tls-earlyentropy
Changes since 1.84: +8 -14 lines
Diff to previous 1.84 (colored) next main 1.85 (colored) to selected 1.136 (colored)

Rebase.

Revision 1.54.2.3 / (download) - annotate - [select for diffs], Thu May 22 11:39:31 2014 UTC (9 years, 10 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.54.2.2: +228 -149 lines
Diff to previous 1.54.2.2 (colored) to branchpoint 1.54 (colored) next main 1.55 (colored) to selected 1.136 (colored)

sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")

Revision 1.80.2.1 / (download) - annotate - [select for diffs], Sun May 18 17:44:56 2014 UTC (9 years, 10 months ago) by rmind
Branch: rmind-smpnet
Changes since 1.80: +75 -53 lines
Diff to previous 1.80 (colored) next main 1.81 (colored) to selected 1.136 (colored)

sync with head

Revision 1.86 / (download) - annotate - [select for diffs], Thu Apr 10 02:44:05 2014 UTC (9 years, 11 months ago) by matt
Branch: MAIN
CVS Tags: yamt-pagecache-base9, tls-maxphys-base, tls-earlyentropy-base, rmind-smpnet-nbase, rmind-smpnet-base, netbsd-7-base
Branch point for: netbsd-7
Changes since 1.85: +8 -5 lines
Diff to previous 1.85 (colored) to selected 1.136 (colored)

Deal with non-4KB pages properly.

Revision 1.85 / (download) - annotate - [select for diffs], Sun Apr 6 09:53:59 2014 UTC (9 years, 11 months ago) by skrll
Branch: MAIN
Changes since 1.84: +2 -11 lines
Diff to previous 1.84 (colored) to selected 1.136 (colored)

Remove a comment that became largely redundant with the PMAP_NOCACHE
change.

Revision 1.84 / (download) - annotate - [select for diffs], Wed Apr 2 12:28:54 2014 UTC (9 years, 11 months ago) by matt
Branch: MAIN
Branch point for: tls-earlyentropy
Changes since 1.83: +21 -5 lines
Diff to previous 1.83 (colored) to selected 1.136 (colored)

Deal with bus_dmamem_unmap of direct mapped KVA.

Revision 1.83 / (download) - annotate - [select for diffs], Mon Mar 24 20:06:31 2014 UTC (10 years ago) by christos
Branch: MAIN
CVS Tags: riastradh-xf86-video-intel-2-7-1-pre-2-21-15
Changes since 1.82: +3 -3 lines
Diff to previous 1.82 (colored) to selected 1.136 (colored)

use cpu_{g,s}etmodel

Revision 1.82 / (download) - annotate - [select for diffs], Wed Feb 26 07:57:09 2014 UTC (10 years, 1 month ago) by skrll
Branch: MAIN
CVS Tags: riastradh-drm2-base3
Changes since 1.81: +4 -4 lines
Diff to previous 1.81 (colored) to selected 1.136 (colored)

Fix off by one in _bus_dma_{paddr_inrange,_to_paddr} when checking the
dma range.

Revision 1.81 / (download) - annotate - [select for diffs], Wed Feb 26 01:05:52 2014 UTC (10 years, 1 month ago) by matt
Branch: MAIN
Changes since 1.80: +47 -35 lines
Diff to previous 1.80 (colored) to selected 1.136 (colored)

Use kmem instead of malloc.
Fix various corner cases with bounce buffers.
Use PMAP_NOCACHE instead of manipulating PTEs directly.

Revision 1.52.16.1 / (download) - annotate - [select for diffs], Sat Feb 15 16:18:36 2014 UTC (10 years, 1 month ago) by matt
Branch: matt-nb5-mips64
Changes since 1.52: +915 -219 lines
Diff to previous 1.52 (colored) next main 1.53 (colored) to selected 1.136 (colored)

Merge armv7 support from HEAD, specifically support for the BCM5301X
and BCM56340 evbarm kernels.

Revision 1.57.2.2 / (download) - annotate - [select for diffs], Mon Feb 25 00:28:23 2013 UTC (11 years, 1 month ago) by tls
Branch: tls-maxphys
Changes since 1.57.2.1: +184 -106 lines
Diff to previous 1.57.2.1 (colored) to selected 1.136 (colored)

resync with head

Revision 1.80 / (download) - annotate - [select for diffs], Mon Feb 18 16:03:25 2013 UTC (11 years, 1 month ago) by matt
Branch: MAIN
CVS Tags: riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, khorben-n900, agc-symver-base, agc-symver
Branch point for: rmind-smpnet
Changes since 1.79: +4 -2 lines
Diff to previous 1.79 (colored) to selected 1.136 (colored)

Disable when using extended MMU support.

Revision 1.79 / (download) - annotate - [select for diffs], Sat Feb 16 06:49:43 2013 UTC (11 years, 1 month ago) by matt
Branch: MAIN
Changes since 1.78: +22 -36 lines
Diff to previous 1.78 (colored) to selected 1.136 (colored)

Use KASSERT* in preference to #ifdef DIAGNOSTIC / panic

Revision 1.78 / (download) - annotate - [select for diffs], Fri Feb 15 01:03:43 2013 UTC (11 years, 1 month ago) by matt
Branch: MAIN
Changes since 1.77: +3 -3 lines
Diff to previous 1.77 (colored) to selected 1.136 (colored)

Actually use the calculated uboundary.

Revision 1.54.10.6 / (download) - annotate - [select for diffs], Fri Feb 15 01:02:59 2013 UTC (11 years, 1 month ago) by matt
Branch: matt-nb6-plus
Changes since 1.54.10.5: +3 -3 lines
Diff to previous 1.54.10.5 (colored) to branchpoint 1.54 (colored) next main 1.55 (colored) to selected 1.136 (colored)

Actually use the calculated uboundary

Revision 1.54.10.5 / (download) - annotate - [select for diffs], Thu Feb 14 08:24:58 2013 UTC (11 years, 1 month ago) by matt
Branch: matt-nb6-plus
Changes since 1.54.10.4: +5 -3 lines
Diff to previous 1.54.10.4 (colored) to branchpoint 1.54 (colored) to selected 1.136 (colored)

Sync with HEAD.

Revision 1.77 / (download) - annotate - [select for diffs], Thu Feb 14 08:24:39 2013 UTC (11 years, 1 month ago) by matt
Branch: MAIN
Changes since 1.76: +5 -3 lines
Diff to previous 1.76 (colored) to selected 1.136 (colored)

Make sync counters only count when caches ops are performed.

Revision 1.54.10.4 / (download) - annotate - [select for diffs], Thu Feb 14 08:08:18 2013 UTC (11 years, 1 month ago) by matt
Branch: matt-nb6-plus
Changes since 1.54.10.3: +79 -24 lines
Diff to previous 1.54.10.3 (colored) to branchpoint 1.54 (colored) to selected 1.136 (colored)

Sync with HEAD

Revision 1.76 / (download) - annotate - [select for diffs], Thu Feb 14 08:07:35 2013 UTC (11 years, 1 month ago) by matt
Branch: MAIN
Changes since 1.75: +79 -24 lines
Diff to previous 1.75 (colored) to selected 1.136 (colored)

Rework counters.
Get rid of a badly done goto.
Properly deal with boundary in bus_dmamem_alloc_range.

Revision 1.54.10.3 / (download) - annotate - [select for diffs], Thu Feb 14 01:12:53 2013 UTC (11 years, 1 month ago) by matt
Branch: matt-nb6-plus
Changes since 1.54.10.2: +58 -46 lines
Diff to previous 1.54.10.2 (colored) to branchpoint 1.54 (colored) to selected 1.136 (colored)

sync with HEAD

Revision 1.75 / (download) - annotate - [select for diffs], Thu Feb 14 01:12:39 2013 UTC (11 years, 1 month ago) by matt
Branch: MAIN
Changes since 1.74: +5 -5 lines
Diff to previous 1.74 (colored) to selected 1.136 (colored)

fix writebuf draining fix.

Revision 1.74 / (download) - annotate - [select for diffs], Wed Feb 13 23:08:45 2013 UTC (11 years, 1 month ago) by matt
Branch: MAIN
Changes since 1.73: +16 -8 lines
Diff to previous 1.73 (colored) to selected 1.136 (colored)

bounce buffer fixes + convert some kassert -> kassertmsg

Revision 1.73 / (download) - annotate - [select for diffs], Mon Feb 4 13:26:19 2013 UTC (11 years, 1 month ago) by macallan
Branch: MAIN
Changes since 1.72: +9 -3 lines
Diff to previous 1.72 (colored) to selected 1.136 (colored)

support BUS_DMA_PREFETCHABLE in bus_dmamem_mmap()

Revision 1.72 / (download) - annotate - [select for diffs], Mon Jan 28 08:03:13 2013 UTC (11 years, 2 months ago) by skrll
Branch: MAIN
Changes since 1.71: +8 -7 lines
Diff to previous 1.71 (colored) to selected 1.136 (colored)

Move and tweak an #if 0 printf

Revision 1.71 / (download) - annotate - [select for diffs], Sun Jan 27 19:00:08 2013 UTC (11 years, 2 months ago) by matt
Branch: MAIN
Changes since 1.70: +9 -18 lines
Diff to previous 1.70 (colored) to selected 1.136 (colored)

Get rid of _BUS_DMAMAP_MEM_XLATE

Revision 1.70 / (download) - annotate - [select for diffs], Sun Jan 27 18:31:31 2013 UTC (11 years, 2 months ago) by matt
Branch: MAIN
Changes since 1.69: +4 -3 lines
Diff to previous 1.69 (colored) to selected 1.136 (colored)

Add a _BUS_DMAMAP_NOALLOC which tells bus_dmamem_alloc to skip that
dmarange when allocating memory.
Add a second dmarange to bcm23xx obio to allow it to map coherently mapped
memory.

Revision 1.69 / (download) - annotate - [select for diffs], Sun Jan 27 17:48:38 2013 UTC (11 years, 2 months ago) by matt
Branch: MAIN
Changes since 1.68: +4 -4 lines
Diff to previous 1.68 (colored) to selected 1.136 (colored)

Make _BUS_DMAMAP_MEM_XLATE supplied by the caller.

Revision 1.68 / (download) - annotate - [select for diffs], Sun Jan 27 17:38:55 2013 UTC (11 years, 2 months ago) by matt
Branch: MAIN
Changes since 1.67: +40 -35 lines
Diff to previous 1.67 (colored) to selected 1.136 (colored)

Add a flag to make bus_dmamem_map use the bus/sys transation table when
mapping bus addresses.  Make bcm2835 obio use it.

Revision 1.54.2.2 / (download) - annotate - [select for diffs], Wed Jan 23 00:05:40 2013 UTC (11 years, 2 months ago) by yamt
Branch: yamt-pagecache
CVS Tags: yamt-pagecache-tag8
Changes since 1.54.2.1: +26 -5 lines
Diff to previous 1.54.2.1 (colored) to branchpoint 1.54 (colored) to selected 1.136 (colored)

sync with head

Revision 1.54.10.2 / (download) - annotate - [select for diffs], Wed Jan 16 22:44:18 2013 UTC (11 years, 2 months ago) by matt
Branch: matt-nb6-plus
Changes since 1.54.10.1: +26 -5 lines
Diff to previous 1.54.10.1 (colored) to branchpoint 1.54 (colored) to selected 1.136 (colored)

Pullup from HEAD:
On Cortex, speculative loads can cache lines to be populated after then they've
been invalidated for a DMA read.  So after the DMA read we have to reinvalidate
them again.  We have to both invalidates since the former prevents dirty lines
overwriting just DMAed data.

Revision 1.67 / (download) - annotate - [select for diffs], Wed Jan 16 22:32:45 2013 UTC (11 years, 2 months ago) by matt
Branch: MAIN
CVS Tags: yamt-pagecache-base8
Changes since 1.66: +26 -5 lines
Diff to previous 1.66 (colored) to selected 1.136 (colored)

On Cortex, speculative loads can cache lines to be populated after then they've
been invalidated for a DMA read.  So after the DMA read we have to reinvalidate
them again.  We have to both invalidates since the former prevents dirty lines
overwriting just DMAed data.

Revision 1.54.10.1 / (download) - annotate - [select for diffs], Wed Nov 28 22:40:17 2012 UTC (11 years, 4 months ago) by matt
Branch: matt-nb6-plus
Changes since 1.54: +796 -178 lines
Diff to previous 1.54 (colored) to selected 1.136 (colored)

Merge improved arm support (especially Cortex) from HEAD
including OMAP and BCM53xx support.

Revision 1.57.2.1 / (download) - annotate - [select for diffs], Tue Nov 20 03:01:02 2012 UTC (11 years, 4 months ago) by tls
Branch: tls-maxphys
Changes since 1.57: +689 -108 lines
Diff to previous 1.57 (colored) to selected 1.136 (colored)

Resync to 2012-11-19 00:00:00 UTC

Revision 1.54.2.1 / (download) - annotate - [select for diffs], Tue Oct 30 17:18:56 2012 UTC (11 years, 5 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.54: +796 -178 lines
Diff to previous 1.54 (colored) to selected 1.136 (colored)

sync with head

Revision 1.66 / (download) - annotate - [select for diffs], Tue Oct 23 12:23:20 2012 UTC (11 years, 5 months ago) by skrll
Branch: MAIN
CVS Tags: yamt-pagecache-base7, yamt-pagecache-base6
Changes since 1.65: +5 -5 lines
Diff to previous 1.65 (colored) to selected 1.136 (colored)

Correct inverted boolean logic for the coherent flag introduced in r1.61

Fixes slow nfs seen by msaitoh@

Revision 1.65 / (download) - annotate - [select for diffs], Mon Oct 22 15:01:18 2012 UTC (11 years, 5 months ago) by matt
Branch: MAIN
Changes since 1.64: +34 -15 lines
Diff to previous 1.64 (colored) to selected 1.136 (colored)

Only call cpu_{,s}dcache_inv_range if len > 0

Revision 1.64 / (download) - annotate - [select for diffs], Sun Oct 21 10:22:40 2012 UTC (11 years, 5 months ago) by matt
Branch: MAIN
Changes since 1.63: +9 -3 lines
Diff to previous 1.63 (colored) to selected 1.136 (colored)

Use right flag name for bus_dmamem_map (fixes usb on BCM53xx).

Revision 1.63 / (download) - annotate - [select for diffs], Fri Oct 19 13:46:07 2012 UTC (11 years, 5 months ago) by matt
Branch: MAIN
Changes since 1.62: +13 -13 lines
Diff to previous 1.62 (colored) to selected 1.136 (colored)

Make IS_BOUNCING a map flag and use it to simplify code and to avoid calling
the sync routines if (COHERENT|IS_BOUNCING) == COHERENT.  (this eeks out a
little bit more performance).

Revision 1.62 / (download) - annotate - [select for diffs], Fri Oct 19 11:57:58 2012 UTC (11 years, 5 months ago) by matt
Branch: MAIN
Changes since 1.61: +55 -3 lines
Diff to previous 1.61 (colored) to selected 1.136 (colored)

Make bus_dmamem_map aware of coherent dma regions.  Also, take advantage
of the use/existance of PMAP_MAP_POOLPAGE to avoid redundant mappings.

Revision 1.61 / (download) - annotate - [select for diffs], Wed Oct 17 20:17:18 2012 UTC (11 years, 5 months ago) by matt
Branch: MAIN
Changes since 1.60: +45 -34 lines
Diff to previous 1.60 (colored) to selected 1.136 (colored)

Add per-segment and per-ragne flag (to store _BUS_DMAMAP_COHERENT).
Use the per-range flag to set the per-segment flag.
This allows bus_dma to skip flushing for known coherent memory regions.

Revision 1.60 / (download) - annotate - [select for diffs], Sat Oct 6 02:58:39 2012 UTC (11 years, 5 months ago) by matt
Branch: MAIN
Changes since 1.59: +4 -4 lines
Diff to previous 1.59 (colored) to selected 1.136 (colored)

Fix a cut&paste error with supersections.

Revision 1.59 / (download) - annotate - [select for diffs], Sat Sep 22 01:48:50 2012 UTC (11 years, 6 months ago) by matt
Branch: MAIN
Changes since 1.58: +43 -20 lines
Diff to previous 1.58 (colored) to selected 1.136 (colored)

Add busaddr to paddr routine and use it.
cleanup the PREREAD sync case.

Revision 1.58 / (download) - annotate - [select for diffs], Tue Sep 18 05:47:26 2012 UTC (11 years, 6 months ago) by matt
Branch: MAIN
Changes since 1.57: +518 -48 lines
Diff to previous 1.57 (colored) to selected 1.136 (colored)

Add bounce buffer support for ARM bus_dma(9).  Add macros to help initialize
bus_dma_tag structures.

Revision 1.57 / (download) - annotate - [select for diffs], Tue Sep 11 17:54:12 2012 UTC (11 years, 6 months ago) by matt
Branch: MAIN
Branch point for: tls-maxphys
Changes since 1.56: +123 -92 lines
Diff to previous 1.56 (colored) to selected 1.136 (colored)

Rework dmasync routines so that secondary caches can be flushed as well
as the primary caches.

Revision 1.56 / (download) - annotate - [select for diffs], Sun Sep 2 14:46:38 2012 UTC (11 years, 6 months ago) by matt
Branch: MAIN
Changes since 1.55: +3 -3 lines
Diff to previous 1.55 (colored) to selected 1.136 (colored)

Supersections are on armv6 too.

Revision 1.55 / (download) - annotate - [select for diffs], Sun Sep 2 14:43:21 2012 UTC (11 years, 6 months ago) by matt
Branch: MAIN
Changes since 1.54: +13 -7 lines
Diff to previous 1.54 (colored) to selected 1.136 (colored)

Make bus_dma understand supersections.

Revision 1.54 / (download) - annotate - [select for diffs], Fri Jul 1 20:57:45 2011 UTC (12 years, 9 months ago) by dyoung
Branch: MAIN
CVS Tags: yamt-pagecache-base5, yamt-pagecache-base4, yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, netbsd-6, matt-nb6-plus-nbase, matt-nb6-plus-base, jmcneill-usbmp-pre-base2, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base2, jmcneill-usbmp-base10, jmcneill-usbmp-base, jmcneill-usbmp, jmcneill-audiomp3-base, jmcneill-audiomp3
Branch point for: yamt-pagecache, matt-nb6-plus
Changes since 1.53: +3 -3 lines
Diff to previous 1.53 (colored) to selected 1.136 (colored)

#include <sys/bus.h> instead of <machine/bus.h>.

Revision 1.52.20.1 / (download) - annotate - [select for diffs], Sat Mar 5 20:49:29 2011 UTC (13 years ago) by rmind
Branch: rmind-uvmplock
Changes since 1.52: +3 -3 lines
Diff to previous 1.52 (colored) next main 1.53 (colored) to selected 1.136 (colored)

sync with head

Revision 1.53 / (download) - annotate - [select for diffs], Sat Nov 6 11:46:00 2010 UTC (13 years, 4 months ago) by uebayasi
Branch: MAIN
CVS Tags: uebayasi-xip-base7, uebayasi-xip-base6, uebayasi-xip-base5, rmind-uvmplock-nbase, rmind-uvmplock-base, matt-mips64-premerge-20101231, jym-xensuspend-nbase, jym-xensuspend-base, jruoho-x86intr-base, jruoho-x86intr, cherry-xenmp-base, cherry-xenmp, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Changes since 1.52: +3 -3 lines
Diff to previous 1.52 (colored) to selected 1.136 (colored)

Machine dependent code is considered as part of UVM.  Include
internal API header.

Revision 1.52.18.1 / (download) - annotate - [select for diffs], Thu Jul 8 07:45:59 2010 UTC (13 years, 8 months ago) by uebayasi
Branch: uebayasi-xip
Changes since 1.52: +3 -3 lines
Diff to previous 1.52 (colored) next main 1.53 (colored) to selected 1.136 (colored)

Fix build.

Revision 1.50.46.2 / (download) - annotate - [select for diffs], Mon May 4 08:10:38 2009 UTC (14 years, 10 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.50.46.1: +5 -5 lines
Diff to previous 1.50.46.1 (colored) to branchpoint 1.50 (colored) next main 1.51 (colored) to selected 1.136 (colored)

sync with head.

Revision 1.51.2.1 / (download) - annotate - [select for diffs], Mon Jun 23 04:30:09 2008 UTC (15 years, 9 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.51: +5 -5 lines
Diff to previous 1.51 (colored) next main 1.52 (colored) to selected 1.136 (colored)

Sync w/ -current. 34 merge conflicts to follow.

Revision 1.50.44.2 / (download) - annotate - [select for diffs], Tue Jun 17 09:13:55 2008 UTC (15 years, 9 months ago) by yamt
Branch: yamt-pf42
Changes since 1.50.44.1: +5 -5 lines
Diff to previous 1.50.44.1 (colored) to branchpoint 1.50 (colored) next main 1.51 (colored) to selected 1.136 (colored)

sync with head.

Revision 1.50.42.2 / (download) - annotate - [select for diffs], Thu Jun 5 19:14:32 2008 UTC (15 years, 9 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.50.42.1: +3 -3 lines
Diff to previous 1.50.42.1 (colored) to branchpoint 1.50 (colored) next main 1.51 (colored) to selected 1.136 (colored)

Sync with HEAD.

Also fix build.

Revision 1.52 / (download) - annotate - [select for diffs], Wed Jun 4 12:41:40 2008 UTC (15 years, 9 months ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-base4, yamt-nfs-mp-base9, yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, yamt-nfs-mp-base11, yamt-nfs-mp-base10, wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2, uebayasi-xip-base1, uebayasi-xip-base, simonb-wapbl-nbase, simonb-wapbl-base, simonb-wapbl, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base2, nick-hppapmap-base, nick-hppapmap, netbsd-5-base, netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, netbsd-5, mjf-devfs2-base, matt-premerge-20091211, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, jymxensuspend-base, jym-xensuspend, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, haad-dm, ad-audiomp2-base, ad-audiomp2
Branch point for: uebayasi-xip, rmind-uvmplock, matt-nb5-mips64
Changes since 1.51: +5 -5 lines
Diff to previous 1.51 (colored) to selected 1.136 (colored)

vm_page: put TAILQ_ENTRY into a union with LIST_ENTRY, so we can use both.

Revision 1.50.42.1 / (download) - annotate - [select for diffs], Mon Jun 2 13:21:52 2008 UTC (15 years, 9 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.50: +2 -9 lines
Diff to previous 1.50 (colored) to selected 1.136 (colored)

Sync with HEAD.

Revision 1.50.44.1 / (download) - annotate - [select for diffs], Sun May 18 12:31:33 2008 UTC (15 years, 10 months ago) by yamt
Branch: yamt-pf42
Changes since 1.50: +2 -9 lines
Diff to previous 1.50 (colored) to selected 1.136 (colored)

sync with head.

Revision 1.50.46.1 / (download) - annotate - [select for diffs], Fri May 16 02:21:55 2008 UTC (15 years, 10 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.50: +2 -9 lines
Diff to previous 1.50 (colored) to selected 1.136 (colored)

sync with head.

Revision 1.51 / (download) - annotate - [select for diffs], Mon Apr 28 20:23:13 2008 UTC (15 years, 11 months ago) by martin
Branch: MAIN
CVS Tags: yamt-pf42-base3, yamt-pf42-base2, yamt-nfs-mp-base2, hpcarm-cleanup-nbase
Branch point for: wrstuden-revivesa
Changes since 1.50: +2 -9 lines
Diff to previous 1.50 (colored) to selected 1.136 (colored)

Remove clause 3 and 4 from TNF licenses

Revision 1.44.2.2 / (download) - annotate - [select for diffs], Mon Sep 3 14:23:14 2007 UTC (16 years, 6 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.44.2.1: +7 -7 lines
Diff to previous 1.44.2.1 (colored) to branchpoint 1.44 (colored) next main 1.45 (colored) to selected 1.136 (colored)

sync with head.

Revision 1.49.14.1 / (download) - annotate - [select for diffs], Mon Mar 12 05:47:01 2007 UTC (17 years ago) by rmind
Branch: yamt-idlelwp
Changes since 1.49: +7 -7 lines
Diff to previous 1.49 (colored) next main 1.50 (colored) to selected 1.136 (colored)

Sync with HEAD.

Revision 1.50 / (download) - annotate - [select for diffs], Sun Mar 4 05:59:36 2007 UTC (17 years ago) by christos
Branch: MAIN
CVS Tags: yamt-x86pmap-base4, yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-x86pmap-base, yamt-x86pmap, yamt-pf42-baseX, yamt-pf42-base, yamt-nfs-mp-base, yamt-lazymbuf-base15, yamt-lazymbuf-base14, yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, yamt-idlelwp-base8, vmlocking2-base3, vmlocking2-base2, vmlocking2-base1, vmlocking2, vmlocking-nbase, vmlocking-base, vmlocking, thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, reinoud-bufcleanup, ppcoea-renovation-base, ppcoea-renovation, nick-net80211-sync-base, nick-net80211-sync, nick-csl-alignment-base5, nick-csl-alignment-base, nick-csl-alignment, mjf-ufs-trans-base, mjf-ufs-trans, mjf-devfs-base, mjf-devfs, matt-mips64-base, matt-mips64, matt-armv6-prevmlocking, matt-armv6-nbase, matt-armv6-base, matt-armv6, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, jmcneill-pm-base, jmcneill-pm, jmcneill-base, hpcarm-cleanup-base, hpcarm-cleanup, cube-autoconf-base, cube-autoconf, chris-arm-intr-rework-base7, chris-arm-intr-rework-base6, chris-arm-intr-rework-base5, chris-arm-intr-rework-base4, chris-arm-intr-rework-base3, chris-arm-intr-rework-base2, chris-arm-intr-rework-base, chris-arm-intr-rework, bouyer-xeni386-nbase, bouyer-xeni386-merge1, bouyer-xeni386-base, bouyer-xeni386, bouyer-xenamd64-base2, bouyer-xenamd64-base, bouyer-xenamd64, ad-socklock-base1
Branch point for: yamt-pf42, yamt-nfs-mp, mjf-devfs2
Changes since 1.49: +7 -7 lines
Diff to previous 1.49 (colored) to selected 1.136 (colored)

Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.

Revision 1.47.4.1 / (download) - annotate - [select for diffs], Sat Sep 9 02:37:53 2006 UTC (17 years, 6 months ago) by rpaulo
Branch: rpaulo-netinet-merge-pcb
Changes since 1.47: +24 -30 lines
Diff to previous 1.47 (colored) next main 1.48 (colored) to selected 1.136 (colored)

sync with head

Revision 1.44.2.1 / (download) - annotate - [select for diffs], Wed Jun 21 14:49:16 2006 UTC (17 years, 9 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.44: +31 -35 lines
Diff to previous 1.44 (colored) to selected 1.136 (colored)

sync with head.

Revision 1.48.6.1 / (download) - annotate - [select for diffs], Wed May 24 15:47:51 2006 UTC (17 years, 10 months ago) by tron
Branch: peter-altq
Changes since 1.48: +3 -4 lines
Diff to previous 1.48 (colored) next main 1.49 (colored) to selected 1.136 (colored)

Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.

Revision 1.47.6.1 / (download) - annotate - [select for diffs], Sat Apr 22 11:37:17 2006 UTC (17 years, 11 months ago) by simonb
Branch: simonb-timecounters
CVS Tags: simonb-timcounters-final
Changes since 1.47: +24 -30 lines
Diff to previous 1.47 (colored) next main 1.48 (colored) to selected 1.136 (colored)

Sync with head.

Revision 1.48.4.1 / (download) - annotate - [select for diffs], Wed Apr 19 02:32:07 2006 UTC (17 years, 11 months ago) by elad
Branch: elad-kernelauth
Changes since 1.48: +3 -4 lines
Diff to previous 1.48 (colored) next main 1.49 (colored) to selected 1.136 (colored)

sync with head - hopefully this will work

Revision 1.48.2.1 / (download) - annotate - [select for diffs], Tue Apr 11 11:53:25 2006 UTC (17 years, 11 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.48: +3 -4 lines
Diff to previous 1.48 (colored) next main 1.49 (colored) to selected 1.136 (colored)

sync with head

Revision 1.49 / (download) - annotate - [select for diffs], Mon Apr 10 03:07:40 2006 UTC (17 years, 11 months ago) by simonb
Branch: MAIN
CVS Tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, yamt-splraiseipl-base2, yamt-splraiseipl-base, yamt-splraiseipl, yamt-pdpolicy-base9, yamt-pdpolicy-base8, yamt-pdpolicy-base7, yamt-pdpolicy-base6, yamt-pdpolicy-base5, yamt-pdpolicy-base4, wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, simonb-timecounters-base, rpaulo-netinet-merge-pcb-base, post-newlock2-merge, newlock2-nbase, newlock2-base, newlock2, netbsd-4-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, netbsd-4, matt-nb4-arm-base, matt-nb4-arm, gdamore-uart-base, gdamore-uart, elad-kernelauth-base, chap-midi-nbase, chap-midi-base, chap-midi, ad-audiomp-base, ad-audiomp, abandoned-netbsd-4-base, abandoned-netbsd-4
Branch point for: yamt-idlelwp
Changes since 1.48: +3 -4 lines
Diff to previous 1.48 (colored) to selected 1.136 (colored)

Unwrap a not-too-long-line.

Revision 1.48 / (download) - annotate - [select for diffs], Wed Mar 1 12:38:10 2006 UTC (18 years, 1 month ago) by yamt
Branch: MAIN
CVS Tags: yamt-pdpolicy-base3, yamt-pdpolicy-base2, yamt-pdpolicy-base, peter-altq-base
Branch point for: yamt-pdpolicy, peter-altq, elad-kernelauth
Changes since 1.47: +23 -28 lines
Diff to previous 1.47 (colored) to selected 1.136 (colored)

merge yamt-uio_vmspace branch.

- use vmspace rather than proc or lwp where appropriate.
  the latter is more natural to specify an address space.
  (and less likely to be abused for random purposes.)
- fix a swdmover race.

Revision 1.47.2.2 / (download) - annotate - [select for diffs], Sat Feb 18 13:52:58 2006 UTC (18 years, 1 month ago) by yamt
Branch: yamt-uio_vmspace
Changes since 1.47.2.1: +8 -8 lines
Diff to previous 1.47.2.1 (colored) to branchpoint 1.47 (colored) next main 1.48 (colored) to selected 1.136 (colored)

keep vmspace rather than proc in bus_dmamap_t.

Revision 1.47.2.1 / (download) - annotate - [select for diffs], Sat Feb 18 11:12:18 2006 UTC (18 years, 1 month ago) by yamt
Branch: yamt-uio_vmspace
Changes since 1.47: +15 -20 lines
Diff to previous 1.47 (colored) to selected 1.136 (colored)

adapt bus_dma implementations.

Revision 1.47 / (download) - annotate - [select for diffs], Sat Dec 24 20:06:47 2005 UTC (18 years, 3 months ago) by perry
Branch: MAIN
CVS Tags: yamt-uio_vmspace-base5
Branch point for: yamt-uio_vmspace, simonb-timecounters, rpaulo-netinet-merge-pcb
Changes since 1.46: +6 -6 lines
Diff to previous 1.46 (colored) to selected 1.136 (colored)

Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.

Revision 1.46 / (download) - annotate - [select for diffs], Sun Dec 11 12:16:41 2005 UTC (18 years, 3 months ago) by christos
Branch: MAIN
Changes since 1.45: +3 -3 lines
Diff to previous 1.45 (colored) to selected 1.136 (colored)

merge ktrace-lwp.

Revision 1.32.2.10 / (download) - annotate - [select for diffs], Sun Dec 11 10:28:14 2005 UTC (18 years, 3 months ago) by christos
Branch: ktrace-lwp
Changes since 1.32.2.9: +5 -3 lines
Diff to previous 1.32.2.9 (colored) next main 1.33 (colored) to selected 1.136 (colored)

Sync with head.

Revision 1.44.8.1 / (download) - annotate - [select for diffs], Tue Nov 29 21:22:56 2005 UTC (18 years, 4 months ago) by yamt
Branch: yamt-readahead
Changes since 1.44: +5 -3 lines
Diff to previous 1.44 (colored) next main 1.45 (colored) to selected 1.136 (colored)

sync with head.

Revision 1.45 / (download) - annotate - [select for diffs], Thu Nov 24 13:08:32 2005 UTC (18 years, 4 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-readahead-base3, ktrace-lwp-base
Changes since 1.44: +5 -3 lines
Diff to previous 1.44 (colored) to selected 1.136 (colored)

bus_dmamem_map: honour BUS_DMA_NOWAIT.  noted by Manuel Bouyer.
bus_space_map: always do NOWAIT allocation as it used to be before yamt-km.

we have too many copies!

Revision 1.42.2.1 / (download) - annotate - [select for diffs], Fri Apr 29 11:28:02 2005 UTC (18 years, 11 months ago) by kent
Branch: kent-audio2
Changes since 1.42: +13 -6 lines
Diff to previous 1.42 (colored) next main 1.43 (colored) to selected 1.136 (colored)

sync with -current

Revision 1.32.2.9 / (download) - annotate - [select for diffs], Fri Apr 1 14:26:50 2005 UTC (19 years ago) by skrll
Branch: ktrace-lwp
Changes since 1.32.2.8: +13 -6 lines
Diff to previous 1.32.2.8 (colored) to selected 1.136 (colored)

Sync with HEAD.

Revision 1.44 / (download) - annotate - [select for diffs], Fri Apr 1 11:59:23 2005 UTC (19 years ago) by yamt
Branch: MAIN
CVS Tags: yamt-vop-base3, yamt-vop-base2, yamt-vop-base, yamt-vop, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base2, yamt-readahead-base, thorpej-vnode-attr-base, thorpej-vnode-attr, kent-audio2-base
Branch point for: yamt-readahead, yamt-lazymbuf
Changes since 1.43: +6 -4 lines
Diff to previous 1.43 (colored) to selected 1.136 (colored)

merge yamt-km branch.
- don't use managed mappings/backing objects for wired memory allocations.
  save some resources like pv_entry.  also fix (most of) PR/27030.
- simplify kernel memory management API.
- simplify pmap bootstrap of some ports.
- some related cleanups.

Revision 1.42.4.2 / (download) - annotate - [select for diffs], Sat Mar 19 08:32:51 2005 UTC (19 years ago) by yamt
Branch: yamt-km
Changes since 1.42.4.1: +9 -4 lines
Diff to previous 1.42.4.1 (colored) to branchpoint 1.42 (colored) next main 1.43 (colored) to selected 1.136 (colored)

sync with head.  xen and whitespace.  xen part is not finished.

Revision 1.43 / (download) - annotate - [select for diffs], Wed Mar 9 19:04:43 2005 UTC (19 years ago) by matt
Branch: MAIN
CVS Tags: yamt-km-base4, yamt-km-base3, netbsd-3-base, netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0, netbsd-3
Changes since 1.42: +9 -4 lines
Diff to previous 1.42 (colored) to selected 1.136 (colored)

Add a dm_maxsegsz public member to bus_dmamap_t.  This allows a user of the API
to select the maximum segment size for each bus_dmamap_load (up to the maxsegsz
supplied to bus_dmamap_create).  dm_maxsegsz is reset to the value supplied to
bus_dmamap_create when the dmamap is unloaded.

Revision 1.32.2.8 / (download) - annotate - [select for diffs], Sat Feb 19 13:18:14 2005 UTC (19 years, 1 month ago) by skrll
Branch: ktrace-lwp
Changes since 1.32.2.7: +3 -3 lines
Diff to previous 1.32.2.7 (colored) to selected 1.136 (colored)

Don't deref a NULL struct lwp *. This shouldn't happen, but...

Revision 1.42.4.1 / (download) - annotate - [select for diffs], Fri Jan 28 10:33:58 2005 UTC (19 years, 2 months ago) by yamt
Branch: yamt-km
Changes since 1.42: +6 -4 lines
Diff to previous 1.42 (colored) to selected 1.136 (colored)

convert arch/arm to new apis.

Revision 1.32.2.7 / (download) - annotate - [select for diffs], Mon Jan 17 19:29:12 2005 UTC (19 years, 2 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.32.2.6: +5 -5 lines
Diff to previous 1.32.2.6 (colored) to selected 1.136 (colored)

Sync with HEAD.

Revision 1.42 / (download) - annotate - [select for diffs], Sun Jan 2 22:47:26 2005 UTC (19 years, 2 months ago) by chris
Branch: MAIN
CVS Tags: yamt-km-base2, yamt-km-base, kent-audio1-beforemerge
Branch point for: yamt-km, kent-audio2
Changes since 1.41: +5 -5 lines
Diff to previous 1.41 (colored) to selected 1.136 (colored)

Remove direct references to TAILQ internal structures.

No functional change, just tidying up code.

Revision 1.32.2.6 / (download) - annotate - [select for diffs], Sat Dec 18 09:31:01 2004 UTC (19 years, 3 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.32.2.5: +139 -115 lines
Diff to previous 1.32.2.5 (colored) to selected 1.136 (colored)

Sync with HEAD.

Revision 1.41 / (download) - annotate - [select for diffs], Sun Nov 28 17:36:27 2004 UTC (19 years, 4 months ago) by thorpej
Branch: MAIN
CVS Tags: kent-audio1-base, kent-audio1
Changes since 1.40: +139 -115 lines
Diff to previous 1.40 (colored) to selected 1.136 (colored)

Sync with i386 bus_dma.

Revision 1.32.2.5 / (download) - annotate - [select for diffs], Tue Oct 19 15:56:35 2004 UTC (19 years, 5 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.32.2.4: +4 -4 lines
Diff to previous 1.32.2.4 (colored) to selected 1.136 (colored)

Sync with HEAD

Revision 1.40 / (download) - annotate - [select for diffs], Wed Oct 6 08:59:40 2004 UTC (19 years, 5 months ago) by scw
Branch: MAIN
Changes since 1.39: +4 -4 lines
Diff to previous 1.39 (colored) to selected 1.136 (colored)

Apply patch provided by Hiroki Nakano in PR kern/27159 to fix
compilation with DEBUG_DMA defined.

Revision 1.32.2.4 / (download) - annotate - [select for diffs], Tue Sep 21 13:13:08 2004 UTC (19 years, 6 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.32.2.3: +3 -3 lines
Diff to previous 1.32.2.3 (colored) to selected 1.136 (colored)

Fix the sync with head I botched.

Revision 1.32.2.3 / (download) - annotate - [select for diffs], Sat Sep 18 14:32:17 2004 UTC (19 years, 6 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.32.2.2: +2 -2 lines
Diff to previous 1.32.2.2 (colored) to selected 1.136 (colored)

Sync with HEAD.

Revision 1.32.2.2 / (download) - annotate - [select for diffs], Tue Aug 3 10:32:29 2004 UTC (19 years, 7 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.32.2.1: +38 -46 lines
Diff to previous 1.32.2.1 (colored) to selected 1.136 (colored)

Sync with HEAD

Revision 1.39 / (download) - annotate - [select for diffs], Sat Jun 19 18:06:00 2004 UTC (19 years, 9 months ago) by thorpej
Branch: MAIN
Changes since 1.38: +25 -34 lines
Diff to previous 1.38 (colored) to selected 1.136 (colored)

Merge x86/bus_dma.c 1.11 by yamt:

Simplify bus_dma internal "load" functions by eliminating the "first"
variable, using seg == -1 instead.

Revision 1.38 / (download) - annotate - [select for diffs], Thu Oct 30 08:44:13 2003 UTC (20 years, 5 months ago) by scw
Branch: MAIN
CVS Tags: netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0, netbsd-2
Changes since 1.37: +6 -9 lines
Diff to previous 1.37 (colored) to selected 1.136 (colored)

In bus_dmamap_sync(), we can no longer rely on the data cache being
flushed on every context switch as an indicator that a mapping is
not resident in the cache.

Instead, used the per-pmap flag maintained by the cpu_switch/pmap code.

Revision 1.37 / (download) - annotate - [select for diffs], Wed Oct 29 05:03:41 2003 UTC (20 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.36: +5 -6 lines
Diff to previous 1.36 (colored) to selected 1.136 (colored)

If something goes wrong, we want to return ENOMEM, not 0!

Revision 1.36 / (download) - annotate - [select for diffs], Sun Oct 26 23:11:15 2003 UTC (20 years, 5 months ago) by chris
Branch: MAIN
Changes since 1.35: +3 -3 lines
Diff to previous 1.35 (colored) to selected 1.136 (colored)

Fix up some unitialised variables.

Revision 1.35 / (download) - annotate - [select for diffs], Sat Sep 6 09:46:37 2003 UTC (20 years, 6 months ago) by rearnsha
Branch: MAIN
Changes since 1.34: +4 -4 lines
Diff to previous 1.34 (colored) to selected 1.136 (colored)

Make sure _ARM32_BUS_DMA_PRIVATE is defined before we pull in any
include files to avoid problems with the rats nest of dependencies.

Revision 1.34 / (download) - annotate - [select for diffs], Thu Jul 24 16:22:01 2003 UTC (20 years, 8 months ago) by briggs
Branch: MAIN
Changes since 1.33: +5 -3 lines
Diff to previous 1.33 (colored) to selected 1.136 (colored)

Clear ARM32_DMAMAP_COHERENT in _bus_dmamap_load_buffer for userspace mappings.

Revision 1.33 / (download) - annotate - [select for diffs], Tue Jul 15 00:24:40 2003 UTC (20 years, 8 months ago) by lukem
Branch: MAIN
Changes since 1.32: +4 -1 lines
Diff to previous 1.32 (colored) to selected 1.136 (colored)

__KERNEL_RCSID()

Revision 1.32.2.1 / (download) - annotate - [select for diffs], Wed Jul 2 15:25:16 2003 UTC (20 years, 9 months ago) by darrenr
Branch: ktrace-lwp
Changes since 1.32: +2 -2 lines
Diff to previous 1.32 (colored) to selected 1.136 (colored)

Apply the aborted ktrace-lwp changes to a specific branch.  This is just for
others to review, I'm concerned that patch fuziness may have resulted in some
errant code being generated but I'll look at that later by comparing the diff
from the base to the branch with the file I attempt to apply to it.  This will,
at the very least, put the changes in a better context for others to review
them and attempt to tinker with removing passing of 'struct lwp' through
the kernel.

Revision 1.32 / (download) - annotate - [select for diffs], Sun Jun 29 22:28:09 2003 UTC (20 years, 9 months ago) by fvdl
Branch: MAIN
Branch point for: ktrace-lwp
Changes since 1.31: +1 -1 lines
Diff to previous 1.31 (colored) to selected 1.136 (colored)

Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.

Revision 1.31 / (download) - annotate - [select for diffs], Sat Jun 28 14:20:48 2003 UTC (20 years, 9 months ago) by darrenr
Branch: MAIN
Changes since 1.30: +2 -2 lines
Diff to previous 1.30 (colored) to selected 1.136 (colored)

Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records.  The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V

Revision 1.30 / (download) - annotate - [select for diffs], Wed May 21 18:04:42 2003 UTC (20 years, 10 months ago) by thorpej
Branch: MAIN
Changes since 1.29: +1 -11 lines
Diff to previous 1.29 (colored) to selected 1.136 (colored)

Remove #ifdefs supporting the old pmap, switching fully to the new.

Revision 1.29 / (download) - annotate - [select for diffs], Fri Apr 18 11:08:25 2003 UTC (20 years, 11 months ago) by scw
Branch: MAIN
Changes since 1.28: +12 -1 lines
Diff to previous 1.28 (colored) to selected 1.136 (colored)

Add the generic arm32 bits of the new pmap, contributed by Wasabi Systems.

Some features of the new pmap are:

 - It allows L1 descriptor tables to be shared efficiently between
   multiple processes. A typical "maxusers 32" kernel, where NPROC is set
   to 532, requires 35 L1s. A "maxusers 2" kernel runs quite happily
   with just 4 L1s. This completely solves the problem of running out
   of contiguous physical memory for allocating new L1s at runtime on a
   busy system.

 - Much improved cache/TLB management "smarts". This change ripples
   out to encompass the low-level context switch code, which is also
   much smarter about when to flush the cache/TLB, and when not to.

 - Faster allocation of L2 page tables and associated metadata thanks,
   in part, to the pool_cache enhancements recently contributed to
   NetBSD by Wasabi Systems.

 - Faster VM space teardown due to accurate referenced tracking of L2
   page tables.

 - Better/faster cache-alias tracking.

The new pmap is enabled by adding options ARM32_PMAP_NEW to the kernel
config file, and making the necessary changes to the port-specific
initarm() function. Several ports have already been converted and will
be committed shortly.

Revision 1.28 / (download) - annotate - [select for diffs], Wed Apr 9 18:51:35 2003 UTC (20 years, 11 months ago) by thorpej
Branch: MAIN
Changes since 1.27: +80 -8 lines
Diff to previous 1.27 (colored) to selected 1.136 (colored)

Use cached physical addresses for mbufs and clusters to save having
to extract the physical address from the virtual.

On the ARM, also use the "read-only at MMU" indication to avoid a
redundant cache clean operation.

Other platforms should use these two as examples of how to use these
new pool/mbuf features to improve network performance.  Note this requires
a platform to provide a working POOL_VTOPHYS().

Part 3 in a series of simple patches contributed by Wasabi Systems
to improve network performance.

Revision 1.27 / (download) - annotate - [select for diffs], Tue Apr 1 23:21:12 2003 UTC (21 years ago) by thorpej
Branch: MAIN
Changes since 1.26: +4 -4 lines
Diff to previous 1.26 (colored) to selected 1.136 (colored)

Use PAGE_SIZE rather than NBPG.

Revision 1.26 / (download) - annotate - [select for diffs], Thu Mar 27 19:42:30 2003 UTC (21 years ago) by mycroft
Branch: MAIN
Changes since 1.25: +1 -3 lines
Diff to previous 1.25 (colored) to selected 1.136 (colored)

Remove references to variables that aren't used here.

Revision 1.25 / (download) - annotate - [select for diffs], Mon Feb 3 23:34:50 2003 UTC (21 years, 1 month ago) by chris
Branch: MAIN
Changes since 1.24: +2 -2 lines
Diff to previous 1.24 (colored) to selected 1.136 (colored)

bus dma memory is allocated as M_DMAMAP so free it as M_DMAMAP, not DEVBUF.

Revision 1.24 / (download) - annotate - [select for diffs], Sun Feb 2 10:24:38 2003 UTC (21 years, 2 months ago) by wiz
Branch: MAIN
Changes since 1.23: +2 -2 lines
Diff to previous 1.23 (colored) to selected 1.136 (colored)

guarantee, not guarentee. Idea from miod@openbsd.

Revision 1.23 / (download) - annotate - [select for diffs], Fri Jan 17 22:28:49 2003 UTC (21 years, 2 months ago) by thorpej
Branch: MAIN
Changes since 1.22: +3 -2 lines
Diff to previous 1.22 (colored) to selected 1.136 (colored)

Merge the nathanw_sa branch.

Revision 1.11.4.2 / (download) - annotate - [select for diffs], Sat Dec 7 19:33:41 2002 UTC (21 years, 3 months ago) by he
Branch: netbsd-1-6
CVS Tags: netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001
Changes since 1.11.4.1: +2 -2 lines
Diff to previous 1.11.4.1 (colored) to branchpoint 1.11 (colored) next main 1.12 (colored) to selected 1.136 (colored)

Pull up revision 1.16 (requested by thorpej in ticket #678):
  When making a mapping ``coherent'', clear *all* the cacche
  bits, not just L2_B and L2_C.

Revision 1.11.4.1 / (download) - annotate - [select for diffs], Sat Dec 7 19:23:21 2002 UTC (21 years, 3 months ago) by he
Branch: netbsd-1-6
Changes since 1.11: +171 -55 lines
Diff to previous 1.11 (colored) to selected 1.136 (colored)

Pull up revisions 1.13-1.14 (requested by thorpej in ticket #568):
  Remove warning from bus_dmamap_destroy().
  Change the way DMA map syncs are done.  Instead of remembering
  the virtual address for each DMA segment, just cache a
  pointer to the original buffer/buftype used to load the
  DMA map, and use that.  Shrinks bus_dma_segment_t from 12
  to 8 bytes, and the cache flushing is also more efficient.

Revision 1.3.4.12 / (download) - annotate - [select for diffs], Fri Oct 18 02:35:19 2002 UTC (21 years, 5 months ago) by nathanw
Branch: nathanw_sa
CVS Tags: nathanw_sa_end
Changes since 1.3.4.11: +1 -2 lines
Diff to previous 1.3.4.11 (colored) to branchpoint 1.3 (colored) next main 1.4 (colored) to selected 1.136 (colored)

Catch up to -current.

Revision 1.1.2.8 / (download) - annotate - [select for diffs], Thu Oct 10 18:31:44 2002 UTC (21 years, 5 months ago) by jdolecek
Branch: kqueue
Changes since 1.1.2.7: +1 -2 lines
Diff to previous 1.1.2.7 (colored) to branchpoint 1.1 (colored) next main 1.2 (colored) to selected 1.136 (colored)

sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work

Revision 1.22 / (download) - annotate - [select for diffs], Wed Sep 25 22:21:04 2002 UTC (21 years, 6 months ago) by thorpej
Branch: MAIN
CVS Tags: nathanw_sa_before_merge, nathanw_sa_base, kqueue-beforemerge, kqueue-base, kqueue-aftermerge, gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw, fvdl_fs64_base, bjh21-hydra-base, bjh21-hydra
Changes since 1.21: +1 -2 lines
Diff to previous 1.21 (colored) to selected 1.136 (colored)

Don't include <sys/map.h>.

Revision 1.1.2.7 / (download) - annotate - [select for diffs], Fri Sep 6 08:32:19 2002 UTC (21 years, 6 months ago) by jdolecek
Branch: kqueue
Changes since 1.1.2.6: +324 -89 lines
Diff to previous 1.1.2.6 (colored) to branchpoint 1.1 (colored) to selected 1.136 (colored)

sync kqueue branch with HEAD

Revision 1.11.2.3 / (download) - annotate - [select for diffs], Fri Aug 30 00:19:05 2002 UTC (21 years, 7 months ago) by gehenna
Branch: gehenna-devsw
Changes since 1.11.2.2: +316 -85 lines
Diff to previous 1.11.2.2 (colored) to branchpoint 1.11 (colored) next main 1.12 (colored) to selected 1.136 (colored)

catch up with -current.

Revision 1.3.4.11 / (download) - annotate - [select for diffs], Tue Aug 27 06:03:15 2002 UTC (21 years, 7 months ago) by thorpej
Branch: nathanw_sa
Changes since 1.3.4.10: +2 -1 lines
Diff to previous 1.3.4.10 (colored) to branchpoint 1.3 (colored) to selected 1.136 (colored)

Sync with -current.

Revision 1.21 / (download) - annotate - [select for diffs], Thu Aug 22 01:13:54 2002 UTC (21 years, 7 months ago) by thorpej
Branch: MAIN
CVS Tags: gehenna-devsw-base
Changes since 1.20: +2 -1 lines
Diff to previous 1.20 (colored) to selected 1.136 (colored)

* Add PTE_SYNC() and PTE_SYNC_RANGE() macros.  These don't actually do
  anything yet.
* Use PTE_SYNC() and PTE_SYNC_RANGE() in some obvious places, i.e.
  where vtopte() is used.

Revision 1.3.4.10 / (download) - annotate - [select for diffs], Mon Aug 19 21:38:59 2002 UTC (21 years, 7 months ago) by thorpej
Branch: nathanw_sa
Changes since 1.3.4.9: +87 -44 lines
Diff to previous 1.3.4.9 (colored) to branchpoint 1.3 (colored) to selected 1.136 (colored)

Partial (ARM only) sync with trunk -- significant performance improvements
for XScale-based systems.

Revision 1.20 / (download) - annotate - [select for diffs], Sat Aug 17 05:14:10 2002 UTC (21 years, 7 months ago) by briggs
Branch: MAIN
Changes since 1.19: +1 -2 lines
Diff to previous 1.19 (colored) to selected 1.136 (colored)

Do not trim 'offset' from 'len' in _bus_dmamap_sync_linear().

Revision 1.19 / (download) - annotate - [select for diffs], Sat Aug 17 01:15:15 2002 UTC (21 years, 7 months ago) by briggs
Branch: MAIN
Changes since 1.18: +23 -23 lines
Diff to previous 1.18 (colored) to selected 1.136 (colored)

Inline bus_dma_inrange() and bus_dmamap_sync_*().

Revision 1.18 / (download) - annotate - [select for diffs], Wed Aug 14 22:56:55 2002 UTC (21 years, 7 months ago) by thorpej
Branch: MAIN
Changes since 1.17: +13 -16 lines
Diff to previous 1.17 (colored) to selected 1.136 (colored)

When doing PREREAD sync operations, if the start and end addresses
of the range are aligned to a cacheline boundary, when do a dcache-inv
operation, rather than a dcache-wbinv operation.

XXX It could be a little smarter (align using wbinv, inv, then finish
up using wbinv), but even this simple change is good for a nearly 40%
improvement in my test case on XScale.

Revision 1.17 / (download) - annotate - [select for diffs], Wed Aug 14 20:50:37 2002 UTC (21 years, 7 months ago) by thorpej
Branch: MAIN
Changes since 1.16: +53 -6 lines
Diff to previous 1.16 (colored) to selected 1.136 (colored)

* Add an ARM32_DMAMAP_COHERENT flag to indicate that a loaded DMA
  map contains "coherent" (non-cached in ARM-land) mappings.
* Set ARM32_DMAMAP_COHERENT in the map at the start of a load operation,
  and clear it in _bus_dmamap_load_buffer() if we encounter any cacheable
  mappings.
* In _bus_dmamap_sync(), if the map is marked COHERENT, skip any cache
  flushing.

Revision 1.16 / (download) - annotate - [select for diffs], Wed Aug 14 19:21:50 2002 UTC (21 years, 7 months ago) by thorpej
Branch: MAIN
Changes since 1.15: +2 -2 lines
Diff to previous 1.15 (colored) to selected 1.136 (colored)

Whe making a mapping "coherent", clear *ALL* the cache bits, not
just L2_B and L2_C.

Revision 1.3.4.9 / (download) - annotate - [select for diffs], Thu Aug 1 02:41:12 2002 UTC (21 years, 8 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.3.4.8: +265 -74 lines
Diff to previous 1.3.4.8 (colored) to branchpoint 1.3 (colored) to selected 1.136 (colored)

Catch up to -current.

Revision 1.15 / (download) - annotate - [select for diffs], Wed Jul 31 17:34:23 2002 UTC (21 years, 8 months ago) by thorpej
Branch: MAIN
Changes since 1.14: +95 -20 lines
Diff to previous 1.14 (colored) to selected 1.136 (colored)

Overhaul how DMA ranges work in the ARM bus_dma implementation.

A new "arm32_dma_range" structure now describes a DMA window, with
a system address base, bus address base, and length.  In addition to
providing info about which memory regions are legal for DMA, the new
structure provides address translation support, as well.

As before, if a tag does not list any ranges, then all addresses are
considered valid, and no DMA address translation is performed.

This allows us to remove a large chunk of code which was duplicated and
tweaked slightly (to do the address translation) from the stock ARM
bus_dma in the XScale IOP and ARM Integrator ports.

Test compiled on all ARM platforms, test booted on Intel IQ80321 and Shark.

Revision 1.14 / (download) - annotate - [select for diffs], Sun Jul 28 17:54:05 2002 UTC (21 years, 8 months ago) by thorpej
Branch: MAIN
Changes since 1.13: +163 -51 lines
Diff to previous 1.13 (colored) to selected 1.136 (colored)

Change the way that DMA map syncs are done.  Instead of remembering
the virtual address for each DMA segment, just cache a pointer to the
original buffer/buftype used to load the DMA map, and use that.  This
lets us shrink the bus_dma_segment_t down from 12 bytes to 8, and the
cache flushing is also more efficient.

Tested on an i80321 -- changes to others are mechanical.

Revision 1.11.2.2 / (download) - annotate - [select for diffs], Tue Jul 16 00:55:23 2002 UTC (21 years, 8 months ago) by gehenna
Branch: gehenna-devsw
Changes since 1.11.2.1: +9 -5 lines
Diff to previous 1.11.2.1 (colored) to branchpoint 1.11 (colored) to selected 1.136 (colored)

catch up with -current.

Revision 1.11.2.1 / (download) - annotate - [select for diffs], Sun Jul 14 17:45:53 2002 UTC (21 years, 8 months ago) by gehenna
Branch: gehenna-devsw
Changes since 1.11: +1 -2 lines
Diff to previous 1.11 (colored) to selected 1.136 (colored)

catch up with -current.

Revision 1.13 / (download) - annotate - [select for diffs], Fri Jun 28 15:21:00 2002 UTC (21 years, 9 months ago) by briggs
Branch: MAIN
Changes since 1.12: +9 -5 lines
Diff to previous 1.12 (colored) to selected 1.136 (colored)

Remove complaint: bus_dmamap_destroy() called for map with valid
mappings bus_dma(9) states: "In the event that the DMA handle contains
a valid mapping, the mapping will be unloaded via the same mechanism
used by bus_dmamap_unload()."  And some drivers do mean to skip the
unload step.

Revision 1.3.4.8 / (download) - annotate - [select for diffs], Mon Jun 24 22:03:49 2002 UTC (21 years, 9 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.3.4.7: +2 -2 lines
Diff to previous 1.3.4.7 (colored) to branchpoint 1.3 (colored) to selected 1.136 (colored)

Curproc->curlwp renaming.

Change uses of "curproc->l_proc" back to "curproc", which is more like the
original use. Bare uses of "curproc" are now "curlwp".

"curproc" is now #defined in proc.h as ((curlwp) ? (curlwp)->l_proc) : NULL)
so that it is always safe to reference curproc (*de*referencing curproc
is another story, but that's always been true).

Revision 1.1.2.6 / (download) - annotate - [select for diffs], Sun Jun 23 17:34:44 2002 UTC (21 years, 9 months ago) by jdolecek
Branch: kqueue
Changes since 1.1.2.5: +17 -18 lines
Diff to previous 1.1.2.5 (colored) to branchpoint 1.1 (colored) to selected 1.136 (colored)

catch up with -current on kqueue branch

Revision 1.3.4.7 / (download) - annotate - [select for diffs], Thu Jun 20 03:38:02 2002 UTC (21 years, 9 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.3.4.6: +1 -2 lines
Diff to previous 1.3.4.6 (colored) to branchpoint 1.3 (colored) to selected 1.136 (colored)

Catch up to -current.

Revision 1.12 / (download) - annotate - [select for diffs], Sun Jun 2 14:44:42 2002 UTC (21 years, 10 months ago) by drochner
Branch: MAIN
Changes since 1.11: +1 -2 lines
Diff to previous 1.11 (colored) to selected 1.136 (colored)

move initialization of the "struct pglist" returned by uvm_pglistalloc()
from the calling code into uvm_pglistalloc() itself for consistency
and easier error handling

Revision 1.3.4.6 / (download) - annotate - [select for diffs], Wed Apr 17 00:02:25 2002 UTC (21 years, 11 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.3.4.5: +16 -16 lines
Diff to previous 1.3.4.5 (colored) to branchpoint 1.3 (colored) to selected 1.136 (colored)

Catch up to -current.

Revision 1.3.4.5 / (download) - annotate - [select for diffs], Thu Apr 11 06:59:21 2002 UTC (21 years, 11 months ago) by thorpej
Branch: nathanw_sa
Changes since 1.3.4.4: +3 -2 lines
Diff to previous 1.3.4.4 (colored) to branchpoint 1.3 (colored) to selected 1.136 (colored)

Make this compile again.
XXX Need to re-think this.

Revision 1.11 / (download) - annotate - [select for diffs], Wed Apr 10 19:35:22 2002 UTC (21 years, 11 months ago) by thorpej
Branch: MAIN
CVS Tags: netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1
Branch point for: netbsd-1-6, gehenna-devsw
Changes since 1.10: +15 -15 lines
Diff to previous 1.10 (colored) to selected 1.136 (colored)

vm_offset_t -> vaddr_t,paddr_t

Revision 1.10 / (download) - annotate - [select for diffs], Fri Apr 5 16:58:04 2002 UTC (21 years, 11 months ago) by thorpej
Branch: MAIN
Changes since 1.9: +2 -2 lines
Diff to previous 1.9 (colored) to selected 1.136 (colored)

* Rewrite the 32-bit ARM pte.h based on the ARM architecture manual.
  Significant cleanup, here, including better PTE bit names.
* Add XScale PTE extensions (ECC enable, write-allocate cache mode).
* Mechanical changes everywhere else to update for new pte.h.  While
  doing this, two bugs (as a result of typos) were fixed in

	arm/arm32/bus_dma.c
	evbarm/integrator/int_bus_dma.c

Revision 1.3.4.4 / (download) - annotate - [select for diffs], Mon Apr 1 07:39:07 2002 UTC (22 years ago) by nathanw
Branch: nathanw_sa
Changes since 1.3.4.3: +2 -2 lines
Diff to previous 1.3.4.3 (colored) to branchpoint 1.3 (colored) to selected 1.136 (colored)

Catch up to -current.
(CVS: It's not just a program. It's an adventure!)

Revision 1.9 / (download) - annotate - [select for diffs], Sun Mar 24 03:37:18 2002 UTC (22 years ago) by thorpej
Branch: MAIN
Changes since 1.8: +2 -2 lines
Diff to previous 1.8 (colored) to selected 1.136 (colored)

* arm_byte_to_page() -> arm_btop()
* arm_page_to_byte() -> arm_ptob()

Revision 1.3.4.3 / (download) - annotate - [select for diffs], Thu Feb 28 04:07:20 2002 UTC (22 years, 1 month ago) by nathanw
Branch: nathanw_sa
Changes since 1.3.4.2: +147 -149 lines
Diff to previous 1.3.4.2 (colored) to branchpoint 1.3 (colored) to selected 1.136 (colored)

Catch up to -current.

Revision 1.1.2.5 / (download) - annotate - [select for diffs], Mon Feb 11 20:07:17 2002 UTC (22 years, 1 month ago) by jdolecek
Branch: kqueue
Changes since 1.1.2.4: +147 -149 lines
Diff to previous 1.1.2.4 (colored) to branchpoint 1.1 (colored) to selected 1.136 (colored)

Sync w/ -current.

Revision 1.8 / (download) - annotate - [select for diffs], Fri Jan 25 20:57:41 2002 UTC (22 years, 2 months ago) by thorpej
Branch: MAIN
CVS Tags: newlock-base, newlock, ifpoll-base, eeh-devprop-base, eeh-devprop
Changes since 1.7: +110 -46 lines
Diff to previous 1.7 (colored) to selected 1.136 (colored)

Overhaul bus_dmamap_sync for the ARM:
* Track which process (XXX really, vmspace) owns the mapping.  When
  we sync the map, if the mapping doesn't belong to the kernel or to
  the current process (XXX really, vmspace), then no cache fobbing
  is necessary, since the cache is Wb-Inv'd on context switch (XXX need
  to revisit this when we support FCSE).
* Be smarter about which cache operation we do when sync'ing the map:
  - PREREAD -- Invalidate D$ (XXX right now, we actually do Wb-Inv)
  - PREWRITE -- Write-back D$ (note, we do NOT invalidate here)
  - PREREAD|PREWRITE -- Wb-Inv D$

More work is needed here.  In particular, a version for CPUs
with write-through caches should be provided, to eliminate
the write-back steps (which are noops on such CPUs, but skipping
two branches would be nice).

Revision 1.7 / (download) - annotate - [select for diffs], Fri Jan 25 19:37:49 2002 UTC (22 years, 2 months ago) by thorpej
Branch: MAIN
Changes since 1.6: +34 -100 lines
Diff to previous 1.6 (colored) to selected 1.136 (colored)

ANSI'ify function decls.

Revision 1.6 / (download) - annotate - [select for diffs], Fri Jan 25 19:19:24 2002 UTC (22 years, 2 months ago) by thorpej
Branch: MAIN
Changes since 1.5: +3 -3 lines
Diff to previous 1.5 (colored) to selected 1.136 (colored)

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.

Revision 1.1.2.4 / (download) - annotate - [select for diffs], Thu Jan 10 19:37:47 2002 UTC (22 years, 2 months ago) by thorpej
Branch: kqueue
Changes since 1.1.2.3: +3 -3 lines
Diff to previous 1.1.2.3 (colored) to branchpoint 1.1 (colored) to selected 1.136 (colored)

Sync kqueue branch with -current.

Revision 1.3.4.2 / (download) - annotate - [select for diffs], Tue Jan 8 00:23:07 2002 UTC (22 years, 2 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.3.4.1: +813 -0 lines
Diff to previous 1.3.4.1 (colored) to branchpoint 1.3 (colored) to selected 1.136 (colored)

Catch up to -current.

Revision 1.5 / (download) - annotate - [select for diffs], Mon Nov 26 20:49:04 2001 UTC (22 years, 4 months ago) by thorpej
Branch: MAIN
Changes since 1.4: +1 -2 lines
Diff to previous 1.4 (colored) to selected 1.136 (colored)

Don't include <machine/psl.h> directly.

Revision 1.4 / (download) - annotate - [select for diffs], Fri Nov 23 19:21:47 2001 UTC (22 years, 4 months ago) by thorpej
Branch: MAIN
Changes since 1.3: +3 -2 lines
Diff to previous 1.3 (colored) to selected 1.136 (colored)

Use <arm/cpufunc.h>, not <machine/cpufunc.h>.

Revision 1.1.4.1 / (download) - annotate - [select for diffs], Mon Oct 1 12:37:31 2001 UTC (22 years, 6 months ago) by fvdl
Branch: thorpej-devvp
Changes since 1.1: +6 -4 lines
Diff to previous 1.1 (colored) next main 1.2 (colored) to selected 1.136 (colored)

Catch up with -current.

Revision 1.1.2.3 / (download) - annotate - [select for diffs], Thu Sep 13 01:13:06 2001 UTC (22 years, 6 months ago) by thorpej
Branch: kqueue
Changes since 1.1.2.2: +6 -4 lines
Diff to previous 1.1.2.2 (colored) to branchpoint 1.1 (colored) to selected 1.136 (colored)

Update the kqueue branch to HEAD.

Revision 1.3.4.1, Wed Sep 12 09:41:50 2001 UTC (22 years, 6 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.3: +0 -813 lines
FILE REMOVED

file bus_dma.c was added on branch nathanw_sa on 2002-01-08 00:23:07 +0000

Revision 1.3 / (download) - annotate - [select for diffs], Wed Sep 12 09:41:50 2001 UTC (22 years, 6 months ago) by rearnsha
Branch: MAIN
CVS Tags: thorpej-mips-cache-base, thorpej-mips-cache, thorpej-devvp-base3, thorpej-devvp-base2, pre-chs-ubcperf, post-chs-ubcperf
Branch point for: nathanw_sa
Changes since 1.2: +5 -3 lines
Diff to previous 1.2 (colored) to selected 1.136 (colored)

Fix warning errors for printing size_t types when compiling with
DEBUG_DMA (uses casts due to a.out and ELF having different base
types for size_t).

Revision 1.2 / (download) - annotate - [select for diffs], Mon Sep 10 21:19:35 2001 UTC (22 years, 6 months ago) by chris
Branch: MAIN
Changes since 1.1: +2 -2 lines
Diff to previous 1.1 (colored) to selected 1.136 (colored)

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.

Revision 1.1.2.2 / (download) - annotate - [select for diffs], Fri Aug 3 04:10:57 2001 UTC (22 years, 8 months ago) by lukem
Branch: kqueue
Changes since 1.1.2.1: +811 -0 lines
Diff to previous 1.1.2.1 (colored) to branchpoint 1.1 (colored) to selected 1.136 (colored)

update to -current

Revision 1.1.2.1, Sat Jul 28 13:28:03 2001 UTC (22 years, 8 months ago) by lukem
Branch: kqueue
Changes since 1.1: +0 -811 lines
FILE REMOVED

file bus_dma.c was added on branch kqueue on 2001-08-03 04:10:57 +0000

Revision 1.1 / (download) - annotate - [select for diffs], Sat Jul 28 13:28:03 2001 UTC (22 years, 8 months ago) by chris
Branch: MAIN
CVS Tags: thorpej-devvp-base
Branch point for: thorpej-devvp, kqueue
Diff to selected 1.136 (colored)

Move the generic arm32 files into arm/arm32 from arm32/arm32, tested kernel builds on cats and riscpc.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>