From 0ed9b677ee746664f8be7e5b5d858f4e512dd7c1 Mon Sep 17 00:00:00 2001 From: Alexander von Gluck IV Date: Thu, 11 Jun 2020 09:20:04 -0500 Subject: [PATCH] arm: switch to EFI, drop FDT in loader * This should 'fix' the arm build * No longer parse FDT in bootloader, just pass ptr. * The EFI loader doesn't load yet on arm * It compiles though. Ship it! Change-Id: I7c8ce588298dfaf4fba8054c6b6d9a92733b5943 Reviewed-on: https://review.haiku-os.org/c/haiku/+/2903 Reviewed-by: Alex von Gluck IV Reviewed-by: waddlesplash --- build/jam/ArchitectureRules | 4 ++-- src/system/kernel/arch/arm/arch_debug_console.cpp | 4 +++- src/system/kernel/arch/arm/arch_platform.cpp | 6 ------ 3 files changed, 5 insertions(+), 9 deletions(-) diff --git a/build/jam/ArchitectureRules b/build/jam/ArchitectureRules index dc42141e4a..6522c59585 100644 --- a/build/jam/ArchitectureRules +++ b/build/jam/ArchitectureRules @@ -244,8 +244,8 @@ rule KernelArchitectureSetup architecture HAIKU_BOOT_ARCHIVE_IMAGE_OFFSET = 384 ; # in kB case arm : - HAIKU_KERNEL_PLATFORM ?= u-boot ; - HAIKU_BOOT_TARGETS += u-boot ; + HAIKU_KERNEL_PLATFORM ?= efi ; + HAIKU_BOOT_TARGETS += efi ; HAIKU_BOOT_SDIMAGE_SIZE ?= 32 ; # SOC's like allwinner need an offset to skip the hardcoded initial loader diff --git a/src/system/kernel/arch/arm/arch_debug_console.cpp b/src/system/kernel/arch/arm/arch_debug_console.cpp index b76b32547f..dba5ce5282 100644 --- a/src/system/kernel/arch/arm/arch_debug_console.cpp +++ b/src/system/kernel/arch/arm/arch_debug_console.cpp @@ -95,7 +95,9 @@ status_t arch_debug_console_init(kernel_args *args) { // first try with hints from the FDT - gArchDebugUART = debug_uart_from_fdt(args->platform_args.fdt); + // TODO: Use UEFI somehow + + //gArchDebugUART = debug_uart_from_fdt(args->platform_args.fdt); // Do we can some kind of direct fallback here // (aka, guess arch_get_uart_pl011 or arch_get_uart_8250?) diff --git a/src/system/kernel/arch/arm/arch_platform.cpp b/src/system/kernel/arch/arm/arch_platform.cpp index 3083a09483..d29b007da9 100644 --- a/src/system/kernel/arch/arm/arch_platform.cpp +++ b/src/system/kernel/arch/arm/arch_platform.cpp @@ -10,18 +10,12 @@ #include #include -#include - -char *gFDT; status_t arch_platform_init(struct kernel_args *kernelArgs) { // NOTE: dprintf() is off-limits here, too early... - // If we have an FDT blob, point the gFDT to it now - gFDT = (char *)kernelArgs->platform_args.fdt; - return B_OK; }