mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [GIT PULL] generic ioremap for 5.5
@ 2019-11-25 19:27 Christoph Hellwig
  2019-11-28 19:01 ` Linus Torvalds
  2019-11-28 19:20 ` pr-tracker-bot
  0 siblings, 2 replies; 4+ messages in thread
From: Christoph Hellwig @ 2019-11-25 19:27 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-kernel

Hi Linus,

this pull requests add the remaining bits for an entirely generic ioremap
and iounmap to lib/ioremap.c, and to facilitate that cleans up the giant
mess of weird ioremap variants we had with no users outside the arch
code.  For now just the three newest ports use the code, but there is
more than a handful others that can be converted without too much work.

There are two conflicts with the riscv tree - one is a trivial makefile
context one with the nommu support, and the other is the split of the
riscv <asm/io.h> which means that the removals in this pull request need
to be applied to the new location that they were moved to in the riscv
tree.

The following changes since commit 31f4f5b495a62c9a8b15b1c3581acd5efeb9af8c:

  Linux 5.4-rc7 (2019-11-10 16:17:15 -0800)

are available in the Git repository at:

  git://git.infradead.org/users/hch/ioremap.git tags/ioremap-5.5

for you to fetch changes up to eafee59440623e06b0ce4a0e49f814a8cf31d8ca:

  nds32: use generic ioremap (2019-11-12 11:37:58 +0100)

----------------------------------------------------------------
generic ioremap support

 - clean up various obsolete ioremap and iounmap variants
 - add a new generic ioremap implementation and switch csky, nds32 and
   riscv over to it

----------------------------------------------------------------
Christoph Hellwig (21):
      arm: remove ioremap_cached
      unicore32: remove ioremap_cached
      ia64: rename ioremap_nocache to ioremap_uc
      hexagon: clean up ioremap
      alpha: remove the unused __ioremap wrapper
      nios2: remove __ioremap
      parisc: remove __ioremap
      x86: Clean up ioremap()
      xtensa: clean up ioremap
      asm-generic: ioremap_uc should behave the same with and without MMU
      asm-generic: don't provide ioremap for CONFIG_MMU
      arch: rely on asm-generic/io.h for default ioremap_* definitions
      m68k: rename __iounmap and mark it static
      hexagon: remove __iounmap
      nios2: remove __iounmap
      sh: remove __iounmap
      lib: provide a simple generic ioremap implementation
      riscv: use the generic ioremap code
      csky: remove ioremap_cache
      csky: use generic ioremap
      nds32: use generic ioremap

 arch/alpha/include/asm/io.h         |   6 ---
 arch/arc/include/asm/io.h           |   4 --
 arch/arm/include/asm/io.h           |   7 ---
 arch/arm/mm/ioremap.c               |   4 --
 arch/arm/mm/mmu.c                   |   2 +-
 arch/arm/mm/nommu.c                 |   4 --
 arch/arm64/include/asm/io.h         |   2 -
 arch/csky/Kconfig                   |   1 +
 arch/csky/include/asm/io.h          |  11 ++--
 arch/csky/include/asm/pgtable.h     |   4 ++
 arch/csky/mm/ioremap.c              |  52 -------------------
 arch/hexagon/include/asm/io.h       |  18 ++-----
 arch/hexagon/kernel/hexagon_ksyms.c |   4 +-
 arch/hexagon/mm/ioremap.c           |   4 +-
 arch/ia64/include/asm/io.h          |   5 +-
 arch/ia64/mm/ioremap.c              |   4 +-
 arch/m68k/include/asm/kmap.h        |   1 -
 arch/m68k/mm/kmap.c                 | 100 ++++++++++++++++++------------------
 arch/microblaze/include/asm/io.h    |   3 --
 arch/nds32/Kconfig                  |   1 +
 arch/nds32/include/asm/io.h         |   3 +-
 arch/nds32/include/asm/pgtable.h    |   4 +-
 arch/nds32/mm/Makefile              |   3 +-
 arch/nds32/mm/ioremap.c             |  62 ----------------------
 arch/nios2/include/asm/io.h         |  25 +--------
 arch/nios2/mm/ioremap.c             |  23 +++------
 arch/openrisc/include/asm/io.h      |   1 -
 arch/parisc/include/asm/io.h        |  11 +---
 arch/parisc/mm/ioremap.c            |  10 ++--
 arch/riscv/Kconfig                  |   1 +
 arch/riscv/include/asm/io.h         |  13 -----
 arch/riscv/include/asm/pgtable.h    |   6 +++
 arch/riscv/mm/Makefile              |   1 -
 arch/riscv/mm/ioremap.c             |  84 ------------------------------
 arch/s390/include/asm/io.h          |   4 --
 arch/sh/include/asm/io.h            |   9 +---
 arch/sh/mm/ioremap.c                |   4 +-
 arch/sparc/include/asm/io_32.h      |   1 +
 arch/unicore32/include/asm/io.h     |   4 +-
 arch/unicore32/mm/ioremap.c         |   8 ---
 arch/x86/include/asm/io.h           |   7 +--
 arch/x86/mm/ioremap.c               |   8 +--
 arch/x86/mm/pageattr.c              |   4 +-
 arch/xtensa/include/asm/io.h        |  12 +----
 include/asm-generic/io.h            |  89 +++++++++++++-------------------
 lib/Kconfig                         |   3 ++
 lib/ioremap.c                       |  39 ++++++++++++++
 47 files changed, 189 insertions(+), 487 deletions(-)
 delete mode 100644 arch/nds32/mm/ioremap.c
 delete mode 100644 arch/riscv/mm/ioremap.c

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2019-12-03  2:52 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-25 19:27 [GIT PULL] generic ioremap for 5.5 Christoph Hellwig
2019-11-28 19:01 ` Linus Torvalds
2019-12-03  2:52   ` Paul Walmsley
2019-11-28 19:20 ` pr-tracker-bot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®