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 <pet...@technux.se >> <mailto:pet...@technux.se>> 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 >> <ajlen...@dynamicdevices.co.uk >> <mailto:ajlen...@dynamicdevices.co.uk>> --- >> conf/machine/include/rpi-base.inc | 22 >> ++++++++++------------ >> recipes-kernel/linux/linux-raspberrypi_3.18.bb >> <http://linux-raspberrypi_3.18.bb> | 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 >> <http://linux-raspberrypi_3.18.bb> >> b/recipes-kernel/linux/linux-raspberrypi_3.18.bb >> <http://linux-raspberrypi_3.18.bb> index >> 6d8b155..18c2020 100644 --- >> a/recipes-kernel/linux/linux-raspberrypi_3.18.bb >> <http://linux-raspberrypi_3.18.bb> +++ >> b/recipes-kernel/linux/linux-raspberrypi_3.18.bb >> <http://linux-raspberrypi_3.18.bb> @@ -1,6 +1,11 @@ >> -LINUX_VERSION ?= "3.18.11" +LINUX_VERSION ?= >> "3.18.16" -SRCREV = >> "d64fa8121fca9883d6fb14ca06d2abf66496195e" +SRCREV = >> "1bb18c8f721ef674a447f3622273f2e2de7a205c" SRC_URI = >> >> "git://github.com/raspberrypi/linux.git;protocol=git;branch=rpi-3.18.y >> >> <http://github.com/raspberrypi/linux.git;protocol=git;branch=rpi-3.18.y>" >> 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 ) >> 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 > > >
Very interesting. fido - I am indeed. OK I'll modify and resubmit with do_compile_prepend(). Thanks! Cheers, Alex
-- _______________________________________________ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto