diff --git a/headers/private/kernel/boot/platform.h b/headers/private/kernel/boot/platform.h index c251b5f2c5..d9b8c73d49 100644 --- a/headers/private/kernel/boot/platform.h +++ b/headers/private/kernel/boot/platform.h @@ -16,15 +16,33 @@ struct stage2_args; extern "C" { #endif +/* debug functions */ extern void panic(const char *format, ...); extern void dprintf(const char *format, ...); -extern status_t platform_get_boot_devices(struct stage2_args *args, struct list *devicesList); +/* heap functions */ extern void platform_release_heap(void *base); extern status_t platform_init_heap(struct stage2_args *args, void **_base, void **_top); +/* misc functions */ +extern bool platform_user_menu_requested(void); + #ifdef __cplusplus } + +class Node; +namespace boot { + class Partition; +} + +/* device functions */ + +// these functions have to be implemented in C++ +extern status_t platform_get_boot_device(struct stage2_args *args, Node **_device); +extern status_t platform_add_block_devices(struct stage2_args *args, struct list *devicesList); +extern status_t platform_get_boot_partition(struct stage2_args *args, struct list *partitions, + boot::Partition **_partition); + #endif #endif /* KERNEL_BOOT_PLATFORM_H */