2003-10-08 01:58:48 +04:00
|
|
|
/*
|
|
|
|
** Copyright 2001-2002, Travis Geiselbrecht. All rights reserved.
|
|
|
|
** Distributed under the terms of the NewOS License.
|
|
|
|
*/
|
|
|
|
#ifndef KERNEL_BOOT_KERNEL_ARGS_H
|
|
|
|
#define KERNEL_BOOT_KERNEL_ARGS_H
|
|
|
|
|
|
|
|
|
|
|
|
#include <SupportDefs.h>
|
|
|
|
|
2004-06-01 02:44:24 +04:00
|
|
|
#include <boot/elf.h>
|
2003-10-08 04:17:24 +04:00
|
|
|
#include <platform_kernel_args.h>
|
|
|
|
#include <arch_kernel_args.h>
|
|
|
|
|
2003-10-16 21:55:21 +04:00
|
|
|
|
2004-06-15 20:54:04 +04:00
|
|
|
#define CURRENT_KERNEL_ARGS_VERSION 1
|
|
|
|
|
2003-10-08 01:58:48 +04:00
|
|
|
typedef struct kernel_args {
|
2004-06-15 20:54:04 +04:00
|
|
|
uint32 kernel_args_size;
|
|
|
|
uint32 version;
|
|
|
|
|
2003-10-08 01:58:48 +04:00
|
|
|
uint32 cons_line;
|
|
|
|
char *str;
|
|
|
|
addr_range bootdir_addr;
|
|
|
|
|
2004-06-01 02:44:24 +04:00
|
|
|
struct preloaded_image kernel_image;
|
2003-10-16 21:55:21 +04:00
|
|
|
struct preloaded_image *preloaded_images;
|
|
|
|
|
2003-10-08 01:58:48 +04:00
|
|
|
uint32 num_physical_memory_ranges;
|
|
|
|
addr_range physical_memory_range[MAX_PHYSICAL_MEMORY_RANGE];
|
|
|
|
uint32 num_physical_allocated_ranges;
|
|
|
|
addr_range physical_allocated_range[MAX_PHYSICAL_ALLOCATED_RANGE];
|
|
|
|
uint32 num_virtual_allocated_ranges;
|
|
|
|
addr_range virtual_allocated_range[MAX_VIRTUAL_ALLOCATED_RANGE];
|
|
|
|
|
|
|
|
uint32 num_cpus;
|
|
|
|
addr_range cpu_kstack[MAX_BOOT_CPUS];
|
|
|
|
|
|
|
|
platform_kernel_args platform_args;
|
2003-10-08 04:17:24 +04:00
|
|
|
arch_kernel_args arch_args;
|
2003-10-08 01:58:48 +04:00
|
|
|
|
|
|
|
struct framebuffer {
|
|
|
|
int enabled;
|
|
|
|
int x_size;
|
|
|
|
int y_size;
|
|
|
|
int bit_depth;
|
|
|
|
int already_mapped;
|
|
|
|
addr_range mapping;
|
|
|
|
} fb;
|
|
|
|
} kernel_args;
|
|
|
|
|
|
|
|
#endif /* KERNEL_BOOT_KERNEL_ARGS_H */
|