Toshi Kani e61ce6ade4 mm: change ioremap to set up huge I/O mappings
ioremap_pud_range() and ioremap_pmd_range() are changed to create huge I/O
mappings when their capability is enabled, and a request meets required
conditions -- both virtual & physical addresses are aligned by their huge
page size, and a requested range fufills their huge page size.  When
pud_set_huge() or pmd_set_huge() returns zero, i.e.  no-operation is
performed, the code simply falls back to the next level.

The changes are only enabled when CONFIG_HAVE_ARCH_HUGE_VMAP is defined on
the architecture.

Signed-off-by: Toshi Kani <toshi.kani@hp.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Dave Hansen <dave.hansen@intel.com>
Cc: Robert Elliott <Elliott@hp.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2015-04-14 16:49:04 -07:00
..
2014-04-07 16:36:10 -07:00
2008-05-01 08:03:58 -07:00
2009-06-11 21:02:42 +02:00
2011-03-17 09:19:04 +08:00
2014-09-23 17:51:39 +02:00
2010-10-07 14:08:55 +01:00
2010-10-07 14:08:55 +01:00
2012-10-02 18:01:56 +01:00
2011-07-26 16:49:47 -07:00
2011-07-26 16:49:47 -07:00
2012-12-09 23:14:14 +01:00
2014-11-23 13:01:47 +01:00
2013-01-03 15:57:16 -08:00
2015-01-21 16:28:49 +10:30
2012-02-23 20:19:04 -07:00
2014-06-17 19:12:40 -04:00
2014-10-28 10:47:56 +01:00
2014-05-15 00:32:09 +01:00
2014-03-14 18:02:08 +00:00
2013-11-09 00:16:29 -05:00
2012-11-29 00:01:23 -05:00
2013-02-14 09:21:15 -05:00
2009-06-11 21:02:42 +02:00