aboutsummaryrefslogtreecommitdiffstats
path: root/classes
AgeCommit message (Collapse)Author
2019-08-14sdcard_image-rpi.bbclass: use -v for all mcopy calls and add bbfatal in case ↵Martin Jansa
mcopy fails * I have this in our layer for some time: RPI_KERNEL_DEVICETREE_OVERLAYS_append = " overlays/vc4-fkms-v3d.dtbo" because we're using vc4graphics also on raspberrypi3 and it was working fine until recently. * now the default rpi-base.inc in warrior and master branch includes the same since: https://github.com/agherzan/meta-raspberrypi/commit/37aa050d5a44eb797540ef50408c2ca8e3da6fa0 and do_image_rpi_sdimg started failing with a bit useless log: ... Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 1 4194kB 46.1MB 41.9MB primary boot, lba 2 46.1MB 1145MB 1099MB primary mkfs.fat: warning - lowercase labels might not work properly with DOS or Windows mkfs.fat 4.1 (2017-01-24) WARNING: exit code 1 from a shell command. * after adding -v to mcopy calls I got slightly better log: ... Copying w1-gpio-pullup.dtbo Copying w1-gpio.dtbo WARNING: exit code 1 from a shell command. * the issue is that mcopy behavior in non-interactive shell is to fail when the target file already exists (sometimes it seems to cause mcopy to hang forever), but when you execute the run.do_image_rpi_sdimg script manually in interactive shell it will nicely show this prompt on stderr: $ dtb=vc4-fkms-v3d.dtbo recipe-sysroot-native/usr/bin/mcopy -i boot.img -s BUILD/deploy/images/raspberrypi3/$dtb ::overlays/$dtb Long file name "vc4-fkms-v3d.dtbo" already exists. a)utorename A)utorename-all r)ename R)ename-all o)verwrite O)verwrite-all s)kip S)kip-all q)uit (aArRoOsSq): o * with the bbfatal the log is finally a bit more useful: ... Copying w1-gpio-pullup.dtbo Copying w1-gpio.dtbo ERROR: mcopy cannot copy TOPDIR/BUILD/deploy/images/raspberrypi3/vc4-fkms-v3d.dtbo into boot.img WARNING: exit code 1 from a shell command. * the only exception is FATPAYLOAD where it was ignoring mcopy with || true before, I've added bbwarn, because even issues like mentioned there "vfat issues like not supporting .~lock files" are probably worth reporting as warning (why would people add .~lock to FATPAYLOAD if it cannot be copied into boot.img) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2019-07-20sdcard_image-rpi: Check for armstub based on machine featureAndrei Gherzan
Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
2019-07-20sdcard_image-rpi.bbclass: Use armstub machine featureAndrei Gherzan
Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
2019-07-20sdcard_image-rpi.bbclass: Fix typoAndrei Gherzan
Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
2019-07-20sdcard_image-rpi.bbclass: Include in the SD card image the armstub fileAndrei Gherzan
Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
2019-07-20sdcard_image-rpi : minor bug in use of FATPAYLOADmalus-brandywine
Double quotation marks were added around FATPAYLOAD to prevent parsing error when FATPAYLOAD contains list of file names Signed-off-by: Nataliya Korovkina <malus.brandywine@gmail.com>
2019-02-19sdcard_image-rpi: Format boot partition as FAT32Richard Osterloh
Closes: #382 Signed-off-by: Richard Osterloh <richard.osterloh@gmail.com>
2018-12-12sdcard_image-rpi.bbclass: Remove SDIMG_COMPRESSIONIurii Lunev
Using SDIMG_COMPRESSION variable to choose compression type for produced images is deprecated. IMAGE_FSTYPES should be used instead. This patch removes any response to SDIMG_COMPRESSION within sdcard_image-rpi.bbclass Signed-off-by: Iurii Lunev <koolkhel@mail.ru>
2018-09-07sdcard_image-rpi: fix kernel artifacts variablesLaurent Bonnans
${INITRAMFS_SYMLINK_NAME} has been changed to ${INITRAMFS_LINK_NAME} in poky's commit f09947586c5c2c05368651838fea970808ab161d
2018-07-16sdcard_image-rpi.bbclass: allow to easily deploy vfat partition even for non ↵Martin Jansa
u-boot case Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2018-07-16sdcard_image-rpi.bbclass: drop KERNEL_INITRAMFS variableMartin Jansa
* use INITRAMFS_SYMLINK_NAME from new kernel-artifact-names.bbclass instead of KERNEL_INITRAMFS * the documentation says that KERNEL_INITRAMFS should be used to define extension of initramfs, but in linux-raspberrypi.inc it's defined only to 1 or empty based on INITRAMFS_IMAGE_BUNDLE variable and I don't see any code in meta-raspberry or oe-core which would use KERNEL_INITRAMFS to actualy name the initramfs artifact to create: ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}${KERNEL_INITRAMFS}-${MACHINE}.bin used in classes/sdcard_image-rpi.bbclass * also fix the assumption that there is -${MACHINE} suffix in: ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}${KERNEL_INITRAMFS}-${MACHINE}.bin because that's defined as KERNEL_IMAGE_SYMLINK_NAME and some DISTROs might use different value * this depends on oe-core changes which were merged today: http://git.openembedded.org/openembedded-core/commit/?id=7d0ef0eaa1bfe97015a774c26f5791622e7e8b12 * this is the last piece of previous pull-request: https://github.com/agherzan/meta-raspberrypi/pull/159 Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2018-07-07sdcard_image-rpi.bbclass: use 4 spaces for indentation instead of mix of ↵Martin Jansa
tabs and spaces Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2018-07-07sdcard_image-rpi: add dependency on rpi-u-boot-scrMartin Jansa
* there is runtime dependency on rpi-u-boot-scr from u-boot itself: recipes-bsp/u-boot/u-boot_%.bbappend:RDEPENDS_${PN}_append_rpi = " rpi-u-boot-scr" * but that's not enough to ensure that rpi-u-boot-scr:do_deploy is finished before do_image_rpi_sdimg and for ${DEPLOY_DIR_IMAGE}/boot.scr to exist in time Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2018-07-07sdcard_image-rpi.bbclass: copy the DTB files with canonical nameMartin Jansa
* instead of using ${KERNEL_IMAGETYPE}-${DTB_BASE_NAME}.dtb use the entries from KERNEL_DEVICETREE * basename is still needed because raspberrypi3-64 is using: broadcom/bcm2710-rpi-3-b.dtb and the ${DEPLOY_DIR_IMAGE} doesn't contain any directories for DTBs and we cannot remove broadcom/ prefix, because then "make bcm2710-rpi-3-b.dtb" from kernel-devicetree.bbclass will fail with: make[3]: *** No rule to make target 'arch/arm64/boot/dts/bcm2710-rpi-3-b.dtb'. Stop. Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2018-05-04sdcard_image-rpi.bbclass: Fix a typo in commentEduardo Abinader
Only a small typo on bbclass header. Signed-off-by: Eduardo Abinader <eduardoabinader@gmail.com>
2018-02-28Fix do_image_rpi_sdimg/do_image_wic dependenciesPaul Barker
The dependency resolution code in bitbake has recently been optimized and this seems to have slightly changed the behaviour of do_image_rpi_sdimg and do_image_wic. We ensure that the main build artifacts are present by depending on the relevant do_deploy and do_populate_sysroot tasks. However, we need to ensure that other build tasks for these dependencies have also been executed before we try to create our image. This can be achieved by adding a recursive dependency on do_build, so that the do_build tasks of all recipes in the dependency chain of do_image_rpi_sdimg/do_image_wic are executed before the image function itself is executed. The original issue seen here was that 'recipedata' files were not copied to 'tmp/deploy/licenses' as do_populate_lic for each dependency had not been ran before the image creation function. The write_deploy_manifest function from license.bbclass (listed in IMAGE_POSTPROCESS_COMMAND) therefore failed. Adding the recursive dependency on do_build fixes this issue, ensuring do_populate_lic runs before do_image_rpi_sdimg/do_image_wic. Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24sdcard_image-rpi: Use un-timestamped link to rootfs partition imagePaul Barker
The timestamp in the rootfs partition image filename may not match the current timestamp if the do_image_rpi_sdimg step is repeated without repeating the previous do_image_ext3 (or similar) step. Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24sdcard_image-rpi: Drop unnecessary sync commandsPaul Barker
These commands are unnecessary and seem to mask failures to find the rootfs.ext3 file when re-running the do_image_rpi_sdimg stage without re-running the preceeding do_image_ext3 stage. Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24Support using u-boot with Image format for raspberrypi3-64Paul Barker
For raspberrypi3-64 we need to use the Image or Image.gz format with u-boot instead of the legacy uImage format. We also need to issue the 'booti' command to boot the kernel instead of 'bootm'. Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24linux-raspberrypi-base.bbclass: DropPaul Barker
The only remaining function in linux-raspberrypi-base was split_overlays() which is used in the sdcard_image-rpi class. So we can move this function over and drop the now-empty linux-raspberrypi-base class. Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24linux-raspberrypi: Drop unnecessary codePaul Barker
* The kerneltype variable is not used anywhere after being set. * The manipulation of KERNEL_DEVICETREE is effectively a no-op, we read the current value in get_dts() and store this back into the same variable. Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-08-29sdcard_image-rpi: fix absolute path in vfat symlinkAndrea Galbusera
Fix bitbake complaining with: ERROR: core-image-minimal-1.0-r0 do_image_complete: sstate found an absolute path symlink [...].vfat pointing at [...].vfat. Please replace this with a relative link. This patch redefines SDIMG_VFAT as a file name instead of a full absolute path, then fixing the symlink creation by pointing to a relative target. The cp command that deploys the artifact is changed accordingly to include the destination path. Signed-off-by: Andrea Galbusera <gizero@gmail.com>
2017-06-29sdcard_image-rpi: replace IMAGE_DEPENDS_rpi-sdimg by do_image_rpi-sdimg[depends]Andreas Müller
* oe-core removed IMAGE_DEPENDS -> parsing fails with hint how to fix * add required task for each recipe Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
2017-06-21sdcard_image-rpi.bbclass: deploy vfat partitionMatthew McClintock
This is useful to update the bootloader/vfat partition from u-boot when you don't want to update everything: U-Boot> tftpboot 0x1000000 tmp/0VXje Waiting for Ethernet connection... done. Using sms0 device TFTP from server 192.168.0.1; our IP address is 192.168.0.26 Filename 'image.vfat'. Load address: 0x1000000 Loading: ################################################## 40 MiB 2.1 MiB/s done Bytes transferred = 41943040 (2800000 hex) U-Boot> mmc part Partition Map for MMC device 0 -- Partition Type: DOS Part Start Sector Num Sectors UUID Type 1 8192 81920 a63a4fbc-01 0c Boot 2 90112 163840 a63a4fbc-02 83 U-Boot> mmc erase 0x2000 0x14000 MMC erase: dev # 0, block # 8192, count 81920 ... 81920 blocks erased: OK U-Boot> mmc write 0x1000000 0x2000 0x14000 MMC write: dev # 0, block # 8192, count 81920 ... 81920 blocks written: OK U-Boot> Signed-off-by: Matthew McClintock <msm-oss@mcclintock.net>
2017-03-11sdcard_image: fix sdcard image generationJanek Filus
Rely on shell environment when copying devicetree and devicetree overlays to target image. Signed-off-by: Janek Filus <janek.filus@bytesatwork.ch> Signed-off-by: Khem Raj <raj.khem@gmail.com>
2017-02-16sdcard: Use kernel8.img for 64bit kernel image nameKhem Raj
This helps the firmware to identify the kernel as 64bit image Signed-off-by: Khem Raj <raj.khem@gmail.com>
2017-01-18Remove True option to getVar callsPaul Barker
getVar() now defaults to expanding by default. Signed-off-by: Paul Barker <paul@paulbarker.me.uk>
2016-12-29linux-raspberrypi-base.bbclass: remove version hackAndreas Müller
* no more required (version > 3.17 | > 4.3.x | > 4.4.5) * causes error with rt kernel Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
2016-10-31sdcard_image-rpi.bbclass: Include boot script when using u-bootPaul Barker
Signed-off-by: Paul Barker <paul@paulbarker.me.uk>
2016-10-13sdcard_image-rpi.bbclass: Remove redundant RPI_KERNEL_VERSIONJonathan Liu
The value of the RPI_KERNEL_VERSION can change between None and the kernel version which can result in taskhash mismatch errors while building images. The taskhash mismatch errors can be reproduced using: bitbake -c cleansstate virtual/kernel core-image-minimal && bitbake core-image-minimal The get_dts() and split_overlays() functions are modified so that the kernel version argument is optional. If the version is not supplied to these functions, they will fallback to the Python equivalent of the expression used for RPI_KERNEL_VERSION. Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
2016-09-21sdcard_image-rpi.bbclass: avoid corrupted images with latest oe-coreAndreas Müller
oe-core's commit d54339d4b1a7e884de636f6325ca60409ebd95ff creates image in IMGDEPLOYDIR and copies through sstate to DEPLOY_DIR_IMAGE. That causes DEPLOY_DIR_IMAGE not valid when calling IMAGE_CMD. Therefore use IMGDEPLOYDIR for sdcard creation too. Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
2016-09-21sdcard_image-rpi.bbclass: support for .dtbo files for dtb overlaysHerve Jourdain
Kernel 4.4.6+ on RaspberryPi support .dtbo files for overlays, instead of .dtb. Add support for both extensions for overlays (".dtb" and ".dtbo") CAUTION: in IMAGE_CMD_rpi-sdimg, 'TMPDIR' is not set, causing 'STAGING_KERNEL_BUILDDIR' to not be expanded, causing get_dts() to not being able to get the kernel version! To avoid this problem, the kernel version is added in a new variable outside the scope of IMAGE_CMD_rpi-sdimg, and its value passed to get_dts() and split_overlays()! Signed-off-by: Herve Jourdain <herve.jourdain@neuf.fr>
2016-09-21linux-raspberrypi-base.bbclass: support for .dtbo files for dtb overlaysHerve Jourdain
Kernel 4.4.6+ on RaspberryPi support .dtbo files for overlays, instead of .dtb. Add support for both variants of overlays ("-overlay.dtb" and ".dtbo") Change which variant needs to be supported based on the kernel version CAUTION: when called from IMAGE_CMD_rpi-sdimg, 'TMPDIR' is not set, causing 'STAGING_KERNEL_BUILDDIR' to not be expanded, causing get_kernelversion_file() to fail! To avoid this problem, get_dts() and split_overlays() MUST be called with the kernel version parameter set, when called from IMAGE_CMD_rpi-sdimg! Signed-off-by: Herve Jourdain <herve.jourdain@neuf.fr>
2016-09-16sdcard_image-rpi.bbclass: remove redundant IMAGEDATESTAMPJonathan Liu
The IMAGE_NAME variable already contains the date and time so it is redundant to also include the date again with IMAGEDATESTAMP when writing to image-version-info in the boot partition. Signed-off-by: Jonathan Liu <net147@gmail.com>
2016-07-13sdcard_image-rpi.bbclass: Add the vardepexcludesKhem Raj
The problem reappears because we need to add to the variable and not assign Signed-off-by: Khem Raj <raj.khem@gmail.com>
2016-07-08sdcard_image-rpi.bbclass: Exclude DATETIME from task stampKhem Raj
This helps in fixing occasional error seen quite often ERROR: wpe-image-1.0-r0 do_image_rpi_sdimg: Taskhash mismatch 7ea6b505bb7a2cc5ca03552bcf3333fa verses 3be7cdad8c4532430d96368c5ca523d4 for /a/builder/home/kraj/work/oe/meta-metrological/recipes-core/images/wp e-image.bb.do_image_rpi_sdimg ERROR: Taskhash mismatch 7ea6b505bb7a2cc5ca03552bcf3333fa verses 3be7cdad8c4532430d96368c5ca523d4 for /a/builder/home/kraj/work/oe/meta-metrological/recipes-core/images/wpe-image.bb.do_image_rpi_sdimg Signed-off-by: Khem Raj <raj.khem@gmail.com>
2016-07-08sdcard_image-rpi: Always install dtb filesPaul Barker
We now need dtb files when booting via u-boot. Signed-off-by: Paul Barker <paul@paulbarker.me.uk>
2016-07-08u-boot: Use mainline u-boot recipe from oe-corePaul Barker
The repository used by u-boot-rpi has not been updated since 2012. In the meantime, mailine u-boot has gained Raspberry Pi support. All we need to do is set UBOOT_MACHINE to an appropriate value in the machine config files. Currently configs are only provided for raspberrypi and raspberrypi2. The master branch of u-boot now also appears to have a config file for raspberrypi3 so support for this can be added in the future when u-boot is upgraded in oe-core. The mainline u-boot recipe creates the file "u-boot.bin" instead of "u-boot.img". Signed-off-by: Paul Barker <paul@paulbarker.me.uk>
2016-05-04sdcard_image-rpi.bbclass: Fix do_image_rpi_sdimg tashhash mismatchJonathan Liu
IMAGE_CMD_rpi-sdimg() uses the IMAGEDATESTAMP variable, so the taskhash of the function keeps changing. This results in a taskhash mismatch error. Fix this by excluding the IMAGEDATESTAMP variable from the checksum. Change-Id: Ie6f30ad29e279d5312ec655ac4a3bf246c8a04de Signed-off-by: Jonathan Liu <net147@gmail.com>
2016-03-28sdcard_image: Depend on do_deploy for kernelKhem Raj
SD image is expecting dtb files to be deployed in deploy area, this step however is done when do_deploy of kernel is finished and we need to pin that in dependency list, otherwise there are build race conditions during builds especially visible when building with initramfs enabled. Signed-off-by: Khem Raj <raj.khem@gmail.com>
2015-09-23sdcard_image-rpi.bbclass: use existing ROOTFS_SIZE variableJonathan Liu
The ROOTFS_SIZE variable is already set to the aligned root filesystem size. Signed-off-by: Jonathan Liu <net147@gmail.com>
2015-08-09sdcard_image-rpi.bbclass: Allocate more space for boot partitionDerek Foreman
The boot partition currently has a size of 20 MiB but just the start elf binaries account almost 12 MiB, which means that only 8 MiB is left for the kernel image. A recent kernel with many of its options built-in can easily be more than 4 MiB so let's double the boot partition size to 40 MiB to make sure that it has enough room for the kernel image, the DTBs and possible even a backup kernel. Signed-off-by: Derek Foreman <derekf@osg.samsung.com> [javier: Extended the commit message] Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
2015-08-09sdcard_image: Fix sdcard image generationGary Thomas
Recent updates to the MSDOS tools (OE-core is now at 3.0.28) have made it an error to overwrite an image using mkfs.vfat. This patch fixes that problem by removing any old/stale images, thus starting from scratch. Signed-off-by: Gary Thomas <gary@mlbassoc.com>
2015-06-05devicetree: auto-disable dts for old kernelsPetter Mabäcker
After '6392a63 rpi-base.inc: Use KERNEL_DEVICETREE by default' was introduced, kernel versions < 3.18 might not be buildable. Since full device tree support was introduced in 3.18 this change ensures that all kernel < 3.18 will automatically disable device tree. Signed-off-by: Petter Mabäcker <petter@technux.se>
2015-02-08Add support for Raspberry PI 2Andrei Gherzan
Add machine configuration file. Change the kernel image name on SD card. Use the defconfig for this machine (bcm2709_defconfig). Change-Id: I6549d5f49b1ed32ef4d44aca6f7af4234618c1a8 Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
2015-02-08Use variable for kernel image deployed name on SD cardAndrei Gherzan
Change-Id: I4a55b53d337930aae3351629a902dbac832ac958 Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
2015-02-07devicetree: Add support for DT overlays with RPi bootloaderFrancois Muller
Compile overlay device trees and put them in 'overlays/' folder on sdcard RPi boot partition. Change-Id: I3da0032b3c2618165008eec1fc94e97824d09099 Signed-off-by: Francois Muller <francois@concept-embarque.fr>
2015-02-05devicetree: Add minimal support with RPi bootloaderFrancois Muller
[RPi DT info] https://github.com/raspberrypi/documentation/blob/master/configuration/device-tree.md#part-3-using-device-trees-on-raspberry-pi RPi bootloader detects a DT-ready kernel by checking for a specific trailer in kernel.img. Using latest raspberrypi/firmware (firmware.inc) enables this check ability. Using latest raspberrypi/tools (rpi-mkimage.bb) gives access to mkknlimg for adding the required trailer to kernel image. If KERNEL_DEVICETREE is filled in, the trailer is added to the kernel image before kernel install task. While creating the SDCard image, this modified kernel is put on boot partition (as kernel.img) as well as DeviceTree blobs (.dtb files). If KERNEL_DEVICETREE is empty, this new process isn't operated, legacy one does. KERNEL_DEVICETREE for RPi is really supported only starting from linux-rapsberry 3.18+ kernels, so as for now it defaults to empty (in machine config file). Change-Id: Ifea71bbda729b8f3c47be7ba0ba03be5ad2ceeaa Signed-off-by: Francois Muller <francois@concept-embarque.fr>
2014-03-06sdcard_image-rpi: make rpi-sdimg image dependent on rootfs typeJonathan Liu
The rootfs may be using a filesystem type other than ext3 so it should not be hardcoded. Change-Id: I71c1a96831ce4617b24de7743fe3b70ec5822a33 Signed-off-by: Jonathan Liu <net147@gmail.com>
2014-02-25sdcard_image-rpi: Make rpi-sdimg image dependent on ext3Andrei Gherzan
Change-Id: Ib48c8fd941be5ceb8fe2bcc087f53fb4ef1c0eb5 Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>