linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: "Joakim Tjernlund" <Joakim.Tjernlund@lumentis.se>
To: "Paul Mackerras" <paulus@au1.ibm.com>
Cc: "Matt Porter" <porter@cox.net>,
	"Pantelis Antoniou" <panto@intracom.gr>,
	<linuxppc-embedded@lists.linuxppc.org>
Subject: Re: Regarding consistent_alloc
Date: Sat, 7 Dec 2002 13:53:14 +0100	[thread overview]
Message-ID: <003c01c29def$9b3d5df0$0300a8c0@jockeXP> (raw)
In-Reply-To: 15857.15826.513311.884408@argo.ozlabs.ibm.com


> Joakim Tjernlund writes:
>
> > m8xx_cpm_hostalloc() does not keep the DMA handle and __pa() does not work
> > on addresses returned by m8xx_cpm_hostalloc(). I just found that out the
> > hard way when upgrading from MV 2.4.2 to linuxppc_2_4_devel 2.4.20. My SPI driver
> > hung as soon you tried to read something.
>
> Then m8xx_cpm_hostalloc should be changed so it returns the DMA
> address along with the virtual address (of the uncached mapping).
>
> An alternative which will work, at least at present, is to use iopa()
> on the virtual address.  However, that assumes that DMA bus addresses
> are identical to CPU physical addresses.  That is true at the moment
> on all embedded PPC platforms that I know of currently, but there is
> no guarantee that it will always be true.  That is why I think it is
> better to make a practice of saving the DMA address that you get back
> from consistent_alloc and using that.

Is consistent_alloc really needed? All uses I have seen in the kernel for the 8xx CPU can be solved with
a kmalloc(or a static char buffer) and a invalidate_dcache_range call(flush_dcache_range if the buffer isn't cache line aligned).
This usally eliminates a memcpy() from uncached memory. See the 8xx_io/enet.c patch I sent to
this list a few weeks ago. One guy converted that patch to the 8260 FEC and had a 20% increase in performace
for big packets in his router.

    Jocke

PS.
     I still think the 'sync' instruction in invalidate_dcache_range is unneed. I have been running my system
     without it for a few weeks now and it still works as it should.

** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/

  reply	other threads:[~2002-12-07 12:53 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-12-06 13:18 Regarding consistent_alloc Pantelis Antoniou
2002-12-06 13:23 ` Pantelis Antoniou
2002-12-06 14:25   ` Joakim Tjernlund
2002-12-06 15:59     ` Matt Porter
2002-12-06 16:08       ` Joakim Tjernlund
2002-12-06 18:30         ` Matt Porter
2002-12-06 18:15           ` Joakim Tjernlund
2002-12-06 18:52             ` Matt Porter
2002-12-06 19:59             ` Dan Malek
2002-12-06 22:11               ` Joakim Tjernlund
2002-12-07  0:16         ` Paul Mackerras
2002-12-07 12:53           ` Joakim Tjernlund [this message]
2002-12-07 16:53             ` Dan Malek
2002-12-09  9:06           ` Pantelis Antoniou
2002-12-10 17:49             ` Tom Rini
2002-12-11  3:52               ` acurtis
2002-12-11  8:57                 ` Joakim Tjernlund
2002-12-11  9:58                   ` Pantelis Antoniou
2002-12-11 14:41                     ` acurtis
2002-12-11 15:01                       ` Pantelis Antoniou
2002-12-11 15:36                         ` acurtis
2002-12-12  3:32                       ` Dan Malek
2002-12-11 14:56                     ` Tom Rini
2002-12-11 15:07                       ` Pantelis Antoniou
2002-12-12  3:41                         ` Dan Malek
2002-12-12  8:00                           ` Pantelis Antoniou
2002-12-12  8:18                             ` Wolfgang Denk
2002-12-12  8:37                               ` Pantelis Antoniou
2002-12-12 12:56                                 ` Is the preemptive kernel patch unsafe for 8xx/PPC? Joakim Tjernlund
2002-12-12 18:28                                   ` Eugene Surovegin
2002-12-12 20:35                                     ` Joakim Tjernlund
2002-12-13  4:12                                       ` acurtis
2002-12-13  6:09                                       ` Eugene Surovegin
2002-12-13  7:47                                         ` Joakim Tjernlund
2002-12-16 14:41                                           ` acurtis
2002-12-13  4:08                                     ` acurtis
2002-12-12 16:53                               ` "Missing" patches (Was: Re: Regarding consistent_alloc) Tom Rini
2002-12-06 16:56       ` Regarding consistent_alloc Dan Malek
2002-12-06 18:29         ` Matt Porter
2002-12-06 19:45           ` Dan Malek
2002-12-07  0:25           ` Paul Mackerras
2002-12-06 15:54 ` Matt Porter

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='003c01c29def$9b3d5df0$0300a8c0@jockeXP' \
    --to=joakim.tjernlund@lumentis.se \
    --cc=linuxppc-embedded@lists.linuxppc.org \
    --cc=panto@intracom.gr \
    --cc=paulus@au1.ibm.com \
    --cc=porter@cox.net \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).