From patchwork Mon Aug 1 08:02:07 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Mehnert, Torsten" X-Patchwork-Id: 1025072 Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) by demeter1.kernel.org (8.14.4/8.14.4) with ESMTP id p7182UJh010817 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Mon, 1 Aug 2011 08:02:51 GMT Received: from canuck.infradead.org ([2001:4978:20e::1]) by merlin.infradead.org with esmtps (Exim 4.76 #1 (Red Hat Linux)) id 1QnnS4-0004md-FS; Mon, 01 Aug 2011 08:02:16 +0000 Received: from localhost ([127.0.0.1] helo=canuck.infradead.org) by canuck.infradead.org with esmtp (Exim 4.76 #1 (Red Hat Linux)) id 1QnnS4-00083f-0s; Mon, 01 Aug 2011 08:02:16 +0000 Received: from mail.eckelmann.de ([217.19.183.94]) by canuck.infradead.org with esmtps (Exim 4.76 #1 (Red Hat Linux)) id 1QnnS0-00083L-E1 for linux-arm-kernel@lists.infradead.org; Mon, 01 Aug 2011 08:02:13 +0000 Received: from mail.eckelmann.de (localhost.localdomain [127.0.0.1]) by localhost (Email Security Appliance) with SMTP id 37474178AC46_E365D80B; Mon, 1 Aug 2011 08:02:08 +0000 (GMT) Received: from dag.eckelmann.group (ex-dag01.eckelmann.group [192.168.13.8]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (Client CN "eckelmann.group", Issuer "Eckelmann Root CA" (not verified)) by mail.eckelmann.de (Sophos Email Appliance) with ESMTP id 1FD50178AC0C_E365D80F; Mon, 1 Aug 2011 08:02:08 +0000 (GMT) Received: from EX-DAG02.eckelmann.group ([fe80::5d1b:3915:5c51:5117]) by EX-DAG01.eckelmann.group ([fe80::2496:326c:27e8:2b5d%13]) with mapi id 14.01.0289.001; Mon, 1 Aug 2011 10:02:08 +0200 From: "Mehnert, Torsten" To: "linux-arm-kernel@lists.infradead.org" Subject: [PATCH] i.MX25 GPT clock fix: ensure correct the clock source Thread-Topic: [PATCH] i.MX25 GPT clock fix: ensure correct the clock source Thread-Index: AcxQIU6A5Zrsq9TjQ2egx1p0HoXcMQ== Date: Mon, 1 Aug 2011 08:02:07 +0000 Message-ID: <3F263ABB4EDE344D974E1983B56807734FFAB7A9@EX-DAG02.eckelmann.group> Accept-Language: de-DE, en-US Content-Language: de-DE X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [172.16.181.0] MIME-Version: 1.0 X-CRM114-Version: 20090807-BlameThorstenAndJenny ( TRE 0.7.6 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20110801_040212_609939_E8EBFCA9 X-CRM114-Status: GOOD ( 15.58 ) X-Spam-Score: -0.7 (/) X-Spam-Report: SpamAssassin version 3.3.1 on canuck.infradead.org summary: Content analysis details: (-0.7 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RP_MATCHES_RCVD Envelope sender domain matches handover relay domain Cc: Sascha Hauer , "kernel@pengutronix.de" X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: linux-arm-kernel-bounces@lists.infradead.org Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter1.kernel.org [140.211.167.41]); Mon, 01 Aug 2011 08:02:51 +0000 (UTC) X-MIME-Autoconverted: from quoted-printable to 8bit by demeter1.kernel.org id p7182UJh010817 Request for comment and commit. From: T. Mehnert Date: Mon, 4 Jul 2011 15:53:30 +0200 Subject: [PATCH] i.MX25 GPT clock fix: ensure correct the clock source This patch ensures, that Linux will take the correct clock source (AHB_DIV) for gpt in the ARM i.MX25 implementation. The currect code depends on the reset defaults of the CCM_MCR register. So on some boards it could happen that the UPLL is used for clock source, which results in faulty time behavior in Linux. In this case all delays or sleeps will will be faktor 1.8 too long. Signed-off-by: Torsten Mehnert --- arch/arm/mach-imx/clock-imx25.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) -- 1.7.0.4 best regards, Torsten Torsten Mehnert Kälte- und Gebäudeleittechnik (KGL) ECKELMANN AG Berliner Straße 161 D - 65205 Wiesbaden Phone: +49 (0) 611 / 7103 - 370 Fax: +49 (0) 611 / 7103 - 133 e-Mail: mailto:t.mehnert@eckelmann.de Web: http://www.eckelmann.de ECKELMANN AG Vorstand: Dr.-Ing. Gerd Eckelmann (Vorsitzender), Dr.-Ing. Peter Cordes, Dr.-Ing. Frank-Thomas Mellert Vorsitzender des Aufsichtsrats: Hubertus G. Krossa Sitz der Gesellschaft: Wiesbaden Amtsgericht Wiesbaden, HRB 12636 diff --git a/arch/arm/mach-imx/clock-imx25.c b/arch/arm/mach-imx/clock-imx25.c index a65838f..bf1ecda 100644 --- a/arch/arm/mach-imx/clock-imx25.c +++ b/arch/arm/mach-imx/clock-imx25.c @@ -328,6 +328,10 @@ int __init mx25_clocks_init(void) __raw_writel(__raw_readl(CRM_BASE+0x64) | (1 << 7) | (1 << 0), CRM_BASE + 0x64); + /* Clock source for gpt is ahb_div */ + __raw_writel(__raw_readl(CRM_BASE+0x64) & ~(1 << 5), + CRM_BASE + 0x64); + mxc_timer_init(&gpt_clk, MX25_IO_ADDRESS(MX25_GPT1_BASE_ADDR), 54); return 0;