[yocto] Custom FIT image: circular dependencies issue

2017-08-07 Thread Yegor Yefremov
I've switched to Yocto's master branch from Krogoth and get now
circular dependencies for my kernel recipe:

ERROR: 502 unbuildable tasks were
found.#

  | ETA:  0:00:08
These are usually caused by circular dependencies and any circular
dependency chains found will be printed below. Increase the debug
level to see a list of unbuildable tasks.

Identifying dependency loops (this may take a short while)...

ERROR:
Dependency loop #1 found:
  Task 
/home/user/MyProjects/oss/yocto/poky/meta-baltos/recipes-kernel/linux/linux-yocto-custom.bb:do_create_fitimage
(dependent Tasks ['linux-yocto-custom.bb:do_deploy'])
  Task 
/home/user/MyProjects/oss/yocto/poky/meta-baltos/recipes-kernel/linux/linux-yocto-custom.bb:do_packagedata
(dependent Tasks ['linux-yocto-custom.bb:do_package',
'linux-yocto-custom.bb:do_create_fitimage'])
  Task 
/home/user/MyProjects/oss/yocto/poky/meta-baltos/recipes-kernel/linux/linux-yocto-custom.bb:do_deploy
(dependent Tasks ['linux-yocto-custom.bb:do_bundle_initramfs',
'depmodwrapper-cross_1.0.bb:do_populate_sysroot',
'linux-yocto-custom.bb:do_populate_sysroot',
'linux-yocto-custom.bb:do_packagedata'])


ERROR: Command execution failed: 1

My kernel recipe:

inherit kernel
require recipes-kernel/linux/linux-yocto.inc

python __anonymous () {
depends = d.getVar("DEPENDS", True)
depends = "%s u-boot-mkimage-native dtc-native" % depends
d.setVar("DEPENDS", depends)
}

do_create_fitimage() {
cp ${THISDIR}/linux-yocto-custom/kernel-fit.its ${DEPLOY_DIR_IMAGE}
uboot-mkimage -f ${DEPLOY_DIR_IMAGE}/kernel-fit.its
${DEPLOY_DIR_IMAGE}/kernel-fit.itb
}

addtask create_fitimage before do_packagedata after do_deploy

KBRANCH = "linux-3.18.y"
KCONFIG_MODE = "--alldefconfig"

SRC_URI = 
"git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git;protocol=git;bareclone=1;branch=${KBRANCH}"
SRC_URI += "file://defconfig"
SRC_URI += "file://baltos.scc \
   "

LINUX_VERSION ?= "3.18"
LINUX_VERSION_EXTENSION ?= ""

SRCREV="v3.18.32"

PV = "${LINUX_VERSION}+git${SRCPV}"

COMPATIBLE_MACHINE_baltos = "baltos"

Any idea?

Regards,
Yegor
-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto


Re: [yocto] eudev hwdb?

2016-04-27 Thread Yegor Yefremov
Hi Gary,

On Wed, Apr 27, 2016 at 10:48 AM, Gary Thomas  wrote:
> I see that the replacement for udev (eudev) in OE-core takes nearly
> 12MB on my i.MX6 (ARM CortexA7).  This is nearly 25% of my total
> storage space (64MB NAND)!
>
> # ls -lR /etc/udev
> /etc/udev:
> total 6520
> -rw-r--r-- 1 root root1600 Jan  1  1970 cache.data
> -r--r--r-- 1 root root 6660476 Apr 26 13:08 hwdb.bin
> drwxr-xr-x 2 root root1296 Apr 26 11:34 hwdb.d
> -rw-r--r-- 1 root root  51 Apr 26 11:31 mount.blacklist
> drwxr-xr-x 2 root root 160 Apr 26 11:35 mount.blacklist.d
> drwxr-xr-x 2 root root 608 Apr 26 13:08 rules.d
> drwxr-xr-x 2 root root 304 Apr 26 11:35 scripts
> -rw-r--r-- 1 root root  49 Apr 26 11:34 udev.conf
>
> /etc/udev/hwdb.d:
> total 5224
> -rw-r--r-- 1 root root 1292931 Apr 26 11:34 20-OUI.hwdb
> -rw-r--r-- 1 root root  126596 Apr 26 11:34 20-acpi-vendor.hwdb
> -rw-r--r-- 1 root root   41289 Apr 26 11:34 20-bluetooth-vendor-product.hwdb
> -rw-r--r-- 1 root root 111 Apr 26 11:34 20-net-ifname.hwdb
> -rw-r--r-- 1 root root   13710 Apr 26 11:34 20-pci-classes.hwdb
> -rw-r--r-- 1 root root 2648842 Apr 26 11:34 20-pci-vendor-model.hwdb
> -rw-r--r-- 1 root root 783 Apr 26 11:34 20-sdio-classes.hwdb
> -rw-r--r-- 1 root root4067 Apr 26 11:34 20-sdio-vendor-model.hwdb
> -rw-r--r-- 1 root root8070 Apr 26 11:34 20-usb-classes.hwdb
> -rw-r--r-- 1 root root 1113001 Apr 26 11:34 20-usb-vendor-model.hwdb
> -rw-r--r-- 1 root root3702 Apr 26 11:34 60-evdev.hwdb
> -rw-r--r-- 1 root root   52967 Apr 26 11:34 60-keyboard.hwdb
> -rw-r--r-- 1 root root   14217 Apr 26 11:34 70-mouse.hwdb
> -rw-r--r-- 1 root root4627 Apr 26 11:34 70-pointingstick.hwdb
>
> /etc/udev/mount.blacklist.d:
> total 0
>
> /etc/udev/rules.d:
> total 20
> -rw-r--r-- 1 root root 1449 Apr 26 11:31 10-imx.rules
> -rw-r--r-- 1 root root0 Apr 26 11:34 80-net-name-slot.rules
> -rw-r--r-- 1 root root  847 Apr 26 11:31 automount.rules
> -rw-r--r-- 1 root root  757 Apr 26 11:31 autonet.rules
> -rw-r--r-- 1 root root  885 Apr 26 11:34 local.rules
> -rw-r--r-- 1 root root  843 Apr 26 11:31 localextra.rules
>
> /etc/udev/scripts:
> total 8
> -rwxr-xr-x 1 root root 2469 Apr 26 11:31 mount.sh
> -rwxr-xr-x 1 root root 1402 Apr 26 11:31 network.sh
>
> Is there any way to not have both the hwdb.bin (which I assume
> is a binary version of the hardware databases) and /etc/udev/hwdb.d?
> Perhaps there is some way to only use one?
>
> Or maybe there is a better choice, such as mdev?  I'm not sure about
> this (no experience) but my system needs to handle plug devices
> which the current eudev does well.  It's just a huge "price" to pay.
>
> Any ideas or pointers would be great

eudev provides following configure option:

 --enable-hwdb  install hwdb.d files

this way you can omit hwdb.d installation by providing:

--disable-hwdb

Yegor
-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto


Re: [yocto] Running an own script after kernel compilation

2016-04-18 Thread Yegor Yefremov
On Thu, Apr 14, 2016 at 12:19 PM, Belisko Marek <marek.beli...@gmail.com> wrote:
> Hi,
>
> On Thu, Apr 14, 2016 at 12:12 PM, Yegor Yefremov
> <yegorsli...@googlemail.com> wrote:
>> I have my own ITS file, that is required to create a FIT image. ITS
>> file has a special configuration, that cannot be automatically created
>> using Yocto's recipes. So I need a way to invoke my own script. How
>> can I do it?
> depends which yocto version you are using but you can use (reuse)
> kernel-fitimage.bbclass present in jethro.
> which will generate its file from kernel + dts you will define + with
> that its will build FIT image. But not sure if it's really what you
> need.

So, I've solved the problem via adding a task:

do_create_fitimage() {
cp ${THISDIR}/linux-yocto-custom/kernel-fit.its ${DEPLOY_DIR_IMAGE}
uboot-mkimage -f ${DEPLOY_DIR_IMAGE}/kernel-fit.its
${DEPLOY_DIR_IMAGE}/kernel-fit.itb
}

addtask create_fitimage before do_packagedata after do_deploy

No the question is, how to handle out-of-tree DTS files?
meta/recipes-kernel/linux/linux-dtb.inc won't copy DTS files to
"${B}/arch/${ARCH}/boot/dts/${DTB}"

Yegor
-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto


[yocto] Running an own script after kernel compilation

2016-04-14 Thread Yegor Yefremov
I have my own ITS file, that is required to create a FIT image. ITS
file has a special configuration, that cannot be automatically created
using Yocto's recipes. So I need a way to invoke my own script. How
can I do it?

Thanks.

Yegor
-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto