diff options
author | Stefano Stabellini <stefano.stabellini@eu.citrix.com> | 2013-02-19 08:59:19 -0500 |
---|---|---|
committer | Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> | 2013-02-19 22:02:34 -0500 |
commit | 3216dceb31c08be08ea98814a9ca5775fa680389 (patch) | |
tree | 06f0ec957f047a01176b4514c03782fc923bd747 /drivers/xen | |
parent | e7e44e444876478d50630f57b0c31d29f6725020 (diff) |
xen: introduce xen_remap, use it instead of ioremap
ioremap can't be used to map ring pages on ARM because it uses device
memory caching attributes (MT_DEVICE*).
Introduce a Xen specific abstraction to map ring pages, called
xen_remap, that is defined as ioremap on x86 (no behavioral changes).
On ARM it explicitly calls __arm_ioremap with the right caching
attributes: MT_MEMORY.
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Diffstat (limited to 'drivers/xen')
-rw-r--r-- | drivers/xen/grant-table.c | 2 | ||||
-rw-r--r-- | drivers/xen/xenbus/xenbus_probe.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/drivers/xen/grant-table.c b/drivers/xen/grant-table.c index 157c0ccda3ef..04c1b2d9b775 100644 --- a/drivers/xen/grant-table.c +++ b/drivers/xen/grant-table.c | |||
@@ -1147,7 +1147,7 @@ static int gnttab_setup(void) | |||
1147 | return gnttab_map(0, nr_grant_frames - 1); | 1147 | return gnttab_map(0, nr_grant_frames - 1); |
1148 | 1148 | ||
1149 | if (gnttab_shared.addr == NULL) { | 1149 | if (gnttab_shared.addr == NULL) { |
1150 | gnttab_shared.addr = ioremap(xen_hvm_resume_frames, | 1150 | gnttab_shared.addr = xen_remap(xen_hvm_resume_frames, |
1151 | PAGE_SIZE * max_nr_gframes); | 1151 | PAGE_SIZE * max_nr_gframes); |
1152 | if (gnttab_shared.addr == NULL) { | 1152 | if (gnttab_shared.addr == NULL) { |
1153 | printk(KERN_WARNING | 1153 | printk(KERN_WARNING |
diff --git a/drivers/xen/xenbus/xenbus_probe.c b/drivers/xen/xenbus/xenbus_probe.c index 038b71dbf03c..3325884c693f 100644 --- a/drivers/xen/xenbus/xenbus_probe.c +++ b/drivers/xen/xenbus/xenbus_probe.c | |||
@@ -769,7 +769,7 @@ static int __init xenbus_init(void) | |||
769 | goto out_error; | 769 | goto out_error; |
770 | xen_store_mfn = (unsigned long)v; | 770 | xen_store_mfn = (unsigned long)v; |
771 | xen_store_interface = | 771 | xen_store_interface = |
772 | ioremap(xen_store_mfn << PAGE_SHIFT, PAGE_SIZE); | 772 | xen_remap(xen_store_mfn << PAGE_SHIFT, PAGE_SIZE); |
773 | break; | 773 | break; |
774 | default: | 774 | default: |
775 | pr_warn("Xenstore state unknown\n"); | 775 | pr_warn("Xenstore state unknown\n"); |