|
@@ -99,24 +99,31 @@ extern void *__alloc_bootmem_low_node(pg_data_t *pgdat,
|
|
|
unsigned long align,
|
|
|
unsigned long goal);
|
|
|
|
|
|
+#ifdef CONFIG_NO_BOOTMEM
|
|
|
+/* We are using top down, so it is safe to use 0 here */
|
|
|
+#define BOOTMEM_LOW_LIMIT 0
|
|
|
+#else
|
|
|
+#define BOOTMEM_LOW_LIMIT __pa(MAX_DMA_ADDRESS)
|
|
|
+#endif
|
|
|
+
|
|
|
#define alloc_bootmem(x) \
|
|
|
- __alloc_bootmem(x, SMP_CACHE_BYTES, __pa(MAX_DMA_ADDRESS))
|
|
|
+ __alloc_bootmem(x, SMP_CACHE_BYTES, BOOTMEM_LOW_LIMIT)
|
|
|
#define alloc_bootmem_align(x, align) \
|
|
|
- __alloc_bootmem(x, align, __pa(MAX_DMA_ADDRESS))
|
|
|
+ __alloc_bootmem(x, align, BOOTMEM_LOW_LIMIT)
|
|
|
#define alloc_bootmem_nopanic(x) \
|
|
|
- __alloc_bootmem_nopanic(x, SMP_CACHE_BYTES, __pa(MAX_DMA_ADDRESS))
|
|
|
+ __alloc_bootmem_nopanic(x, SMP_CACHE_BYTES, BOOTMEM_LOW_LIMIT)
|
|
|
#define alloc_bootmem_pages(x) \
|
|
|
- __alloc_bootmem(x, PAGE_SIZE, __pa(MAX_DMA_ADDRESS))
|
|
|
+ __alloc_bootmem(x, PAGE_SIZE, BOOTMEM_LOW_LIMIT)
|
|
|
#define alloc_bootmem_pages_nopanic(x) \
|
|
|
- __alloc_bootmem_nopanic(x, PAGE_SIZE, __pa(MAX_DMA_ADDRESS))
|
|
|
+ __alloc_bootmem_nopanic(x, PAGE_SIZE, BOOTMEM_LOW_LIMIT)
|
|
|
#define alloc_bootmem_node(pgdat, x) \
|
|
|
- __alloc_bootmem_node(pgdat, x, SMP_CACHE_BYTES, __pa(MAX_DMA_ADDRESS))
|
|
|
+ __alloc_bootmem_node(pgdat, x, SMP_CACHE_BYTES, BOOTMEM_LOW_LIMIT)
|
|
|
#define alloc_bootmem_node_nopanic(pgdat, x) \
|
|
|
- __alloc_bootmem_node_nopanic(pgdat, x, SMP_CACHE_BYTES, __pa(MAX_DMA_ADDRESS))
|
|
|
+ __alloc_bootmem_node_nopanic(pgdat, x, SMP_CACHE_BYTES, BOOTMEM_LOW_LIMIT)
|
|
|
#define alloc_bootmem_pages_node(pgdat, x) \
|
|
|
- __alloc_bootmem_node(pgdat, x, PAGE_SIZE, __pa(MAX_DMA_ADDRESS))
|
|
|
+ __alloc_bootmem_node(pgdat, x, PAGE_SIZE, BOOTMEM_LOW_LIMIT)
|
|
|
#define alloc_bootmem_pages_node_nopanic(pgdat, x) \
|
|
|
- __alloc_bootmem_node_nopanic(pgdat, x, PAGE_SIZE, __pa(MAX_DMA_ADDRESS))
|
|
|
+ __alloc_bootmem_node_nopanic(pgdat, x, PAGE_SIZE, BOOTMEM_LOW_LIMIT)
|
|
|
|
|
|
#define alloc_bootmem_low(x) \
|
|
|
__alloc_bootmem_low(x, SMP_CACHE_BYTES, 0)
|