map.pfn = __phys_to_pfn(virt_to_phys(vectors));
map.virtual = 0xffff0000;
map.length = PAGE_SIZE;
+ #ifdef CONFIG_KUSER_HELPERS
map.type = MT_HIGH_VECTORS;
- create_mapping(&map);
+ #else
+ map.type = MT_LOW_VECTORS;
+ #endif
+ create_mapping(&map, false);
if (!vectors_high()) {
map.virtual = 0;
+ map.length = PAGE_SIZE * 2;
map.type = MT_LOW_VECTORS;
- create_mapping(&map);
+ create_mapping(&map, false);
}
- create_mapping(&map);
+ /* Now create a kernel read-only mapping */
+ map.pfn += 1;
+ map.virtual = 0xffff0000 + PAGE_SIZE;
+ map.length = PAGE_SIZE;
+ map.type = MT_LOW_VECTORS;
++ create_mapping(&map, false);
+
/*
* Ask the machine support to map in the statically mapped devices.
*/