Thanks! Looks very intersting. Please see comments inline.
On Mon, Oct 15, 2018 at 08:19:02PM -0700, Jeremy Grosser wrote: > Signed-off-by: Jeremy Grosser <[email protected]> > --- > conf/machine/lego-ev3.conf | 21 ++++++++++++++++ > recipes-bsp/u-boot/u-boot-ti.inc | 2 ++ > recipes-kernel/linux/bundle-devicetree.inc | 24 +++++++++++++++++++ > recipes-kernel/linux/linux-ti-staging_4.14.bb | 1 + > 4 files changed, 48 insertions(+) > create mode 100644 conf/machine/lego-ev3.conf > create mode 100644 recipes-kernel/linux/bundle-devicetree.inc > > diff --git a/conf/machine/lego-ev3.conf b/conf/machine/lego-ev3.conf > new file mode 100644 > index 00000000..18626001 > --- /dev/null > +++ b/conf/machine/lego-ev3.conf > @@ -0,0 +1,21 @@ > +#@TYPE: Machine > +#@NAME: LEGO Mindstorms EV3 > +#@DESCRIPTION: Machine configuration for the LEGO Mindstorms EV3 > + > +require conf/machine/include/davinci.inc > +require conf/machine/include/omapl138.inc > + > +UBOOT_MACHINE = "legoev3_config" > +UBOOT_SUFFIX = "bin" > +UBOOT_ENTRYPOINT = "0xC0008000" > +UBOOT_LOADADDRESS = "0xC0008000" > + > +KERNEL_DEVICETREE = "da850-lego-ev3.dtb" > +KERNEL_IMAGETYPES = "uImage" > +KERNEL_DEVICETREE_BUNDLE = "1" > +SERIAL_CONSOLE ?= "115200 ttyS1" Can you please rebase with recent changes to deprecate SERIAL_CONSOLE. > + > +IMAGE_FSTYPES += " wic" > +WKS_FILE = "sdimage-bootpart.wks" > +WIC_CREATE_EXTRA_ARGS += " --no-fstab-update" > +IMAGE_BOOT_FILES = "${KERNEL_IMAGETYPES}" > diff --git a/recipes-bsp/u-boot/u-boot-ti.inc > b/recipes-bsp/u-boot/u-boot-ti.inc > index f22fcb4d..aba5e90c 100644 > --- a/recipes-bsp/u-boot/u-boot-ti.inc > +++ b/recipes-bsp/u-boot/u-boot-ti.inc > @@ -57,12 +57,14 @@ SPL_BINARY_k2hk-hs-evm = "" > SPL_BINARY_k2g-hs-evm = "" > SPL_BINARY_k2l-hs-evm = "" > SPL_BINARY_omapl138 = "" > +SPL_BINARY_lego-ev3 = "" Sorry, this has also just changed, please move to machine config. > SPL_BINARY_k3 = "tispl.bin" > > # SPL (Second Program Loader) to be loaded over UART > SPL_UART_BINARY = "u-boot-spl.bin" > SPL_UART_BINARY_keystone = "" > SPL_UART_BINARY_k3 = "" > +SPL_UART_BINARY_lego-ev3 = "" > > SPL_UART_IMAGE ?= "${SPL_UART_BINARY}-${MACHINE}-${PV}-${PR}" > SPL_UART_SYMLINK ?= "${SPL_UART_BINARY}-${MACHINE}" > diff --git a/recipes-kernel/linux/bundle-devicetree.inc > b/recipes-kernel/linux/bundle-devicetree.inc > new file mode 100644 > index 00000000..ce159878 > --- /dev/null > +++ b/recipes-kernel/linux/bundle-devicetree.inc > @@ -0,0 +1,24 @@ > +# Upstream kernel-devicetree.bbclass only supports bundling the DTB with > +# zImage. The factory u-boot on lego-ev3 EEPROM only supports uImage, so we > +# append the DTB to the final uImage here. > + > +do_deploy_append() { Can you check for KERNEL_DEVICETREE_BUNDLE being set right away here, so normally it won't even go into all the loops inside. > + for dtbf in ${KERNEL_DEVICETREE}; do > + dtb=`normalize_dtb "$dtbf"` > + dtb_ext=${dtb##*.} > + dtb_base_name=`basename $dtb .$dtb_ext` > + install -d ${DEPLOYDIR} For all the DTBs listed (and some platforms have tens of them!) you'd be creating DEPLOYDIR over and over again... > + for type in ${KERNEL_IMAGETYPE_FOR_MAKE}; do > + if [ "$type" = "uImage" ] && [ > "${KERNEL_DEVICETREE_BUNDLE}" = "1" ]; then > + cat ${D}/${KERNEL_IMAGEDEST}/$type \ > + ${DEPLOYDIR}/$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext \ > + > > ${DEPLOYDIR}/$type-$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext.bin > + ln -sf $type-$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext.bin \ > + > ${DEPLOYDIR}/$type-$dtb_base_name-${KERNEL_DTB_LINK_NAME}.$dtb_ext.bin > + cat ${D}/${KERNEL_IMAGEDEST}/$type \ > + ${DEPLOYDIR}/$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext \ > + > ${DEPLOYDIR}/$type > + fi > + done > + done > +} > diff --git a/recipes-kernel/linux/linux-ti-staging_4.14.bb > b/recipes-kernel/linux/linux-ti-staging_4.14.bb > index 5ee206ec..13b94ffe 100644 > --- a/recipes-kernel/linux/linux-ti-staging_4.14.bb > +++ b/recipes-kernel/linux/linux-ti-staging_4.14.bb > @@ -8,6 +8,7 @@ inherit kernel > require recipes-kernel/linux/setup-defconfig.inc > require recipes-kernel/linux/cmem.inc > require recipes-kernel/linux/ti-uio.inc > +require recipes-kernel/linux/bundle-devicetree.inc > > # Look in the generic major.minor directory for files > FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}-4.14:" > -- > 2.19.1 > -- > _______________________________________________ > meta-ti mailing list > [email protected] > https://lists.yoctoproject.org/listinfo/meta-ti -- _______________________________________________ meta-ti mailing list [email protected] https://lists.yoctoproject.org/listinfo/meta-ti
