use the -newos toolchain even if -elf is present.
[newos.git] / boot / alpha / stage2.h
blobbfaf9dd2623fdf6c6fbe1c34f7d2ccaf7a53ac5a
1 /*
2 ** Copyright 2001, Travis Geiselbrecht. All rights reserved.
3 ** Distributed under the terms of the NewOS License.
4 */
5 #ifndef _STAGE2_H
6 #define _STAGE2_H
8 #include <boot.h>
10 // must match SMP_MAX_CPUS in arch_smp.h
11 #define MAX_BOOT_CPUS 1
13 #define MAX_PHYS_MEM_ADDR_RANGE 4
14 #define MAX_VIRT_ALLOC_ADDR_RANGE 4
15 #define MAX_PHYS_ALLOC_ADDR_RANGE 4
17 typedef struct {
18 unsigned int start;
19 unsigned int size;
20 } addr_range;
22 // kernel args
23 typedef struct {
24 unsigned int cons_line;
25 char *str;
26 addr_range bootdir_addr;
27 addr_range kernel_seg0_addr;
28 addr_range kernel_seg1_addr;
29 unsigned int num_phys_mem_ranges;
30 addr_range phys_mem_range[MAX_PHYS_MEM_ADDR_RANGE];
31 unsigned int num_phys_alloc_ranges;
32 addr_range phys_alloc_range[MAX_PHYS_ALLOC_ADDR_RANGE];
33 unsigned int num_virt_alloc_ranges;
34 addr_range virt_alloc_range[MAX_VIRT_ALLOC_ADDR_RANGE];
35 unsigned int num_cpus;
36 addr_range cpu_kstack[MAX_BOOT_CPUS];
37 // architecture specific
38 } kernel_args;
40 #endif