2015-08-11 15:10 skrev Alex J Lennon:
> On 11/08/2015 11:34, Petter Mabäcker wrote: > >> 2015-08-11 11:03 skrev Alex Lennon: >> >>> On Tuesday, August 11, 2015, Petter Mabäcker <[email protected]> wrote: >>> >>>> 2015-08-11 10:31 skrev Alex J Lennon: >>>> >>>>> On 11/08/2015 08:58, Petter Mabäcker wrote: >>>>> >>>>>> 2015-08-10 13:08 skrev Alex J Lennon: >>>>>> >>>>>>> This requires some changes to KERNEL_DEVICETREE as the dtb layout has changed to support overlays. This change also makes us ready to support kernel 4.x series Signed-off-by: Alex J Lennon <[email protected] <mailto:[email protected]>> --- conf/machine/include/rpi-base.inc | 22 ++++++++++------------ recipes-kernel/linux/linux-raspberrypi_3.18.bb [1] | 9 +++++++-- 2 files changed, 17 insertions(+), 14 deletions(-) diff --git a/conf/machine/include/rpi-base.inc b/conf/machine/include/rpi-base.inc index 1dda207..8caa5ba 100644 --- a/conf/machine/include/rpi-base.inc +++ b/conf/machine/include/rpi-base.inc @@ -23,18 +23,16 @@ KERNEL_DEVICETREE ?= " bcm2708-rpi-b-plus.dtb bcm2709-rpi-2-b.dtb - ds1307-rtc-overlay.dtb - hifiberry-amp-overlay.dtb - hifiberry-dac-overlay.dtb - hifiberry-dacplus-overlay.dtb - hifiberry-digi-overlay.dtb - iqaudio-dac-overlay.dtb - iqaudio-dacplus-overlay.dtb - lirc-rpi-overlay.dtb - pcf8523-rtc-overlay.dtb - pps-gpio-overlay.dtb - w1-gpio-overlay.dtb - w1-gpio-pullup-overlay.dtb + overlays/hifiberry-amp-overlay.dtb + overlays/hifiberry-dac-overlay.dtb + overlays/hifiberry-dacplus-overlay.dtb + overlays/hifiberry-digi-overlay.dtb + overlays/iqaudio-dac-overlay.dtb + overlays/iqaudio-dacplus-overlay.dtb + overlays/lirc-rpi-overlay.dtb + overlays/pps-gpio-overlay.dtb + overlays/w1-gpio-overlay.dtb + overlays/w1-gpio-pullup-overlay.dtb " KERNEL_IMAGETYPE ?= "Image" diff --git a/recipes-kernel/linux/linux-raspberrypi_3.18.bb [1] b/recipes-kernel/linux/linux-raspberrypi_3.18.bb [1] index 6d8b155..18c2020 100644 --- a/recipes-kernel/linux/linux-raspberrypi_3.18.bb [1] +++ b/recipes-kernel/linux/linux-raspberrypi_3.18.bb [1] @@ -1,6 +1,11 @@ -LINUX_VERSION ?= "3.18.11" +LINUX_VERSION ?= "3.18.16" -SRCREV = "d64fa8121fca9883d6fb14ca06d2abf66496195e" +SRCREV = "1bb18c8f721ef674a447f3622273f2e2de7a205c" SRC_URI = "git:// [2]github.com/raspberrypi/linux.git;protocol=git;branch=rpi-3.18.y [3]" require linux-raspberrypi.inc + +# Create missing out of tree 'overlays' directory prior to install step +do_compile_append() { + mkdir -p ${B}/arch/arm/boot/dts/overlays +} -- 1.9.1 >>>>>> Hi Alex, At least I get problems during compile step with above change (I'm building for rpi2). So are your sure '${B}/arch/arm/boot/dts/overlays' isn't needed during compile? I tried with changing above from append to > >>>>>> prepand instead and then it worked fine for me (when building 3.18 kernel). (from log.do_compile, complete log can be found at: http://www.technux.se/logs/log.do_compile.4398.fail [4] ) KSYM .tmp_kallsyms1.o KSYM .tmp_kallsyms2.o LD vmlinux SORTEX vmlinux SYSMAP System.map OBJCOPY arch/arm/boot/Image Kernel: arch/arm/boot/Image is ready NOTE: make -j 4 bcm2708-rpi-b.dtb DTC arch/arm/boot/dts/bcm2708-rpi-b.dtb NOTE: make -j 4 bcm2708-rpi-b-plus.dtb DTC arch/arm/boot/dts/bcm2708-rpi-b-plus.dtb NOTE: make -j 4 bcm2709-rpi-2-b.dtb DTC arch/arm/boot/dts/bcm2709-rpi-2-b.dtb NOTE: make -j 4 overlays/hifiberry-amp-overlay.dtb DTC arch/arm/boot/dts/overlays/hifiberry-amp-overlay.dtb cc1: fatal error: opening output file arch/arm/boot/dts/overlays/.hifiberry-amp-overlay.dtb.dts.tmp: No such file or directory compilation terminated. make[3]: *** [arch/arm/boot/dts/overlays/hifiberry-amp-overlay.dtb] Error 1 make[2]: *** [overlays/hifiberry-amp-overlay.dtb] Error 2 make[1]: *** [sub-make] Error 2 make: *** [__sub-make] Error 2 ERROR: oe_runmake failed ERROR: Function failed: do_compile (log file is located at /home/epetmab/programming/yocto/alex_test_sstate/tmp/work/raspberrypi2-poky-linux-gnueabi/linux-raspberrypi/3.18.16+git1bb18c8f721ef674a447f3622273f2e2de7a205c-r0/temp/log.do_compile.4398) BR, Petter >>>>> >>>>> Hi Petter, >>>>> >>>>> Thanks for testing that out. That is indeed exactly what I was seeing >>>>> before I added the directory creation. >>>>> >>>>> I did do the following test for both 3.18.x and 4.1.3 kernels (rpi2) >>>>> >>>>> bitbake -f -c cleansstate virtual/kernel >>>>> bitbake -f virtual/kernel >>>>> >>>>> I've just re-run that again here and it works for me as-is. I thought >>>>> cleansstate was causing me to build from scratch so I'm unclear as to >>>>> why I'm not seeing the problem... >>>>> >>>>> NB. I'd also add that for preference I'd like to see the kernel build >>>>> Makefile patched with whatever is in 4.1 to create that needed overlays >>>>> directory but I've had a look and can't spot it. >>>>> >>>>> Cheers, >>>>> >>>>> Alex >>>> >>>> Hmm Ok, might be some "pebcak" from my side, since I was using an old sstate, but according to my history I did 'cleanall' before I got the problem. But will re-try this on a completely new build without any old savings (it will take some time to test however..). What struck me was that the failure occurred in do_compile (from what I can tell the failure in my logs occur before your _append had been able to do anything about it?). I will analyse the run.do_compile if the failure occurs again and see if that make any sense. I will let you know if the problem occurs again. But since both you and Herve haven't seen any problem I guess it's something I'm doing wrong.. >>> >>> Thanks. As I was trying to figure out what was going on I did also drop into a devshell and run the configure/compile/install steps manually and it was the install step failing so I'd be a little surprised but let's see. >>> >>> Cheer, Alex >> >> I think I know what the problem is. Are you building using poky:fido? Because I found a very interesting commit in this area from May that isn't included in 'fido' from what I can see. d2e26ef kernel: Build DTBs early ... kernel: Build DTBs early Pull out the compilation of the DTB blobs right after the kernel's own do_compile function finishes. This makes them available just in time for the kernel image construction functions. ... This is also confirmed in the below run.do_compile log. So I guess a my suggestion with a _prepend instead will solve the problem. >> >> do_compile() { >> kernel_do_compile >> if test -n " bcm2708-rpi-b.dtb bcm2708-rpi-b-plus.dtb bcm2709-rpi-2-b.dtb overlays/hifiberry-amp-overlay.dtb overlays/hifiberry-dac-overlay.dtb overlays/hifiberry-dacplus-overlay.d >> tb overlays/hifiberry-digi-overlay.dtb overlays/iqaudio-dac-overlay.dtb overlays/iqaudio-dacplus-overlay.dtb overlays/lirc-rpi-overlay.dtb overlays/pps-gpio-overlay.dtb overlays/w1-gpio-overla >> y.dtb overlays/w1-gpio-pullup-overlay.dtb "; then >> for DTB in bcm2708-rpi-b.dtb bcm2708-rpi-b-plus.dtb bcm2709-rpi-2-b.dtb overlays/hifiberry-amp-overlay.dtb overlays/hifiberry-dac-overlay.dtb overlays/hifiberry-dacplus-ov >> erlay.dtb overlays/hifiberry-digi-overlay.dtb overlays/iqaudio-dac-overlay.dtb overlays/iqaudio-dacplus-overlay.dtb overlays/lirc-rpi-overlay.dtb overlays/pps-gpio-overlay.dtb overlays/w1-gpio >> -overlay.dtb overlays/w1-gpio-pullup-overlay.dtb ; do >> if echo ${DTB} | grep -q '/dts/'; then >> bbwarn "${DTB} contains the full path to the the dts file, but only the dtb name should be used." >> DTB=`basename ${DTB} | sed 's,.dts$,.dtb,g'` >> fi >> oe_runmake ${DTB} >> done >> fi >> mkdir -p /tmp/work/raspberrypi2-poky-linux-gnueabi/linux-raspberrypi/3.18.16+git1bb18c8f721ef674a447f3622273f2e2de7a205c-r0/linux-raspberrypi2-standard-build/arch/arm/boot/dts/overlays >> >> } >> >> BR, Petter > > Petter, hopefully that v2 patch-set addresses the issue. I have re-built here and it still works ok under fido. > > I also have a patch-set for Redmine #44 (http://redmine.gherzan.com/issues/44 [5]) to Yocto-ify the kernel build to support fragments. This consists of a patch to make fragments work and a test patch with fragment to build audio into the kernel. > > Andrei doesn't want audio built into the kernel, which I understand, but it works for a test. > > That "yoctoification" work is older than the 3.x/4.x changes but should still be relevant I think. I'd like to get that in before others start doing the clever stuff around vc4 and so forth. If I send up to the list can you review? > > Thanks, Alex Sounds good. I agree we should try to get that issue integrated as soon as possible. Send it and I will help review, if my time allows it I can start by reviewing the series that is linked to in redmine meanwhile. /Petter Links: ------ [1] http://linux-raspberrypi_3.18.bb [2] git:// [3] http://github.com/raspberrypi/linux.git;protocol=git;branch=rpi-3.18.y [4] http://www.technux.se/logs/log.do_compile.4398.fail [5] http://redmine.gherzan.com/issues/44
-- _______________________________________________ yocto mailing list [email protected] https://lists.yoctoproject.org/listinfo/yocto
