1 /* 2 ** Copyright 2003, Axel Dörfler, axeld@pinc-software.de. All rights reserved. 3 ** Copyright 2019, Adrien Destugues, pulkomandy@pulkomandy.tk. All rights reserved. 4 ** Distributed under the terms of the MIT License. 5 */ 6 #ifndef KERNEL_ARCH_SPARC_KERNEL_ARGS_H 7 #define KERNEL_ARCH_SPARC_KERNEL_ARGS_H 8 9 #ifndef KERNEL_BOOT_KERNEL_ARGS_H 10 # error This file is included from <boot/kernel_args.h> only 11 #endif 12 13 #define _PACKED __attribute__((packed)) 14 15 #define MAX_VIRTUAL_RANGES_TO_KEEP 32 16 17 // kernel args 18 typedef struct { 19 // architecture specific 20 uint64 cpu_frequency; 21 uint64 bus_frequency; 22 uint64 time_base_frequency; 23 24 addr_range framebuffer; // maps where the framebuffer is located, in physical memory 25 int screen_x, screen_y, screen_depth; 26 27 // The virtual ranges we want to keep in the kernel. E.g. those belonging 28 // to the Open Firmware. 29 uint32 num_virtual_ranges_to_keep; 30 addr_range virtual_ranges_to_keep[MAX_VIRTUAL_RANGES_TO_KEEP]; 31 32 // platform type we booted from 33 int platform; 34 } arch_kernel_args; 35 36 #endif /* KERNEL_ARCH_SPARC_KERNEL_ARGS_H */ 37 38