Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 20 Mar 2015 09:12:31 -0600
From:      Warner Losh <imp@bsdimp.com>
To:        Ian Lepore <ian@freebsd.org>
Cc:        John Wehle <john@feith.com>, freebsd-arm@freebsd.org
Subject:   Re: current meaning of BUS_DMA_COHERENT
Message-ID:  <16E52DDC-D2DC-4878-9C43-451278AE7B4E@bsdimp.com>
In-Reply-To: <1426861647.24655.12.camel@freebsd.org>
References:  <201503200535.t2K5ZQdo011380@jwlab.FEITH.COM> <1426861647.24655.12.camel@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--Apple-Mail=_438268ED-D8F0-45D2-B8B5-AEA9310DBD4C
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8


> On Mar 20, 2015, at 8:27 AM, Ian Lepore <ian@freebsd.org> wrote:
> What we really need is a new type of busdma memory =
(BUS_DMA_DESCRIPTOR)
> and a special sync call to use in conjunction with it that takes an
> offset and length, and the sync is a single operation, no pre/post
> stuff.  Then you could sync each descriptor immediately before reading
> and writing it, which would translate to a single cacheline flush
> instead of a loop that does all the lines in the whole ring.

We don=E2=80=99t need a special type of memory for this. NetBSD =
doesn=E2=80=99t have
that. Instead it implements a range on the sync operation. We could =
easily
just do that. We already have flags to disable bouncing, which is also
required for interacting with descriptor rings.

I=E2=80=99m curious where you need to do both a pre read and a post read =
before
you read the ring. Why is that needed?

Warner


--Apple-Mail=_438268ED-D8F0-45D2-B8B5-AEA9310DBD4C
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename=signature.asc
Content-Type: application/pgp-signature;
	name=signature.asc
Content-Description: Message signed with OpenPGP using GPGMail

-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org

iQIcBAEBCgAGBQJVDDjfAAoJEGwc0Sh9sBEAOYYQAMGJkE7Z1TORmVl7PB9M9KrQ
xLyer2ylXsUknzQZe6HSboH5tlhcyV2odr9QFLHwXlXlniWDL9bNp5KJeQeqZtch
7dlvC+fbwzroaEOkO/eKdQD6cEnIvaNfDRqI0HNhpd7YkK/WJLxTQzkimhlJoln5
28w+QB8p0P+fkvDroOWZyrwISrecAiisj3SPGDfmOcss7Afdij4doNSFglsmqhhA
z9Lsq+hfXFF0IDqjq1kzK/cqUxcxpllEwANZFoLQ5uC3DY4h83Swg7gC+qYfbZJM
GfY1/QjbTQKHcPoWuV52PO63wY2TWabD73DACmxhlVRFaNrCdp+fe84MZxCTlz41
EhJDJ3eJKgQJj9K8N84HEVP2WKtnEnTFsnJnRVTERANrEdWUMV0CA8qX+iA+wwcb
Z9AJkKMZr7vwtFfKjpkdAOuFTbfnXs/2c8ejKCyOtiCKU2AOWWRm+LxIxlFk8DVh
NAC+6N8vmm9XYRZObGGET4eU9JDqhx2kLeQN7efzEW2bJ8/7wxZTe5rlYhLZDBKa
Vjt7ajunIvlnmcTvcSsTo/zUJJ5qqE4g6qxo5gno/c/5nrVLLUxiI6CIPCFLXRNS
ak3o6IBSwgVLo1MexaRAPqBqDdVdYLVIaPJjsYzOuQNzxTpDU5G0Y6yfLfOk3j6U
c8Gq01CqPxiVM6G7fR0+
=TQA+
-----END PGP SIGNATURE-----

--Apple-Mail=_438268ED-D8F0-45D2-B8B5-AEA9310DBD4C--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?16E52DDC-D2DC-4878-9C43-451278AE7B4E>