Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

make kernelflinger compatible for civ and ivi #151

Closed
wants to merge 67 commits into from

Conversation

GangSecurity
Copy link

No description provided.

GangSecurity and others added 30 commits August 18, 2024 11:27
This reverts commit 0e7bc37.

Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
This reverts commit 4a43e03.

Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
This can reduce 5 seconds boot delay in un-secure boot case

Ori-Tracked-On: OAM-108914
Tracked-On: OAM-123524
Signed-off-by: Chen Gang G <[email protected]>
Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
Ori-Tracked-On: OAM-110767
Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
Stored rollback slots should be removed when status changes during
fastboot flash scenario.

Ori-Tracked-On: OAM-110761
Tracked-On: OAM-123524
Signed-off-by: Zhong,Fangjian <[email protected]>
1. Add efiwrapper and libpayload library to support SBL
2. Reuse kerneflinger.c for SBL entry
3. Solve compile issues

Ori-Tracked-On: OAM-110183
Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
This reverts commit 0dd202a.

Ori-Tracked-On: OAM-110883
Tracked-On: OAM-123524
Signed-off-by: Zhang, Qi <[email protected]>
SBL UEFI payload is only able to boot EFI app and OSloader payload
only support ELF image. In SBL, we only build kernelflinger as ELF
image.

If includes both kf4sbl.elf and kernelflinger.efi to bootloader.img,
android can always boot whether uses SBL UEFI payload or Osloader
payload. If will convenient for developer and validation.

Ori-Tracked-On: OAM-111021
Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
UEFI provides TPM boot time services for kernerlflinger. But SBL
doesn't provide such services. So TPM driver is required to communicate
to TPM hardware module for SBL.

TPM driver is ported from SBL firmware which is BSD-2 license.

Ori-Tracked-On: OAM-110881
Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
Build kernelfliner as fb4sbl.elf file to support fastboot features

Ori-Tracked-On: OAM-111239
Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
Stored rollback slots should be removed when status changes during
fastboot flashing unlock scenario.

Ori-Tracked-On: OAM-111252
Tracked-On: OAM-123524
Signed-off-by: Zhong,Fangjian <[email protected]>
If the bootloader partition is NON EFI System partition, perform
"safe flash procedure" is not required. Because for NON-EFI, it
can't leverage UEFI runtime service to verify new flashed image

Ori-Tracked-On: OAM-111722
Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
Improve boot performance

Ori-Tracked-On: OAM-111735
Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
Use TPM to store lock/rollback_index status

Ori-Tracked-On: OAM-111924
Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
logs output speed becomes very slow if there are too
many logs.

Ori-Tracked-On: OAM-112113
Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
Get boot device diskbus from efiwrapper

Ori-Tracked-On: OAM-112165
Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
IVSHMEM is used for communication with OP-TEE.

Ori-Tracked-On: OAM-112790
Tracked-On: OAM-123524
Signed-off-by: Jingdong Lu <[email protected]>
Update installer and kernelflinger EFI binaries to support
bootloader a/b slots.

Ori-Tracked-On: OAM-112770
Tracked-On: OAM-123524
Signed-off-by: jizhenlo <[email protected]>
1. share_data partition is very large, it'd better support
fast erase for share_data partition in userdebug build.
2. Currently slot_label return NULL if there is no active slot,
return the first suffix instead.

Ori-Tracked-On: OAM-112930
Tracked-On: OAM-123524
Signed-off-by: jizhenlo <[email protected]>
Fix the following error while compiling installer:
error: cast to 'void *' from smaller integer type 'unsigned int'.

Ori-Tracked-On: OAM-112948
Tracked-On: OAM-123524
Signed-off-by: Jingdong Lu <[email protected]>
Pass bootreason from SBL to kernel command line

Ori-Tracked-On: OAM-112951
Tracked-On: OAM-123524
Signed-off-by: Guo, Jade <[email protected]>
Currently kernelflinger assumes the boot device is always behind a
PCI bridge. But the device might be directly on the root complex, like
the passthrough device or emulated device in ACRN, such assumption
causes boot failure.

Fix it by using the BDF directly when boot device is on bus 0.

Ori-Tracked-On: OAM-113030
Tracked-On: OAM-123524
Signed-off-by: Jiaqing Zhao <[email protected]>
installer and fastboot may use installer.cmd file simultaneously.
For format command, fastboot support creating file system by
using 'format:fs_type', such as 'format:f2fs'. But installer
doesn't support this syntax, since it only supports 2 arguments
for format command currently.

Add support for format type syntax in installer so file system
can be formatted based on the fs_type provided.

Ori-Tracked-On: OAM-113370
Tracked-On: OAM-123524
Signed-off-by: jizhenlo <[email protected]>
Add delay back to some functions of tpm, since the removement
of delay may result in abnormal behavior of tpm operations,
such as timeout for read/write operations.

Ori-Tracked-On: OAM-113370
Tracked-On: OAM-123524
Signed-off-by: jizhenlo <[email protected]>
kernelflinger boot time will take an additional 8 seconds when
the print is enabled.

"handover jump ..." is kept to indicate the kernelflinger has
loaded Android kernel successfully, and handover execution to
kernel.

Ori-Tracked-On: OAM-113005
Tracked-On: OAM-123524
Signed-off-by: jizhenlo <[email protected]>
We will pass ACRN cmdline from SBL to OS.
Any parameter passing from cmd_for_kernel, like cmd_for_kernel=key1=value\\key2=value2
\\key3=value3 will be passed without any check as
key1=value1 key2=value2 key3=value3

Ori-Tracked-On: OAM-113545
Tracked-On: OAM-123524
Signed-off-by: Guo, Jade <[email protected]>
Notify TEE side security infomation such as Root of Trust
or rollback index need to be handled.

Ori-Tracked-On: OAM-113296
Tracked-On: OAM-123524
Signed-off-by: Jingdong Lu <[email protected]>
GangSecurity and others added 13 commits August 18, 2024 11:29
Ori-Tracked-On: OAM-118715
Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
Call pause_us() to sleep 1S doesn't take effect, the reason
is that multiply overflow

Ori-Tracked-On: OAM-120825
Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
Ori-Tracked-On: OAM-121940
Tracked-On: OAM-123524
Signed-off-by: Ni, Erchang <[email protected]>
Ori-Tracked-On: OAM-121940
Tracked-On: OAM-123524
Signed-off-by: Ni, Erchang <[email protected]>
Ori-Tracked-On: OAM-122082
Tracked-On: OAM-123524
Signed-off-by: Ni, Erchang <[email protected]>
fastboot flash ec new_ec.bin

Tracked-On: OAM-122268
Signed-off-by: Chen, Gang G <[email protected]>
a) enable fatfs in KF
b) fastboot flash fwupdate <pathofimage> to flash fwuImage
c) fastboot fw-update to trigger fuupdate

Tracked-On: OAM-122242
Signed-off-by: Austin Sun <[email protected]>
How to flash a partition within VM:
fastboot oem setvm <vm_partition>
fastboot flash gpt gpt.bin
fastboot flash boot_a boot.img
fastboot oem unsetvm

Tracked-On: OAM-122645
Signed-off-by: Chen, Gang G <[email protected]>
Ori-Tracked-On: OAM-123522
Tracked-On: OAM-123524
Signed-off-by: Ni, Erchang <[email protected]>
Signed-off-by: Chen, Gang G <[email protected]>
kernelflinger will be used for both CIV and IVI project

Tracked-On: OAM-123522
Signed-off-by: Chen, Gang G <[email protected]>
The pointer to gpart is not initialized, so it can be any value.
Free will be stuck in the case.

Signed-off-by: Chen, Gang G <[email protected]>
Tracked-On: OAM-123523
Signed-off-by: Chen, Gang G <[email protected]>
Tracked-On: OAM-123524
Signed-off-by: Chen, Gang G <[email protected]>
@sysopenci
Copy link

Dependent pr program name is not compatable this pr's program name, for more details please check tracked_on

3 similar comments
@sysopenci
Copy link

Dependent pr program name is not compatable this pr's program name, for more details please check tracked_on

@sysopenci
Copy link

Dependent pr program name is not compatable this pr's program name, for more details please check tracked_on

@sysopenci
Copy link

Dependent pr program name is not compatable this pr's program name, for more details please check tracked_on

@sysopenci sysopenci added Developer Approved and removed Pending Developer Approval Pending Developer Approval labels Aug 19, 2024
@sysopenci
Copy link

one of the dependent pr cannot be Rebase and Merged; please fix the issue and commit your changes once again to run EB.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.