From: Grant Grundler <grundler@parisc-linux.org>
To: James Bottomley <James.Bottomley@HansenPartnership.com>
Cc: Grant Grundler <grundler@parisc-linux.org>,
John David Anglin <dave@hiauly1.hia.nrc.ca>,
artem.alimarine@stromasys.com, linux-parisc@vger.kernel.org
Subject: Re: Wierd code in Entry.S
Date: Tue, 21 Jul 2009 23:34:53 -0600 [thread overview]
Message-ID: <20090722053453.GA12539@lackof.org> (raw)
In-Reply-To: <1247661690.4236.10.camel@mulgrave.site>
On Wed, Jul 15, 2009 at 08:41:30AM -0400, James Bottomley wrote:
> On Wed, 2009-07-15 at 00:38 -0600, Grant Grundler wrote:
> > On Fri, Jul 10, 2009 at 11:18:21AM -0500, James Bottomley wrote:
> > > On Fri, 2009-07-10 at 11:55 -0400, John David Anglin wrote:
> > ...
> > > > Your comment would explain why I
> > > > don't see this on c3750. Could this affect PA8700?
> > >
> > > In theory it would affect every box running a 64 bit kernel.
> >
> > Yes, regarding corrupting bit-44 but not U-bit.
> >
> > IIRC, only pa880 and pa8900 pay attention to the U-bit.
> > I thought all the previous CPUs ignored U-bit.
>
> Um, no, almost all pa chips use it ... it's the way we make coherent
> memory on the very old 710 and similar systems: use an ordinary kmalloc
> and turn off caching in the map. The 715 class systems with the oldest
> pa chips don't respect the U bit ... these are the ones we have to pull
> the driver cache flushing tricks on to get them working.
Sorry - I was thinking only in the context of F-space but didn't make
that distinction clear. I wasn't thinking about about the use of U-bit
for DMA coherence.
thanks,
grant
> We also use the U bit for ioremaps.
>
> > > We
> > > actually set PAGE_NO_CACHE on ioremaps(), so it's spreading out from the
> > > PCI device space.
> >
> > Yes - but only ZX1 chipset (e.g. rp3440 and C8000) uses IO space that
> > is outside of F-space. F-space is hardwired to be uncachable by the CPU.
>
> OK, so we don't really use the concept of F-Space in the linux kernel
> virtual memory map on parisc linux. What we do is map the whole of
> memory into the virtual address space, but none of the I/O space. the
> readX/writeX macros actually go via absolute accesses. Because the
> kernel virtual addresses are offset mapped from the absolute addresses,
> we do get a hole in the virtual map corresponding to F-Space (simply
> because there's no accessible memory there) but we're actually able to
> fill that hole later with virtual mappings if we choose. The net result
> is that I/O devices aren't mapped into the kernel at all until we call
> ioremap. If a device uses readX/writeX only, it never actually gets an
> appearance in our virtual space because we simply use absolute accesses
> to get the data to and from the device. If it really needs a remapped
> area, we use ioremap, then it does appear in our virtual map, and we set
> the U bit on the mapping.
>
> James
>
next prev parent reply other threads:[~2009-07-22 5:34 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-07-09 13:11 Wierd code in Entry.S Artem Alimarine
2009-07-09 22:55 ` Grant Grundler
2009-07-10 0:15 ` John David Anglin
2009-07-10 15:36 ` Grant Grundler
2009-07-10 15:55 ` John David Anglin
2009-07-10 16:18 ` James Bottomley
2009-07-10 18:48 ` John David Anglin
2009-07-15 6:38 ` Grant Grundler
2009-07-15 12:41 ` James Bottomley
2009-07-15 15:00 ` Matthew Wilcox
2009-07-22 5:34 ` Grant Grundler [this message]
2009-07-10 16:11 ` Artem Alimarine
2009-07-15 6:40 ` Grant Grundler
2009-07-10 15:52 ` James Bottomley
2009-07-10 16:25 ` Artem Alimarine
2009-07-11 0:12 ` John David Anglin
2009-07-11 0:30 ` John David Anglin
2009-07-11 1:05 ` John David Anglin
2009-07-12 19:40 ` John David Anglin
2009-07-13 1:15 ` Kyle McMartin
2009-07-13 1:44 ` John David Anglin
2009-07-13 1:54 ` Kyle McMartin
2009-07-13 2:18 ` John David Anglin
2009-07-10 7:31 ` Artem Alimarine
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090722053453.GA12539@lackof.org \
--to=grundler@parisc-linux.org \
--cc=James.Bottomley@HansenPartnership.com \
--cc=artem.alimarine@stromasys.com \
--cc=dave@hiauly1.hia.nrc.ca \
--cc=linux-parisc@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.