summaryrefslogtreecommitdiff
path: root/common/image-android.c
Commit message (Collapse)AuthorAgeLines
* MA-9044 Support boot from ramdisk of system.imgChen Guoyin2016-11-24-0/+14
| | | | | | | | | | Add CONFIG_SYSTEM_RAMDISK_SUPPORT to support system's ramdisk * Normal boot: cmdline to bypass ramdisk in boot.img, but use the one from related slot's system.img * Recovery boot: Use the ramdisk in boot.img Change-Id: I6f429fec54fd5039d136e488ed218d73e3716938 Signed-off-by: Chen Guoyin <guoyin.chen@nxp.com>
* MA-8986-6 image: android: add secondary cmdline generated by avbWinter Wang2016-11-15-7/+17
| | | | | | | | | | | | | | | | avb's verify process adds cmdline from the vbmeta generated by avbtoo's option '-kernel_cmdlines'. this additional kernel cmdline is consist of below items: dm="1 vroot none ro 1,0 ..." androidboot.slot_suffix=_a androidboot.vbmeta.device_state=locked androidboot.vbmeta.hash_alg=sha256 androidboot.vbmeta.size=2944 androidboot.vbmeta.digest=... these items are used either by dm-verity or by system service after boot. Signed-off-by: Winter Wang <wente.wang@nxp.com>
* MA-8986-5 fastboot: add fsl_avb supportWinter Wang2016-11-15-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | * support avb in picosom/evk_6ul boards; * use CONFIG_FSL_BOOTCTL instead of CONFIG_BRILLO_SUPPORT to separate using FSL version of bootctl or not; * separate all avb part with CONFIG_AVB_SUPPORT; * in picosom/evk_6ul board config headers: modify malloc size as avb needs to load the whole bootimage; add partition uuid which libavb needs. * add avb verify in boota; * add bootctl set_active cb using libavb's interface; * add bootctl getvar cb using libavb's interface; * add vbmeta_a/b partition to store vbmeta image, add avbkey partition to store avb related keyblob; * add LOCK/UNLOCK for avb; if in LOCK state, verify fail will cause boot fail; if in UNLOCK state, verify fail only print a msg and go on boot the "_a" slot, maybe it's better to use bootctl to select the bootable slot, but libavb doesn't have this interface exported. switch from LOCK to UNLOCK causes a erase of rollback_index in avbkey partition. Signed-off-by: Winter Wang <wente.wang@nxp.com>
* MA-7373 - [brillo]: store slot meta data in a raw partition, no file system.fang hui2016-04-29-0/+2
| | | | | | | | | | | | | | | Partition name change from slotmeta to misc. Read/write raw data on partition misc, not use ext4 file system. Store meta in bootloader_message.slot_suffix, as defined in bootable/recovery/bootloader.h The first 4 bytes of boot_ctl are defined as magic number. Also, modify code to remove warning in drivers/usb/gadget/bootctrl.c warning: implicit declaration of function 'do_read' Signed-off-by: fang hui <b31070@freescale.com>
* MA-7251 - [evk_6ul]: Support boot conctrol for brillofang hui2016-04-29-0/+11
| | | | | | | | | brillo need bootlader support boot control. bootlader can choose which slot(partition) to boot based on it's tactic. The commit support boot control for evk6ul Signed-off-by: fang hui <hui.fang@nxp.com>
* Revert "MA-7053 when I add selinux=disable in the cmdline, the board do OTA ↵zhang sanshan2016-03-16-31/+1
| | | | | | | | | update will fail" This reverts commit 24356fe059abbc9eae1b192f7af8a46f204a36f4. Conflicts: common/image-android.c
* MA-7053 when I add selinux=disable in the cmdline, the board do OTA update ↵zhang sanshan2015-11-06-3/+31
| | | | | | | | | | | will fail The ota update script will set selinux label with set_metadata when do nand ota update. The root cause is set_metadata will fail if disable selinux in recovery mode. This patch is a workaround which will enable selinux in recovery mode, even if have disable selinux in commandline. Signed-off-by: zhang sanshan <b51434@freescale.com>
* MA-6987 the value of vmalloc on Kernel command line still display 400M after ↵zhang sanshan2015-08-13-1/+2
| | | | | | | | | we change it to other values(sabresd dq and auto 6qp 0812 daily build) Correct the bootargs which is printed. It should be newbootargs rather than bootimage's bootargs. Signed-off-by: zhang sanshan <b51434@freescale.com>
* MA-6928 Bootargs cannot be setzhang sanshan2015-07-28-5/+16
| | | | | | | | | The bootargs is not set correctly. The final bootargs consist of uboot's bootargs and bootimg's bootargs. This patch set bootimg's bootargs as final bootargs if uboot's bootargs is not set. And take uboot's bootargs as final bootargs if uboot's bootargs is set. Signed-off-by: zhang sanshan <b51434@freescale.com>
* MLK-11228-1 android: Integrate community fastboot with FSL i.MX fastbootYe.Li2015-07-13-0/+19
| | | | | | | | | | | | | | | | | | | | | 1. Replace the UDC driver with community's USB gadget d_dnl driver. 2. Integrate the FSL SD/SATA/NAND flash operations, since the GPT and EFI partitions are not support by i.MX. 3. Add FDT support to community's android image. 4. Change the booti command to boota, due to the booti has been used for ARM64 image boot. 5. Modify boota implementation to load ramdisk and fdt to their loading addresses specified in boot.img header, while bootm won't do it for android image. 6. Modify the android image HAB implementation. Authenticate the boot.img on the "load_addr" for both SD and NAND. 7. Enable new configuration CONFIG_FSL_FASTBOOT for Freescale's fastboot with relevant header file "fsl_fastboot.h". While disabling the configuration, the community fastboot is used. 8. Use community's way to combine cmdline in boot.img and u-boot environment, not overwrite the cmdline in boot.img Signed-off-by: Ye.Li <B37916@freescale.com>
* image: Fix Android boot image supportAhmad Draidi2014-10-27-15/+53
| | | | | | | | | | | | | | | This patch makes the following changes: - Set kernel entry point correctly - Append bootargs from image to global bootargs instead of replacing them - Return end address instead of size from android_image_get_end() - Give correct parameter to genimg_get_format() in boot_get_ramdisk() - Move ramdisk message printing from android_image_get_kernel() to android_image_get_ramdisk() Signed-off-by: Ahmad Draidi <ar2000jp@gmail.com> Cc: Tom Rini <trini@ti.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* image: add support for Android's boot image formatSebastian Siewior2014-05-08-0/+84
This patch adds support for the Android boot-image format. The header file is from the Android project and got slightly alterted so the struct + its defines are not generic but have something like a namespace. The header file is from bootloader/legacy/include/boot/bootimg.h. The header parsing has been written from scratch and I looked at bootloader/legacy/usbloader/usbloader.c for some details. The image contains the physical address (load address) of the kernel and ramdisk. This address is considered only for the kernel image. The "second image" defined in the image header is currently not supported. I haven't found anything that is creating this. v3 (Rob Herring): This is based on http://patchwork.ozlabs.org/patch/126797/ with the following changes: - Rebased to current mainline - Moved android image handling to separate functions in common/image-android.c - s/u8/char/ in header to fix string function warnings - Use SPDX identifiers for licenses - Cleaned-up file source information: android_image.h is from file include/boot/bootimg.h in repository: https://android.googlesource.com/platform/bootable/bootloader/legacy The git commit hash is 4205b865141ff2e255fe1d3bd16de18e217ef06a usbloader.c would be from the same commit, but it does not appear to have been used for any actual code. v4: - s/andriod/android/ - Use a separate flag ep_found to track if the entry point has been set rather than using a magic value. Cc: Wolfgang Denk <wd@denx.de> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Signed-off-by: Rob Herring <robh@kernel.org> Reviewed-by: Tom Rini <trini@ti.com> Reviewed-by: Lukasz Majewski <l.majewski@samsung.com>