Stephen Rothwell | 2ad5649 | 2005-08-17 13:01:50 +1000 | [diff] [blame] | 1 | /* |
| 2 | * Copyright (C) 2005 Stephen Rothwell IBM Corp. |
| 3 | * |
| 4 | * This program is free software; you can redistribute it and/or |
| 5 | * modify it under the terms of the GNU General Public License |
| 6 | * as published by the Free Software Foundation; either version |
| 7 | * 2 of the License, or (at your option) any later version. |
| 8 | */ |
| 9 | #include <asm/mmu.h> |
David Gibson | e133380 | 2005-12-16 14:49:25 +1100 | [diff] [blame] | 10 | #include <asm/pgtable.h> |
Kelly Daly | c43a55f | 2005-11-02 15:02:47 +1100 | [diff] [blame] | 11 | #include <asm/iseries/lpar_map.h> |
Stephen Rothwell | 2ad5649 | 2005-08-17 13:01:50 +1000 | [diff] [blame] | 12 | |
Stephen Rothwell | 8cf4408 | 2007-05-03 15:19:05 +1000 | [diff] [blame] | 13 | /* The # is to stop gcc trying to make .text nonexecutable */ |
| 14 | const struct LparMap __attribute__((__section__(".text #"))) xLparMap = { |
Stephen Rothwell | 2ad5649 | 2005-08-17 13:01:50 +1000 | [diff] [blame] | 15 | .xNumberEsids = HvEsidsToMap, |
| 16 | .xNumberRanges = HvRangesToMap, |
| 17 | .xSegmentTableOffs = STAB0_PAGE, |
| 18 | |
| 19 | .xEsids = { |
Michael Ellerman | b5666f7 | 2005-12-05 10:24:33 -0600 | [diff] [blame] | 20 | { .xKernelEsid = GET_ESID(PAGE_OFFSET), |
| 21 | .xKernelVsid = KERNEL_VSID(PAGE_OFFSET), }, |
David Gibson | 14c89e7 | 2005-12-14 16:08:40 +1100 | [diff] [blame] | 22 | { .xKernelEsid = GET_ESID(VMALLOC_START), |
| 23 | .xKernelVsid = KERNEL_VSID(VMALLOC_START), }, |
Stephen Rothwell | 2ad5649 | 2005-08-17 13:01:50 +1000 | [diff] [blame] | 24 | }, |
| 25 | |
| 26 | .xRanges = { |
| 27 | { .xPages = HvPagesToMap, |
| 28 | .xOffset = 0, |
Michael Ellerman | b5666f7 | 2005-12-05 10:24:33 -0600 | [diff] [blame] | 29 | .xVPN = KERNEL_VSID(PAGE_OFFSET) << (SID_SHIFT - HW_PAGE_SHIFT), |
Stephen Rothwell | 2ad5649 | 2005-08-17 13:01:50 +1000 | [diff] [blame] | 30 | }, |
| 31 | }, |
| 32 | }; |