From mboxrd@z Thu Jan 1 00:00:00 1970 From: Arnd Bergmann Subject: Re: [PATCH 20/28] nios2: Time keeping Date: Tue, 22 Apr 2014 15:44:33 +0200 Message-ID: <201404221544.33399.arnd@arndb.de> References: <1397824031-4892-1-git-send-email-lftan@altera.com> <1397824031-4892-17-git-send-email-lftan@altera.com> Mime-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1397824031-4892-17-git-send-email-lftan@altera.com> Sender: linux-kernel-owner@vger.kernel.org To: Ley Foon Tan Cc: linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, lftan.linux@gmail.com, cltang@codesourcery.com List-Id: linux-arch.vger.kernel.org On Friday 18 April 2014, Ley Foon Tan wrote: > +static inline unsigned long read_timersnapshot(void) > +{ > + unsigned long count; > + > + outw(0, timer_membase + ALTERA_TIMER_SNAPL_REG); > + count = > + inw(timer_membase + ALTERA_TIMER_SNAPH_REG) << 16 | > + inw(timer_membase + ALTERA_TIMER_SNAPL_REG); > + > + return count; > +} > + > +static inline void write_timerperiod(unsigned long period) > +{ > + outw(period, timer_membase + ALTERA_TIMER_PERIODL_REG); > + outw(period >> 16, timer_membase + ALTERA_TIMER_PERIODH_REG); > +} It's wrong to use 'outw' if this device is not on an PC-style ISA bus, which I assume it is not. Since timer_membase is an __iomem pointer, I'm sure you want to use writew() instead. Arnd From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from moutng.kundenserver.de ([212.227.126.131]:55724 "EHLO moutng.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756339AbaDVNok (ORCPT ); Tue, 22 Apr 2014 09:44:40 -0400 From: Arnd Bergmann Subject: Re: [PATCH 20/28] nios2: Time keeping Date: Tue, 22 Apr 2014 15:44:33 +0200 References: <1397824031-4892-1-git-send-email-lftan@altera.com> <1397824031-4892-17-git-send-email-lftan@altera.com> In-Reply-To: <1397824031-4892-17-git-send-email-lftan@altera.com> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Message-ID: <201404221544.33399.arnd@arndb.de> Sender: linux-arch-owner@vger.kernel.org List-ID: To: Ley Foon Tan Cc: linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, lftan.linux@gmail.com, cltang@codesourcery.com Message-ID: <20140422134433.w1ZXel0yowpbPrt4txT-nMUROVPChcQqph-pAphm9Ys@z> On Friday 18 April 2014, Ley Foon Tan wrote: > +static inline unsigned long read_timersnapshot(void) > +{ > + unsigned long count; > + > + outw(0, timer_membase + ALTERA_TIMER_SNAPL_REG); > + count = > + inw(timer_membase + ALTERA_TIMER_SNAPH_REG) << 16 | > + inw(timer_membase + ALTERA_TIMER_SNAPL_REG); > + > + return count; > +} > + > +static inline void write_timerperiod(unsigned long period) > +{ > + outw(period, timer_membase + ALTERA_TIMER_PERIODL_REG); > + outw(period >> 16, timer_membase + ALTERA_TIMER_PERIODH_REG); > +} It's wrong to use 'outw' if this device is not on an PC-style ISA bus, which I assume it is not. Since timer_membase is an __iomem pointer, I'm sure you want to use writew() instead. Arnd