xtensa: remap io area defined in device tree
authorBaruch Siach <baruch@tkos.co.il>
Sun, 29 Dec 2013 09:03:30 +0000 (11:03 +0200)
committerMax Filippov <jcmvbkbc@gmail.com>
Tue, 14 Jan 2014 20:25:14 +0000 (00:25 +0400)
commit6cb971114f633a0bf240c20b681d989b45e3ec56
tree15d3280cf733e2bda26252e1c01b53943b47bd68
parentf8935f307fe46faa1a829a6b76ee95ca9ba67d20
xtensa: remap io area defined in device tree

Use the simple-bus node to discover the io area, and remap the cached and
bypass io ranges. The parent-bus-address value of the first triplet in the
"ranges" property is used. This value is rounded down to the nearest 256MB
boundary. The length of the io area is fixed at 256MB; the "ranges" property
length value is ignored.

Other limitations: (1) only the first simple-bus node is considered, and (2)
only the first triplet of the "ranges" property is considered.

See ePAPR 1.1 §6.5 for the simple-bus node description, and §2.3.8 for the
"ranges" property description.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Documentation/xtensa/mmu.txt
arch/xtensa/include/asm/initialize_mmu.h
arch/xtensa/include/asm/io.h
arch/xtensa/include/asm/vectors.h
arch/xtensa/kernel/setup.c
arch/xtensa/mm/mmu.c