Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 04 Dec 2016 15:55:14 -0700
From:      Ian Lepore <ian@freebsd.org>
To:        John Baldwin <jhb@freebsd.org>, Michal Meloun <mmel@freebsd.org>
Cc:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r309531 - head/sys/arm/include
Message-ID:  <1480892114.1889.243.camel@freebsd.org>
In-Reply-To: <1605461.LLfnXX4YB2@ralph.baldwin.cx>
References:  <201612041527.uB4FRduc064051@repo.freebsd.org> <1605461.LLfnXX4YB2@ralph.baldwin.cx>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 2016-12-04 at 13:43 -0800, John Baldwin wrote:
> On Sunday, December 04, 2016 03:27:39 PM Michal Meloun wrote:
> > 
> > Author: mmel
> > Date: Sun Dec  4 15:27:39 2016
> > New Revision: 309531
> > URL: https://svnweb.freebsd.org/changeset/base/309531
> > 
> > Log:
> >   Implement fake pmap_mapdev_attr() for ARMv6.
> >   This function is referenced, but never called from DRM2 code.
> > Also,
> >   real behavior of pmap_mapdev_attr() in ARM world is unclear as we
> > don't
> >   have any additional attribute for a device memory type.
> You have VM_MEMATTR constants on ARM though.  Some devices might want
> a
> WB mapping (e.g. for a prefetchable memory BAR) rather than UC.
> 

On ARM, 'DEVICE' memory is its own type/attribute and it can't usefully
be changed (if you were to change it, it would no longer be device
memory, it would be some other type).  If this function is being used
to map main memory just because that memory happens to be used in some
device driver, then that's a usage model that just doesn't map usefully
to arm memory semantics.

-- Ian



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1480892114.1889.243.camel>