mirror of
https://git.yoctoproject.org/meta-arm
synced 2026-07-19 16:57:09 +00:00
Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 43b6449601 | |||
| 95cfe5ad83 | |||
| c1a92ede20 | |||
| c4057679c8 | |||
| 3d59929e06 |
@@ -1,15 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# Copyright (c) 2019 Arm Limited
|
||||
#
|
||||
SUMMARY = "Cramfs XIP image type"
|
||||
DESCRIPTION = "Cramfs XIP type image to add to IMAGE_TYPES"
|
||||
LICENSE = "MIT"
|
||||
|
||||
inherit image_types
|
||||
|
||||
do_image_cramfs_xip[depends] += "cramfs-tools-native:do_populate_sysroot"
|
||||
|
||||
IMAGE_TYPES += " cramfs-xip"
|
||||
|
||||
IMAGE_CMD_cramfs-xip = "mkcramfs -n ${IMAGE_NAME} -X ${IMAGE_ROOTFS} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.cramfs-xip ${EXTRA_IMAGECMD}"
|
||||
@@ -1,21 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# Copyright (c) 2019 Arm Limited
|
||||
#
|
||||
|
||||
# arm has a conf and classes directory, add to BBPATH
|
||||
BBPATH .= ":${LAYERDIR}"
|
||||
|
||||
BBFILES += " \
|
||||
${LAYERDIR}/recipes-*/*/*.bb \
|
||||
${LAYERDIR}/recipes-*/*/*.bbappend"
|
||||
|
||||
BBFILES += "${@' '.join('${LAYERDIR}/%s/recipes*/*/*.bbappend' % layer \
|
||||
for layer in BBFILE_COLLECTIONS.split())}"
|
||||
|
||||
BBFILE_COLLECTIONS += "arm"
|
||||
BBFILE_PATTERN_arm := "^${LAYERDIR}/"
|
||||
BBFILE_PRIORITY_arm = "10"
|
||||
LAYERSERIES_COMPAT_arm = "warrior"
|
||||
|
||||
LAYERDEPENDS_arm = "core"
|
||||
@@ -1,18 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# Copyright (c) 2019 Arm Limited
|
||||
#
|
||||
|
||||
IMAGE_FSTYPES += "tar.bz2 wic cpio.gz"
|
||||
|
||||
EXTRA_IMAGEDEPENDS_append = " trusted-firmware-a"
|
||||
|
||||
PREFERRED_PROVIDER_u-boot ?= "u-boot"
|
||||
PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot"
|
||||
|
||||
UBOOT_SUFFIX ?= "bin"
|
||||
UBOOT_MACHINE ?= "vexpress_aemv8a_aarch32_defconfig"
|
||||
|
||||
PREFERRED_PROVIDER_virtual/kernel ?= "linux-arm"
|
||||
|
||||
SERIAL_CONSOLES = "115200;ttyAMA0"
|
||||
@@ -1,8 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# Copyright (c) 2019 Arm Limited
|
||||
#
|
||||
|
||||
TUNE_FEATURES = "aarch32"
|
||||
|
||||
require conf/machine/include/arm/arch-armv8a.inc
|
||||
@@ -1,11 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# Copyright (c) 2019 Arm Limited
|
||||
#
|
||||
|
||||
DEFAULTTUNE="cortexa5"
|
||||
|
||||
require conf/machine/include/tune-cortexa5.inc
|
||||
|
||||
TF-A_EXTRA_OPTIONS = "ARM_ARCH_MAJOR=7 ARM_CORTEX_A5=yes \
|
||||
ARM_XLAT_TABLES_LIB_V1=1"
|
||||
@@ -1,61 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# Copyright (c) 2019 Arm Limited
|
||||
#
|
||||
|
||||
SUMMARY = "Trusted Firmware for Cortex-A"
|
||||
DESCRIPTION = "Trusted Firmware-A"
|
||||
HOMEPAGE = "https://github.com/ARM-software/arm-trusted-firmware"
|
||||
LICENSE = "BSD-3-Clause"
|
||||
|
||||
TF-A_DEPENDS ?= ""
|
||||
|
||||
DEPENDS += " dtc-native coreutils-native"
|
||||
DEPENDS += " ${TF-A_DEPENDS} "
|
||||
|
||||
LIC_FILES_CHKSUM = "file://license.rst;md5=90153916317c204fade8b8df15739cde"
|
||||
|
||||
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
|
||||
|
||||
SRCREV = "${AUTOREV}"
|
||||
|
||||
SRC_URI = "\
|
||||
git://github.com/ARM-software/arm-trusted-firmware;protocol=https;nobranch=1 \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
B = "${WORKDIR}/build"
|
||||
|
||||
COMPATIBLE_MACHINE = "(vexpress-a5|vexpress-a32|corstone700|a5ds)"
|
||||
|
||||
LDFLAGS[unexport] = "1"
|
||||
|
||||
TF-A_PLATFORM ?= "fvp"
|
||||
TF-A_ARCH ?= "aarch32"
|
||||
TF-A_DEBUG ?= "1"
|
||||
TF-A_AARCH32_SP ?= "sp_min"
|
||||
TF-A_BL33 ?= ""
|
||||
|
||||
TF-A_TARGET_IMAGES ?= "all fip"
|
||||
TF-A_EXTRA_OPTIONS ?= ""
|
||||
|
||||
do_compile() {
|
||||
mkdir -p ${B}
|
||||
|
||||
oe_runmake -C ${S} BUILD_BASE=${B} \
|
||||
BUILD_PLAT=${B}/${TF-A_PLATFORM}/ \
|
||||
PLAT=${TF-A_PLATFORM} \
|
||||
DEBUG=${TF-A_DEBUG} \
|
||||
ARCH=${TF-A_ARCH} \
|
||||
CROSS_COMPILE=${TARGET_PREFIX} \
|
||||
AARCH32_SP=${TF-A_AARCH32_SP} \
|
||||
BL33=${TF-A_BL33} \
|
||||
${TF-A_EXTRA_OPTIONS} \
|
||||
${TF-A_TARGET_IMAGES}
|
||||
}
|
||||
|
||||
do_install() {
|
||||
[ -f ${B}/${TF-A_PLATFORM}/bl1.bin ] && install -D -p -m 0644 ${B}/${TF-A_PLATFORM}/bl1.bin ${DEPLOY_DIR_IMAGE}/bl1.bin
|
||||
[ -f ${B}/${TF-A_PLATFORM}/bl1/bl1.elf ] && install -D -p -m 0644 ${B}/${TF-A_PLATFORM}/bl1/bl1.elf ${DEPLOY_DIR_IMAGE}/bl1.elf
|
||||
install -D -p -m 0644 ${B}/${TF-A_PLATFORM}/fip.bin ${DEPLOY_DIR_IMAGE}/${TF-A_PLATFORM}.fip
|
||||
}
|
||||
@@ -1,23 +0,0 @@
|
||||
SUMMARY = "Cramfs tools"
|
||||
DESCRIPTION = "Cramfs tools to create cramfs images with support to XIP"
|
||||
HOMEPAGE = "https://github.com/npitre/cramfs-tools"
|
||||
LICENSE = "GPLv2"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=393a5ca445f6965873eca0259a17f833"
|
||||
|
||||
SRC_URI = "git://github.com/npitre/cramfs-tools;protocol=https;nobranch=1"
|
||||
|
||||
SRCREV = "23d032e6e0a973810c6aedf165441592641b60f4"
|
||||
|
||||
BBCLASSEXTEND = "native"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
do_compile () {
|
||||
oe_runmake
|
||||
}
|
||||
|
||||
do_install() {
|
||||
install -d ${D}${bindir}
|
||||
install ${S}/mkcramfs ${D}${bindir}
|
||||
install ${S}/cramfsck ${D}${bindir}
|
||||
}
|
||||
@@ -1,35 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# Copyright (c) 2019 Arm Limited
|
||||
#
|
||||
|
||||
DESCRIPTION = "Linux Kernel provided and supported by Arm and Linaro with \
|
||||
focus on vexpress and other Arm models and hardware. Trying to be as much \
|
||||
as possible close to upstream tree."
|
||||
SECTION = "kernel"
|
||||
LICENSE = "GPLv2"
|
||||
SRCREV_FORMAT = "kernel"
|
||||
|
||||
require recipes-kernel/linux/linux-yocto.inc
|
||||
|
||||
KERNEL_VERSION_SANITY_SKIP = "1"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
COMPATIBLE_MACHINE = "(vexpress-a5|vexpress-a32|corstone700|a5ds)"
|
||||
|
||||
# Override do_kernel_configme to avoid kernel being assembled into a linux-yocto style kernel
|
||||
# https://www.yoctoproject.org/docs/1.8/ref-manual/ref-manual.html#ref-tasks-kernel_configme
|
||||
do_kernel_configme() {
|
||||
}
|
||||
|
||||
KBRANCH = ""
|
||||
LINUX_VERSION ?= "5.2"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
|
||||
|
||||
SRC_URI = "\
|
||||
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux;protocol=https;nobranch=1 \
|
||||
"
|
||||
|
||||
SRCREV = "v5.2"
|
||||
@@ -1,8 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# Copyright (c) 2019 Arm Limited
|
||||
#
|
||||
|
||||
SUMMARY = "Linux Kernel provided and supported by Arm/Linaro"
|
||||
|
||||
require recipes-kernel/linux/linux-arm-common.inc
|
||||
@@ -1,6 +1,8 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
# Copyright (c) 2019 Arm Limited
|
||||
# Copyright (c) 2018 ARM Limited
|
||||
#
|
||||
# Iota OpenEmbedded distribution configuration file
|
||||
#
|
||||
|
||||
require conf/distro/poky-tiny.conf
|
||||
@@ -9,8 +11,6 @@ DISTRO_NAME = "Iota - Tiny Linux Distribution"
|
||||
DISTRO = "iota-tiny"
|
||||
DISTRO_VERSION = "0.1"
|
||||
|
||||
PREFERRED_PROVIDER_virtual/kernel = "linux-arm"
|
||||
|
||||
INHERIT += "image-buildinfo"
|
||||
|
||||
TCLIBC = "musl"
|
||||
@@ -0,0 +1,17 @@
|
||||
# corstone700 has a conf and classes directory, add to BBPATH
|
||||
BBPATH .= ":${LAYERDIR}"
|
||||
|
||||
# corstone700 has a packages directory, add to BBFILES
|
||||
BBFILES += " \
|
||||
${LAYERDIR}/recipes-*/*/*.bb \
|
||||
${LAYERDIR}/recipes-*/*/*.bbappend"
|
||||
|
||||
BBFILE_COLLECTIONS += "meta-corstone700"
|
||||
BBFILE_PATTERN_meta-corstone700 := "^${LAYERDIR}/"
|
||||
BBFILE_PRIORITY_meta-corstone700 = "10"
|
||||
LAYERSERIES_COMPAT_meta-corstone700 = "thud"
|
||||
|
||||
NAME_GCC_ARM_NONE_EABI = "gcc-arm-none-eabi"
|
||||
INSTALL_GCC_ARM_NONE_EABI = "${bindir}/${NAME_GCC_ARM_NONE_EABI}"
|
||||
TC_GCC_ARM_NONE_EABI = "${STAGING_BINDIR_NATIVE}/${NAME_GCC_ARM_NONE_EABI}"
|
||||
TC_GCC_ARM_NONE_EABI_BIN = "${TC_GCC_ARM_NONE_EABI}/bin"
|
||||
@@ -0,0 +1,19 @@
|
||||
#@TYPE: Machine
|
||||
#@NAME: corstone700 machine
|
||||
#@DESCRIPTION: Machine configuration for the corstone700 board
|
||||
|
||||
TUNE_FEATURES = "aarch32"
|
||||
|
||||
require conf/machine/include/arm/arch-armv8.inc
|
||||
|
||||
PREFERRED_PROVIDER_virtual/kernel = "linux-iota-corstone700"
|
||||
|
||||
IMAGE_FSTYPES += "tar.bz2 wic cpio.gz"
|
||||
|
||||
WKS_FILE = "iota-corstone700.wks"
|
||||
|
||||
EXTRA_IMAGEDEPENDS_append = " trusted-firmware-a boot-firmware test-app"
|
||||
|
||||
SERIAL_CONSOLES = "115200;ttyAMA0"
|
||||
|
||||
CORE_IMAGE_EXTRA_INSTALL += "test-app"
|
||||
@@ -0,0 +1,46 @@
|
||||
SUMMARY = "Boot Processor firmware"
|
||||
DESCRIPTION = "Boot Processor firmware"
|
||||
DEPENDS += " coreutils-native gcc-arm-none-eabi-native trusted-firmware-a "
|
||||
LICENSE="BSD"
|
||||
LIC_FILES_CHKSUM = "file://license.md;md5=e44b2531cd6ffe9dece394dbe988d9a0"
|
||||
|
||||
# Use Yocto-built python3 executable
|
||||
inherit python3native
|
||||
|
||||
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
|
||||
|
||||
SRC_URI = "gitsm://${USER}@git.linaro.org/landing-teams/working/arm/boot-firmware.git;protocol=https;branch=corstone700-19.02"
|
||||
SRCREV = "${AUTOREV}"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
B = "${WORKDIR}/build"
|
||||
|
||||
COMPATIBLE_MACHINE = "(corstone700)"
|
||||
|
||||
PLATFORM = "corstone-700"
|
||||
|
||||
LDFLAGS[unexport] = "1"
|
||||
|
||||
do_compile() {
|
||||
export PATH=${TC_GCC_ARM_NONE_EABI_BIN}:$PATH
|
||||
mkdir -p ${B}
|
||||
oe_runmake -C ${S} BUILD_BASE=${B} \
|
||||
BUILD_PLAT=${B}/${PLATFORM}/ \
|
||||
PRODUCT=${PLATFORM} \
|
||||
CROSS_COMPILE=arm-none-eabi- \
|
||||
clean \
|
||||
all
|
||||
cp ${S}/build/product/${PLATFORM}/se_ramfw/release/bin/firmware.bin ${B}/se_ramfw.bin
|
||||
cp ${S}/build/product/${PLATFORM}/se_romfw/release/bin/firmware.bin ${B}/se_romfw.bin
|
||||
|
||||
oe_runmake -C ${S}/tools/spitoc BUILD_BASE=${B} \
|
||||
BUILD_PLAT=${B}/${PLATFORM}/ \
|
||||
all
|
||||
cp ${S}/tools/spitoc/spitoc ${B}/spitoc
|
||||
}
|
||||
|
||||
do_install() {
|
||||
install -D -p -m 0644 ${B}/se_ramfw.bin ${DEPLOY_DIR_IMAGE}/se_ramfw.bin
|
||||
install -D -p -m 0644 ${B}/se_romfw.bin ${DEPLOY_DIR_IMAGE}/se_romfw.bin
|
||||
${B}/spitoc --seram ${DEPLOY_DIR_IMAGE}/se_ramfw.bin --offset 1 --fip ${DEPLOY_DIR_IMAGE}/corstone700.fip --offset 33 --out ${DEPLOY_DIR_IMAGE}/spitoc.bin
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
License
|
||||
=======
|
||||
|
||||
Copyright (c) 2011-2017, Arm Limited. All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without modification,
|
||||
are permitted provided that the following conditions are met:
|
||||
|
||||
- Redistributions of source code must retain the above copyright notice, this
|
||||
list of conditions and the following disclaimer.
|
||||
|
||||
- Redistributions in binary form must reproduce the above copyright notice,
|
||||
this list of conditions and the following disclaimer in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
|
||||
- Neither the name of Arm nor the names of its contributors may be used to
|
||||
endorse or promote products derived from this software without specific prior
|
||||
written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
||||
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
---
|
||||
|
||||
__Note:__
|
||||
Individual files contain the following tag instead of the full license text.
|
||||
|
||||
SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
This enables machine processing of license information based on the SPDX
|
||||
License Identifiers that are available here: http://spdx.org/licenses/
|
||||
@@ -0,0 +1,43 @@
|
||||
DEPENDS_corstone700 += " dtc-native coreutils-native "
|
||||
|
||||
LIC_FILES_CHKSUM_corstone700 = "file://license.rst;md5=c709b197e22b81ede21109dbffd5f363"
|
||||
|
||||
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
|
||||
|
||||
SRC_URI_corstone700 = "\
|
||||
git://${USER}@git.linaro.org/landing-teams/working/arm/arm-tf.git;protocol=https;branch=corstone700-19.02 \
|
||||
"
|
||||
SRCREV_corstone700 = "${AUTOREV}"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
B = "${WORKDIR}/build"
|
||||
|
||||
COMPATIBLE_MACHINE = "(corstone700)"
|
||||
|
||||
PLATFORM_corstone700 = "corstone700"
|
||||
|
||||
LDFLAGS[unexport] = "1"
|
||||
|
||||
do_compile_corstone700() {
|
||||
mkdir -p ${B}
|
||||
|
||||
oe_runmake -C ${S} BUILD_BASE=${B} \
|
||||
BUILD_PLAT=${B}/${PLATFORM}/ \
|
||||
PLAT=${PLATFORM} \
|
||||
DEBUG=1 \
|
||||
ARCH=aarch32 \
|
||||
CROSS_COMPILE=${TARGET_PREFIX} \
|
||||
AARCH32_SP=sp_min \
|
||||
RESET_TO_SP_MIN=1 \
|
||||
ARM_LINUX_KERNEL_AS_BL33=1 \
|
||||
PRELOADED_BL33_BASE=0x08500000 \
|
||||
ARM_PRELOADED_DTB_BASE=0x02800000 \
|
||||
ENABLE_STACK_PROTECTOR=strong \
|
||||
ENABLE_PIE=1 \
|
||||
all \
|
||||
fip
|
||||
}
|
||||
|
||||
do_install_corstone700() {
|
||||
install -D -p -m 0644 ${B}/${PLATFORM}/fip.bin ${DEPLOY_DIR_IMAGE}/${PLATFORM}.fip
|
||||
}
|
||||
+3
-8
@@ -1,16 +1,11 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# Copyright (c) 2019 Arm Limited
|
||||
#
|
||||
|
||||
# Recipe for fetching and installing the prebuilt gcc-arm toolchain for
|
||||
# bare-metal targets.
|
||||
# Recipe based on the meta-ti layer:
|
||||
# http://git.yoctoproject.org/cgit/cgit.cgi/meta-ti/tree/recipes-ti/devtools/gcc-arm-none-eabi-native_4.9.2015q3.bb?h=master
|
||||
#
|
||||
# Whilst most of the tools built in relies on the linaro-provided
|
||||
# toolchain, some recipes require the baremetal Arm GCC toolchain. The baremetal
|
||||
# Arm GCC toolchain is distributed as precompiled binaries. This recipe fetches
|
||||
# Whilst most of the tools built in sdk-700 relies on the linaro-provided
|
||||
# toolchain, some recipes require the baremetal ARM GCC toolchain. The baremetal
|
||||
# ARM GCC toolchain is distributed as precompiled binaries. This recipe fetches
|
||||
# the toolchain and installs it in sysroot.
|
||||
# Recipes may then 'DEPENDS' on this recipe to fetch the toolchain, making the
|
||||
# toolchain available in the staging directory of the depending recipe.
|
||||
@@ -0,0 +1,18 @@
|
||||
SUMMARY = "Linux Kernel provided and supported by ARM/Linaro for Cortex-A32"
|
||||
|
||||
require recipes-kernel/linux/linux-iota.inc
|
||||
|
||||
# Override do_kernel_configme to avoid kernel being assembled into a linux-yocto style kernel
|
||||
# https://www.yoctoproject.org/docs/1.8/ref-manual/ref-manual.html#ref-tasks-kernel_configme
|
||||
do_kernel_configme() {
|
||||
}
|
||||
|
||||
KERNEL_IMAGETYPE = "xipImage"
|
||||
KBUILD_DEFCONFIG = "corstone700_defconfig"
|
||||
KBRANCH = ""
|
||||
|
||||
SRC_URI = "\
|
||||
git://${USER}@git.linaro.org/landing-teams/working/arm/kernel-release.git;protocol=https;branch=corstone700-19.02 \
|
||||
"
|
||||
|
||||
SRCREV = "${AUTOREV}"
|
||||
@@ -0,0 +1,16 @@
|
||||
DESCRIPTION = "Linux Kernel provided and supported by ARM and Linaro with \
|
||||
focus on vexpress and other ARM models and hardware. Trying to be as much \
|
||||
as possible close to upstream tree."
|
||||
SECTION = "kernel"
|
||||
LICENSE = "GPLv2"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
|
||||
SRCREV = "${AUTOREV}"
|
||||
SRCREV_FORMAT = "kernel"
|
||||
|
||||
require recipes-kernel/linux/linux-yocto.inc
|
||||
|
||||
KERNEL_VERSION_SANITY_SKIP = "1"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
COMPATIBLE_MACHINE = "(corstone700)"
|
||||
@@ -0,0 +1,32 @@
|
||||
SUMMARY = "CORSTONE700 Host Test App"
|
||||
DESCRIPTION = "CORSTONE700 Host Test App"
|
||||
DEPENDS += " coreutils-native "
|
||||
LICENSE="BSD"
|
||||
LIC_FILES_CHKSUM = "file://license.md;md5=e44b2531cd6ffe9dece394dbe988d9a0"
|
||||
|
||||
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
|
||||
|
||||
SRC_URI = "git://${USER}@git.linaro.org/landing-teams/working/arm/test-apps.git;protocol=https;branch=corstone700-19.02"
|
||||
SRCREV = "${AUTOREV}"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
B = "${WORKDIR}/build"
|
||||
|
||||
COMPATIBLE_MACHINE = "(corstone700)"
|
||||
|
||||
PLATFORM = "corstone700"
|
||||
|
||||
LDFLAGS[unexport] = "1"
|
||||
|
||||
do_compile() {
|
||||
mkdir -p ${B}
|
||||
${CC} ${S}/test-app.c -o ${S}/test-app --static
|
||||
cp ${S}/test-app ${B}/test-app
|
||||
}
|
||||
|
||||
do_install() {
|
||||
install -d ${D}/${bindir}/
|
||||
install -m 0755 ${B}/test-app ${D}${bindir}/test-app
|
||||
}
|
||||
|
||||
FILES_${PN} += "${bindir}/test-app"
|
||||
@@ -0,0 +1,13 @@
|
||||
# Partition for corstone700
|
||||
part --source rawcopy --sourceparams="file=spitoc.bin" --no-table --align 1 --fixed-size 1k
|
||||
|
||||
part --source rawcopy --sourceparams="file=se_ramfw.bin" --no-table --align 1 --fixed-size 32k
|
||||
|
||||
# Rawcopy of the FIP binary
|
||||
part --source rawcopy --sourceparams="file=corstone700.fip" --no-table --align 1 --fixed-size 991k
|
||||
|
||||
# Rawcopy of the rootfs
|
||||
part --source rawcopy --sourceparams="file=iota-tiny-image-corstone700.cpio.gz" --no-table --fixed-size 4
|
||||
|
||||
# Rawcopy of the kernel binary
|
||||
part --source rawcopy --sourceparams="file=xipImage" --no-table --fixed-size 3
|
||||
@@ -1,19 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# Copyright (c) 2019 Arm Limited
|
||||
#
|
||||
|
||||
# designstart has a conf and classes directory, add to BBPATH
|
||||
BBPATH .= ":${LAYERDIR}"
|
||||
|
||||
# designstart has a packages directory, add to BBFILES
|
||||
BBFILES += " \
|
||||
${LAYERDIR}/recipes-*/*/*.bb \
|
||||
${LAYERDIR}/recipes-*/*/*.bbappend"
|
||||
|
||||
BBFILE_COLLECTIONS += "designstart"
|
||||
BBFILE_PATTERN_designstart := "^${LAYERDIR}/"
|
||||
BBFILE_PRIORITY_designstart = "12"
|
||||
LAYERSERIES_COMPAT_designstart = "warrior"
|
||||
|
||||
LAYERDEPENDS_vexpress = "arm"
|
||||
@@ -1,18 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# Copyright (c) 2019 Arm Limited
|
||||
#
|
||||
|
||||
require conf/machine/include/arm-common-configuration.inc
|
||||
require conf/machine/include/cortex-a5.inc
|
||||
|
||||
TF-A_PLATFORM = "a5ds"
|
||||
TF-A_EXTRA_OPTIONS += " FVP_HW_CONFIG_DTS=fdts/a5ds.dts"
|
||||
TF-A_DEPENDS += "u-boot u-boot-mkimage-native"
|
||||
TF-A_BL33 = "${DEPLOY_DIR_IMAGE}/u-boot.${UBOOT_SUFFIX}"
|
||||
|
||||
SERIAL_CONSOLES ?= "115200;ttyAMA0"
|
||||
|
||||
KBUILD_DEFCONFIG = "multi_v7_defconfig"
|
||||
|
||||
EXTRA_IMAGEDEPENDS_append = " u-boot"
|
||||
@@ -1,11 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# Copyright (c) 2019 Arm Limited
|
||||
#
|
||||
|
||||
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
|
||||
|
||||
SRC_URI += "\
|
||||
file://0001-plat-arm-a5ds-move-dtb-to-a-new-address.patch \
|
||||
"
|
||||
SRCREV = "ed01e0c407a1794faf8ff8173183a50419bbd2ae"
|
||||
-31
@@ -1,31 +0,0 @@
|
||||
From d3cadbc6f1060020960dc05af0465db919bbbe2b Mon Sep 17 00:00:00 2001
|
||||
From: Rui Miguel Silva <rui.silva@linaro.org>
|
||||
Date: Fri, 30 Aug 2019 13:38:44 +0100
|
||||
Subject: [PATCH] plat/arm: a5ds: move dtb to a new address
|
||||
|
||||
When Using bigger kernel images (>8.4MB compressed zImage) and at
|
||||
decompress and final location init stage of kernel start makes it
|
||||
override dtb at this address, to avoid this move the dtb a little
|
||||
higher in address related.
|
||||
|
||||
Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org>
|
||||
---
|
||||
plat/arm/board/a5ds/fdts/a5ds_tb_fw_config.dts | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/plat/arm/board/a5ds/fdts/a5ds_tb_fw_config.dts b/plat/arm/board/a5ds/fdts/a5ds_tb_fw_config.dts
|
||||
index 9ab2d9656600..c616ff772237 100644
|
||||
--- a/plat/arm/board/a5ds/fdts/a5ds_tb_fw_config.dts
|
||||
+++ b/plat/arm/board/a5ds/fdts/a5ds_tb_fw_config.dts
|
||||
@@ -10,7 +10,7 @@
|
||||
/* Platform Config */
|
||||
plat_arm_bl2 {
|
||||
compatible = "arm,tb_fw";
|
||||
- hw_config_addr = <0x0 0x82000000>;
|
||||
+ hw_config_addr = <0x0 0x83000000>;
|
||||
hw_config_max_size = <0x01000000>;
|
||||
/* Disable authentication for development */
|
||||
disable_auth = <0x0>;
|
||||
--
|
||||
2.22.1
|
||||
|
||||
-204
@@ -1,204 +0,0 @@
|
||||
From e634679d854b1603452d0f71a2fa9936e026fb35 Mon Sep 17 00:00:00 2001
|
||||
From: Rui Miguel Silva <rui.silva@linaro.org>
|
||||
Date: Wed, 14 Aug 2019 09:49:08 +0100
|
||||
Subject: [PATCH 3/3] a5ds: add support for target designstart A5
|
||||
|
||||
Give support, based on vexpress for now, to designstart platform with
|
||||
Cortex-A5 chip. Create config and setup boot commands and tweak memory
|
||||
map related with this platform.
|
||||
|
||||
Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org>
|
||||
|
||||
%% original patch: 0001-a5ds-add-support-for-target-designstart-A5.patch
|
||||
---
|
||||
arch/arm/Kconfig | 5 +++
|
||||
board/armltd/vexpress64/Kconfig | 2 +-
|
||||
configs/vexpress_aemv8a_a5ds_defconfig | 37 ++++++++++++++++++++++
|
||||
include/configs/vexpress_aemv8a.h | 43 ++++++++++++++++++++++----
|
||||
4 files changed, 80 insertions(+), 7 deletions(-)
|
||||
create mode 100644 configs/vexpress_aemv8a_a5ds_defconfig
|
||||
|
||||
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
|
||||
index 0a6ee962d5..e26b3fc37d 100644
|
||||
--- a/arch/arm/Kconfig
|
||||
+++ b/arch/arm/Kconfig
|
||||
@@ -738,6 +738,11 @@ config TEGRA
|
||||
bool "NVIDIA Tegra"
|
||||
imply FAT_WRITE
|
||||
|
||||
+config TARGET_DESIGNSTART_A5
|
||||
+ bool "Support designstart A5"
|
||||
+ select CPU_V7
|
||||
+ select SEMIHOSTING
|
||||
+
|
||||
config TARGET_VEXPRESS64_AEMV8A
|
||||
bool "Support vexpress_aemv8a"
|
||||
select ARM64
|
||||
diff --git a/board/armltd/vexpress64/Kconfig b/board/armltd/vexpress64/Kconfig
|
||||
index f6930aee47..3a6c972d0a 100644
|
||||
--- a/board/armltd/vexpress64/Kconfig
|
||||
+++ b/board/armltd/vexpress64/Kconfig
|
||||
@@ -1,4 +1,4 @@
|
||||
-if TARGET_VEXPRESS64_BASE_FVP || TARGET_VEXPRESS64_BASE_FVP_AARCH32 || TARGET_VEXPRESS64_JUNO || TARGET_VEXPRESS64_JUNO_AARCH32
|
||||
+if TARGET_VEXPRESS64_BASE_FVP || TARGET_VEXPRESS64_BASE_FVP_AARCH32 || TARGET_VEXPRESS64_JUNO || TARGET_VEXPRESS64_JUNO_AARCH32 || TARGET_DESIGNSTART_A5
|
||||
|
||||
config SYS_BOARD
|
||||
default "vexpress64"
|
||||
diff --git a/configs/vexpress_aemv8a_a5ds_defconfig b/configs/vexpress_aemv8a_a5ds_defconfig
|
||||
new file mode 100644
|
||||
index 0000000000..00b80824d8
|
||||
--- /dev/null
|
||||
+++ b/configs/vexpress_aemv8a_a5ds_defconfig
|
||||
@@ -0,0 +1,37 @@
|
||||
+CONFIG_ARM=y
|
||||
+CONFIG_TARGET_DESIGNSTART_A5=y
|
||||
+CONFIG_SYS_MALLOC_F_LEN=0x2000
|
||||
+CONFIG_IDENT_STRING=" designstart a5ds aarch32"
|
||||
+CONFIG_BOOTDELAY=1
|
||||
+# CONFIG_DISPLAY_CPUINFO is not set
|
||||
+# CONFIG_DISPLAY_BOARDINFO is not set
|
||||
+CONFIG_HUSH_PARSER=y
|
||||
+CONFIG_SYS_PROMPT="a5ds32# "
|
||||
+CONFIG_CMD_BOOTZ=y
|
||||
+# CONFIG_CMD_CONSOLE is not set
|
||||
+# CONFIG_CMD_IMLS is not set
|
||||
+# CONFIG_CMD_XIMG is not set
|
||||
+# CONFIG_CMD_EDITENV is not set
|
||||
+# CONFIG_CMD_ENV_EXISTS is not set
|
||||
+CONFIG_CMD_MEMTEST=y
|
||||
+CONFIG_MTD_NOR_FLASH=y
|
||||
+# CONFIG_CMD_LOADS is not set
|
||||
+CONFIG_CMD_ARMFLASH=y
|
||||
+# CONFIG_CMD_FPGA is not set
|
||||
+# CONFIG_CMD_ITEST is not set
|
||||
+# CONFIG_CMD_SETEXPR is not set
|
||||
+CONFIG_CMD_DHCP=y
|
||||
+# CONFIG_CMD_NFS is not set
|
||||
+CONFIG_CMD_MII=y
|
||||
+CONFIG_CMD_PING=y
|
||||
+CONFIG_CMD_CACHE=y
|
||||
+# CONFIG_CMD_MISC is not set
|
||||
+CONFIG_SYS_MMIO_TIMER=y
|
||||
+CONFIG_CMD_FAT=y
|
||||
+CONFIG_DM=y
|
||||
+CONFIG_DM_SERIAL=y
|
||||
+CONFIG_OF_LIBFDT=y
|
||||
+CONFIG_DEBUG_UART=y
|
||||
+CONFIG_DEBUG_UART_PL011=y
|
||||
+CONFIG_DEBUG_UART_BASE=0x1A510000
|
||||
+CONFIG_DEBUG_UART_CLOCK=24000000
|
||||
diff --git a/include/configs/vexpress_aemv8a.h b/include/configs/vexpress_aemv8a.h
|
||||
index 4de9914128..1bc478ca2a 100644
|
||||
--- a/include/configs/vexpress_aemv8a.h
|
||||
+++ b/include/configs/vexpress_aemv8a.h
|
||||
@@ -23,13 +23,19 @@
|
||||
#define HIGH_ADDR "0xffffffff"
|
||||
#define BOOT_TYPE "bootz"
|
||||
#define CONFIG_SYS_HZ_CLOCK 24000000
|
||||
+#ifdef CONFIG_TARGET_DESIGNSTART_A5
|
||||
+#define CONFIG_SYS_MMIO_TIMER
|
||||
+#else
|
||||
#define CONFIG_SYS_ARCH_TIMER
|
||||
+#endif
|
||||
#define CONFIG_SKIP_LOWLEVEL_INIT
|
||||
#endif
|
||||
|
||||
+
|
||||
/* Link Definitions */
|
||||
#if defined(CONFIG_TARGET_VEXPRESS64_BASE_FVP) || \
|
||||
- defined(CONFIG_TARGET_VEXPRESS64_BASE_FVP_AARCH32)
|
||||
+ defined(CONFIG_TARGET_VEXPRESS64_BASE_FVP_AARCH32) || \
|
||||
+ defined(CONFIG_TARGET_DESIGNSTART_A5)
|
||||
/* ATF loads u-boot here for BASE_FVP model */
|
||||
#define CONFIG_SYS_TEXT_BASE 0x88000000
|
||||
#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE + 0x03f00000)
|
||||
@@ -66,6 +72,9 @@
|
||||
defined(CONFIG_TARGET_VEXPRESS64_JUNO_AARCH32)
|
||||
#define V2M_UART0 0x7ff80000
|
||||
#define V2M_UART1 0x7ff70000
|
||||
+#elif defined(CONFIG_TARGET_DESIGNSTART_A5)
|
||||
+#define V2M_UART0 0x001a200000
|
||||
+#define V2M_UART1 0x001a210000
|
||||
#else /* Not Juno */
|
||||
#define V2M_UART0 (V2M_PA_CS3 + V2M_PERIPH_OFFSET(9))
|
||||
#define V2M_UART1 (V2M_PA_CS3 + V2M_PERIPH_OFFSET(10))
|
||||
@@ -121,7 +130,7 @@
|
||||
#define CONFIG_SMC911X 1
|
||||
#define CONFIG_SMC911X_32_BIT 1
|
||||
#define CONFIG_SMC911X_BASE (0x018000000)
|
||||
-#else
|
||||
+#elif !defined(CONFIG_TARGET_DESIGNSTART_A5)
|
||||
/* The Vexpress64 simulators use SMSC91C111 */
|
||||
#define CONFIG_SMC91111 1
|
||||
#define CONFIG_SMC91111_BASE (0x01A000000)
|
||||
@@ -222,19 +231,26 @@
|
||||
"setenv bootargs ${bootargs} ${bootargs_sky2}; "\
|
||||
BOOT_TYPE " ${kernel_addr} ${initrd_param} ${fdt_addr}"
|
||||
|
||||
-
|
||||
-#elif defined(CONFIG_TARGET_VEXPRESS64_BASE_FVP) || \
|
||||
- defined(CONFIG_TARGET_VEXPRESS64_BASE_FVP_AARCH32)
|
||||
+#elif defined(CONFIG_TARGET_VEXPRESS64_BASE_FVP) || \
|
||||
+ defined(CONFIG_TARGET_VEXPRESS64_BASE_FVP_AARCH32) || \
|
||||
+ defined(CONFIG_TARGET_DESIGNSTART_A5)
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
"kernel_name=Image\0" \
|
||||
"kernel_addr=0x80080000\0" \
|
||||
"initrd_name=ramdisk.img\0" \
|
||||
"initrd_addr=0x84000000\0" \
|
||||
"fdt_name=devtree.dtb\0" \
|
||||
- "fdt_addr=0x82000000\0" \
|
||||
+ "fdt_addr=0x83000000\0" \
|
||||
"fdt_high=" HIGH_ADDR "\0" \
|
||||
"initrd_high=" HIGH_ADDR "\0"
|
||||
|
||||
+#if defined(CONFIG_TARGET_DESIGNSTART_A5)
|
||||
+#define CONFIG_BOOTARGS "console=ttyAMA0 earlycon=pl011,"\
|
||||
+ "0x1a200000 "\
|
||||
+ "systemd.log_target=null "\
|
||||
+ "root=/dev/ram0 rw rootwait"\
|
||||
+ "loglevel=9"
|
||||
+#else
|
||||
#define CONFIG_BOOTARGS "console=ttyAMA0 earlycon=pl011,"\
|
||||
"0x1c090000 debug user_debug=31 "\
|
||||
"systemd.log_target=null "\
|
||||
@@ -242,7 +258,14 @@
|
||||
"root=/dev/vda2 rw "\
|
||||
"rootwait "\
|
||||
"loglevel=9"
|
||||
+#endif
|
||||
|
||||
+#if defined(CONFIG_TARGET_DESIGNSTART_A5)
|
||||
+#define CONFIG_BOOTCOMMAND "echo copy to RAM...; " \
|
||||
+ "cp.b 0x08100000 $kernel_addr 0xB00000; " \
|
||||
+ "cp.b 0x08D00000 $initrd_addr 0x500000; " \
|
||||
+ BOOT_TYPE " $kernel_addr $initrd_addr $fdt_addr"
|
||||
+#else
|
||||
#define CONFIG_BOOTCOMMAND "if smhload ${fdt_name} ${fdt_addr}; then "\
|
||||
" if smhload ${initrd_name} ${initrd_addr} "\
|
||||
" initrd_end; then " \
|
||||
@@ -263,6 +286,7 @@
|
||||
"with contents of DRAM; " \
|
||||
BOOT_TYPE " $kernel_addr $initrd_addr $fdt_addr"
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
/* Monitor Command Prompt */
|
||||
#define CONFIG_SYS_CBSIZE 512 /* Console I/O Buffer Size */
|
||||
@@ -282,6 +306,13 @@
|
||||
/* in the Juno firmware. */
|
||||
#define CONFIG_ENV_ADDR 0x0BFC0000
|
||||
#define CONFIG_ENV_SECT_SIZE 0x00010000
|
||||
+#elif defined(CONFIG_TARGET_DESIGNSTART_A5)
|
||||
+#define CONFIG_SYS_FLASH_BASE 0x08000000
|
||||
+/* 256 x 256KiB sectors */
|
||||
+#define CONFIG_SYS_MAX_FLASH_SECT 256
|
||||
+/* Store environment at top of flash */
|
||||
+#define CONFIG_ENV_ADDR 0x0A7C0000
|
||||
+#define CONFIG_ENV_SECT_SIZE 0x00040000
|
||||
#else
|
||||
#define CONFIG_SYS_FLASH_BASE 0x0C000000
|
||||
/* 256 x 256KiB sectors */
|
||||
--
|
||||
2.17.1
|
||||
|
||||
-93
@@ -1,93 +0,0 @@
|
||||
From 381d3916beffa61b253317b671f48f87964c0ec3 Mon Sep 17 00:00:00 2001
|
||||
From: Rui Miguel Silva <rui.silva@linaro.org>
|
||||
Date: Wed, 14 Aug 2019 09:20:42 +0100
|
||||
Subject: [PATCH 2/3] armv7: rename sp804 timer to mmio timer
|
||||
|
||||
Rename the wrongly init named mmio timer and fix the use of it on a
|
||||
Cortex-A5 system that does not have arch_timer.
|
||||
|
||||
Signed-off-by: Usama Arif <usama.arif@arm.com>
|
||||
Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org>
|
||||
|
||||
%% original patch: 0001-armv7-rename-sp804-timer-to-mmio-timer.patch
|
||||
---
|
||||
arch/arm/cpu/armv7/Makefile | 6 +-----
|
||||
.../cpu/armv7/{sp804_timer.c => mmio_timer.c} | 18 ++++++++++--------
|
||||
scripts/config_whitelist.txt | 1 +
|
||||
3 files changed, 12 insertions(+), 13 deletions(-)
|
||||
rename arch/arm/cpu/armv7/{sp804_timer.c => mmio_timer.c} (71%)
|
||||
|
||||
diff --git a/arch/arm/cpu/armv7/Makefile b/arch/arm/cpu/armv7/Makefile
|
||||
index 288d14732e..97727a0dbb 100644
|
||||
--- a/arch/arm/cpu/armv7/Makefile
|
||||
+++ b/arch/arm/cpu/armv7/Makefile
|
||||
@@ -23,12 +23,8 @@ obj-$(CONFIG_ARMV7_PSCI) += psci.o psci-common.o
|
||||
obj-$(CONFIG_IPROC) += iproc-common/
|
||||
obj-$(CONFIG_KONA) += kona-common/
|
||||
|
||||
-SUPPORT_ARCH_TIMER ?= yes
|
||||
-ifeq ($(SUPPORT_ARCH_TIMER),no)
|
||||
-obj-y += sp804_timer.o
|
||||
-else
|
||||
obj-$(CONFIG_SYS_ARCH_TIMER) += arch_timer.o
|
||||
-endif
|
||||
+obj-$(CONFIG_SYS_MMIO_TIMER) += mmio_timer.o
|
||||
|
||||
ifneq (,$(filter s5pc1xx exynos,$(SOC)))
|
||||
obj-y += s5p-common/
|
||||
diff --git a/arch/arm/cpu/armv7/sp804_timer.c b/arch/arm/cpu/armv7/mmio_timer.c
|
||||
similarity index 71%
|
||||
rename from arch/arm/cpu/armv7/sp804_timer.c
|
||||
rename to arch/arm/cpu/armv7/mmio_timer.c
|
||||
index 9c1ecf3fa0..862587644f 100644
|
||||
--- a/arch/arm/cpu/armv7/sp804_timer.c
|
||||
+++ b/arch/arm/cpu/armv7/mmio_timer.c
|
||||
@@ -11,23 +11,25 @@
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
-#define SP804_TIMER0_BASE UL(0x1C110000)
|
||||
-#define SP804_TIMER1_VALUE_OFFSET UL(0x004)
|
||||
+#define CNTCTLBASE UL(0x1a020000)
|
||||
+#define CNTREADBASE UL(0x1a030000)
|
||||
|
||||
-int timer_init(void)
|
||||
+static inline uint32_t mmio_read32(uintptr_t addr)
|
||||
{
|
||||
- gd->arch.timer_rate_hz = CONFIG_SYS_HZ_CLOCK / CONFIG_SYS_HZ;
|
||||
- return 0;
|
||||
+ return *(volatile uint32_t*)addr;
|
||||
}
|
||||
|
||||
-static inline uint32_t mmio_read_32(uintptr_t addr)
|
||||
+int timer_init(void)
|
||||
{
|
||||
- return *(volatile uint32_t*)addr;
|
||||
+ gd->arch.timer_rate_hz = mmio_read32(CNTCTLBASE);
|
||||
+
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
unsigned long long get_ticks(void)
|
||||
{
|
||||
- return UINT_MAX - mmio_read_32(SP804_TIMER0_BASE + SP804_TIMER1_VALUE_OFFSET);
|
||||
+ return ((mmio_read32(CNTCTLBASE + 0x4) << 32) |
|
||||
+ mmio_read32(CNTREADBASE));
|
||||
}
|
||||
|
||||
ulong get_timer(ulong base)
|
||||
diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
|
||||
index 95f27b6ead..e82e53cea3 100644
|
||||
--- a/scripts/config_whitelist.txt
|
||||
+++ b/scripts/config_whitelist.txt
|
||||
@@ -3923,6 +3923,7 @@ CONFIG_SYS_MMC_U_BOOT_DST
|
||||
CONFIG_SYS_MMC_U_BOOT_OFFS
|
||||
CONFIG_SYS_MMC_U_BOOT_SIZE
|
||||
CONFIG_SYS_MMC_U_BOOT_START
|
||||
+CONFIG_SYS_MMIO_TIMER
|
||||
CONFIG_SYS_MONITOR_
|
||||
CONFIG_SYS_MONITOR_BASE
|
||||
CONFIG_SYS_MONITOR_BASE_EARLY
|
||||
--
|
||||
2.17.1
|
||||
|
||||
-28
@@ -1,28 +0,0 @@
|
||||
From 667cb143d9d948744e14a046d5599ec85f0b45db Mon Sep 17 00:00:00 2001
|
||||
From: Tushar Khandelwal <tushar.khandelwal@arm.com>
|
||||
Date: Mon, 22 Jul 2019 21:19:10 +0100
|
||||
Subject: [PATCH 1/3] skip creating libfdt for python for yocto build
|
||||
|
||||
Signed-off-by: Tushar Khandelwal <tushar.khandelwal@arm.com>
|
||||
|
||||
%% original patch: 0001-skip-creating-libfdt-for-python-for-yocto-build.patch
|
||||
---
|
||||
tools/Makefile | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tools/Makefile b/tools/Makefile
|
||||
index cb1683e153..872a65f74a 100644
|
||||
--- a/tools/Makefile
|
||||
+++ b/tools/Makefile
|
||||
@@ -230,7 +230,7 @@ always := $(hostprogs-y)
|
||||
|
||||
# Build a libfdt Python module if swig is available
|
||||
# Use 'sudo apt-get install swig libpython-dev' to enable this
|
||||
-always += $(if $(shell which swig 2> /dev/null),_libfdt.so)
|
||||
+#always += $(if $(shell which swig 2> /dev/null),_libfdt.so)
|
||||
|
||||
# Generated LCD/video logo
|
||||
LOGO_H = $(objtree)/include/bmp_logo.h
|
||||
--
|
||||
2.17.1
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# Copyright (c) 2019 ARM Limited
|
||||
#
|
||||
|
||||
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
|
||||
|
||||
UBOOT_MACHINE = "vexpress_aemv8a_a5ds_defconfig"
|
||||
|
||||
SRC_URI += "\
|
||||
file://0001-skip-creating-libfdt-for-python-for-yocto-build.patch \
|
||||
file://0001-armv7-rename-sp804-timer-to-mmio-timer.patch \
|
||||
file://0001-a5ds-add-support-for-target-designstart-A5.patch \
|
||||
"
|
||||
@@ -1,10 +0,0 @@
|
||||
# Partition for a5ds
|
||||
|
||||
# Rawcopy of the FIP binary
|
||||
part --source rawcopy --sourceparams="file=a5ds.fip" --no-table --align 1 --fixed-size 1
|
||||
|
||||
# Rawcopy of the kernel binary
|
||||
part --source rawcopy --sourceparams="file=zImage" --no-table --fixed-size 12
|
||||
|
||||
# Rawcopy of the rootfs
|
||||
part --source rawcopy --sourceparams="file=${IMGDEPLOYDIR}/iota-tiny-image-a5ds.initramfs.cpio.gz" --no-table
|
||||
@@ -0,0 +1,17 @@
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
@@ -1,60 +0,0 @@
|
||||
# Iota OS
|
||||
|
||||
This is meta layer dedicated to support Arm fast models.
|
||||
|
||||
# Iota setup
|
||||
|
||||
The way to start the setup to build the distribution is to fetch the
|
||||
iota-manifest. For that, first install repo tool from google:
|
||||
|
||||
```
|
||||
curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > /tmp/repo
|
||||
sudo install -m 0755 /tmp/repo /usr/local/bin/repo;
|
||||
```
|
||||
|
||||
and then fetch the manifest:
|
||||
```
|
||||
mkdir ~/iota; cd ~/iota
|
||||
repo init -u oteutoehuote -b master -m default.xml
|
||||
repo sync
|
||||
```
|
||||
|
||||
after setup the following environment variables to set the distribution and the
|
||||
machine type of the build, for now only vexpress-a32 is totally tested, but
|
||||
others will follow:
|
||||
|
||||
```
|
||||
export DISTRO="iota"
|
||||
export MACHINE="vexpress-a32"
|
||||
```
|
||||
|
||||
Then prepare the environment to run the build, in the top directory
|
||||
|
||||
```
|
||||
source setup-environment
|
||||
```
|
||||
|
||||
This will create and put you ready to start the build in a topdir/build-iota
|
||||
directory, to start the build just type:
|
||||
|
||||
```
|
||||
bitbake iota-tiny-image
|
||||
```
|
||||
|
||||
The first build is long and can take several minutes to conclude, when finished
|
||||
check the resulted binaries in the deploy directory
|
||||
|
||||
```
|
||||
~/iota/build-iota/tmp-iota/deploy/images/vexpress-a32/
|
||||
```
|
||||
|
||||
To load the resulted flash img in the FVP model
|
||||
|
||||
```
|
||||
YOCTO_OUTDIR=~/iota/build-iota/tmp-iota/deploy/images/vexpress-a32
|
||||
|
||||
./host/FVP_Base_Cortex-A32x1 \
|
||||
-C bp.secureflashloader.fname=${YOCTO_OUTDIR}/bl1.bin \
|
||||
-C bp.flashloader0.fname=${YOCTO_OUTDIR}/iota-tiny-image-vexpress-a32.wic
|
||||
|
||||
```
|
||||
@@ -1,18 +1,15 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# Copyright (c) 2019 Arm Limited
|
||||
#
|
||||
|
||||
# iota has a conf and classes directory, add to BBPATH
|
||||
# Iota has a conf and classes directory, add to BBPATH
|
||||
BBPATH .= ":${LAYERDIR}"
|
||||
|
||||
# iota has a packages directory, add to BBFILES
|
||||
# Iota has a packages directory, add to BBFILES
|
||||
BBFILES += " \
|
||||
${LAYERDIR}/recipes-*/*/*.bb \
|
||||
${LAYERDIR}/recipes-*/*/*.bbappend"
|
||||
|
||||
BBFILE_COLLECTIONS += "iota"
|
||||
BBFILE_PATTERN_iota := "^${LAYERDIR}/"
|
||||
BBFILE_PRIORITY_iota = "14"
|
||||
LAYERSERIES_COMPAT_iota = "warrior"
|
||||
BBFILE_COLLECTIONS += "meta-iota"
|
||||
BBFILE_PATTERN_meta-iota := "^${LAYERDIR}/"
|
||||
BBFILE_PRIORITY_meta-iota = "10"
|
||||
LAYERSERIES_COMPAT_meta-iota = "thud"
|
||||
|
||||
INSTALL_GCC_ARM_LINUX_GNUEABIHF = "${bindir}/gcc-arm-linux-gnueabihf"
|
||||
TC_ARM_LINUX_GNUEABIHF = "${STAGING_BINDIR_NATIVE}/gcc-arm-linux-gnueabihf"
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
SUMMARY = "Trusted Firmware for Cortex-A"
|
||||
DESCRIPTION = "Trusted Firmware-A"
|
||||
HOMEPAGE = "https://github.com/ARM-software/arm-trusted-firmware"
|
||||
LICENSE = "BSD-3-Clause"
|
||||
DEPENDS += " dtc-native u-boot gcc-arm-linux-eabi-native"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://license.rst;md5=c709b197e22b81ede21109dbffd5f363"
|
||||
|
||||
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
|
||||
|
||||
SRCREV = "5ba32a7660051464ed1d56129adf2606db54b5e3"
|
||||
|
||||
SRC_URI = "git://github.com/ARM-software/arm-trusted-firmware;protocol=https;nobranch=1"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
B = "${WORKDIR}/build"
|
||||
|
||||
COMPATIBLE_MACHINE = "(vexpress-a5)"
|
||||
|
||||
PLATFORM_vexpress-a5 = "fvp_ve"
|
||||
|
||||
LDFLAGS[unexport] = "1"
|
||||
|
||||
do_compile_vexpress-a5() {
|
||||
export PATH=${STAGING_BINDIR_NATIVE}/gcc-arm-linux-gnueabihf/bin:$PATH
|
||||
mkdir -p ${B}
|
||||
|
||||
cp ${DEPLOY_DIR_IMAGE}/u-boot.bin \
|
||||
${B}/
|
||||
|
||||
oe_runmake -C ${S} BUILD_BASE=${B} \
|
||||
BUILD_PLAT=${B}/${PLATFORM}/ \
|
||||
PLAT=${PLATFORM} \
|
||||
ARM_ARCH_MAJOR=7 \
|
||||
ARM_CORTEX_A5=yes \
|
||||
FVP_HW_CONFIG_DTS=fdts/fvp-ve-Cortex-A5x1.dts \
|
||||
ARM_XLAT_TABLES_LIB_V1=1 \
|
||||
DEBUG=1 \
|
||||
ARCH=aarch32 \
|
||||
CROSS_COMPILE=arm-linux-gnueabihf- \
|
||||
AARCH32_SP=sp_min \
|
||||
BL33=${B}/u-boot.bin \
|
||||
fip \
|
||||
all
|
||||
}
|
||||
|
||||
do_install() {
|
||||
install -D -p -m 0644 ${B}/${PLATFORM}/bl1.bin ${DEPLOY_DIR_IMAGE}/bl1.bin
|
||||
install -D -p -m 0644 ${B}/${PLATFORM}/fip.bin ${DEPLOY_DIR_IMAGE}/${PLATFORM}.fip
|
||||
}
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
From 47aef59becef4abc86323ec0877104c9ffa331b8 Mon Sep 17 00:00:00 2001
|
||||
From: Rui Miguel Silva <rui.silva@linaro.org>
|
||||
Date: Fri, 3 Aug 2018 15:48:13 +0100
|
||||
Subject: [PATCH] AArch32: initialise FPEXC only with support enable
|
||||
|
||||
Try to initialise FPEXC only when support with VFP is enable
|
||||
|
||||
Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org>
|
||||
---
|
||||
include/common/aarch32/el3_common_macros.S | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/include/common/aarch32/el3_common_macros.S b/include/common/aarch32/el3_common_macros.S
|
||||
index 5db88544..5b4c669b 100644
|
||||
--- a/include/common/aarch32/el3_common_macros.S
|
||||
+++ b/include/common/aarch32/el3_common_macros.S
|
||||
@@ -85,6 +85,7 @@
|
||||
stcopr r0, CPACR
|
||||
isb
|
||||
|
||||
+#if SUPPORT_VFP
|
||||
/* ---------------------------------------------------------------------
|
||||
* Initialise FPEXC, setting all fields rather than relying on hw. Some
|
||||
* fields are architecturally UNKNOWN on reset and are set to zero
|
||||
@@ -97,6 +98,7 @@
|
||||
ldr r0, =(FPEXC_RESET_VAL | FPEXC_EN_BIT)
|
||||
vmsr FPEXC, r0
|
||||
isb
|
||||
+#endif
|
||||
|
||||
#if (ARM_ARCH_MAJOR > 7)
|
||||
/* ---------------------------------------------------------------------
|
||||
--
|
||||
2.19.1
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
From a33f1a9eba489a67d69cc09dddb794aa8b9d1d35 Mon Sep 17 00:00:00 2001
|
||||
From: Rui Silva <ruisil01@e121032-lin.cambridge.arm.com>
|
||||
Date: Mon, 17 Dec 2018 22:47:41 +0000
|
||||
Subject: [PATCH] tools: allow to override python
|
||||
|
||||
fix build of tools and use python given by env variable.
|
||||
|
||||
Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org>
|
||||
---
|
||||
tools/Makefile | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tools/Makefile b/tools/Makefile
|
||||
index cb1683e..9bf9ceb 100644
|
||||
--- a/tools/Makefile
|
||||
+++ b/tools/Makefile
|
||||
@@ -138,7 +138,7 @@ tools/_libfdt.so: $(LIBFDT_SRCS) $(LIBFDT_SWIG)
|
||||
CPPFLAGS="$(_hostc_flags)" OBJDIR=tools \
|
||||
SOURCES="$(LIBFDT_SRCS) tools/libfdt.i" \
|
||||
SWIG_OPTS="-I$(srctree)/lib/libfdt -I$(srctree)/lib" \
|
||||
- $(libfdt_tree)/pylibfdt/setup.py --quiet build_ext \
|
||||
+ ${PYTHON} $(libfdt_tree)/pylibfdt/setup.py --quiet build_ext \
|
||||
--build-lib tools
|
||||
|
||||
ifneq ($(CONFIG_MX23)$(CONFIG_MX28),)
|
||||
--
|
||||
2.7.4
|
||||
|
||||
+50
@@ -0,0 +1,50 @@
|
||||
From 4f25bd32ee6307e2e3ac828426c1ef3adbc44292 Mon Sep 17 00:00:00 2001
|
||||
From: Usama Arif <usama.arif@arm.com>
|
||||
Date: Thu, 10 Jan 2019 10:27:04 +0000
|
||||
Subject: [PATCH] vexpress64: setup kernel and rootfs from flash for
|
||||
fvp versatile express model
|
||||
|
||||
Set and copy the kernel and rootfs from flash to memory before running the bootm
|
||||
command.
|
||||
|
||||
Signed-off-by: Usama Arif <usama.arif@arm.com>
|
||||
---
|
||||
include/configs/vexpress_aemv8a.h | 9 ++++++---
|
||||
1 file changed, 6 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/include/configs/vexpress_aemv8a.h b/include/configs/vexpress_aemv8a.h
|
||||
index 4de9914..805f8c0 100644
|
||||
--- a/include/configs/vexpress_aemv8a.h
|
||||
+++ b/include/configs/vexpress_aemv8a.h
|
||||
@@ -225,6 +225,7 @@
|
||||
|
||||
#elif defined(CONFIG_TARGET_VEXPRESS64_BASE_FVP) || \
|
||||
defined(CONFIG_TARGET_VEXPRESS64_BASE_FVP_AARCH32)
|
||||
+
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
"kernel_name=Image\0" \
|
||||
"kernel_addr=0x80080000\0" \
|
||||
@@ -239,9 +240,9 @@
|
||||
"0x1c090000 debug user_debug=31 "\
|
||||
"systemd.log_target=null "\
|
||||
"androidboot.hardware=fvpbase "\
|
||||
- "root=/dev/vda2 rw "\
|
||||
- "rootwait "\
|
||||
- "loglevel=9"
|
||||
+ "loglevel=9 " \
|
||||
+ "root=/dev/ram0 rw rootwait"
|
||||
+
|
||||
|
||||
#define CONFIG_BOOTCOMMAND "if smhload ${fdt_name} ${fdt_addr}; then "\
|
||||
" if smhload ${initrd_name} ${initrd_addr} "\
|
||||
@@ -261,6 +262,8 @@
|
||||
"fi; " \
|
||||
"echo semihosting load failed, try booting "\
|
||||
"with contents of DRAM; " \
|
||||
+ "cp.b 0x0C100000 $kernel_addr 0x900000; " \
|
||||
+ "cp.b 0x0CD00000 $initrd_addr 0x500000; " \
|
||||
BOOT_TYPE " $kernel_addr $initrd_addr $fdt_addr"
|
||||
#endif
|
||||
|
||||
--
|
||||
2.7.4
|
||||
+50
@@ -0,0 +1,50 @@
|
||||
From f09688c345597b7b6cb231bab5362d060632ba3b Mon Sep 17 00:00:00 2001
|
||||
From: Rui Miguel Silva <rui.silva@linaro.org>
|
||||
Date: Mon, 17 Dec 2018 14:36:46 +0000
|
||||
Subject: [PATCH] vexpress64: setup kernel and rootfs from flash
|
||||
|
||||
Set and copy the kernel and rootfs from flash to memory before running the bootm
|
||||
command.
|
||||
|
||||
Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org>
|
||||
---
|
||||
include/configs/vexpress_aemv8a.h | 9 ++++++---
|
||||
1 file changed, 6 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/include/configs/vexpress_aemv8a.h b/include/configs/vexpress_aemv8a.h
|
||||
index 4de9914128..9cb778ba91 100644
|
||||
--- a/include/configs/vexpress_aemv8a.h
|
||||
+++ b/include/configs/vexpress_aemv8a.h
|
||||
@@ -225,6 +225,7 @@
|
||||
|
||||
#elif defined(CONFIG_TARGET_VEXPRESS64_BASE_FVP) || \
|
||||
defined(CONFIG_TARGET_VEXPRESS64_BASE_FVP_AARCH32)
|
||||
+
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
"kernel_name=Image\0" \
|
||||
"kernel_addr=0x80080000\0" \
|
||||
@@ -239,9 +240,9 @@
|
||||
"0x1c090000 debug user_debug=31 "\
|
||||
"systemd.log_target=null "\
|
||||
"androidboot.hardware=fvpbase "\
|
||||
- "root=/dev/vda2 rw "\
|
||||
- "rootwait "\
|
||||
- "loglevel=9"
|
||||
+ "loglevel=9 " \
|
||||
+ "root=/dev/ram0 rw rootwait"
|
||||
+
|
||||
|
||||
#define CONFIG_BOOTCOMMAND "if smhload ${fdt_name} ${fdt_addr}; then "\
|
||||
" if smhload ${initrd_name} ${initrd_addr} "\
|
||||
@@ -261,6 +262,8 @@
|
||||
"fi; " \
|
||||
"echo semihosting load failed, try booting "\
|
||||
"with contents of DRAM; " \
|
||||
+ "cp.b 0x08100000 $kernel_addr 0x900000; " \
|
||||
+ "cp.b 0x08D00000 $initrd_addr 0x500000; " \
|
||||
BOOT_TYPE " $kernel_addr $initrd_addr $fdt_addr"
|
||||
#endif
|
||||
|
||||
--
|
||||
2.19.2
|
||||
|
||||
+11
-9
@@ -1,28 +1,30 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# Copyright (c) 2019 Arm Limited
|
||||
#
|
||||
|
||||
SRCREV = "9bed08a2ed8d4915e694e5b4a030bd361b829a52"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://Licenses/README;md5=a2c678cfd4a4d97135585cad908541c6"
|
||||
|
||||
SRC_URI = "\
|
||||
SRC_URI_vexpress-a5 += "\
|
||||
git://git.linaro.org/landing-teams/working/arm/u-boot;protocol=https;nobranch=1 \
|
||||
file://0001-vexpress64-setup-kernel-and-rootfs-from-flash-for-fvpve.patch \
|
||||
file://0001-tools-allow-to-override-python.patch \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
B = "${WORKDIR}/build"
|
||||
|
||||
U-BOOT_PLATFORM = "fvp_ve"
|
||||
PLATFORM_vexpress-a5 = "fvp_ve"
|
||||
|
||||
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
|
||||
|
||||
COMPATIBLE_MACHINE = "(vexpress-a5|vexpress-a32|a5ds)"
|
||||
COMPATIBLE_MACHINE = "(vexpress-a5)"
|
||||
|
||||
do_compile() {
|
||||
do_compile_vexpress-a5() {
|
||||
mkdir -p ${B}
|
||||
|
||||
oe_runmake -C ${S} BUILD_BASE=${B} \
|
||||
BUILD_PLAT=${B}/${PLATFORM}/ \
|
||||
vexpress_aemv8a_aarch32_defconfig \
|
||||
O=${B}
|
||||
|
||||
oe_runmake -C ${S} BUILD_BASE=${B} \
|
||||
BUILD_PLAT=${B}/${PLATFORM}/ \
|
||||
SUPPORT_ARCH_TIMER=no \
|
||||
@@ -1,7 +1,7 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
# Copyright (c) 2019 Linaro, LLC
|
||||
# Copyright (c) 2019 Arm Limited
|
||||
# Copyright (c) 2018 Linaro, LLC
|
||||
# Copyright (c) 2018 ARM Limited
|
||||
#
|
||||
# Iota Recipe to build tiny minimal image
|
||||
#
|
||||
@@ -9,35 +9,42 @@
|
||||
SUMARY = "Iota Tiny Minimal Image"
|
||||
DESCRIPTION = "Tiny Linux image for Iota Distribution"
|
||||
LICENSE = "MIT"
|
||||
DEPENDS += "u-boot-mkimage-native"
|
||||
|
||||
IMAGE_LINGUAS = " "
|
||||
IMAGE_FEATURES += "debug-tweaks"
|
||||
IMAGE_FSTYPES += " wic"
|
||||
DEPENDS += "u-boot-mkimage-native"
|
||||
|
||||
inherit core-image
|
||||
|
||||
KERNEL_IMAGETYPE = "zImage"
|
||||
|
||||
# Remove Partition table if wic image is generated
|
||||
do_cleanup_partition_table() {
|
||||
echo "check if partition table exits in wic image"
|
||||
header=$(head -c 4 ${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.wic | md5sum -b | cut -d ' ' -f1)
|
||||
|
||||
if [ ${header}=="d9a7c187f1dc40d183b645f61daa500f" ]; then
|
||||
echo "remove partition table from wic image"
|
||||
echo "remove partition table from wic image"
|
||||
tail -c +1025 ${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.wic > ${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.img
|
||||
mv ${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.img ${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.wic
|
||||
fi
|
||||
|
||||
#remove ramfs from previoes stage
|
||||
rm -rf ${DEPLOY_DIR_IMAGE}/${IMAGE_BASENAME}-${MACHINE}.cpio.gz
|
||||
}
|
||||
addtask do_cleanup_partition_table after do_image_wic before do_image_complete
|
||||
|
||||
|
||||
do_image_make_ramfs() {
|
||||
echo "adding uboot header to cpio.gz"
|
||||
mkimage -A arm -O linux -C none -T ramdisk -n ramdisk -a 0x84000000 -e 0x84000000 -n "Iota Ramdisk" -d ${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.cpio.gz ${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.initramfs.cpio.gz
|
||||
cd ${IMGDEPLOYDIR}; ln -s ${IMAGE_NAME}.rootfs.initramfs.cpio.gz ${IMAGE_LINK_NAME}.initramfs.cpio.gz
|
||||
cp -rf ${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.initramfs.cpio.gz ${DEPLOY_DIR_IMAGE}/${IMAGE_BASENAME}-${MACHINE}.cpio.gz
|
||||
mv ${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.initramfs.cpio.gz ${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.cpio.gz
|
||||
}
|
||||
|
||||
do_image_make_ramfs_corstone700() {
|
||||
echo "u-boot not present in corstone700"
|
||||
echo "uboot header not required for corstone700"
|
||||
cp -f ${IMGDEPLOYDIR}/${IMAGE_BASENAME}-${MACHINE}.cpio.gz ${DEPLOY_DIR_IMAGE}/${IMAGE_BASENAME}-${MACHINE}.cpio.gz
|
||||
}
|
||||
|
||||
addtask do_image_make_ramfs after do_image_cpio before do_image_wic
|
||||
|
||||
+29
@@ -0,0 +1,29 @@
|
||||
# Recipe for fetching and installing the prebuilt gcc-arm
|
||||
# linaro 6.2.1 toolchain.
|
||||
# Recipe based on the meta-ti layer:
|
||||
# http://git.yoctoproject.org/cgit/cgit.cgi/meta-ti/tree/recipes-ti/devtools/gcc-arm-none-eabi-native_4.9.2015q3.bb?h=master
|
||||
#
|
||||
# Linaro 6.2.1 is the recommended toolchain for arm-trusted-firmware
|
||||
|
||||
|
||||
GCC_ARM_VERSION = "gcc-linaro-6.2.1-2016.11-x86_64_arm-linux-gnueabihf"
|
||||
LICENSE="GPLv3"
|
||||
LIC_FILES_CHKSUM = "file://share/doc/gdb/gdb/Free-Software.html;md5=96c83aa6efb937afca4e4b5810f2b975"
|
||||
|
||||
inherit native
|
||||
|
||||
SRC_URI = "https://releases.linaro.org/components/toolchain/binaries/6.2-2016.11/arm-linux-gnueabihf/${GCC_ARM_VERSION}.tar.xz"
|
||||
SRC_URI[md5sum] = "8f5c112ab5fa26248eb5d9110a09e030"
|
||||
|
||||
S = "${WORKDIR}/${GCC_ARM_VERSION}"
|
||||
|
||||
do_install() {
|
||||
install -d ${D}${INSTALL_GCC_ARM_LINUX_GNUEABIHF}
|
||||
cp -r ${S}/. ${D}${INSTALL_GCC_ARM_LINUX_GNUEABIHF}
|
||||
}
|
||||
|
||||
|
||||
FILES_${PN} = "${INSTALL_GCC_ARM_LINUX_GNUEABIHF}/"
|
||||
INHIBIT_SYSROOT_STRIP = "1"
|
||||
|
||||
INSANE_SKIP_${PN} = "already-stripped"
|
||||
@@ -1,8 +1,3 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# Copyright (c) 2019 Arm Limited
|
||||
#
|
||||
|
||||
SRC_URI = "git://git.kernel.org/pub/scm/utils/dtc/dtc.git"
|
||||
|
||||
SRCREV = "65cc4d2748a2c2e6f27f1cf39e07a5dbabd80ebf"
|
||||
@@ -0,0 +1,37 @@
|
||||
S = "${WORKDIR}/linux-${PV}"
|
||||
|
||||
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
|
||||
|
||||
SRC_URI = " \
|
||||
git://git.linaro.org/landing-teams/working/arm/kernel-testing.git;protocol=https;branch=tinylinux_giot_demo \
|
||||
"
|
||||
|
||||
SRCREV = "135e79d294c9ec552687cccd3a28147d2df69d29"
|
||||
SRCREV_machine = "135e79d294c9ec552687cccd3a28147d2df69d29"
|
||||
|
||||
KBUILD_DEFCONFIG_vexpress-a5 ?= "tiny_vexpress_defconfig"
|
||||
|
||||
COMPATIBLE_MACHINE += "|vexpress-a5"
|
||||
|
||||
do_preconfigure() {
|
||||
mkdir -p ${B}
|
||||
echo "" > ${B}/.config
|
||||
CONF_SED_SCRIPT=""
|
||||
|
||||
kernel_conf_variable LOCALVERSION "\"${LOCALVERSION}\""
|
||||
kernel_conf_variable LOCALVERSION_AUTO y
|
||||
|
||||
sed -e "${CONF_SED_SCRIPT}" < '${S}/arch/arm/configs/${KBUILD_DEFCONFIG_vexpress}' >> '${B}/.config'
|
||||
|
||||
if [ "${SCMVERSION}" = "y" ]; then
|
||||
# Add GIT revision to the local version
|
||||
head=`git --git-dir=${S}/.git rev-parse --verify --short HEAD 2> /dev/null`
|
||||
printf "%s%s" +g $head > ${S}/.scmversion
|
||||
fi
|
||||
}
|
||||
|
||||
do_install_append() {
|
||||
install -d ${D}/boot
|
||||
}
|
||||
|
||||
ALLOW_EMPTY_kernel-devicetree = "1"
|
||||
@@ -0,0 +1,11 @@
|
||||
# Partition for vexpress-a5
|
||||
|
||||
|
||||
# Rawcopy of the FIP binary
|
||||
part --source rawcopy --sourceparams="file=fvp_ve.fip" --no-table --align 1 --fixed-size 1
|
||||
|
||||
# Rawcopy of the kernel binary
|
||||
part --source rawcopy --sourceparams="file=zImage" --no-table --fixed-size 12
|
||||
|
||||
# Rawcopy of the rootfs
|
||||
part --source rawcopy --sourceparams="file=iota-tiny-image-vexpress-a5.cpio.gz" --no-table
|
||||
Reference in New Issue
Block a user