From: Roger Quadros <rogerq@ti.com>
To: Robert Abel <rabel@cit-ec.uni-bielefeld.de>
Cc: khilman@deeprootsystems.com, Tony Lindgren <tony@atomide.com>,
linux@arm.linux.org.uk, linux-omap@vger.kernel.org,
Linux Kernel Maling List <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 2/4] ARM OMAP2+ GPMC: always program GPMCFCLKDIVIDER
Date: Tue, 17 Feb 2015 16:25:55 +0200 [thread overview]
Message-ID: <54E34F73.2080108@ti.com> (raw)
In-Reply-To: <CAMdRc4F1Ja2Y96W_VESuS=tueYE8Q+iWmoiJW2dj+6-HeDzNqQ@mail.gmail.com>
On 17/02/15 16:06, Robert Abel wrote:
> Hi Roger,
>
> On Tue, Feb 17, 2015 at 2:52 PM, Roger Quadros <rogerq@ti.com> wrote:
>> nobody stops the DT binding from specifying a large enough "gpmc,wait-monitoring-ns" value.
>> The driver must use that to scale the GPMC_CLK if it doesn't fit in the GPMC_FCLK.
>> This feature can come separately though. So for now I was suggesting to set the divisor to 1.
>> [...]
>> AFAIK "gpmc,sync-clk-ps" is not specified for asynchronous devices so it defaults to 0
>> in the driver.
>
> As you have rightly pointed out, sync-clk-ps defaults to 0, i.e.
> divider 1. My solution would work for people /now/ with different
> gpmc,wait-monitoring-ns requirements. Of course, in general you're
> right, the driver could compute that on its own. However, this
> influences sampling behavior of the GPMC, which is somewhat strange
> anyway. Since I lack a proper test setup and time to experiment with
> the GPMC, I'd compromise on leaving sync-clk-ps default to 0, divider
> defaults to 1. If somebody feels up to implementing driver-side
> GPMC_CLK scaling, they might as well nix the dependency at that point
> in time. Right now, keeping the dependency seems more useful to users
> than killing it right away.
one more thing to note is that just specifying sync-clk-ps in DT is not enough for
asynchronous devices.
The driver doesn't set gpmc_t->sync_clk if "gpmc,sync-read" or "gpmc,sync-write"
was not set in the DT, which would be the case for asynchronous devices.
>
>> What I'm stressing on is that there shouldn't be any dependency on "gpmc,sync-clk-ps" for
>> asynchronous devices. It also becomes easier to specify the wait-monitoring-ns as we don't need
>> to cross reference with "sync-clk-ps".
>
> As an aside: There shouldn't be a dependency on the FCLK for
> synchronous accesses either. The GPMC driver is in a somewhat terrible
> state that synchronous protocols have to specify in ns, which get
> scaled by the startup FCLK period... So this wrongful dependency
> doesn't make my top ten, especially since it right now would fit a use
> case.
What is your proposal to make things better? And what is your use case that doesn't
work with existing setup?
cheers,
-roger
WARNING: multiple messages have this Message-ID (diff)
From: Roger Quadros <rogerq@ti.com>
To: Robert Abel <rabel@cit-ec.uni-bielefeld.de>
Cc: <khilman@deeprootsystems.com>, Tony Lindgren <tony@atomide.com>,
<linux@arm.linux.org.uk>, <linux-omap@vger.kernel.org>,
Linux Kernel Maling List <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 2/4] ARM OMAP2+ GPMC: always program GPMCFCLKDIVIDER
Date: Tue, 17 Feb 2015 16:25:55 +0200 [thread overview]
Message-ID: <54E34F73.2080108@ti.com> (raw)
In-Reply-To: <CAMdRc4F1Ja2Y96W_VESuS=tueYE8Q+iWmoiJW2dj+6-HeDzNqQ@mail.gmail.com>
On 17/02/15 16:06, Robert Abel wrote:
> Hi Roger,
>
> On Tue, Feb 17, 2015 at 2:52 PM, Roger Quadros <rogerq@ti.com> wrote:
>> nobody stops the DT binding from specifying a large enough "gpmc,wait-monitoring-ns" value.
>> The driver must use that to scale the GPMC_CLK if it doesn't fit in the GPMC_FCLK.
>> This feature can come separately though. So for now I was suggesting to set the divisor to 1.
>> [...]
>> AFAIK "gpmc,sync-clk-ps" is not specified for asynchronous devices so it defaults to 0
>> in the driver.
>
> As you have rightly pointed out, sync-clk-ps defaults to 0, i.e.
> divider 1. My solution would work for people /now/ with different
> gpmc,wait-monitoring-ns requirements. Of course, in general you're
> right, the driver could compute that on its own. However, this
> influences sampling behavior of the GPMC, which is somewhat strange
> anyway. Since I lack a proper test setup and time to experiment with
> the GPMC, I'd compromise on leaving sync-clk-ps default to 0, divider
> defaults to 1. If somebody feels up to implementing driver-side
> GPMC_CLK scaling, they might as well nix the dependency at that point
> in time. Right now, keeping the dependency seems more useful to users
> than killing it right away.
one more thing to note is that just specifying sync-clk-ps in DT is not enough for
asynchronous devices.
The driver doesn't set gpmc_t->sync_clk if "gpmc,sync-read" or "gpmc,sync-write"
was not set in the DT, which would be the case for asynchronous devices.
>
>> What I'm stressing on is that there shouldn't be any dependency on "gpmc,sync-clk-ps" for
>> asynchronous devices. It also becomes easier to specify the wait-monitoring-ns as we don't need
>> to cross reference with "sync-clk-ps".
>
> As an aside: There shouldn't be a dependency on the FCLK for
> synchronous accesses either. The GPMC driver is in a somewhat terrible
> state that synchronous protocols have to specify in ns, which get
> scaled by the startup FCLK period... So this wrongful dependency
> doesn't make my top ten, especially since it right now would fit a use
> case.
What is your proposal to make things better? And what is your use case that doesn't
work with existing setup?
cheers,
-roger
next prev parent reply other threads:[~2015-02-17 14:25 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-16 15:48 [PATCH 0/4] ARM OMAP2+ GPMC: various fixes and bus children Robert ABEL
2015-02-16 15:48 ` [PATCH 1/4] ARM OMAP2+ GPMC: fix debug output alignment Robert ABEL
2015-02-16 15:48 ` [PATCH 2/4] ARM OMAP2+ GPMC: always program GPMCFCLKDIVIDER Robert ABEL
2015-02-16 15:49 ` [PATCH 3/4] ARM OMAP2+ GPMC: fix WAITMONITORINGTIME divider bug Robert ABEL
2015-02-16 15:49 ` [PATCH 4/4] ARM OMAP2+ GPMC: add bus children Robert ABEL
2015-02-17 9:41 ` Roger Quadros
2015-02-17 9:41 ` Roger Quadros
2015-02-17 13:57 ` Robert Abel
2015-02-17 14:15 ` Roger Quadros
2015-02-17 14:15 ` Roger Quadros
2015-02-17 9:27 ` [PATCH 3/4] ARM OMAP2+ GPMC: fix WAITMONITORINGTIME divider bug Roger Quadros
2015-02-17 9:27 ` Roger Quadros
2015-02-17 13:48 ` Robert Abel
2015-02-17 13:56 ` Roger Quadros
2015-02-17 13:56 ` Roger Quadros
2015-02-16 17:10 ` [PATCH 2/4] ARM OMAP2+ GPMC: always program GPMCFCLKDIVIDER Tony Lindgren
2015-02-16 20:09 ` Robert Abel
2015-02-17 8:12 ` Roger Quadros
2015-02-17 8:12 ` Roger Quadros
2015-02-17 13:47 ` Robert Abel
[not found] ` <CAMdRc4F9B0ft-ExgQ1vHqwXMiONwWKn3FPCRDyHsjgGe1Dn_1w@mail.gmail.com>
2015-02-17 13:52 ` Roger Quadros
2015-02-17 13:52 ` Roger Quadros
2015-02-17 14:06 ` Robert Abel
2015-02-17 14:25 ` Roger Quadros [this message]
2015-02-17 14:25 ` Roger Quadros
2015-02-23 21:38 ` Robert Abel
2015-02-23 22:03 ` Tony Lindgren
2015-02-24 11:53 ` Roger Quadros
2015-02-24 11:53 ` Roger Quadros
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=54E34F73.2080108@ti.com \
--to=rogerq@ti.com \
--cc=khilman@deeprootsystems.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=rabel@cit-ec.uni-bielefeld.de \
--cc=tony@atomide.com \
/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.