boot/platform/u-boot: Drop ARM support.

Newer versions of u-boot support EFI natively, which is what we
have been making use of instead.

There may be some use for the "native" u-boot loader still on PowerPC,
but otherwise the EFI support is much more advanced and even in u-boot
supports as or more features than "native" loaders, so there is no
reason to keep this around.
This commit is contained in:
Augustin Cavalier
2022-06-28 12:27:06 -04:00
parent 7c09ef1255
commit 63816858af
21 changed files with 2 additions and 2682 deletions
-80
View File
@@ -1,80 +0,0 @@
# BeagleBoard board-specific definitions
HAIKU_BOARD_DESCRIPTION = "BeagleBoard" ;
HAIKU_BOARD_FDT_NAME = "omap3-beagle-xm" ;
#
# Various hardcoded addresses
#
# load address for haiku_loader
HAIKU_BOARD_LOADER_BASE = 0x80800000 ;
# entry points (raw binary, and netbsd loader emulation)
HAIKU_BOARD_LOADER_ENTRY_RAW = $(HAIKU_BOARD_LOADER_BASE) ;
HAIKU_BOARD_LOADER_ENTRY_NBSD = `printf \"obase=16;ibase=16;8 + %x\\n\" $(HAIKU_BOARD_LOADER_BASE)|bc` ;
HAIKU_BOARD_LOADER_ENTRY_LINUX = `printf \"obase=16;ibase=16;10 + %x\\n\" $(HAIKU_BOARD_LOADER_BASE)|bc` ;
HAIKU_BOARD_LOADER_ENTRY = $(HAIKU_BOARD_LOADER_ENTRY_NBSD) ;
HAIKU_BOARD_LOADER_FAKE_OS = netbsd ;
# load address for haiku_loader uimage
# (must be different than real load address)
HAIKU_BOARD_LOADER_UIBASE = 0x82800000 ;
#
# Flash image
#
# OMAP x-loader image, must be first file on FAT partition
HAIKU_BOARD_MLO_IMAGE ?= MLO ;
HAIKU_BOARD_MLO_IMAGE_URL =
http://downloads.angstrom-distribution.org/demo/beagleboard/MLO ;
# u-boot binary image filename, to build the flash image
# XXX: Locate it somehow (for now just put it in generated/)
HAIKU_BOARD_UBOOT_IMAGE ?= u-boot.img ;
HAIKU_BOARD_UBOOT_IMAGE_URL =
http://downloads.angstrom-distribution.org/demo/beagleboard/u-boot.img ;
#
# mmc/SD image
#
# in MB
HAIKU_BOARD_SDIMAGE_SIZE = 64 ;
# in MB
HAIKU_BOARD_SDIMAGE_FAT_SIZE = 32 ;
mloFile = [ DownloadFile $(HAIKU_BOARD_MLO_IMAGE)
: $(HAIKU_BOARD_MLO_IMAGE_URL) ] ;
ubootFile = [ DownloadFile $(HAIKU_BOARD_UBOOT_IMAGE)
: $(HAIKU_BOARD_UBOOT_IMAGE_URL) ] ;
# U-Boot environment
# We load the uImage 2MB above its final destination, bootm will decode
# it to the proper location. Our image is smaller than 2MB so this works.
#HAIKU_BOARD_SDIMAGE_UBOOT_UENV_NAME = uEnv.txt ;
HAIKU_BOARD_SDIMAGE_UBOOT_UENV = "uenvcmd=run loadImage; run mmcboot; \
loadImage=fatload mmc0 0 $(HAIKU_BOARD_LOADER_UIBASE) haiku_loader_linux.ub; fatload mmc 0 0x80100000 /fdt/$(HAIKU_BOARD_FDT_NAME).dtb; fatload mmc 0 0x81200000 haiku-floppyboot.tgz.ub; \
mmcboot=bootm $(HAIKU_BOARD_LOADER_UIBASE) 0x81200000 0x80100000" ;
HAIKU_BOARD_SDIMAGE_FILES =
$(mloFile)
$(ubootFile)
haiku_loader_nbsd.ub
haiku_loader_linux.ub
haiku-floppyboot.tgz.ub
;
#
# gcc flags for the specific cpu
local flags = -mcpu=cortex-a8 -mfpu=vfpv3 -mfloat-abi=hard ;
HAIKU_ASFLAGS_$(HAIKU_PACKAGING_ARCH) += $(flags) ;
HAIKU_CCFLAGS_$(HAIKU_PACKAGING_ARCH) += $(flags) ;
HAIKU_C++FLAGS_$(HAIKU_PACKAGING_ARCH) += $(flags) ;
-60
View File
@@ -1,60 +0,0 @@
# BeagleBone board-specific definitions
HAIKU_BOARD_DESCRIPTION = "BeagleBone" ;
HAIKU_BOARD_FDT_NAME = "boneblack" ;
# Not that many in the wild
#HAIKU_BOARD_FDT_NAME = "beaglebone" ;
#
# Various hardcoded addresses
#
# load address for haiku_loader
HAIKU_BOARD_LOADER_BASE = 0x80800000 ;
HAIKU_BOARD_LOADER_ENTRY_RAW = $(HAIKU_BOARD_LOADER_BASE) ;
HAIKU_BOARD_LOADER_ENTRY_NBSD = `printf \"obase=16;ibase=16;8 + %x\\n\" $(HAIKU_BOARD_LOADER_BASE)|bc` ;
HAIKU_BOARD_LOADER_ENTRY_LINUX = `printf \"obase=16;ibase=16;10 + %x\\n\" $(HAIKU_BOARD_LOADER_BASE)|bc` ;
#
# mmc/SD image
#
# in MB
HAIKU_BOARD_SDIMAGE_SIZE = 64 ;
HAIKU_BOARD_SDIMAGE_FAT_SIZE = 32 ;
# OMAP x-loader image, must be first file on FAT partition
HAIKU_BOARD_MLO_IMAGE_URL = https://github.com/haiku/firmware/raw/master/arm/beaglebone ;
mloFile = [ DownloadFile MLO : $(HAIKU_BOARD_MLO_IMAGE_URL)/MLO ] ;
# u-boot image
HAIKU_BOARD_UBOOT_IMAGE_URL = https://github.com/haiku/firmware/raw/master/arm/beaglebone ;
ubootFile = [ DownloadFile u-boot.img : $(HAIKU_BOARD_UBOOT_IMAGE_URL)/u-boot.img ] ;
# U-Boot environment
HAIKU_BOARD_SDIMAGE_UBOOT_SCRIPT_NAME = boot.scr ;
HAIKU_BOARD_SDIMAGE_UBOOT_SCRIPT = "\
fatload mmc 0 ${fdt_addr_r} /fdt/$(HAIKU_BOARD_FDT_NAME).dtb \
fdt addr ${fdt_addr_r} \
fatload mmc 0 ${ramdisk_addr_r} haiku-floppyboot.tgz.ub \
fatload mmc 0 ${kernel_addr_r} haiku_loader_linux.ub \
bootm ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}" ;
HAIKU_BOARD_SDIMAGE_FILES =
$(mloFile)
$(ubootFile)
haiku_loader_linux.ub
haiku-floppyboot.tgz.ub
$(HAIKU_BOARD_SDIMAGE_UBOOT_SCRIPT_NAME)
;
#
# gcc flags for the specific cpu
local flags = -mcpu=cortex-a8 -mfpu=vfpv3 -mfloat-abi=hard ;
HAIKU_ASFLAGS_$(HAIKU_PACKAGING_ARCH) += $(flags) ;
HAIKU_CCFLAGS_$(HAIKU_PACKAGING_ARCH) += $(flags) ;
HAIKU_C++FLAGS_$(HAIKU_PACKAGING_ARCH) += $(flags) ;
-72
View File
@@ -1,72 +0,0 @@
# Cubieboard 4 board-specific definitions
# This likely could be easily used for other Allwinner chipsets
HAIKU_BOARD_DESCRIPTION = "Cubieboard 4 (CC-A80)" ;
HAIKU_BOARD_FDT_NAME = "cubieboard4" ;
#
# Various hardcoded addresses
#
# 0x20000000 = SDRAM start
# 0x20007800 = haiku_loader_linux.ub
# 0x20087800 = BASE
HAIKU_BOARD_LOADER_BASE = 0x20087800 ;
HAIKU_BOARD_LOADER_ENTRY_RAW = $(HAIKU_BOARD_LOADER_BASE) ;
HAIKU_BOARD_LOADER_ENTRY_NBSD = `printf \"obase=16;ibase=16;8 + %x\\n\" $(HAIKU_BOARD_LOADER_BASE)|bc` ;
HAIKU_BOARD_LOADER_ENTRY_LINUX = `printf \"obase=16;ibase=16;10 + %x\\n\" $(HAIKU_BOARD_LOADER_BASE)|bc` ;
#
# mmc/SD image
#
HAIKU_BOARD_FIRMWARE_URL = "https://github.com/cubieboard/CC-A80-binaries/raw/master/bin" ;
# u-boot image
# Dear Cubbieboard, add fdt_addr_r, ramdisk_addr_r, kernel_addr_r to u-boot
HAIKU_BOARD_SDIMAGE_UBOOT_SCRIPT_NAME = boot.scr ;
HAIKU_BOARD_SDIMAGE_UBOOT_SCRIPT = "\
fatload mmc 0 0x20800000 haiku-floppyboot.tgz.ub \
fatload mmc 0 0x20007800 haiku_loader_linux.ub \
bootm 0x20007800 0x20800000" ;
HAIKU_BOARD_SDIMAGE_FAT_SIZE = 32 ;
HAIKU_BOARD_SDIMAGE_FILES =
haiku_loader_linux.ub
haiku-floppyboot.tgz.ub
$(HAIKU_BOARD_SDIMAGE_UBOOT_SCRIPT_NAME)
;
HAIKU_BOARD_SDIMAGE_BEGIN = 40950 ; # 512-byte sectors (divisible by 63)
HAIKU_BOARD_SDIMAGE_SIZE = 128 ; # MiB
boot0File = [ DownloadFile sdcard-boot0 : $(HAIKU_BOARD_FIRMWARE_URL)/sdcard-boot0 ] ;
boot1File = [ DownloadFile sdcard-boot1 : $(HAIKU_BOARD_FIRMWARE_URL)/sdcard-boot1 ] ;
# The Allwinner chips require an SD card "blessed" with
# the boot0 SPL and boot1 (u-boot) at a fixed location on
# the SD card. (Dear AW, please support loading from FAT)
HAIKU_BOARD_SDIMAGE_BOOT0_FILE = $(boot0File) ;
HAIKU_BOARD_SDIMAGE_BOOT0_SEEK = 8192 ;
HAIKU_BOARD_SDIMAGE_BOOT1_FILE = $(boot1File) ;
HAIKU_BOARD_SDIMAGE_BOOT1_SEEK = 19554304 ;
#
# gcc flags for the specific cpu
#
local flags = -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard ;
HAIKU_ASFLAGS_$(HAIKU_PACKAGING_ARCH) += $(flags) ;
HAIKU_CCFLAGS_$(HAIKU_PACKAGING_ARCH) += $(flags) ;
HAIKU_C++FLAGS_$(HAIKU_PACKAGING_ARCH) += $(flags) ;
# Workaround for ld using 32k for alignment despite forcing it in the config...
# should definitely not be needed!
HAIKU_KERNEL_LINKFLAGS +=
-Wl,-z -Wl,max-page-size=0x1000
-Wl,-z -Wl,common-page-size=0x1000 ;
HAIKU_LINKFLAGS_$(HAIKU_PACKAGING_ARCH) +=
-Wl,-z -Wl,max-page-size=0x1000
-Wl,-z -Wl,common-page-size=0x1000 ;
-77
View File
@@ -1,77 +0,0 @@
# Gumstix Verdex board-specific definitions
HAIKU_BOARD_DESCRIPTION = "Openmoko Neo FreeRunner" ;
#
# Various hardcoded addresses
#
# load address for haiku_loader
HAIKU_BOARD_LOADER_BASE = 0x32000000 ;
# entry points (raw binary, and netbsd loader emulation)
HAIKU_BOARD_LOADER_ENTRY_RAW = 0x32000000 ;
HAIKU_BOARD_LOADER_ENTRY_NBSD = 0x32000008 ;
HAIKU_BOARD_LOADER_ENTRY = $(HAIKU_BOARD_LOADER_ENTRY_NBSD) ;
HAIKU_BOARD_LOADER_FAKE_OS = netbsd ;
# load address for haiku_loader uimage
# (must be different than real load address)
HAIKU_BOARD_LOADER_UIBASE = 0x34000000 ;
#
# Flash image
#
# u-boot binary image filename, to build the flash image
# XXX: Locate it somehow (for now just put it in generated/)
#HAIKU_BOARD_UBOOT_IMAGE ?= u-boot-verdex-400-r1604.bin ;
#HAIKU_BOARD_UBOOT_IMAGE_URL =
# http://www.gumstix.net/feeds/u-boot/u-boot-verdex-400-r1604.bin ;
#
# mmc/SD image
#
# in MB
HAIKU_BOARD_SDIMAGE_SIZE = 256 ;
# in MB
HAIKU_BOARD_SDIMAGE_FAT_SIZE = 32 ;
# autoboot script
HAIKU_BOARD_SDIMAGE_UBOOT_SCRIPT_NAME = uImage.bin ;
HAIKU_BOARD_SDIMAGE_UBOOT_SCRIPT = "\
if mmcinit; then \
neo backlight off; \
fatload mmc 0 $(HAIKU_BOARD_LOADER_UIBASE) haiku_loader_nbsd.ub; \
neo backlight on; \
bootm $(HAIKU_BOARD_LOADER_UIBASE); \
fi" ;
HAIKU_BOARD_SDIMAGE_FILES =
haiku_loader
haiku_loader.ub
haiku_loader_nbsd.ub
$(HAIKU_BOARD_SDIMAGE_UBOOT_SCRIPT_NAME)
;
#
# gcc flags for the specific cpu
#
HAIKU_CCFLAGS_$(HAIKU_PACKAGING_ARCH) += -mcpu=arm920t ;
HAIKU_C++FLAGS_$(HAIKU_PACKAGING_ARCH) += -mcpu=arm920t ;
# Workaround for ld using 32k for alignment despite forcing it in the config...
# should definitely not be needed!
HAIKU_KERNEL_LINKFLAGS +=
-Wl,-z -Wl,max-page-size=0x1000
-Wl,-z -Wl,common-page-size=0x1000 ;
HAIKU_LINKFLAGS_$(HAIKU_PACKAGING_ARCH) +=
-Wl,-z -Wl,max-page-size=0x1000
-Wl,-z -Wl,common-page-size=0x1000 ;
-101
View File
@@ -1,101 +0,0 @@
# Gumstix Overo board-specific definitions
HAIKU_BOARD_DESCRIPTION = "Gumstix Overo" ;
HAIKU_BOARD_FDT_NAME = "omap3-overo-tobi" ;
#
# Various hardcoded addresses
#
# load address for haiku_loader
HAIKU_BOARD_LOADER_BASE = 0x80800000 ;
# entry points (raw binary, and netbsd loader emulation)
HAIKU_BOARD_LOADER_ENTRY_RAW = 0x80800000 ;
HAIKU_BOARD_LOADER_ENTRY_NBSD = 0x80800008 ;
HAIKU_BOARD_LOADER_ENTRY_LINUX = 0x80800010 ;
HAIKU_BOARD_LOADER_ENTRY = $(HAIKU_BOARD_LOADER_ENTRY_NBSD) ;
HAIKU_BOARD_LOADER_FAKE_OS = netbsd ;
# load address for haiku_loader uimage
# (must be different than real load address)
HAIKU_BOARD_LOADER_UIBASE = 0x82800000 ;
#
# Flash image
#
# cf. http://gumstix.org/how-to/70-writing-images-to-flash.html
# OMAP x-loader image, must be first file in Flash image
HAIKU_BOARD_MLO_IMAGE ?= MLO ;
HAIKU_BOARD_MLO_IMAGE_URL =
http://cumulus.gumstix.org/images/angstrom/developer/current/MLO ;
# u-boot binary image filename, to build the flash image
# XXX: Locate it somehow (for now just put it in generated/)
HAIKU_BOARD_UBOOT_IMAGE ?= u-boot.bin ;
HAIKU_BOARD_UBOOT_IMAGE_URL =
http://cumulus.gumstix.org/images/angstrom/developer/current/u-boot.bin ;
mloFile = [ DownloadFile $(HAIKU_BOARD_MLO_IMAGE)
: $(HAIKU_BOARD_MLO_IMAGE_URL) ] ;
ubootFile = [ DownloadFile $(HAIKU_BOARD_UBOOT_IMAGE)
: $(HAIKU_BOARD_UBOOT_IMAGE_URL) ] ;
FLASH_IMAGE_PARTS =
$(mloFile)
$(ubootFile)
;
# flash offsets:
# in kB
FLASH_IMAGE_LOADER_OFFSET = 31744 ;
FLASH_OFFSET on $(mloFile) = 0 ;
FLASH_OFFSET on $(ubootFile) = 512 ;
#
# mmc/SD image
#
# in MB
HAIKU_BOARD_SDIMAGE_SIZE = 256 ;
# in MB
HAIKU_BOARD_SDIMAGE_FAT_SIZE = 32 ;
# autoboot script
HAIKU_BOARD_SDIMAGE_UBOOT_SCRIPT_NAME = boot.scr ;
HAIKU_BOARD_SDIMAGE_UBOOT_SCRIPT = "\
setenv bootargs debug_screen true; \
if mmc rescan; then \
fatload mmc 0 0x80100000 /fdt/$(HAIKU_BOARD_FDT_NAME).dtb ; \
fatload mmc 0 0x81200000 haiku-floppyboot.tgz.ub; \
fatload mmc 0 $(HAIKU_BOARD_LOADER_UIBASE) haiku_loader_linux.ub; \
bootm $(HAIKU_BOARD_LOADER_UIBASE) 0x81200000 0x80100000; \
fi" ;
HAIKU_BOARD_SDIMAGE_FILES =
$(mloFile)
$(ubootFile)
haiku_loader
haiku_loader.ub
haiku_loader_linux.ub
haiku_loader_nbsd.ub
haiku-floppyboot.tgz.ub
$(HAIKU_BOARD_SDIMAGE_UBOOT_SCRIPT_NAME)
;
#
# gcc flags for the specific cpu
#
local flags = -mcpu=cortex-a8 -mfpu=vfpv3 -mfloat-abi=hard ;
HAIKU_ASFLAGS_$(HAIKU_PACKAGING_ARCH) += $(flags) ;
HAIKU_CCFLAGS_$(HAIKU_PACKAGING_ARCH) += $(flags) ;
HAIKU_C++FLAGS_$(HAIKU_PACKAGING_ARCH) += $(flags) ;
-74
View File
@@ -1,74 +0,0 @@
# Raspberry Pi 2 board-specific definitions
HAIKU_BOARD_DESCRIPTION = "Raspberry Pi 2" ;
HAIKU_BOARD_FDT_NAME = "rpi2" ;
#
# Various hardcoded addresses
#
HAIKU_BOARD_LOADER_BASE = 0x00080000 ;
HAIKU_BOARD_LOADER_ENTRY_RAW = $(HAIKU_BOARD_LOADER_BASE) ;
HAIKU_BOARD_LOADER_ENTRY_NBSD = `printf \"obase=16;ibase=16;8 + %x\\n\" $(HAIKU_BOARD_LOADER_BASE)|bc` ;
HAIKU_BOARD_LOADER_ENTRY_LINUX = `printf \"obase=16;ibase=16;10 + %x\\n\" $(HAIKU_BOARD_LOADER_BASE)|bc` ;
#
# mmc/SD image
#
# u-boot image
HAIKU_BOARD_UBOOT_IMAGE_URL = https://github.com/haiku/firmware/raw/master/arm/rpi2 ;
ubootFile = [ DownloadFile u-boot.bin : $(HAIKU_BOARD_UBOOT_IMAGE_URL)/u-boot.bin ] ;
configFile = [ DownloadFile config.txt : $(HAIKU_BOARD_UBOOT_IMAGE_URL)/config.txt ] ;
# Raspberry Pi foundation loader
HAIKU_BOARD_FIRMWARE_URL = https://github.com/raspberrypi/firmware/raw/master/boot ;
bootcodeFile = [ DownloadFile bootcode.bin : $(HAIKU_BOARD_FIRMWARE_URL)/bootcode.bin ] ;
startFile = [ DownloadFile start.elf : $(HAIKU_BOARD_FIRMWARE_URL)/start.elf ] ;
licenseFile = [ DownloadFile LICENCE.broadcom : $(HAIKU_BOARD_FIRMWARE_URL)/LICENCE.broadcom ] ;
HAIKU_BOARD_FIRMWARE_FILES =
$(bootcodeFile)
$(startFile)
$(licenseFile)
;
HAIKU_BOARD_SDIMAGE_UBOOT_SCRIPT_NAME = boot.scr ;
HAIKU_BOARD_SDIMAGE_UBOOT_SCRIPT = "\
fatload mmc 0 ${fdt_addr_r} /fdt/$(HAIKU_BOARD_FDT_NAME).dtb \
fdt addr ${fdt_addr_r} \
fatload mmc 0 ${ramdisk_addr_r} haiku-floppyboot.tgz.ub \
fatload mmc 0 ${kernel_addr_r} haiku_loader_linux.ub \
bootm ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}" ;
HAIKU_BOARD_SDIMAGE_FAT_SIZE = 32 ;
HAIKU_BOARD_SDIMAGE_FILES =
$(HAIKU_BOARD_FIRMWARE_FILES)
$(configFile)
$(ubootFile)
haiku_loader_linux.ub
haiku-floppyboot.tgz.ub
$(HAIKU_BOARD_SDIMAGE_UBOOT_SCRIPT_NAME)
;
HAIKU_BOARD_SDIMAGE_SIZE = 128 ;
#
# gcc flags for the specific cpu
#
local flags = -march=armv7-a -mfloat-abi=hard ;
HAIKU_ASFLAGS_$(HAIKU_PACKAGING_ARCH) += $(flags) ;
HAIKU_CCFLAGS_$(HAIKU_PACKAGING_ARCH) += $(flags) ;
HAIKU_C++FLAGS_$(HAIKU_PACKAGING_ARCH) += $(flags) ;
# Workaround for ld using 32k for alignment despite forcing it in the config...
# should definitely not be needed!
HAIKU_KERNEL_LINKFLAGS +=
-Wl,-z -Wl,max-page-size=0x1000
-Wl,-z -Wl,common-page-size=0x1000 ;
HAIKU_LINKFLAGS_$(HAIKU_PACKAGING_ARCH) +=
-Wl,-z -Wl,max-page-size=0x1000
-Wl,-z -Wl,common-page-size=0x1000 ;
-25
View File
@@ -1,25 +0,0 @@
##### CPU Speed
#arm_freq 700
##### Memory layout
#gpu_mem 64
# Memory based on model.. overrides gpu_mem
#gpu_mem_256 64
#gpu_mem_512 64
##### Low level
kernel=haiku_loader
kernel_address=0x0
ramfsfile=haiku-floppyboot.tgz
ramfsaddr=0x04000000
# Skip boot tags for non-linux platforms
disable_commandline_tags=1
#device_tree=bcm2835.dtb
#device_tree_address=0x100
##### UART Settings
# Default is 115200
#init_uart_baud=9600
#init_uart_clock=