From: Will Deacon <will.deacon@arm.com> To: Arnd Bergmann <arnd@arndb.de> Cc: linux-arch <linux-arch@vger.kernel.org>, Linux Kernel Mailing List <linux-kernel@vger.kernel.org>, andrew.murray@arm.com, Catalin Marinas <catalin.marinas@arm.com>, linux-riscv@lists.infradead.org, Palmer Dabbelt <palmer@sifive.com>, Albert Ou <aou@eecs.berkeley.edu> Subject: Re: [PATCH 1/2] asm-generic/io: Pass result on inX() accessor to __io_par() Date: Wed, 13 Feb 2019 17:46:08 +0000 [thread overview] Message-ID: <20190213174608.GA29100@fuggles.cambridge.arm.com> (raw) In-Reply-To: <CAK8P3a1gmJTt+jdTbdSYZ0z43qodxf+co757K1-Hq1mj4fCqQA@mail.gmail.com> On Tue, Feb 12, 2019 at 12:55:17PM +0100, Arnd Bergmann wrote: > On Mon, Feb 11, 2019 at 6:45 PM Will Deacon <will.deacon@arm.com> wrote: > > > > The inX() I/O accessors must enforce ordering against subsequent calls > > to the delay() routines, so that a read-back from a device can be used > > to postpone a subsequent write to the same device. > > > > On some architectures, including arm64, this ordering can only be > > achieved by creating a dependency on the value returned by the inX() > > operation, so we need to pass the value we read to the __io_par() > > macro in this case. > > > > Reported-by: Andrew Murray <andrew.murray@arm.com> > > Signed-off-by: Will Deacon <will.deacon@arm.com> > > --- > > include/asm-generic/io.h | 8 ++++---- > > For changing the asm-generic file in the arm64 tree, > > Acked-by: Arnd Bergmann <arnd@arndb.de> Thanks, Arnd. > For all I can see, this should not conflict with the usage of the > same macros on RISC-V, though it does make add a significant > difference, so I'd like to see an Ack from the RISC-V folks as > well (added to Cc), or possibly a change to arch/riscv/include/asm/io.h > to do a corresponding change. There's already a comment in that header which says that the accesses are ordered wrt timer reads, so I don't think anything needs to change there. For consistency with the macro arguments, I could augment their __io_par to take the read value as an unused argument, if that's what you mean? Will
WARNING: multiple messages have this Message-ID (diff)
From: Will Deacon <will.deacon@arm.com> To: Arnd Bergmann <arnd@arndb.de> Cc: linux-arch <linux-arch@vger.kernel.org>, Albert Ou <aou@eecs.berkeley.edu>, Catalin Marinas <catalin.marinas@arm.com>, Palmer Dabbelt <palmer@sifive.com>, Linux Kernel Mailing List <linux-kernel@vger.kernel.org>, andrew.murray@arm.com, linux-riscv@lists.infradead.org Subject: Re: [PATCH 1/2] asm-generic/io: Pass result on inX() accessor to __io_par() Date: Wed, 13 Feb 2019 17:46:08 +0000 [thread overview] Message-ID: <20190213174608.GA29100@fuggles.cambridge.arm.com> (raw) In-Reply-To: <CAK8P3a1gmJTt+jdTbdSYZ0z43qodxf+co757K1-Hq1mj4fCqQA@mail.gmail.com> On Tue, Feb 12, 2019 at 12:55:17PM +0100, Arnd Bergmann wrote: > On Mon, Feb 11, 2019 at 6:45 PM Will Deacon <will.deacon@arm.com> wrote: > > > > The inX() I/O accessors must enforce ordering against subsequent calls > > to the delay() routines, so that a read-back from a device can be used > > to postpone a subsequent write to the same device. > > > > On some architectures, including arm64, this ordering can only be > > achieved by creating a dependency on the value returned by the inX() > > operation, so we need to pass the value we read to the __io_par() > > macro in this case. > > > > Reported-by: Andrew Murray <andrew.murray@arm.com> > > Signed-off-by: Will Deacon <will.deacon@arm.com> > > --- > > include/asm-generic/io.h | 8 ++++---- > > For changing the asm-generic file in the arm64 tree, > > Acked-by: Arnd Bergmann <arnd@arndb.de> Thanks, Arnd. > For all I can see, this should not conflict with the usage of the > same macros on RISC-V, though it does make add a significant > difference, so I'd like to see an Ack from the RISC-V folks as > well (added to Cc), or possibly a change to arch/riscv/include/asm/io.h > to do a corresponding change. There's already a comment in that header which says that the accesses are ordered wrt timer reads, so I don't think anything needs to change there. For consistency with the macro arguments, I could augment their __io_par to take the read value as an unused argument, if that's what you mean? Will _______________________________________________ linux-riscv mailing list linux-riscv@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-riscv
next prev parent reply other threads:[~2019-02-13 17:46 UTC|newest] Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-02-11 17:45 [PATCH 0/2] Ensure inX() is ordered wrt delay() routines Will Deacon 2019-02-11 17:45 ` [PATCH 1/2] asm-generic/io: Pass result on inX() accessor to __io_par() Will Deacon 2019-02-12 11:55 ` Arnd Bergmann 2019-02-12 11:55 ` Arnd Bergmann 2019-02-13 17:46 ` Will Deacon [this message] 2019-02-13 17:46 ` Will Deacon 2019-02-13 20:59 ` Arnd Bergmann 2019-02-13 20:59 ` Arnd Bergmann 2019-02-13 21:57 ` Palmer Dabbelt 2019-02-13 21:57 ` Palmer Dabbelt 2019-02-18 15:56 ` Will Deacon 2019-02-18 15:56 ` Will Deacon 2019-02-11 17:45 ` [PATCH 2/2] arm64: io: Hook up __io_par() for inX() ordering Will Deacon 2019-02-12 10:42 ` Geert Uytterhoeven 2019-02-13 17:25 ` Will Deacon
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=20190213174608.GA29100@fuggles.cambridge.arm.com \ --to=will.deacon@arm.com \ --cc=andrew.murray@arm.com \ --cc=aou@eecs.berkeley.edu \ --cc=arnd@arndb.de \ --cc=catalin.marinas@arm.com \ --cc=linux-arch@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-riscv@lists.infradead.org \ --cc=palmer@sifive.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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.