devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Dmitry Osipenko <digetx@gmail.com>
To: Thierry Reding <thierry.reding@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>,
	Rob Herring <robh+dt@kernel.org>,
	Jon Hunter <jonathanh@nvidia.com>,
	linux-tegra@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/7] clocksource: Add Tegra186 timers support
Date: Fri, 20 Mar 2020 18:23:35 +0300	[thread overview]
Message-ID: <5a559950-0497-b24f-6484-c2513375fe62@gmail.com> (raw)
In-Reply-To: <20200320150406.GA3706404@ulmo>

20.03.2020 18:04, Thierry Reding пишет:
> On Fri, Mar 20, 2020 at 05:39:01PM +0300, Dmitry Osipenko wrote:
>> 20.03.2020 16:34, Thierry Reding пишет:
>>> From: Thierry Reding <treding@nvidia.com>
>>>
>>> Currently this only supports a single watchdog, which uses a timer in
>>> the background for countdown. Eventually the timers could be used for
>>> various time-keeping tasks, but by default the architected timer will
>>> already provide that functionality.
>>>
>>> Signed-off-by: Thierry Reding <treding@nvidia.com>
>>> ---
>>>  drivers/clocksource/Kconfig          |   8 +
>>>  drivers/clocksource/Makefile         |   1 +
>>>  drivers/clocksource/timer-tegra186.c | 377 +++++++++++++++++++++++++++
>>>  3 files changed, 386 insertions(+)
>>>  create mode 100644 drivers/clocksource/timer-tegra186.c
>> Hello Thierry,
>>
>> Shouldn't this driver reside in drivers/watchdog/? Like it's done in a
>> case of the T30+ driver.
> 
> The hardware block that this binds to is primarily a time-keeping block
> that just so happens to also implement a watchdog. Moving this to
> drivers/watchdog would put us into an odd situation if we ever added
> code to also implement the time-keeping bits for this hardware.
> 
> I also think that the way this is done on Tegra30 was a bad choice. The
> problem is that we now have two drivers (tegra_wdt.c and tegra-timer.c)
> that both access the same region of memory. This seems to be relatively
> safe to do on those chips because there's no overlap between the timer
> and the watchdog interfaces, but on Tegra186 and later the watchdog is
> actually using one of the timers, so we'd have to be extra careful how
> to coordinate between the two. It seems much easier to do that by having
> everything in the same driver and have that register multiple devices in
> the system.

Sounds like a watchdog on Tegra20, where one of the timer is shared with
a watchdog function and there are no other free timers. Well, yes, it's
not nice.

But, will you really ever need an additional clocksource on T186?

  reply	other threads:[~2020-03-20 15:23 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-20 13:34 [PATCH 0/7] clocksource: Add NVIDIA Tegra186 timers support Thierry Reding
2020-03-20 13:34 ` [PATCH 1/7] dt-bindings: timer: Add bindings for NVIDIA Tegra186 timers Thierry Reding
2020-03-30 23:28   ` Rob Herring
2020-03-20 13:34 ` [PATCH 2/7] clocksource: Add Tegra186 timers support Thierry Reding
2020-03-20 14:39   ` Dmitry Osipenko
2020-03-20 15:04     ` Thierry Reding
2020-03-20 15:23       ` Dmitry Osipenko [this message]
2020-03-23 13:38         ` Thierry Reding
2020-03-31 20:04         ` Thierry Reding
2020-03-20 15:11   ` Dmitry Osipenko
2020-03-20 15:38     ` Dmitry Osipenko
2020-03-23 13:42       ` Thierry Reding
2020-03-23 13:45         ` Dmitry Osipenko
2020-03-23 16:10           ` Dmitry Osipenko
2020-03-31 19:58           ` Thierry Reding
2020-03-20 13:34 ` [PATCH 3/7] arm64: tegra: Order nodes by unit-address on Tegra194 Thierry Reding
2020-03-20 13:34 ` [PATCH 4/7] arm64: tegra: Add native timer support on Tegra186 Thierry Reding
2020-03-20 13:34 ` [PATCH 5/7] arm64: tegra: Enable native timers on Jetson TX2 Thierry Reding
2020-03-20 13:34 ` [PATCH 6/7] arm64: tegra: Add native timer support on Tegra194 Thierry Reding
2020-03-20 13:34 ` [PATCH 7/7] arm64: tegra: Enable native timers on Jetson AGX Xavier Thierry Reding

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=5a559950-0497-b24f-6484-c2513375fe62@gmail.com \
    --to=digetx@gmail.com \
    --cc=devicetree@vger.kernel.org \
    --cc=jonathanh@nvidia.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tegra@vger.kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=tglx@linutronix.de \
    --cc=thierry.reding@gmail.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 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).