linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: "David Kanceruk" <david.kanceruk@gmail.com>
To: "Hans Thielemans" <hans.thielemans@metris.com>
Cc: linuxppc-embedded@ozlabs.org
Subject: Re: MPC5200 ethernet communication stops unexpected
Date: Tue, 15 May 2007 10:03:58 -0500	[thread overview]
Message-ID: <5b525e390705150803l516a5d9x9c214e2b4b00ea0e@mail.gmail.com> (raw)
In-Reply-To: <1179234357.1668.10.camel@pc-hans>

Hello Hans,

     Our problem was with the FEC sending data with one or two
incorrect bytes when we switched from the MPC5200 to the MPC5200B. The
byte positions were always the same. The socket buffer has the correct
data before and after the DMA engine runs but the FEC TxFIFO does not
always match.

One solution to our problem was to make the following call prior to
starting the DMA:

flush_dcache_range((unsigned long)skb->data, (unsigned long)skb->data
+ skb->len);

The other solution was to set the BSDIS bit in the XLB config register
during initialization as follows:

  xlb = (struct mpc52xx_xlb *)MPC5xxx_XLB;
  out_be32(&xlb->config,  in_be32(&xlb->config) | MPC52xx_XLB_CFG_BSDIS);

Either solution works for us. The BSDIS bit is a new feature in the
MPC5200B. The MPC5200 did not have this bit.

According to the Freescale documentation, (Application note AN3045,
for instance) setting this bit is supposed to "disable" BestComm bus
snooping. However, I have reason to believe the documentation is in
error. Everything I have observed seems to indicate that in the
MPC5200 BestComm bus snooping was always enabled or enabled via some
other means. In the MPC5200B it appears to be "disabled" at reset (not
"enabled" as the documentation states). This is why flushing the cache
manually is one solution. Since setting the BSDIS bit also fixes the
problem, it suggests that this actually "enables" BestComm bus
snooping instead of disabling it. In my mind, it could all boil down
to a simple documentation error.

Perhaps you are also experiencing a caching problem.

Best regards,

David Kanceruk

On 5/15/07, Hans Thielemans <hans.thielemans@metris.com> wrote:
> Hi David,
>
> I have a similar problem. I use the PSC for communication to a DSP.
> With the MPC5200 this has always worked. Now we got boards with the
> MCP5200B in place.
>
> The bestcomm dma seems to miss bits, bytes in the last word (32bit) of a
> dma block. Mostly it is one byte which becomes 0. The blocks are 256
> bytes and written/read by 32 bits.
> The behavior is influenced by cpu activity, bus priorities. So far I
> found no settings which have never errors.
>
> Did you have any further progress?
>
> Regards
>
> Hans Thielemans
>



-- 
David Kanceruk

"The generation of random numbers is far too important to be left to chance."

       reply	other threads:[~2007-05-15 15:04 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1179234357.1668.10.camel@pc-hans>
2007-05-15 15:03 ` David Kanceruk [this message]
2007-05-16  6:56   ` MPC5200 ethernet communication stops unexpected Sylvain Munaut
2007-05-21  7:43   ` Eberhard Stoll
2007-05-16  7:29 Hans Thielemans
2007-05-16 15:25 ` John Rigby
  -- strict thread matches above, loose matches on Subject: below --
2007-05-15 15:16 Hans Thielemans
2007-05-15 15:40 ` David Kanceruk
2007-04-20 19:21 Eberhard Stoll
2007-04-27 14:35 ` tacitus
2007-04-27 15:42   ` Daniel Schnell
2007-04-27 17:09   ` Eberhard Stoll
2007-04-27 17:22     ` David Kanceruk
     [not found]       ` <4632369E.8010000@berghof.com>
2007-04-27 18:15         ` David Kanceruk
2007-04-30 20:49     ` Wolfgang Denk

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=5b525e390705150803l516a5d9x9c214e2b4b00ea0e@mail.gmail.com \
    --to=david.kanceruk@gmail.com \
    --cc=hans.thielemans@metris.com \
    --cc=linuxppc-embedded@ozlabs.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 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).