Re: [PATCH 06/25] ARM: tegra: Fix compatible string for Tegra30+ timer

Dmitry Osipenko
2021-12-10T15:23:38Z

10.12.2021 16:42, Thierry Reding пишет:
> On Thu, Dec 09, 2021 at 10:36:43PM +0300, Dmitry Osipenko wrote:
>> 09.12.2021 20:33, Thierry Reding пишет:
>>> From: Thierry Reding <treding@nvidia.com>
>>>
>>> The TKE (time-keeping engine) found on Tegra30 and later is not
>>> backwards compatible with the version found on Tegra20, so update the
>>> compatible string list accordingly.
>>>
>>> Signed-off-by: Thierry Reding <treding@nvidia.com>
>>> ---
>>> arch/arm/boot/dts/tegra114.dtsi | 2 +-
>>> arch/arm/boot/dts/tegra124.dtsi | 2 +-
>>> arch/arm/boot/dts/tegra30.dtsi | 2 +-
>>> 3 files changed, 3 insertions(+), 3 deletions(-)
...
>>> timer@60005000 {
>>> - compatible = "nvidia,tegra30-timer", "nvidia,tegra20-timer";
>>> + compatible = "nvidia,tegra30-timer";
>>> reg = <0x60005000 0x400>;
>>> interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
>>> <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
>>>
>>
>> What exactly is incompatible? IIRC, T30+ is a superset of T20. This
>> patch should be wrong, also see [1].
>
> As the comment in that location explains, Tegra114 and later have an
> architectural timer that is preferred over the legacy timer. So while
> this doesn't technically make Tegra114 incompatible (in terms of
> register programming, etc.) with Tegra20, in practice we don't want
> Tegra20 behaviour on Tegra114 and later.

So the T114 timer code works using the T20 code and we prefer to use the
ARCH timer on T114+ in the driver, what is the problem then? Where is
the incompatibility?

> For Tegra30, you're indeed correct, there shouldn't be a difference, so
> I can add that back in.

Please either add it back or extend the clocksource driver with the
additional compatibles.