All of lore.kernel.org
 help / color / mirror / Atom feed
From: benh@kernel.crashing.org (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:41:32 +1000	[thread overview]
Message-ID: <1491774092.4166.195.camel@kernel.crashing.org> (raw)
In-Reply-To: <5344146a-f450-7959-4688-a83ee022574b@linux.vnet.ibm.com>

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 ?

Cheers,
Ben.

WARNING: multiple messages have this Message-ID (diff)
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Christopher Bostic <cbostic@linux.vnet.ibm.com>,
	Joel Stanley <joel@jms.id.au>
Cc: Mark Rutland <mark.rutland@arm.com>,
	devicetree@vger.kernel.org, Andrew Jeffery <andrew@aj.id.au>,
	Greg KH <gregkh@linuxfoundation.org>,
	Russell King <linux@armlinux.org.uk>,
	rostedt@goodmis.org,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Rob Herring <robh+dt@kernel.org>, Jeremy Kerr <jk@ozlabs.org>,
	"Edward A . James" <eajames@us.ibm.com>,
	Alistair Popple <alistair@popple.id.au>,
	mingo@redhat.com, linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v4 19/23] drivers/fsi: Add GPIO based FSI master
Date: Mon, 10 Apr 2017 07:41:32 +1000	[thread overview]
Message-ID: <1491774092.4166.195.camel@kernel.crashing.org> (raw)
In-Reply-To: <5344146a-f450-7959-4688-a83ee022574b@linux.vnet.ibm.com>

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 ?

Cheers,
Ben.

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Christopher Bostic <cbostic@linux.vnet.ibm.com>,
	Joel Stanley <joel@jms.id.au>
Cc: Rob Herring <robh+dt@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Russell King <linux@armlinux.org.uk>,
	rostedt@goodmis.org, mingo@redhat.com,
	Greg KH <gregkh@linuxfoundation.org>,
	devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Alistair Popple <alistair@popple.id.au>,
	"Edward A . James" <eajames@us.ibm.com>,
	Jeremy Kerr <jk@ozlabs.org>
Subject: Re: [PATCH v4 19/23] drivers/fsi: Add GPIO based FSI master
Date: Mon, 10 Apr 2017 07:41:32 +1000	[thread overview]
Message-ID: <1491774092.4166.195.camel@kernel.crashing.org> (raw)
In-Reply-To: <5344146a-f450-7959-4688-a83ee022574b@linux.vnet.ibm.com>

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 ?

Cheers,
Ben.

  reply	other threads:[~2017-04-09 21:41 UTC|newest]

Thread overview: 96+ 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 ` Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 01/23] drivers/fsi: Add fsi master definition Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 02/23] drivers/fsi: Add slave definition Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 03/23] drivers/fsi: Add empty master scan Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 04/23] drivers/fsi: Add crc4 helpers Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-03-29 17:43   ` 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   ` 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   ` Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 07/23] drivers/fsi: Implement slave initialisation Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-03-29 17:43   ` 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   ` Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 09/23] drivers/fsi: scan slaves & register devices Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-03-29 17:43   ` 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   ` Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 11/23] drivers/fsi: Add master unscan Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 12/23] drivers/fsi: Add documentation for GPIO bindings Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-04-03 15:24   ` Rob Herring
2017-04-03 15:24     ` Rob Herring
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   ` 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   ` 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   ` Christopher Bostic
2017-03-29 17:43   ` 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   ` Christopher Bostic
2017-03-29 17:43   ` 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   ` 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   ` Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 19/23] drivers/fsi: Add GPIO based FSI master Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-03-30  5:48   ` Joel Stanley
2017-03-30  5:48     ` Joel Stanley
2017-03-30  5:48     ` Joel Stanley
2017-03-30 18:15     ` Christopher Bostic
2017-03-30 18:15       ` Christopher Bostic
2017-03-30 18:15       ` Christopher Bostic
2017-03-30 20:50       ` Benjamin Herrenschmidt
2017-03-30 20:50         ` Benjamin Herrenschmidt
2017-03-30 20:50         ` Benjamin Herrenschmidt
2017-04-04 17:32         ` Christopher Bostic
2017-04-04 17:32           ` Christopher Bostic
2017-04-04 22:19           ` Benjamin Herrenschmidt
2017-04-04 22:19             ` Benjamin Herrenschmidt
2017-04-04 22:19             ` Benjamin Herrenschmidt
2017-04-05  1:24             ` Christopher Bostic
2017-04-05  1:24               ` Christopher Bostic
2017-04-05  1:24               ` Christopher Bostic
2017-04-09 21:22             ` Christopher Bostic
2017-04-09 21:22               ` Christopher Bostic
2017-04-09 21:22               ` Christopher Bostic
2017-04-09 21:41               ` Benjamin Herrenschmidt [this message]
2017-04-09 21:41                 ` Benjamin Herrenschmidt
2017-04-09 21:41                 ` Benjamin Herrenschmidt
2017-04-09 21:53                 ` Benjamin Herrenschmidt
2017-04-09 21:53                   ` Benjamin Herrenschmidt
2017-04-09 21:53                   ` Benjamin Herrenschmidt
2017-04-09 21:55                   ` Benjamin Herrenschmidt
2017-04-09 21:55                     ` Benjamin Herrenschmidt
2017-04-09 21:55                     ` Benjamin Herrenschmidt
2017-03-30 22:57       ` Joel Stanley
2017-03-30 22:57         ` Joel Stanley
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   ` 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   ` Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 22/23] drivers/fsi: Add hub master support Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-03-29 17:43 ` [PATCH v4 23/23] drivers/fsi: Use asynchronous slave mode Christopher Bostic
2017-03-29 17:43   ` Christopher Bostic
2017-03-29 17:43   ` 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=1491774092.4166.195.camel@kernel.crashing.org \
    --to=benh@kernel.crashing.org \
    --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.