forked from projectceladon/celadon-documentation
-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Document update for celadon_IoT stablerelease A12 Q4 1st Community Re…
…lease Split for stable_release-iot with Android 11 & 12 Android 11: Feature Delta Offered by Stable Releases (IoT) User Guide -Android 11 Android 12: Feature Delta Offered by Stable Releases (IoT) User Guide -Android 12 This PR is rebase PR, Follow below PR's for review comments projectceladon#277 projectceladon#276 Signed-off-by: Sivaramakrishnan, UdhayanX <[email protected]>
- Loading branch information
Showing
9 changed files
with
683 additions
and
8 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -21,6 +21,113 @@ Retail, Education, Workload consolidation and Marine segments. | |
:local: | ||
:depth: 1 | ||
|
||
CIV_02.22.04.50_A12 | ||
=================== | ||
|
||
Intended audience | ||
----------------- | ||
|
||
* Celadon Open Source Community who has subscribed to [email protected] | ||
|
||
Customer support | ||
---------------- | ||
|
||
* subscribe/unsubscribe celadon mailing list using : https://lists.linuxfoundation.org/mailman/listinfo/celadon | ||
|
||
Introduction | ||
------------ | ||
Feature Details | ||
--------------- | ||
* Celadon Upstreamed fixes in this release | ||
|
||
* 1st Stable Release from Celadon_IoT for Android 12 | ||
* 99.97% Google* conformance on Alder Lake (ADL)platform with production ready | ||
* This release supports Alder Lake-S (ADL-S) | ||
* IoT configuration support SRIOV mode with 99.97% conformance | ||
* Vm-Manager support to launch Android | ||
|
||
Release Constraint list | ||
----------------------- | ||
* VP9 hardware codec is not enabled in the current release due to hardware constraint | ||
* Sensor support is not enabled in current release due to hardware constraint. | ||
* The current QEMU release doesn’t support RGBA8888 color format which impact RGBA8888 usage on Android guess os application | ||
* USB accessory mode is not supported in the current release. | ||
* MAC randomization feature is not supported in the current release. | ||
* Partner modules isn’t integrated within the current GMS package. | ||
* NA API is not supported in the current release. | ||
|
||
Known issues | ||
------------ | ||
* Ethernet tethering option in Settings menu is active even when no USB Ethernet Adaptor connected | ||
* System touch can’t accurately point the location | ||
* With UserData CheckPoint feature enabled, device reboots after 1st time boot while flashing is done | ||
* Buganiser:249897649 - CTS module CtsWindowManagerDeviceTestCases has 34 testcase failures | ||
* Buganiser:253950292 - VTS – 224 modules have TC count as 0 and status as TRUE. | ||
* 2308383 : vts_generic_boot_image_test : does not have generic kernel image (GKI) release format | ||
* Default camera setting in AOSP framework, external camera is considered front camera in AOSP | ||
* Buganiser: 247941068 - CTSJobScheduler JobThrottling Test Fails due to the presence of ethernet network. | ||
|
||
Open Issue List | ||
--------------- | ||
* 15012052191 System_Touch malfunction | ||
* 16019209010 Failures observed:VtsHalMediaC2V1_0TargetVideoDecTest module | ||
* 16017487117 x86_64 CtsMediaTestCases failures | ||
* 16017342135 STS CtsSecurityTestCases failing | ||
* 16018517871 CtsMediaV2TestCases failures related to HEVC profilelevel | ||
* 16017974748 Failures are observed with x86_64 CtsDeqpTestCases module | ||
|
||
Where to find the release | ||
------------------------- | ||
|
||
* Manifest Link: https://github.com/projectceladon/manifest/blob/master/stable-build/CIV_02.22.04.50_A12.xml | ||
|
||
Host Kernel Release configuration | ||
--------------------------------- | ||
|
||
* linux-intel-lts kernel | ||
* Branch: https://github.com/intel/linux-intel-lts | ||
* SHA ID: https://github.com/intel/linux-intel-lts/releases/tag/lts-v5.15.71-adl-linux-221121T044440Z | ||
* kernel-config | ||
* Config-File: https://github.com/projectceladon/vendor-intel-utils-vertical-iot/blob/main/x86_64_defconfig | ||
|
||
Reference configuration | ||
----------------------- | ||
|
||
* Supported hardware | ||
======================= ======= | ||
Platform Product | ||
----------------------- ------- | ||
Alder Lake(ADL) | ADL RVP DDR5 C1 CPU 12th Gen Intel(R) Core(TM) i9-12900E | ||
======================= ======= | ||
|
||
* Supported software | ||
* Android CIV Guest: | ||
======================= ======= | ||
Platform Product | ||
----------------------- ------- | ||
Android | Android 12 | ||
Kernel | 5.10.145 (lts-v5.10.145-civ-android-221027T031053Z) | ||
AOSP | android-12.0.0_r28 | ||
======================= ======= | ||
|
||
* Ubuntu Host: | ||
======================= ======= | ||
Platform Product | ||
----------------------- ------- | ||
Qemu | version 7.1.0 | ||
Ubuntu | 22.04 LTS (Jammy Jellyfish) | ||
Kernel_IoTG | 5.15.71 (lts-v5.15.71-adl-linux-221121T044440Z) | ||
======================= ======= | ||
|
||
Validation results | ||
------------------ | ||
|
||
Stable Releases (IoT) are validated with SR-IOV mode on Alder Lake(ADL)Intel® platform in the following function domains. Validation cycles are performed on GMS user signed widevine enabled image as required by google certification requirements | ||
|
||
.. figure:: stable-release_iot/images/Q422-A12_Validation_Result.png | ||
:align: right | ||
:width: 750px | ||
|
||
CIV_03.22.03.37_A11 | ||
=================== | ||
|
||
|
@@ -60,7 +167,7 @@ Host Kernel Release configuration | |
* Branch: https://github.com/intel/linux-intel-lts/tree/5.4/yocto | ||
* SHA ID: https://github.com/intel/linux-intel-lts/releases/tag/lts-v5.4.209-yocto-220817T175100Z | ||
* kernel-config | ||
* Config-File: https://github.com/projectceladon/vendor-intel-utils-vertical-iot/blob/main/x86_64_defconfig | ||
* Config-File: https://github.com/projectceladon/vendor-intel-utils-vertical-iot/blob/android/r/x86_64_defconfig | ||
|
||
|
||
Reference configuration | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
.. _android-11: | ||
|
||
Android 11 Stable Releases IoT | ||
############################## | ||
|
||
Android 11 Stable Releases (IoT) is an Internet of Things (IoT) overlay on top of |C|. The | ||
Stable Releases (IoT) release provides users with an extensive set of features on | ||
Comet Lake (CML), Tiger Lake (TGL), and Elkhart Lake (EHL) platforms with a single | ||
Baseline/Image of Android 11 | ||
|
||
.. toctree:: | ||
:maxdepth: 2 | ||
|
||
feature-delta-iot-a11 | ||
user-guide-a11 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
.. _android-12: | ||
|
||
Android 12 Stable Releases IoT | ||
############################## | ||
|
||
Android 12 Stable Releases (IoT) is an Internet of Things (IoT) overlay on top of |C|. The | ||
Stable Releases (IoT) release provides users with an extensive set of features on | ||
Alder Lake (ADL) platforms with a single Baseline/Image of Android 12 | ||
|
||
.. toctree:: | ||
:maxdepth: 2 | ||
|
||
feature-delta-iot-a12 | ||
user-guide-a12 |
2 changes: 0 additions & 2 deletions
2
.../stable-release_iot/feature-delta-iot.rst → ...ble-release_iot/feature-delta-iot-a11.rst
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,113 @@ | ||
Feature Delta Offered by Stable Releases (IoT) | ||
############################################## | ||
|
||
Here are the additional features provided by Stable Releases (IoT). | ||
|
||
.. contents:: | ||
:depth: 1 | ||
:local: | ||
|
||
* 99.97% Google\* conformance on Alder Lake (ADL)platform with production ready | ||
* Supporting Alder Lake (ADL) on single baseline and Single Image | ||
* IoT configuration support SRIOV mode with 99.97% conformance | ||
* Vm-Manager support to launch Android | ||
|
||
Real-time clock (RTC) and alarm virtualization | ||
********************************************** | ||
|
||
The Celadon in Virtual Machine (CiV) project may require operations on the | ||
RTC device, such as changes to current time and setups of alarm, to be | ||
synced to host and persistent across reboots. RTC device is purely emulated | ||
by QEMU and its state will be lost after exit of QEMU process, furthermore, | ||
guest RTC alarm is unable to wake up the guest after host suspends, which is | ||
the case in when using --host-pm-control option in CiV. | ||
|
||
The solution is to modify the emulated RTC device so that it emits QMP | ||
events upon certain operations and uses a QMP client running on host to | ||
receive the QMP events and sync the operations to host accordingly. | ||
|
||
.. figure:: images/rtc.png | ||
:width: 500px | ||
:align: center | ||
|
||
Figure 1 : Architecture Diagram of RTC Time Virtualization | ||
|
||
Whenever the guest RTC alarm time is set, QEMU emits an RTC_CHANGE | ||
event to QMP client. The QMP client can then set up a host RTC alarm | ||
accordingly. | ||
|
||
.. figure:: images/alarm.png | ||
:width: 500px | ||
:align: center | ||
|
||
Figure 2 : Architecture Diagram of RTC Alarm Virtualization | ||
|
||
Whenever the expire time of the guest RTC alarm changes, QEMU emits an | ||
RTC_ALARM event to the QMP client, and the QMP client can then set up a host | ||
RTC alarm accordingly. In the case of host suspension, the host alarm wakes | ||
up the host and notifies the QMP client. Then, the QMP client sends an | ||
rtc-refresh-timer command to QEMU, to ensure that QEMU wakes up the guest. | ||
|
||
Secure data erase | ||
***************** | ||
|
||
In |C|, all partitions are inside a single guest virtual disk image file on | ||
the host with the disk controller emulated by QEMU. The underlying actual | ||
storage hardware technology be it magnetic or solid state is transparent to | ||
the Android\* VM. | ||
|
||
As such, due to emulation, secure partition erase would be to fall back to | ||
“byte-by-byte overwrite” to the virtual partition. This “byte-by-byte | ||
overwrite” operation is not solid state storage friendly. | ||
|
||
To provide secure data erase of data partition, following enhancement is | ||
needed in CiV: | ||
|
||
Addition of secure data erase to make use of storage controller hardware | ||
secure erase feature, when it is supported in hardware to erase data | ||
partition and only finally fall back to byte-by-byte override 0 when not | ||
supported during Android recovery/wipe data process. | ||
|
||
1. Guest virtual disk image file enhancement | ||
|
||
In CiV, all Android required partitions are resided in the same | ||
guest virtual disk image file in host. | ||
|
||
To support the enhancements to add secure data partition erase via | ||
hardware controller secure erase where supported, the data partition | ||
needs to be separated from the main Celadon CiV guest disk image | ||
file. This allows to pass a true host partition to QEMU CiV launch | ||
parameters as a separate emulated disk for secure data erase. | ||
|
||
.. figure:: images/sde.png | ||
:width: 750px | ||
:align: center | ||
|
||
Figure 3 : Host/Guest VM disk/file view after SDE enhancements | ||
illustrates the changes in CiV guest image file in the host | ||
|
||
2. Secure data erase enhancement | ||
|
||
In AOSP for data partition erase, this is performed by recovery tool | ||
when “--wipe-data” is written to ``/cache/recovery/command``. In generic | ||
AOSP data partition will have a secure partition wipe if it has | ||
encryption keys for the volume before any reformatting of the | ||
partition. | ||
|
||
For SDE enhancement, to add secure erase of the data partition via | ||
hardware controller feature, vsock communication between AOSP | ||
recovery tool and host side daemon application is added to add data | ||
partition secure erase prior to Android reformat of data partition. | ||
|
||
The host side daemon application is added to perform secure data | ||
partition wipe using hardware controller supported erase mechanism | ||
such as via ``BLKSECDISCARD/BLKDISCARD`` command if supported before | ||
falling back to ``BLKZEROOUT`` commands if none of the former are | ||
supported. | ||
|
||
.. figure:: images/sde_enc.png | ||
:width: 500px | ||
:align: center | ||
|
||
Figure 4 : Data partition secure erase | ||
|
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.