arm: Add beaglebone target, rename beagle
* beaglebone vs beagleboard * While the boards are almost the same, they have diff. FDT's now (more memory, different layout etc) * Make u-boot script more rpi-like (depend on u-boot for initial addresses) * Wasn't working, still doesn't.
This commit is contained in:
@@ -234,7 +234,12 @@ rule KernelArchitectureSetup architecture
|
|||||||
|
|
||||||
case arm :
|
case arm :
|
||||||
switch $(HAIKU_BOOT_BOARD) {
|
switch $(HAIKU_BOOT_BOARD) {
|
||||||
case beagle :
|
case beagleboard :
|
||||||
|
{
|
||||||
|
HAIKU_BOOT_PLATFORM ?= u-boot ;
|
||||||
|
HAIKU_BOOT_FLOPPY_IMAGE_SIZE = 1440 ;
|
||||||
|
}
|
||||||
|
case beaglebone :
|
||||||
{
|
{
|
||||||
HAIKU_BOOT_PLATFORM ?= u-boot ;
|
HAIKU_BOOT_PLATFORM ?= u-boot ;
|
||||||
HAIKU_BOOT_FLOPPY_IMAGE_SIZE = 1440 ;
|
HAIKU_BOOT_FLOPPY_IMAGE_SIZE = 1440 ;
|
||||||
|
|||||||
@@ -0,0 +1,61 @@
|
|||||||
|
# BeagleBone board-specific definitions
|
||||||
|
|
||||||
|
HAIKU_BOARD_DESCRIPTION = "BeagleBone" ;
|
||||||
|
HAIKU_BOARD_FDT_NAME = "beaglebone-black" ;
|
||||||
|
|
||||||
|
# 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/kallisti5/beagle-uboot-bins/raw/master/beaglebone ;
|
||||||
|
mloFile = [ DownloadFile MLO : $(HAIKU_BOARD_MLO_IMAGE_URL)/MLO ] ;
|
||||||
|
|
||||||
|
# u-boot image
|
||||||
|
HAIKU_BOARD_UBOOT_IMAGE_URL = https://github.com/kallisti5/beagle-uboot-bins/raw/master/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} $(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_BOARD_FDT_NAME).dtb
|
||||||
|
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) ;
|
||||||
@@ -83,8 +83,9 @@ options:
|
|||||||
first occurrence specifies the primary
|
first occurrence specifies the primary
|
||||||
architecture of the Haiku to build, subsequent
|
architecture of the Haiku to build, subsequent
|
||||||
ones the secondary architectures.
|
ones the secondary architectures.
|
||||||
--target-board <board> ARM only: Specify the board to build for. Must be
|
--target-board <board> ARM only: Target board to build for.
|
||||||
one of beagle,rpi1,rpi2,cubieboard4,verdex,overo.
|
<board> is one of: "beagleboard","beaglebone",
|
||||||
|
"rpi1","rpi2","cubieboard4","verdex","overo"
|
||||||
--update re-runs last configure invocation [must be given
|
--update re-runs last configure invocation [must be given
|
||||||
as first option!]
|
as first option!]
|
||||||
--use-clang Build with host Clang instead of GCC cross
|
--use-clang Build with host Clang instead of GCC cross
|
||||||
@@ -473,7 +474,8 @@ supportedTargetArchs="
|
|||||||
x86_gcc2
|
x86_gcc2
|
||||||
"
|
"
|
||||||
supportedTargetBoards="
|
supportedTargetBoards="
|
||||||
beagle
|
beagleboard
|
||||||
|
beaglebone
|
||||||
rpi1
|
rpi1
|
||||||
rpi2
|
rpi2
|
||||||
cubieboard4
|
cubieboard4
|
||||||
|
|||||||
@@ -0,0 +1,29 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2009
|
||||||
|
* Distributed under the terms of the MIT License.
|
||||||
|
*/
|
||||||
|
#ifndef _BOARD_BEAGLE_BONE_CONFIG_H
|
||||||
|
#define _BOARD_BEAGLE_BONE_CONFIG_H
|
||||||
|
|
||||||
|
|
||||||
|
#define BOARD_NAME_PRETTY "BeagleBone"
|
||||||
|
|
||||||
|
#define BOARD_CPU_TYPE_OMAP 1
|
||||||
|
#define BOARD_CPU_OMAP3 1
|
||||||
|
|
||||||
|
#include <arch/arm/omap3.h>
|
||||||
|
|
||||||
|
// UART Settings
|
||||||
|
#define BOARD_UART_8250 1
|
||||||
|
|
||||||
|
#define BOARD_UART1_BASE OMAP_UART1_BASE
|
||||||
|
#define BOARD_UART2_BASE OMAP_UART2_BASE
|
||||||
|
#define BOARD_UART3_BASE OMAP_UART3_BASE
|
||||||
|
|
||||||
|
#define BOARD_UART_DEBUG BOARD_UART3_BASE
|
||||||
|
|
||||||
|
#define BOARD_UART_CLOCK 48000000
|
||||||
|
// 48MHz (APLL96/2)
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* _BOARD_BEAGLE_BONE_CONFIG_H */
|
||||||
Reference in New Issue
Block a user