103
99
unsigned long align,
104
100
unsigned long goal);
102
#ifdef CONFIG_NO_BOOTMEM
103
/* We are using top down, so it is safe to use 0 here */
104
#define BOOTMEM_LOW_LIMIT 0
106
#define BOOTMEM_LOW_LIMIT __pa(MAX_DMA_ADDRESS)
106
109
#define alloc_bootmem(x) \
107
__alloc_bootmem(x, SMP_CACHE_BYTES, __pa(MAX_DMA_ADDRESS))
110
__alloc_bootmem(x, SMP_CACHE_BYTES, BOOTMEM_LOW_LIMIT)
108
111
#define alloc_bootmem_align(x, align) \
109
__alloc_bootmem(x, align, __pa(MAX_DMA_ADDRESS))
112
__alloc_bootmem(x, align, BOOTMEM_LOW_LIMIT)
110
113
#define alloc_bootmem_nopanic(x) \
111
__alloc_bootmem_nopanic(x, SMP_CACHE_BYTES, __pa(MAX_DMA_ADDRESS))
114
__alloc_bootmem_nopanic(x, SMP_CACHE_BYTES, BOOTMEM_LOW_LIMIT)
112
115
#define alloc_bootmem_pages(x) \
113
__alloc_bootmem(x, PAGE_SIZE, __pa(MAX_DMA_ADDRESS))
116
__alloc_bootmem(x, PAGE_SIZE, BOOTMEM_LOW_LIMIT)
114
117
#define alloc_bootmem_pages_nopanic(x) \
115
__alloc_bootmem_nopanic(x, PAGE_SIZE, __pa(MAX_DMA_ADDRESS))
118
__alloc_bootmem_nopanic(x, PAGE_SIZE, BOOTMEM_LOW_LIMIT)
116
119
#define alloc_bootmem_node(pgdat, x) \
117
__alloc_bootmem_node(pgdat, x, SMP_CACHE_BYTES, __pa(MAX_DMA_ADDRESS))
120
__alloc_bootmem_node(pgdat, x, SMP_CACHE_BYTES, BOOTMEM_LOW_LIMIT)
121
#define alloc_bootmem_node_nopanic(pgdat, x) \
122
__alloc_bootmem_node_nopanic(pgdat, x, SMP_CACHE_BYTES, BOOTMEM_LOW_LIMIT)
118
123
#define alloc_bootmem_pages_node(pgdat, x) \
119
__alloc_bootmem_node(pgdat, x, PAGE_SIZE, __pa(MAX_DMA_ADDRESS))
124
__alloc_bootmem_node(pgdat, x, PAGE_SIZE, BOOTMEM_LOW_LIMIT)
120
125
#define alloc_bootmem_pages_node_nopanic(pgdat, x) \
121
__alloc_bootmem_node_nopanic(pgdat, x, PAGE_SIZE, __pa(MAX_DMA_ADDRESS))
126
__alloc_bootmem_node_nopanic(pgdat, x, PAGE_SIZE, BOOTMEM_LOW_LIMIT)
123
128
#define alloc_bootmem_low(x) \
124
129
__alloc_bootmem_low(x, SMP_CACHE_BYTES, 0)