From: thierry.reding@gmail.com (Thierry Reding)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 0/8] asm-generic/io.h overhaul
Date: Wed, 24 Sep 2014 08:04:21 +0200 [thread overview]
Message-ID: <20140924060419.GA20253@ulmo> (raw)
In-Reply-To: <20140825112630.GA4163@ulmo.nvidia.com>
On Mon, Aug 25, 2014 at 01:26:33PM +0200, Thierry Reding wrote:
> On Wed, Aug 13, 2014 at 12:28:50PM +0200, Thierry Reding wrote:
> > From: Thierry Reding <treding@nvidia.com>
> >
> > Hi,
> >
> > Here is the fourth version of a series that started out as an attempt to
> > provide string versions of the read*() and write*() accessors to more
> > architectures so that drivers can use them portably. The series has
> > since evolved into a more general cleanup of asm-generic/io.h and the
> > functions defined therein.
> >
> > Patch 1 is trivial and removes a redundant redefinition of PCI_IOBASE
> > from the asm/io.h header on ARC. Patches 2 and 3 remove unnecessary
> > volatile keywoards from some functions, which is a prerequisite to clean
> > up some of the functions in subsequent patches.
> >
> > The xlate_dev_{kmem,mem}_ptr() functions are used to map memory when the
> > /dev/mem device is accessed. Patches 4 and 5 use more consistent data
> > types for these functions, which will get a "standard" prototype in the
> > asm-generic/io.h header in a subsequent patch.
> >
> > Patch 6 is the bulk of this series. It implements the string variants of
> > the read*() and write*() accessors and cleans up various other parts of
> > the asm-generic/io.h header file. Macros are converted to static inline
> > functions for better type checking. Overriding generic implementations
> > in architectures is handled more consistently.
> >
> > Patches 7 and 8, finally, make use of the asm-generic/io.h header on the
> > 32-bit and 64-bit ARM architectures.
> >
> > This is compile- and runtime-tested on 32-bit and 64-bit ARM and compile
> > tested on IA64, Microblaze, s390, SPARC, x86 and Xtensa. For ARC,
> > Blackfin, Metag, OpenRISC, Score and Unicore32 which also use
> > asm-generic/io.h I couldn't find or build a cross-compiler that would
> > run on my system. But by code inspection they shouldn't break with this
> > patch.
> >
> > To ensure bisectability I built multi_v7_defconfig on 32-bit ARM and the
> > defconfig for 64-bit ARM, IA64, Microblaze, s390, SPARC, x86 and Xtensa
> > after each commit and verified that the series does not introduce any
> > build errors or warnings.
> >
> > Provided there are no objections to the patches there's still the matter
> > of how to merge them. Patch 6 depends on patches 1-5 to avoid warnings
> > and/or errors during the build. Patches 7 and 8 depend on patch 6. In my
> > opinion it doesn't make much sense to split them up, so I guess we'll
> > need a volunteer to take them all into one tree. Ideally that tree would
> > feed into linux-next so that we can get as much build and test-coverage
> > as possible during the 3.17 release cycle so that these patches can go
> > into 3.18.
> >
> > Arnd, I'm opportunistically sending this To: you in the hopes that you
> > can take it into your asm-generic tree which seems like the best fit for
> > this.
> >
> > Thierry
> >
> > Thierry Reding (8):
> > ARC: Remove redundant PCI_IOBASE declaration
> > serial: sunzilog: Remove unnecessary volatile keyword
> > sparc: Remove unnecessary volatile usage
> > [IA64] Change xlate_dev_{kmem,mem}_ptr() prototypes
> > /dev/mem: Use more consistent data types
> > asm-generic/io.h: Implement generic {read,write}s*()
> > ARM: Use include/asm-generic/io.h
> > arm64: Use include/asm-generic/io.h
> >
> > arch/arc/include/asm/io.h | 2 -
> > arch/arm/include/asm/io.h | 75 ++---
> > arch/arm/include/asm/memory.h | 2 +
> > arch/arm64/Kconfig | 1 -
> > arch/arm64/include/asm/io.h | 122 ++-----
> > arch/arm64/include/asm/memory.h | 2 +
> > arch/ia64/include/asm/uaccess.h | 16 +-
> > arch/s390/include/asm/io.h | 5 +-
> > arch/s390/mm/maccess.c | 4 +-
> > arch/sparc/include/asm/io_32.h | 18 +-
> > arch/x86/include/asm/io.h | 4 +-
> > arch/x86/mm/ioremap.c | 4 +-
> > drivers/char/mem.c | 13 +-
> > drivers/tty/serial/sunzilog.h | 8 +-
> > include/asm-generic/io.h | 683 ++++++++++++++++++++++++++++++++--------
> > 15 files changed, 647 insertions(+), 312 deletions(-)
>
> Arnd, do you think this looks good to take for test-driving in
> linux-next?
Ping?
Thierry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20140924/df30e9fe/attachment.sig>
next prev parent reply other threads:[~2014-09-24 6:04 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-13 10:28 [PATCH v4 0/8] asm-generic/io.h overhaul Thierry Reding
2014-08-13 10:28 ` [PATCH v4 1/8] ARC: Remove redundant PCI_IOBASE declaration Thierry Reding
2014-08-13 10:28 ` [PATCH v4 2/8] serial: sunzilog: Remove unnecessary volatile keyword Thierry Reding
2014-08-13 10:28 ` [PATCH v4 3/8] sparc: Remove unnecessary volatile usage Thierry Reding
2014-08-13 10:28 ` [PATCH v4 4/8] [IA64] Change xlate_dev_{kmem,mem}_ptr() prototypes Thierry Reding
2014-08-13 10:28 ` [PATCH v4 5/8] /dev/mem: Use more consistent data types Thierry Reding
2014-08-13 10:28 ` [PATCH v4 6/8] asm-generic/io.h: Implement generic {read,write}s*() Thierry Reding
2014-09-29 8:54 ` [PATCH v4 6/8] asm-generic/io.h: Implement generic {read, write}s*() Geert Uytterhoeven
2014-09-29 8:59 ` [PATCH v4 6/8] asm-generic/io.h: Implement generic {read,write}s*() Thierry Reding
2014-09-30 10:22 ` [PATCH v4 6/8] asm-generic/io.h: Implement generic {read, write}s*() Max Filippov
2014-09-30 10:26 ` Max Filippov
2014-09-30 10:39 ` Arnd Bergmann
2014-09-30 10:51 ` [PATCH v4 6/8] asm-generic/io.h: Implement generic {read,write}s*() Thierry Reding
2014-08-13 10:28 ` [PATCH v4 7/8] ARM: Use include/asm-generic/io.h Thierry Reding
2014-08-13 10:28 ` [PATCH v4 8/8] arm64: " Thierry Reding
2014-08-25 11:26 ` [PATCH v4 0/8] asm-generic/io.h overhaul Thierry Reding
2014-09-24 6:04 ` Thierry Reding [this message]
2014-09-25 14:56 ` Arnd Bergmann
2014-08-25 11:53 ` Richard Weinberger
2014-08-25 12:27 ` Thierry Reding
2014-08-25 12:52 ` Richard Weinberger
2014-08-25 13:37 ` Thierry Reding
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=20140924060419.GA20253@ulmo \
--to=thierry.reding@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
/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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).