All of lore.kernel.org
 help / color / mirror / Atom feed
From: joerg.krause@embedded.rocks (Jörg Krause)
To: linux-arm-kernel@lists.infradead.org
Subject: Low network throughput on i.MX28
Date: Fri, 04 Nov 2016 23:42:39 +0100	[thread overview]
Message-ID: <1478299359.26659.5.camel@embedded.rocks> (raw)
In-Reply-To: <1783642995.185945.5e54a2af-ba2c-4901-93f6-1967dd432939.open-xchange@email.1und1.de>

Hi Stefan,

sorry, I forget the link in the previous mail.

On Fri, 2016-11-04 at 20:30 +0100, Stefan Wahren wrote:
> Hi J?rg,
> 
> > J?rg Krause <joerg.krause@embedded.rocks> hat am 4. November 2016
> > um 19:44
> > geschrieben:
> > 
> > 
> > Hi Shawn,
> > 
> > On Wed, 2016-11-02 at 09:24 +0100, Stefan Wahren wrote:
> > > Am 02.11.2016 um 09:14 schrieb J?rg Krause:
> > > > On Sat, 2016-10-29 at 11:08 +0200, Stefan Wahren wrote:
> > > > > > J?rg Krause <joerg.krause@embedded.rocks> hat am 29.
> > > > > > Oktober
> > > > > > 2016
> > > > > > um 01:07
> > > > > > geschrieben:
> > > > > > 
> > > > > > 
> > > > > > You mentioned [1] an optimization in the Freescale vendor
> > > > > > Linux
> > > > > > kernel
> > > > > > [2]. I would really like to see this optimization in the
> > > > > > mainline
> > > > > > kernel.
> > > > > > 
> > > > > > Did you ever tried to port this code from Freescale to
> > > > > > mainline?
> > > > > 
> > > > > Yes, i tried once but i was frustrated soon because of the
> > > > > lot of
> > > > > required
> > > > > changes and resulting issues.
> > > > 
> > > > I got the PIO mode working for the mxs-mmc driver. For this I
> > > > ported
> > > > the PIO code from the vendor kernel and removed the usage of
> > > > the
> > > > DMA
> > > > engine entirely.
> > > 
> > > Good job
> > > 
> > > > 
> > > > Testing network bandwidth with iperf, I get about ~10Mbit/sec
> > > > with
> > > > PIO
> > > > mode compared to ~6.5Mbit/sec with DMA mode for UDP and about
> > > > ~6.5Mbit/sec compared to ~4.5Mbit/sec with DMA mode for TCP.
> > > 
> > > And how about MMC / sd card performance?
> > 
> > I noticed poor performance with the i.MX28 MMC and/or DMA driver
> > using
> > the mainline kernel compared to the vendor Freescale kernel 2.6.35.
> > I've seen that hou have added the drivers to mainline some years
> > ago.
> > 
> > My custom i.MX28 board has a wifi chip attached to the SSP2
> > interface.
> > Comparing the bandwith with iperf I get >20Mbits/sec on the vendor
> > kernel and <5Mbits/sec on the mainline kernel.
> 
> there is one thing about the clock handling. I noticed that the
> Vendor Kernel
> round up the clock frequency and the Mainline Kernel round down the
> clock
> frequency [1]. So don't trust the clock ratings from DT / board code.
> Better
> verify the register settings or check it with an osci.
> 
> [1] - http://www.spinics.net/lists/linux-mmc/msg09132.html

I checked the clock rate setting by reading the register 0x80014070
(HW_SSP2_TIMING). CLOCK_DIVIDE is 0x2 and CLOCK_RATE is 0x0. As SSP CLK
is 96MHz this makes a clock rate of 48MHz.

There was a discussion on the mailing list [1] about that tasklets
might be slow.

[1] http://lists.infradead.org/pipermail/linux-arm-kernel/2011-February
/043395.html

J?rg

  parent reply	other threads:[~2016-11-04 22:42 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-10-12 23:09 Low network throughput on i.MX28 Jörg Krause
2016-10-13  6:48 ` Lothar Waßmann
2016-10-13 19:43   ` Jörg Krause
2016-10-13 20:42     ` Uwe Kleine-König
2016-10-14  6:13     ` Lothar Waßmann
2016-10-15  8:46       ` Jörg Krause
2016-10-15  8:59         ` Stefan Wahren
2016-10-15  9:41           ` Jörg Krause
2016-10-15 16:16             ` Stefan Wahren
2016-10-28 23:07               ` Jörg Krause
2016-10-29  9:08                 ` Stefan Wahren
2016-10-29 13:08                   ` Jörg Krause
2016-11-02  8:14                   ` Jörg Krause
2016-11-02  8:24                     ` Stefan Wahren
2016-11-02  8:30                       ` Jörg Krause
2016-11-04 18:44                       ` Jörg Krause
2016-11-04 19:30                         ` Stefan Wahren
2016-11-04 20:56                           ` Jörg Krause
2016-11-04 22:42                           ` Jörg Krause [this message]
2016-11-05 11:33                             ` Stefan Wahren
2016-11-05 12:06                               ` Jörg Krause
2016-11-05 12:39                                 ` Koul, Vinod
2016-11-05 12:47                                   ` Jörg Krause
2016-11-05 12:48                                   ` Fabio Estevam
2016-11-05 13:14                                   ` Jörg Krause
2016-11-05 15:45                                     ` Koul, Vinod
2016-11-05 22:37                                       ` Jörg Krause
2016-11-18 23:49                                       ` Jörg Krause
2016-11-19 11:36                                         ` Stefan Wahren
2016-11-20  9:14                                           ` Jörg Krause
2016-10-15 11:18           ` Jörg Krause

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=1478299359.26659.5.camel@embedded.rocks \
    --to=joerg.krause@embedded.rocks \
    --cc=linux-arm-kernel@lists.infradead.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.