![]() * the updated/created boot image has to be same size than the block Specifically, it cannotĬontains a ext2/3 filesystem (this avoids you to ovewrite your root * the actual partition must not be identified as containing a validįilesystem as recognised by blkid library. ![]() * you oviously need read/write access to the block device (so use su, If abootimg has to write to a block device (-u and -create), some sanity Overwrite the boot partition (which can be damaged) with a $ sudo abootimg -create /dev/mmcblk0p2 -f boot.cfg -k zImage -r initrd.img Update the boot partition with a new boot cmdline $ sudo abootimg -u /dev/mmcblk0p2 -c "cmdline=." Update the boot partition with the kernel you have just built $ sudo abootimg -u /dev/mmcblk0p2 -k arch/arm/boot/zImage Note that, on AC100, the current kernel needs to be patched in order to haveĭirect access to boot partitions (partitions 5 and 6). Instead of manipulating Boot Image regular file, you can work directly on boot Parameters are the same than above for update. * Creating a new Android Boot Image from scratch The original boot image has to be valid, otherwise abootimg will refuse to (On Toshiba AC100, it allows you to take a part06.img and It's usefull if you want to shrink an existing image to make it $ abootimg -u boot.img -c "bootsize=0x500000" Video=tegrafb console=tty0 usbcore.old_scheme_first=1 quiet splash elevator=noop \ $ abootimg -u boot.img -c "cmdline = vmalloc=320M \ Will update the configuration without touching the kernel Severial config entries (-c) can be given on comamd line. (-f option) or by giving individual config entries on the command line (-c). Image configuration can be updated either by giving a configuration file $ abootimg -u Īny part of the image can be individully updated. * Updating an existing Android Boot ImageĪn existing valid Boot Image can be updated with: Track of what the image actually containsĬontains the command line passed to the kernel when booting ![]() Not really used by bootloader, but it's can be usefull to keep * kerneladdr, ramdiskaddr, secondaddr, tagsaddrĪddress in RAM used to load the kernel, ramdisk, 2nd stage Indicate the size of the boot image to produceĪll sizes have to be a multiple of the page size. Numerical values can be given in decimal (12345) or hexadecimal (0x1234abcd). is evalued starting from the fisrt non space character following the = You can put any number of spaces/tab before/after the = To be able to rebuild a compatible image later.Įach entry takes one line and is in the form of: It's an editable ascii file which is basically a dump of the header content, * Extracting elements from an Android Boot ImageĪll parts of boot image can be extracted with: Currently abootimg does nothing with it, it'sīlkid library is needed to perform some sanity checks when writing boot imageĭirectly on a block device (to avoid writing a valid existing filesystem).īasic Information can be extracted from a boot image, using: ![]() Bootloader appears to do nothing of this Id, it's Mandates any specific implementation of this Id (it can be a timestamp, a CRCĬhecksum, a SHA hash. You obviously need to have right access to the block device (using su, sudo,Īndroid Boot Image contains an 32 bytes Id. The official tool used to create boot images is part of the Android Project,Ībootimg can work directly on block devices, or, the safest way, on a file image. the cmdline passed to the kernel when booting. It's used by Android Bootloaders to boot the OS. See bootimg.h in the source tree for more information about the structure. It a special partition format defined by the Android Open Source Porject. Abootimg - manipulate Android Boot Images.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |