lib: avb: Add CONFIG_ARMV8_CRYPTO supportChange-Id: I545b0275a1cda5c4872eb4de0627212c14cdcae2Signed-off-by: Xuhui Lin <xuhui.lin@rock-chips.com>
lib: avb: Use sha256 lib APISigned-off-by: Joseph Chen <chenjh@rock-chips.com>Change-Id: I03f67e12fe1d6d496bd97bc6f37c6cd0261dafaa
lib: avb: Fix maybe-uninitializedlib/avb/libavb/avb_slot_verify.c:477:40: error: 'found' may be used uninitialized in this function [-Werror=maybe-uninitialized]| 477 | loaded_partition->partition
lib: avb: Fix maybe-uninitializedlib/avb/libavb/avb_slot_verify.c:477:40: error: 'found' may be used uninitialized in this function [-Werror=maybe-uninitialized]| 477 | loaded_partition->partition_name = avb_strdup(found);| | ^~~~~~~~~~~~~~~~~Change-Id: Ic3edcc1527ff5e75009f0e4000dac74cb41c569eSigned-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
show more ...
lib: avb: sha512: Add support for selecting crypto or software dynamicallyBackground:- Crypto_v2 sometimes supports sha512, sometimes doesn't support sha512.- AVB code is relatively longer much,
lib: avb: sha512: Add support for selecting crypto or software dynamicallyBackground:- Crypto_v2 sometimes supports sha512, sometimes doesn't support sha512.- AVB code is relatively longer much, no need to save the amount of code in sha512.Future:- For crypto_v2, don't need to worry whether current platform supports sha512 or not.Signed-off-by: Xuhui Lin <xuhui.lin@rock-chips.com>Change-Id: Ia6eb0354bb4cb38eba9ffc46ffef0789f6c376f5
android: avb: Add init_boot support== init-boot:This new init_boot partition contains the ramdisk the used to live inthe boot partition. The boot partition will no longer contain thatramdisk.i
android: avb: Add init_boot support== init-boot:This new init_boot partition contains the ramdisk the used to live inthe boot partition. The boot partition will no longer contain thatramdisk.init_boot use android v4 header and is mandory from Android-13.== avb with unlock:Don't process hash verify.Go pre-loaded path: Loading vendor_boot and init_bootdirectly to where they should be, while loading theboot/recovery. The boot message tells like:···preloaded: distribute image from 'boot_a'preloaded: distribute image from 'init_boot_a'preloaded: distribute image from 'vendor_boot_a'···== avb with lock:Process hash verify.Go pre-loaded path: Loading full vendor_boot, init_boot andboot/recovery one by one to verify, and distributing them towhere they should be by memcpy at last.The three images share a large memory buffer that allocatedby sysmem_alloc(), it locate at high memory address thatjust lower than SP bottom. The boot message tells like:···preloaded: full image from 'boot_a' at 0xe47f90c0 - 0xe7a4b0c0preloaded: full image from 'init_boot_a' at 0xeaff90c0 - 0xeb2950c0preloaded: full image from 'vendor_boot_a' at 0xe87f90c0 - 0xe9f6e0c0···Signed-off-by: Joseph Chen <chenjh@rock-chips.com>Change-Id: I9c8428eb9777eac81952971cfa97b783a7e71394
lib: avb: skip descriptor hash check if unlockWhat ever there is descriptor hash or not, let's skipdescriptor hash match check if device is unlock.We rely on ops->get_preloaded_partition() to lo
lib: avb: skip descriptor hash check if unlockWhat ever there is descriptor hash or not, let's skipdescriptor hash match check if device is unlock.We rely on ops->get_preloaded_partition() to load imageand verify hash, which is more efficient than full load.By the way, correct the function return code.Signed-off-by: Joseph Chen <chenjh@rock-chips.com>Change-Id: If48d7c676fec58b9c3905ba1bcf7ab43b833b323
lib: avb: support crypto sha256/512Signed-off-by: Joseph Chen <chenjh@rock-chips.com>Change-Id: Ifbcc1940d9b494fc488c0b9e95f88d7c98604f62
sysmem: simplify the memblk nameSigned-off-by: Joseph Chen <chenjh@rock-chips.com>Change-Id: Icfe908ade21d1d8f568db796298f67ba9f013da6
lib: avb: implement get_preloaded_partition callbackIt works only when verification error is allowed, it avoidsAVB workflow to load the full partition which wastes time.Signed-off-by: Joseph Che
lib: avb: implement get_preloaded_partition callbackIt works only when verification error is allowed, it avoidsAVB workflow to load the full partition which wastes time.Signed-off-by: Joseph Chen <chenjh@rock-chips.com>Change-Id: Icbcd48b7bf97d826663523099c944e269f17b709
lib: avb: update and modify the avb libraryThe commit point is updated to google external/avb/which commit point is 868db2a514bbb02e166fb55b1592b27de8c9680c.Change-Id: I10f7c0ac356a7666b518b62e5
lib: avb: update and modify the avb libraryThe commit point is updated to google external/avb/which commit point is 868db2a514bbb02e166fb55b1592b27de8c9680c.Change-Id: I10f7c0ac356a7666b518b62e59ccb62277668578Signed-off-by: Jason Zhu <jason.zhu@rock-chips.com>
lib: avb: use sysmem alloc to load imageUsing malloc buffer to load image makes CONFIG_SYS_MALLOC_LEN must belarge enough, sysmem alloc is a better way.Change-Id: I24e2b86c53b8d3307c0d155fc37cb4
lib: avb: use sysmem alloc to load imageUsing malloc buffer to load image makes CONFIG_SYS_MALLOC_LEN must belarge enough, sysmem alloc is a better way.Change-Id: I24e2b86c53b8d3307c0d155fc37cb499c321e1c6Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
lib: avb: load full partition if allow verification errorChange-Id: I506676512a46ec09d6c617f555f735a24fc4a594Signed-off-by: Jason Zhu <jason.zhu@rock-chips.com>
lib: avb: change the output memssage I/OSince the stderr is not used in uboot, use printf to print themessage.Change-Id: Ib522609e783acf8f407e2f9fb3805b553c543cbaSigned-off-by: Jason Zhu <jason
lib: avb: change the output memssage I/OSince the stderr is not used in uboot, use printf to print themessage.Change-Id: Ib522609e783acf8f407e2f9fb3805b553c543cbaSigned-off-by: Jason Zhu <jason.zhu@rock-chips.com>
lib: avb: update avb source codeaccording to google lib avbcommit id: 44e07124afb1f46af0d745d83481f49c482900b1Change-Id: Ie59a7265699e3e6b1673bb64da6d1c7a1e7b6201Signed-off-by: Jason Zhu <jason
lib: avb: update avb source codeaccording to google lib avbcommit id: 44e07124afb1f46af0d745d83481f49c482900b1Change-Id: Ie59a7265699e3e6b1673bb64da6d1c7a1e7b6201Signed-off-by: Jason Zhu <jason.zhu@rock-chips.com>
lib: avb: update and modify the avb libraryThe commit point is updated to google external/avb/which commit point is cf8c56208d2d9643804a7f123b196c7ebc9af276.Change-Id: I5a10a8a45d3e9e2c9d20d9b3d
lib: avb: update and modify the avb libraryThe commit point is updated to google external/avb/which commit point is cf8c56208d2d9643804a7f123b196c7ebc9af276.Change-Id: I5a10a8a45d3e9e2c9d20d9b3d44946073c9a49ffSigned-off-by: Jason Zhu <jason.zhu@rock-chips.com>