Received: by 2002:a25:ab43:0:0:0:0:0 with SMTP id u61csp73920ybi; Tue, 18 Jun 2019 17:43:04 -0700 (PDT) X-Google-Smtp-Source: APXvYqyTRJS1XEFxD202IC/25SDIv21LfrDVJLJ+xkKwftZ+opyUTN3jUeLzBUZTFpFOFsBYHlAY X-Received: by 2002:a17:90a:b78b:: with SMTP id m11mr8287447pjr.106.1560904984362; Tue, 18 Jun 2019 17:43:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1560904984; cv=none; d=google.com; s=arc-20160816; b=rLedPWc8n3L4QhzOyKUSKK7BWU8tMtCQuP4HaGFjC34oWezA7SSXbhKW1wqe+OacKE hWpi1VpMQPrKVTWetDSE4edzNy0SkVITZvzZ5AhLUDUSbmh7UDI1XdjaiAub46aaaTIu DLlKWBBeEdAKx2rYO1LSt3l9adKNM506H8skLSpkVQr0nzxvoIqRA2N577nGvmBRD86P sZx08ZMCEQjqlEwXidyGoZ+TwD/CDOMwk0b+3n6X9QRDKx2M2pF+VJwUe0qVdChbGcIu qptvj46W+Q6rp3AzAvJMl34Po/vIRB2GW4z/yPQcuOuuIMv7gN7UTiG7lRgVrDZLsq3I NQ6A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:dkim-signature; bh=4SHCjBMan004B+ijIlPx4Pn3xROU+n7uFgrQp2KsfSs=; b=IbNicCRRd1YT05c444oT5edfxmx16vYr5WwNCh6vKb5K8+Yx4zjXJ5RxzdRBwszj2y XStkekd/9VRF4esW4dTVKlomkWTGNoIhDYFBCckHlcQCvRbMAQpu/hZw7q+84SSB/Da/ 7uBCnOIHnIrxwHRws7Yzut9P3p+nJZ0e8sgQYRNvwT0Djw55PgnFxtTHhSar2rJOSXbn Ce+CjfeZp3ToznqYBbeF19jGqqEmwLKIuCM49/hBA8Vx0MJieIUT97UQWzXR2tnm2ble D/CPVqmUq5bn++5mQ2DGuRyXQQDPm+Gj/W+5JmqGznVsTyyy5Kn47cFBjanGUz9yNJFz iiLQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=eL+CRB0y; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id y17si15564588pfe.220.2019.06.18.17.42.49; Tue, 18 Jun 2019 17:43:04 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=eL+CRB0y; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729435AbfFSAlK (ORCPT + 99 others); Tue, 18 Jun 2019 20:41:10 -0400 Received: from mail-wm1-f68.google.com ([209.85.128.68]:53704 "EHLO mail-wm1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726023AbfFSAlK (ORCPT ); Tue, 18 Jun 2019 20:41:10 -0400 Received: by mail-wm1-f68.google.com with SMTP id x15so5147617wmj.3; Tue, 18 Jun 2019 17:41:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=4SHCjBMan004B+ijIlPx4Pn3xROU+n7uFgrQp2KsfSs=; b=eL+CRB0yQi9G/o531hvb2YOujfgf1xcnevSWIFFukShk/sDef498WkAoHShxPC0m5T rqVJ2SJmmL98sI2FQeVeYLw/N85A/Zud1WJ1MTjr0HoolcTeFcV6EHzwFE7mWNmpBldY bIyiM9by8ogLGzdelWaDbzAAsKwCfAeIPeTSpagrI+6N9btBBid0mHUDvxGzdEmTifF7 GjmxXLlLfVfv78OSH1Wa5CXrNhb0WwRLUNpvqGyf2ft/h9xYqcMFtG+I4jUJc0Y0fJsn qtPk/rLLEkEwbhZ8FwyzVDSpfmPI/OIXbw4u857NjtcZNrir+ke/9Oz1ZB9cIB20vfY1 8kFA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=4SHCjBMan004B+ijIlPx4Pn3xROU+n7uFgrQp2KsfSs=; b=K2dUuDi79vUqAu0W06t7NuZkQ7Zde/yhEtl1mnGG8Z2swlxEULgQXEudDw0DhoFDix zVs1+BBb68bFGyTNLa2ipAdifDPl1XWvBjpC9F92ndrTk82mLaQ4HN36cvwxWeiVUJ2J JHRvlmpKsWsqilecA6mUpwGKV3GlZcNfNsTOJcpXZC+XgJEOxn+ewwcm2TYUuWR9y70w dyKZo/SmXlx77b/+7+NeZlHwZ/sdqYNS8k5mSdvi2axnWGl//HOXSS4pQcGm43TN7wEd ny5ic0nOWdF9iKqz/UZ5aFLoOhiQJTVTRwNKenf9mYtgk4OopVCInRU3y8D+mpOKv4AL f91A== X-Gm-Message-State: APjAAAV83LmFJjGzt0HItD/wkrLxkZkNKCensHkLZ2imexhcC5azFSIC CL8De1DTLGw6R8YYDr+9JChzAg7a X-Received: by 2002:a1c:a686:: with SMTP id p128mr157437wme.163.1560904867553; Tue, 18 Jun 2019 17:41:07 -0700 (PDT) Received: from [192.168.2.145] (ppp91-79-162-197.pppoe.mtu-net.ru. [91.79.162.197]) by smtp.googlemail.com with ESMTPSA id n10sm15767722wrw.83.2019.06.18.17.41.06 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 18 Jun 2019 17:41:06 -0700 (PDT) Subject: Re: [PATCH v3 3/8] clocksource/drivers/tegra: Set and use timer's period To: Jon Hunter , Daniel Lezcano , Thierry Reding , Peter De Schrijver Cc: linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org References: <20190618140358.13148-1-digetx@gmail.com> <20190618140358.13148-4-digetx@gmail.com> <16c20c1b-d106-cb1e-6d67-bdd402ecf57f@nvidia.com> From: Dmitry Osipenko Message-ID: <17556fe2-8481-258a-9be9-2598da0a67eb@gmail.com> Date: Wed, 19 Jun 2019 03:41:05 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.7.1 MIME-Version: 1.0 In-Reply-To: <16c20c1b-d106-cb1e-6d67-bdd402ecf57f@nvidia.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 18.06.2019 19:32, Jon Hunter пишет: > > On 18/06/2019 15:03, Dmitry Osipenko wrote: >> The of_clk structure has a period field that is set up initially by >> timer_of_clk_init(), that period value need to be adjusted for a case of >> TIMER1-9 that are running at a fixed rate that doesn't match the clock's >> rate. Note that the period value is currently used only by some of the >> clocksource drivers internally and hence this is just a minor cleanup >> change that doesn't fix anything. >> >> Signed-off-by: Dmitry Osipenko >> --- >> drivers/clocksource/timer-tegra.c | 5 +++-- >> 1 file changed, 3 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/clocksource/timer-tegra.c b/drivers/clocksource/timer-tegra.c >> index ff5a4ccb5d52..e6221e070499 100644 >> --- a/drivers/clocksource/timer-tegra.c >> +++ b/drivers/clocksource/timer-tegra.c >> @@ -71,9 +71,9 @@ static int tegra_timer_shutdown(struct clock_event_device *evt) >> static int tegra_timer_set_periodic(struct clock_event_device *evt) >> { >> void __iomem *reg_base = timer_of_base(to_timer_of(evt)); >> + unsigned long period = timer_of_period(to_timer_of(evt)); >> >> - writel_relaxed(TIMER_PTV_EN | TIMER_PTV_PER | >> - ((timer_of_rate(to_timer_of(evt)) / HZ) - 1), >> + writel_relaxed(TIMER_PTV_EN | TIMER_PTV_PER | (period - 1), >> reg_base + TIMER_PTV); >> >> return 0; >> @@ -297,6 +297,7 @@ static int __init tegra_init_timer(struct device_node *np, bool tegra20, >> cpu_to->clkevt.rating = rating; >> cpu_to->clkevt.cpumask = cpumask_of(cpu); >> cpu_to->of_base.base = timer_reg_base + base; >> + cpu_to->of_clk.period = rate / HZ; >> cpu_to->of_clk.rate = rate; >> >> irq_set_status_flags(cpu_to->clkevt.irq, IRQ_NOAUTOEN); > > Acked-by: Jon Hunter Thanks!