Compare commits

...

3 Commits

Author SHA1 Message Date
Holger Hans Peter Freyther 8179432fc5 image-rauc-ubi: Fix building on latest poky
mtd-utils-native needs to be available for do_deploy, so add the
dependency there. DEPENDS is meaningless for us so remove it too.
Use specific tasks as dependency to workaround an issue with poky
master where glibc-initial and glibc-locale would be direct deps.

Clone the recipe to deal with the different tasks. I wasn't able
to get the other tasks in place for dora.
2017-04-24 11:16:29 +02:00
Holger Hans Peter Freyther 1e80cd0a15 barebox: Update to be able build and link with gcc6/ld.gold
Build the old barebox with newer tools. This should work for dora
and master at the same time.
2017-04-24 11:14:44 +02:00
Holger Hans Peter Freyther 0735858fd0 linux-sysmocom: Add a Linux 4.9 recipe to be used for new poky
Linux 4.9 is a LTS released and will be maintained until at least
January 2019.
2017-04-24 00:48:40 +02:00
4 changed files with 141 additions and 1 deletions

View File

@ -1,6 +1,6 @@
require barebox.inc
SRCREV = "f2b03e21a869b8df30e428ac9408d7988d55279a"
SRCREV = "1d8bdd6f226df2ecbde3776b52fbc228158293fd"
SRC_URI = " \
git://git.sysmocom.de/barebox.git;branch=v2015.06 \
file://defconfig \
@ -17,6 +17,9 @@ BAREBOX_BIN_SYMLINK ?= "barebox-${MACHINE}.bin"
# generated using echo -n 'bts-stop' | sha1sum
BAREBOX_PASSWORD = "5a7ef8875df28cb95a0f833906f94df8573bcc5d"
# Provide a replacement for calling whoami
export KBUILD_BUILD_USER="poky"
do_configure_append () {
mkdir -p ${WORKDIR}/env/nv
echo 5 > ${WORKDIR}/env/nv/login.timeout

View File

@ -0,0 +1,59 @@
inherit kernel
require linux-sysmocom.inc
DEPENDS += "bc-native"
# ATTENTION: Update linux-backports PR on version change. In Dora the
# reverse dependency tracking for the kernel doesn't appear to work. So
# please bump the PR on version changes!
# at versions changes do not forget to update conf/machine/include/sysmobts.inc too
LINUX_VERSION ?= "4.9.14"
LINUX_VERSION_EXTENSION ?= "-sysmocom-${LINUX_KERNEL_TYPE}"
# Overrides for the sysmocom bts v2
BTS_FIRMWARE_NAME_sysmobts-v2 = "sysmobts-v2"
SRCREV = "8d5d275254642b70b3ecf18a5b9b9fe9d5777230"
PR = "r1"
PV = "${LINUX_VERSION}+git${SRCPV}"
SRC_URI = "git://git.sysmocom.de/sysmo-bts/linux.git;protocol=git;branch=lynxis/v4.9 \
file://defconfig"
S = "${WORKDIR}/git"
COMPATIBLE_MACHINE = "(sysmobts-v2|sysmocom-bsc)"
EXTRA_OEMAKE += "KALLSYMS_EXTRA_PASS=1"
require linux-tools.inc
do_configure() {
install -m 0644 ${WORKDIR}/defconfig ${B}/.config
oe_runmake -C ${S} O=${B} oldconfig
}
# autoload defaults (alphabetically sorted)
module_autoload_davinci_mmc = "davinci_mmc"
module_autoload_dspdl_dm644x = "dspdl_dm644x"
module_autoload_fpgadl_par = "fpgadl_par"
module_autoload_leds-gpio = "leds-gpio"
module_autoload_mmc_block = "mmc_block"
module_autoload_msgqueue = "msgqueue"
module_autoload_rtfifo = "rtfifo"
KERNEL_MODULE_PROBECONF_append = "davinci_mmc dspdl_dm644x fpgadl_par leds-gpio mmc_block msgqueue rtfifo"
KERNEL_MODULE_AUTOLOAD_append = "davinci_mmc dspdl_dm644x fpgadl_par leds-gpio mmc_block msgqueue rtfifo"
# module configs (alphabetically sorted)
module_conf_dspdl_dm644x = "options dspdl_dm644x fw_name=${BTS_FIRMWARE_NAME}.out debug=0"
module_conf_fpgadl_par = "options fpgadl_par fw_name=${BTS_FIRMWARE_NAME}.bit"
module_conf_msgqueue = "options msgqueue fw_name=${BTS_FIRMWARE_NAME}.out"
module_conf_rtfifo = "options rtfifo fw_name=${BTS_FIRMWARE_NAME}.out"
RDEPENDS_kernel-module-dspdl-dm644x += "sysmobts-firmware"
RDEPENDS_kernel-module-fpgadl-par += "sysmobts-firmware"
RDEPENDS_kernel-module-msgqueue += "sysmobts-firmware"
RDEPENDS_kernel-module-rtfifo += "sysmobts-firmware"
DEFAULT_PREFERENCE = "-1"

View File

@ -0,0 +1,78 @@
DESCRIPTION = "ubi with rescue slot"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
PACKAGES = ""
PACKAGE_ARCH = "${MACHINE_ARCH}"
do_fetch[cleandirs] = "${S}"
do_unpack[noexec] = "1"
do_patch[noexec] = "1"
do_configure[noexec] = "1"
do_compile[noexec] = "1"
do_install[noexec] = "1"
do_populate_sysroot[noexec] = "1"
do_package[noexec] = "1"
do_packagedata[noexec] = "1"
do_package_write_ipk[noexec] = "1"
do_package_write_deb[noexec] = "1"
do_package_write_rpm[noexec] = "1"
do_fetch[depends] += "virtual/kernel:do_deploy image-rauc-rescue-initramfs:do_image_complete"
do_deploy[depends] += "mtd-utils-native:do_populate_sysroot"
S = "${WORKDIR}"
do_fetch() {
mkdir -p "${S}/fs"
cp "${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${MACHINE}.bin" "${S}/fs/kernel"
cp "${DEPLOY_DIR_IMAGE}/image-rauc-rescue-initramfs-${MACHINE}.cpio.xz" "${S}/fs/initramfs"
}
do_fetch_append_gsmk-owhw() {
cp "${DEPLOY_DIR_IMAGE}/uImage-am335x-gsmk-owhw.dtb" "${S}/fs/devicetree"
}
IMAGE_ROOTFS = "${S}/fs"
IMAGE_NAME = "${PN}-${MACHINE}-${DATETIME}"
# Don't include the DATETIME variable in the sstate package sigantures
IMAGE_NAME[vardepsexclude] = "DATETIME"
IMAGE_LINK_NAME = "${PN}-${MACHINE}"
do_deploy() {
echo \[rescue\] > ubinize.cfg
echo mode=ubi >> ubinize.cfg
echo image=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rescue.ubifs >> ubinize.cfg
echo vol_id=0 >> ubinize.cfg
echo vol_size=14MiB >> ubinize.cfg
echo vol_type=dynamic >> ubinize.cfg
echo vol_name=rescue >> ubinize.cfg
echo \[system0\] >> ubinize.cfg
echo mode=ubi >> ubinize.cfg
echo vol_id=1 >> ubinize.cfg
echo vol_size=35MiB >> ubinize.cfg
echo vol_type=dynamic >> ubinize.cfg
echo vol_name=system0 >> ubinize.cfg
echo \[system1\] >> ubinize.cfg
echo mode=ubi >> ubinize.cfg
echo vol_id=2 >> ubinize.cfg
echo vol_size=35MiB >> ubinize.cfg
echo vol_type=dynamic >> ubinize.cfg
echo vol_name=system1 >> ubinize.cfg
echo \[data\] >> ubinize.cfg
echo mode=ubi >> ubinize.cfg
echo vol_id=3 >> ubinize.cfg
echo vol_size=16MiB >> ubinize.cfg
echo vol_type=dynamic >> ubinize.cfg
echo vol_name=data >> ubinize.cfg
echo vol_flags=autoresize >> ubinize.cfg
mkfs.ubifs --squash-uids -r ${IMAGE_ROOTFS} -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rescue.ubifs ${MKUBIFS_ARGS}
ubinize -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.ubi ${UBINIZE_ARGS} ubinize.cfg
ln -sf ${IMAGE_NAME}.ubi ${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.ubi
}
addtask deploy after do_fetch before do_build