From: benh@au1.ibm.com (Benjamin Herrenschmidt)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 19/23] drivers/fsi: Add GPIO based FSI master
Date: Mon, 10 Apr 2017 07:53:55 +1000 [thread overview]
Message-ID: <1491774835.4166.197.camel@au1.ibm.com> (raw)
In-Reply-To: <1491774092.4166.195.camel@kernel.crashing.org>
On Mon, 2017-04-10 at 07:41 +1000, Benjamin Herrenschmidt wrote:
> On Sun, 2017-04-09 at 16:22 -0500, Christopher Bostic wrote:
> > A 3 microsecond delay is required, however, to prevent occasional
> > issues?
> > during heavy FSI bus load stress testing.
> > A 1 nanosecond delay using ndelay(1) had been specified prior to
> > this?
> > but after looking more closely at real time performance it turned
> > out to?
> > actually be roughly 1-2 microseconds.?? This appears to be the
> > minimum?
> > resolution using the delay() linux libraries on the
> > AST2400/2500.???
> > Given this, increasing delay to 3 microseconds doesn't impact?
> > performance much considering I can now remove the sample input
> > delay?
> > based on your recommendations to re-order the two clock delays.
>
> This is huge delays. We should consider a AST2xxx specific variant of
> the backend that uses nops or similar lab-calibrated constructs
> instead. Otherwise we are stuck in the kHz range, this is a >200Mhz
> bus
> :)
>
> I don't understand why 3us delay would thus be necessary.
>
> Where about did you observe issues ? Could it be that you don't wait
> long enough in the transitions from write to read ?
FYI. pdbg in userspace operates without any delays in practice, the
overhead between the various load/store instructions seems sufficient.
The only delay that's needed is when going through the FSI2PIB (to do
SCOMs) where it seems like back-2-back accesses can be problematic.
Cheers,
Ben
next prev parent reply other threads:[~2017-04-09 21:53 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-29 17:43 [PATCH v4 00/23] FSI device driver implementation Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 01/23] drivers/fsi: Add fsi master definition Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 02/23] drivers/fsi: Add slave definition Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 03/23] drivers/fsi: Add empty master scan Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 04/23] drivers/fsi: Add crc4 helpers Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 05/23] drivers/fsi: Add slave & master read/write APIs Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 06/23] drivers/fsi: Set up links for slave communication Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 07/23] drivers/fsi: Implement slave initialisation Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 08/23] drivers/fsi: Set slave SMODE to init communication Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 09/23] drivers/fsi: scan slaves & register devices Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 10/23] drivers/fsi: Add device read/write/peek API Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 11/23] drivers/fsi: Add master unscan Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 12/23] drivers/fsi: Add documentation for GPIO bindings Christopher Bostic
2017-04-03 15:24 ` Rob Herring
2017-03-29 17:43 ` [PATCH v4 13/23] drivers/fsi: Add client driver register utilities Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 14/23] drivers/fsi: Add sysfs files for FSI master & slave accesses Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 15/23] drivers/fsi: expose direct-access slave API Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 16/23] drivers/fsi: Add tracepoints for low-level operations Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 17/23] drivers/fsi: Add error handling for slave communication errors Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 18/23] drivers/fsi: Document FSI master sysfs files in ABI Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 19/23] drivers/fsi: Add GPIO based FSI master Christopher Bostic
2017-03-30 5:48 ` Joel Stanley
2017-03-30 18:15 ` Christopher Bostic
2017-03-30 20:50 ` Benjamin Herrenschmidt
2017-04-04 17:32 ` Christopher Bostic
2017-04-04 22:19 ` Benjamin Herrenschmidt
2017-04-05 1:24 ` Christopher Bostic
2017-04-09 21:22 ` Christopher Bostic
2017-04-09 21:41 ` Benjamin Herrenschmidt
2017-04-09 21:53 ` Benjamin Herrenschmidt [this message]
2017-04-09 21:55 ` Benjamin Herrenschmidt
2017-03-30 22:57 ` Joel Stanley
2017-03-29 17:43 ` [PATCH v4 20/23] drivers/fsi/gpio: Add tracepoints for GPIO master Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 21/23] drivers/fsi: Add SCOM FSI client device driver Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 22/23] drivers/fsi: Add hub master support Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 23/23] drivers/fsi: Use asynchronous slave mode Christopher Bostic
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=1491774835.4166.197.camel@au1.ibm.com \
--to=benh@au1.ibm.com \
--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 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).