haiku/build/jam/board/beaglebone/BoardSetup
2017-10-20 13:12:14 -05:00

61 lines
1.8 KiB
Plaintext

# 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) ;