|
@@ -118,14 +118,20 @@ enum fixed_addresses {
|
|
|
* 256 temporary boot-time mappings, used by early_ioremap(),
|
|
|
* before ioremap() is functional.
|
|
|
*
|
|
|
- * We round it up to the next 256 pages boundary so that we
|
|
|
- * can have a single pgd entry and a single pte table:
|
|
|
+ * If necessary we round it up to the next 256 pages boundary so
|
|
|
+ * that we can have a single pgd entry and a single pte table:
|
|
|
*/
|
|
|
#define NR_FIX_BTMAPS 64
|
|
|
#define FIX_BTMAPS_SLOTS 4
|
|
|
- FIX_BTMAP_END = __end_of_permanent_fixed_addresses + 256 -
|
|
|
- (__end_of_permanent_fixed_addresses & 255),
|
|
|
- FIX_BTMAP_BEGIN = FIX_BTMAP_END + NR_FIX_BTMAPS*FIX_BTMAPS_SLOTS - 1,
|
|
|
+#define TOTAL_FIX_BTMAPS (NR_FIX_BTMAPS * FIX_BTMAPS_SLOTS)
|
|
|
+ FIX_BTMAP_END =
|
|
|
+ (__end_of_permanent_fixed_addresses ^
|
|
|
+ (__end_of_permanent_fixed_addresses + TOTAL_FIX_BTMAPS - 1)) &
|
|
|
+ -PTRS_PER_PTE
|
|
|
+ ? __end_of_permanent_fixed_addresses + TOTAL_FIX_BTMAPS -
|
|
|
+ (__end_of_permanent_fixed_addresses & (TOTAL_FIX_BTMAPS - 1))
|
|
|
+ : __end_of_permanent_fixed_addresses,
|
|
|
+ FIX_BTMAP_BEGIN = FIX_BTMAP_END + TOTAL_FIX_BTMAPS - 1,
|
|
|
#ifdef CONFIG_PROVIDE_OHCI1394_DMA_INIT
|
|
|
FIX_OHCI1394_BASE,
|
|
|
#endif
|