diff options
Diffstat (limited to 'arch/alpha')
-rw-r--r-- | arch/alpha/Kconfig | 5 | ||||
-rw-r--r-- | arch/alpha/boot/misc.c | 39 | ||||
-rw-r--r-- | arch/alpha/mm/numa.c | 10 |
3 files changed, 7 insertions, 47 deletions
diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig index dbe8c280fea9..1bec55d63ef6 100644 --- a/arch/alpha/Kconfig +++ b/arch/alpha/Kconfig | |||
@@ -333,11 +333,6 @@ config PCI_SYSCALL | |||
333 | config IOMMU_HELPER | 333 | config IOMMU_HELPER |
334 | def_bool PCI | 334 | def_bool PCI |
335 | 335 | ||
336 | config ALPHA_CORE_AGP | ||
337 | bool | ||
338 | depends on ALPHA_GENERIC || ALPHA_TITAN || ALPHA_MARVEL | ||
339 | default y | ||
340 | |||
341 | config ALPHA_NONAME | 336 | config ALPHA_NONAME |
342 | bool | 337 | bool |
343 | depends on ALPHA_BOOK1 || ALPHA_NONAME_CH | 338 | depends on ALPHA_BOOK1 || ALPHA_NONAME_CH |
diff --git a/arch/alpha/boot/misc.c b/arch/alpha/boot/misc.c index c00646b25f6e..3047a1b3a517 100644 --- a/arch/alpha/boot/misc.c +++ b/arch/alpha/boot/misc.c | |||
@@ -78,8 +78,6 @@ static unsigned outcnt; /* bytes in output buffer */ | |||
78 | static int fill_inbuf(void); | 78 | static int fill_inbuf(void); |
79 | static void flush_window(void); | 79 | static void flush_window(void); |
80 | static void error(char *m); | 80 | static void error(char *m); |
81 | static void gzip_mark(void **); | ||
82 | static void gzip_release(void **); | ||
83 | 81 | ||
84 | static char *input_data; | 82 | static char *input_data; |
85 | static int input_data_size; | 83 | static int input_data_size; |
@@ -88,51 +86,18 @@ static uch *output_data; | |||
88 | static ulg output_ptr; | 86 | static ulg output_ptr; |
89 | static ulg bytes_out; | 87 | static ulg bytes_out; |
90 | 88 | ||
91 | static void *malloc(int size); | ||
92 | static void free(void *where); | ||
93 | static void error(char *m); | 89 | static void error(char *m); |
94 | static void gzip_mark(void **); | 90 | static void gzip_mark(void **); |
95 | static void gzip_release(void **); | 91 | static void gzip_release(void **); |
96 | 92 | ||
97 | extern int end; | 93 | extern int end; |
98 | static ulg free_mem_ptr; | 94 | static ulg free_mem_ptr; |
99 | static ulg free_mem_ptr_end; | 95 | static ulg free_mem_end_ptr; |
100 | 96 | ||
101 | #define HEAP_SIZE 0x3000 | 97 | #define HEAP_SIZE 0x3000 |
102 | 98 | ||
103 | #include "../../../lib/inflate.c" | 99 | #include "../../../lib/inflate.c" |
104 | 100 | ||
105 | static void *malloc(int size) | ||
106 | { | ||
107 | void *p; | ||
108 | |||
109 | if (size <0) error("Malloc error"); | ||
110 | if (free_mem_ptr <= 0) error("Memory error"); | ||
111 | |||
112 | free_mem_ptr = (free_mem_ptr + 3) & ~3; /* Align */ | ||
113 | |||
114 | p = (void *)free_mem_ptr; | ||
115 | free_mem_ptr += size; | ||
116 | |||
117 | if (free_mem_ptr >= free_mem_ptr_end) | ||
118 | error("Out of memory"); | ||
119 | return p; | ||
120 | } | ||
121 | |||
122 | static void free(void *where) | ||
123 | { /* gzip_mark & gzip_release do the free */ | ||
124 | } | ||
125 | |||
126 | static void gzip_mark(void **ptr) | ||
127 | { | ||
128 | *ptr = (void *) free_mem_ptr; | ||
129 | } | ||
130 | |||
131 | static void gzip_release(void **ptr) | ||
132 | { | ||
133 | free_mem_ptr = (long) *ptr; | ||
134 | } | ||
135 | |||
136 | /* =========================================================================== | 101 | /* =========================================================================== |
137 | * Fill the input buffer. This is called only when the buffer is empty | 102 | * Fill the input buffer. This is called only when the buffer is empty |
138 | * and at least one byte is really needed. | 103 | * and at least one byte is really needed. |
@@ -193,7 +158,7 @@ decompress_kernel(void *output_start, | |||
193 | 158 | ||
194 | /* FIXME FIXME FIXME */ | 159 | /* FIXME FIXME FIXME */ |
195 | free_mem_ptr = (ulg)output_start + ksize; | 160 | free_mem_ptr = (ulg)output_start + ksize; |
196 | free_mem_ptr_end = (ulg)output_start + ksize + 0x200000; | 161 | free_mem_end_ptr = (ulg)output_start + ksize + 0x200000; |
197 | /* FIXME FIXME FIXME */ | 162 | /* FIXME FIXME FIXME */ |
198 | 163 | ||
199 | /* put in temp area to reduce initial footprint */ | 164 | /* put in temp area to reduce initial footprint */ |
diff --git a/arch/alpha/mm/numa.c b/arch/alpha/mm/numa.c index 10ab7833e83c..d8c4ceaf00b9 100644 --- a/arch/alpha/mm/numa.c +++ b/arch/alpha/mm/numa.c | |||
@@ -19,7 +19,6 @@ | |||
19 | #include <asm/pgalloc.h> | 19 | #include <asm/pgalloc.h> |
20 | 20 | ||
21 | pg_data_t node_data[MAX_NUMNODES]; | 21 | pg_data_t node_data[MAX_NUMNODES]; |
22 | bootmem_data_t node_bdata[MAX_NUMNODES]; | ||
23 | EXPORT_SYMBOL(node_data); | 22 | EXPORT_SYMBOL(node_data); |
24 | 23 | ||
25 | #undef DEBUG_DISCONTIG | 24 | #undef DEBUG_DISCONTIG |
@@ -141,7 +140,7 @@ setup_memory_node(int nid, void *kernel_end) | |||
141 | printk(" not enough mem to reserve NODE_DATA"); | 140 | printk(" not enough mem to reserve NODE_DATA"); |
142 | return; | 141 | return; |
143 | } | 142 | } |
144 | NODE_DATA(nid)->bdata = &node_bdata[nid]; | 143 | NODE_DATA(nid)->bdata = &bootmem_node_data[nid]; |
145 | 144 | ||
146 | printk(" Detected node memory: start %8lu, end %8lu\n", | 145 | printk(" Detected node memory: start %8lu, end %8lu\n", |
147 | node_min_pfn, node_max_pfn); | 146 | node_min_pfn, node_max_pfn); |
@@ -304,8 +303,9 @@ void __init paging_init(void) | |||
304 | dma_local_pfn = virt_to_phys((char *)MAX_DMA_ADDRESS) >> PAGE_SHIFT; | 303 | dma_local_pfn = virt_to_phys((char *)MAX_DMA_ADDRESS) >> PAGE_SHIFT; |
305 | 304 | ||
306 | for_each_online_node(nid) { | 305 | for_each_online_node(nid) { |
307 | unsigned long start_pfn = node_bdata[nid].node_boot_start >> PAGE_SHIFT; | 306 | bootmem_data_t *bdata = &bootmem_node_data[nid]; |
308 | unsigned long end_pfn = node_bdata[nid].node_low_pfn; | 307 | unsigned long start_pfn = bdata->node_min_pfn; |
308 | unsigned long end_pfn = bdata->node_low_pfn; | ||
309 | 309 | ||
310 | if (dma_local_pfn >= end_pfn - start_pfn) | 310 | if (dma_local_pfn >= end_pfn - start_pfn) |
311 | zones_size[ZONE_DMA] = end_pfn - start_pfn; | 311 | zones_size[ZONE_DMA] = end_pfn - start_pfn; |
@@ -313,7 +313,7 @@ void __init paging_init(void) | |||
313 | zones_size[ZONE_DMA] = dma_local_pfn; | 313 | zones_size[ZONE_DMA] = dma_local_pfn; |
314 | zones_size[ZONE_NORMAL] = (end_pfn - start_pfn) - dma_local_pfn; | 314 | zones_size[ZONE_NORMAL] = (end_pfn - start_pfn) - dma_local_pfn; |
315 | } | 315 | } |
316 | free_area_init_node(nid, NODE_DATA(nid), zones_size, start_pfn, NULL); | 316 | free_area_init_node(nid, zones_size, start_pfn, NULL); |
317 | } | 317 | } |
318 | 318 | ||
319 | /* Initialize the kernel's ZERO_PGE. */ | 319 | /* Initialize the kernel's ZERO_PGE. */ |