Add support for BeagleBoard-X15 with Fiasco.OC

This commit is contained in:
2019-08-22 15:45:33 +02:00
parent acdbc1f6f8
commit ddea5924ad
9 changed files with 216 additions and 3 deletions

View File

@@ -0,0 +1,108 @@
#
# Automatically generated file; DO NOT EDIT.
# Fiasco configuration
#
CONFIG_HAS_FPU_OPTION=y
CONFIG_HAS_VIRT_OBJ_SPACE_OPTION=y
CONFIG_HAS_SERIAL_OPTION=y
CONFIG_HAS_JDB_GZIP_OPTION=y
CONFIG_HAS_MP_OPTION=y
CONFIG_HAS_CPU_VIRT=y
#
# Target configuration
#
# CONFIG_IA32 is not set
# CONFIG_AMD64 is not set
CONFIG_ARM=y
# CONFIG_MIPS is not set
# CONFIG_PF_INTEGRATOR is not set
# CONFIG_PF_REALVIEW is not set
# CONFIG_PF_SUNXI is not set
# CONFIG_PF_BCM283X is not set
# CONFIG_PF_SA1100 is not set
# CONFIG_PF_XSCALE is not set
# CONFIG_PF_ARMADA38X is not set
# CONFIG_PF_KIRKWOOD is not set
# CONFIG_PF_TEGRA is not set
# CONFIG_PF_LAYERSCAPE is not set
# CONFIG_PF_IMX is not set
# CONFIG_PF_ARM_VIRT is not set
# CONFIG_PF_RCAR3 is not set
# CONFIG_PF_EXYNOS is not set
# CONFIG_PF_S3C2410 is not set
CONFIG_PF_OMAP=y
# CONFIG_PF_ZYNQ is not set
# CONFIG_PF_ZYNQMP is not set
CONFIG_BSP_NAME="omap"
CONFIG_CAN_ARM_CPU_CORTEX_A15=y
CONFIG_ARM_V7=y
CONFIG_ARM_V6PLUS=y
CONFIG_ARM_V7PLUS=y
# CONFIG_PF_OMAP3_OMAP35XEVM is not set
# CONFIG_PF_OMAP3_BEAGLEBOARD is not set
# CONFIG_PF_OMAP3_AM33XX is not set
# CONFIG_PF_OMAP4_PANDABOARD is not set
# CONFIG_PF_OMAP5_5432EVM is not set
CONFIG_PF_OMAP5_BEAGLEBOARD_X15=y
CONFIG_ABI_VF=y
CONFIG_ARM_CORTEX_A15=y
# CONFIG_CPU_VIRT is not set
CONFIG_FPU=y
# CONFIG_ARM_ALIGNMENT_CHECK is not set
CONFIG_ARM_EM_STD=y
# CONFIG_ARM_EM_NS is not set
# CONFIG_ARM_EM_TZ is not set
# CONFIG_ARM_SMC_USER is not set
# CONFIG_ARM_ENABLE_SWP is not set
# CONFIG_ARM_LPAE is not set
CONFIG_ARM_CPU_ERRATA=y
#
# Kernel options
#
CONFIG_MP=y
CONFIG_MP_MAX_CPUS=2
CONFIG_CONTEXT_4K=y
CONFIG_FINE_GRAINED_CPUTIME=y
CONFIG_SCHED_FIXED_PRIO=y
CONFIG_VIRT_OBJ_SPACE=y
#
# Debugging
#
CONFIG_INLINE=y
# CONFIG_NDEBUG is not set
CONFIG_NO_FRAME_PTR=y
# CONFIG_STACK_DEPTH is not set
# CONFIG_LIST_ALLOC_SANITY is not set
CONFIG_SERIAL=y
CONFIG_JDB=y
CONFIG_JDB_LOGGING=y
CONFIG_JDB_GZIP=y
# CONFIG_JDB_ACCOUNTING is not set
# CONFIG_WARN_NONE is not set
CONFIG_WARN_WARNING=y
# CONFIG_WARN_ANY is not set
#
# ARM debugging options
#
# CONFIG_VMEM_ALLOC_TEST is not set
# CONFIG_DEBUG_KERNEL_PAGE_FAULTS is not set
#
# Compiling
#
CONFIG_CC="gcc"
CONFIG_CXX="g++"
CONFIG_HOST_CC="gcc"
CONFIG_HOST_CXX="g++"
# CONFIG_MAINTAINER_MODE is not set
CONFIG_LABEL=""
# CONFIG_EXPERIMENTAL is not set
CONFIG_PERF_CNT=y
CONFIG_BIT32=y
CONFIG_WARN_LEVEL=1
CONFIG_XARCH="arm"
CONFIG_ABI="vf"

View File

@@ -0,0 +1,89 @@
#
# Automatically generated file; DO NOT EDIT.
# L4Re Configuration
#
CONFIG_ARCH_ENABLE_STACK_PROTECTOR=y
# CONFIG_BUILD_ARCH_amd64 is not set
CONFIG_BUILD_ARCH_arm=y
# CONFIG_BUILD_ARCH_arm64 is not set
# CONFIG_BUILD_ARCH_mips is not set
# CONFIG_BUILD_ARCH_ppc32 is not set
# CONFIG_BUILD_ARCH_sparc is not set
# CONFIG_BUILD_ARCH_x86 is not set
CONFIG_BUILD_ARCH="arm"
CONFIG_BUILD_ABI_l4f=y
CONFIG_BUILD_ABI="l4f"
# CONFIG_CPU_ARM_ARMV4 is not set
# CONFIG_CPU_ARM_ARMV4T is not set
# CONFIG_CPU_ARM_ARMV5 is not set
# CONFIG_CPU_ARM_ARMV5T is not set
# CONFIG_CPU_ARM_ARMV5TE is not set
# CONFIG_CPU_ARM_ARMV6 is not set
# CONFIG_CPU_ARM_ARMV6T2 is not set
# CONFIG_CPU_ARM_ARMV6ZK is not set
CONFIG_CPU_ARM_ARMV7A=y
CONFIG_CPU="armv7a"
CONFIG_CPU_ARMV6KPLUS=y
CONFIG_CPU_ARMV6PLUS=y
# CONFIG_PLATFORM_TYPE_wand_quad is not set
# CONFIG_PLATFORM_TYPE_sabre_lite is not set
# CONFIG_PLATFORM_TYPE_imx6 is not set
# CONFIG_PLATFORM_TYPE_zedboard is not set
# CONFIG_PLATFORM_TYPE_imx35 is not set
# CONFIG_PLATFORM_TYPE_rv_pbx is not set
CONFIG_PLATFORM_TYPE_bb_x15=y
# CONFIG_PLATFORM_TYPE_rv is not set
# CONFIG_PLATFORM_TYPE_kirkwood is not set
# CONFIG_PLATFORM_TYPE_pandaboard is not set
# CONFIG_PLATFORM_TYPE_arm_virt is not set
# CONFIG_PLATFORM_TYPE_tegra2 is not set
# CONFIG_PLATFORM_TYPE_imx7 is not set
# CONFIG_PLATFORM_TYPE_exynos4 is not set
# CONFIG_PLATFORM_TYPE_cubieboard2 is not set
# CONFIG_PLATFORM_TYPE_omap3_am33xx is not set
# CONFIG_PLATFORM_TYPE_ls1012afrdm is not set
# CONFIG_PLATFORM_TYPE_rpi_b is not set
# CONFIG_PLATFORM_TYPE_rv_vexpress_a15 is not set
# CONFIG_PLATFORM_TYPE_imx51 is not set
# CONFIG_PLATFORM_TYPE_ls1021atwr is not set
# CONFIG_PLATFORM_TYPE_tegra3 is not set
# CONFIG_PLATFORM_TYPE_imx28 is not set
# CONFIG_PLATFORM_TYPE_omap3evm is not set
# CONFIG_PLATFORM_TYPE_exynos5 is not set
# CONFIG_PLATFORM_TYPE_rcar3_m3 is not set
# CONFIG_PLATFORM_TYPE_parallella is not set
# CONFIG_PLATFORM_TYPE_zynqmp is not set
# CONFIG_PLATFORM_TYPE_beagleboard is not set
# CONFIG_PLATFORM_TYPE_imx21 is not set
# CONFIG_PLATFORM_TYPE_imx6ul is not set
# CONFIG_PLATFORM_TYPE_armada38x is not set
# CONFIG_PLATFORM_TYPE_omap5 is not set
# CONFIG_PLATFORM_TYPE_rv_vexpress is not set
# CONFIG_PLATFORM_TYPE_rpi_a is not set
# CONFIG_PLATFORM_TYPE_integrator is not set
# CONFIG_PLATFORM_TYPE_custom is not set
CONFIG_PLATFORM_TYPE="bb_x15"
# CONFIG_USE_DROPS_STDDIR is not set
# CONFIG_USE_DICE is not set
CONFIG_DROPS_STDDIR="/path/to/l4re"
CONFIG_DROPS_INSTDIR="/path/to/l4re"
CONFIG_BID_COLORED_PHASES=y
#
# Building
#
CONFIG_YACC="yacc"
CONFIG_LEX="flex"
CONFIG_CTAGS="ctags"
CONFIG_ETAGS="etags"
CONFIG_HAVE_LDSO=y
CONFIG_INT_CPP_NAME_SWITCH=y
CONFIG_INT_LD_NAME_SWITCH=y
# CONFIG_BID_STRIP_PROGS is not set
# CONFIG_BID_GCC_OMIT_FP is not set
CONFIG_BID_GCC_ENABLE_STACK_PROTECTOR=y
# CONFIG_BID_GCC_STACK_PROTECTOR_ALL is not set
CONFIG_BID_GCC_STACK_PROTECTOR=y
# CONFIG_BID_BUILD_DOC is not set
# CONFIG_RELEASE_MODE is not set
CONFIG_MAKECONFS_ADD=""

View File

@@ -0,0 +1,3 @@
KERNEL_CONFIG := $(REP_DIR)/config/bb_x15.kernel
include $(REP_DIR)/lib/mk/kernel-foc.inc

View File

@@ -0,0 +1,5 @@
L4_CONFIG := $(call select_from_repositories,config/bb_x15.user)
L4_BIN_DIR := $(LIB_CACHE_DIR)/syscall-foc/build/bin/arm_armv7a
include $(REP_DIR)/lib/mk/spec/arm/syscall-foc.inc

View File

@@ -1 +1 @@
8e5c089107387d3a1bf8314ae369b08b0a7d35fb f4faf7d7b48797f7938d5bf85ed14e5336ac14b6

View File

@@ -2,5 +2,5 @@ LICENSE := GPLv2
VERSION := git VERSION := git
DOWNLOADS := foc.git DOWNLOADS := foc.git
URL(foc) := https://git.mousetrap.xyz/alex/foc.git URL(foc) := https://git.mousetrap.xyz/alex/foc.git
REV(foc) := 98ebf56c9dd97deb9c88cfd783ea187145a67c31 REV(foc) := a01968f492dc3872ae0267eabc1845ea5a08dc99
DIR(foc) := src/kernel/foc DIR(foc) := src/kernel/foc

View File

@@ -0,0 +1,5 @@
SPECS += cortex_a15
REP_INC_DIR += include/spec/bb_x15
include $(BASE_DIR)/mk/spec/cortex_a15.mk

View File

@@ -12,7 +12,7 @@ PLATFORM = $(MAKECMDGOALS)
PLATFORMS = x86_32 x86_64 panda pbxa9 rpi arndale imx53_qsb imx53_qsb_tz \ PLATFORMS = x86_32 x86_64 panda pbxa9 rpi arndale imx53_qsb imx53_qsb_tz \
usb_armory wand_quad sabre_lite odroid_xu odroid_x2 zynq_qemu muen \ usb_armory wand_quad sabre_lite odroid_xu odroid_x2 zynq_qemu muen \
riscv_spike linux riscv_spike linux bb_x15
PLATFORMS_DEPR = linux_x86 linux_arm fiasco_x86 okl4_x86 pistachio_x86 \ PLATFORMS_DEPR = linux_x86 linux_arm fiasco_x86 okl4_x86 pistachio_x86 \
nova_x86_32 nova_x86_64 hw_x86_64 foc_x86_32 foc_x86_64 \ nova_x86_32 nova_x86_64 hw_x86_64 foc_x86_32 foc_x86_64 \
@@ -151,6 +151,7 @@ BUILD_CONF(zynq_qemu) := run_kernel_hw run_qemu run_opt_hw run_boot_dir qemu_
BUILD_CONF(muen) := run_kernel_hw run_opt_muen run_boot_dir repos repos_x86 BUILD_CONF(muen) := run_kernel_hw run_opt_muen run_boot_dir repos repos_x86
BUILD_CONF(riscv_spike) := run_kernel_hw run_opt_spike run_boot_dir repos BUILD_CONF(riscv_spike) := run_kernel_hw run_opt_spike run_boot_dir repos
BUILD_CONF(linux) := run_kernel_linux repos BUILD_CONF(linux) := run_kernel_linux repos
BUILD_CONF(bb_x15) := run_kernel_foc run_boot_dir repos
# deprecated platforms, to be removed # deprecated platforms, to be removed
BUILD_CONF(linux_x86) := run_kernel_linux repos BUILD_CONF(linux_x86) := run_kernel_linux repos
@@ -235,6 +236,7 @@ SPECS(zynq_qemu) := zynq_qemu
SPECS(muen) := muen x86_64 SPECS(muen) := muen x86_64
SPECS(riscv_spike) := riscv SPECS(riscv_spike) := riscv
SPECS(linux) := $(HOST_SPEC_ARCH) SPECS(linux) := $(HOST_SPEC_ARCH)
SPECS(bb_x15) := bb_x15
# deprecated platforms # deprecated platforms
SPECS(linux_x86) := $(HOST_SPEC_ARCH) SPECS(linux_x86) := $(HOST_SPEC_ARCH)

View File

@@ -17,6 +17,7 @@ proc core_link_address { } {
if {[have_spec odroid_x2]} { return "0x80100000" } if {[have_spec odroid_x2]} { return "0x80100000" }
if {[have_spec imx53 ]} { return "0x70140000" } if {[have_spec imx53 ]} { return "0x70140000" }
if {[have_spec imx6 ]} { return "0x10200000" } if {[have_spec imx6 ]} { return "0x10200000" }
if {[have_spec bb_x15 ]} { return "0x80200000" }
puts stderr "Error: platform not supported, core link address unknown" puts stderr "Error: platform not supported, core link address unknown"
exit 1 exit 1