Skip to content

Commit

Permalink
Document update for celadon_IoT stablerelease A12 Q4 1st Community Re…
Browse files Browse the repository at this point in the history
…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 <udhayanx.sivaramakrishnan@intel.com>
  • Loading branch information
usivarax committed Jan 11, 2023
1 parent 223b0b4 commit d6b99c6
Show file tree
Hide file tree
Showing 9 changed files with 682 additions and 7 deletions.
107 changes: 107 additions & 0 deletions source/release-notes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -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 celadon@lists.linuxfoundation.org

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
* 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

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 [ADL-S][RPL-S][ADL-N][ACS][Android-S] System_Touch malfunction
* 16019209010 [ADL_S] [Andriod-S] Failures observed:VtsHalMediaC2V1_0TargetVideoDecTest module
* 16017487117 [ADL-S][CTS][Android_S][SRIOV] x86_64 CtsMediaTestCases failures
* 16017342135 [ADL-S][RPL-S][RPL-P][STS][SRIOV] STS CtsSecurityTestCases failing
* 16018517871 [ADL-S][ADL-RVP]CtsMediaV2TestCases failures related to HEVC profilelevel
* 16017974748 [ADL-S][RPL-S] 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
===================

Expand Down
15 changes: 15 additions & 0 deletions source/stable-release_iot/android-11.rst
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
14 changes: 14 additions & 0 deletions source/stable-release_iot/android-12.rst
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
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
.. _feature-delta-iot:

Feature Delta Offered by Stable Releases (IoT)
##############################################

Expand Down
113 changes: 113 additions & 0 deletions source/stable-release_iot/feature-delta-iot-a12.rst
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.
8 changes: 4 additions & 4 deletions source/stable-release_iot/stable-release_iot.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,14 @@ Stable Releases IoT

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.
Android 11: Comet Lake (CML), Tiger Lake (TGL), and Elkhart Lake (EHL) platforms with a single Baseline/Image
Android 12: Alder Lake (ADL) platforms with a single Baseline/Image

Stable Releases (IoT) empowers the community to utilize 100% compliance on the
supported platforms with continuous updates with ASBs.

.. toctree::
:maxdepth: 2

feature-delta-iot
user-guide
android-12
android-11
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ Host kernel build steps
# copy kernel config
$ cd <source path>
$ wget https://github.com/projectceladon/vendor-intel-utils-vertical-iot/blob/main/x86_64_defconfig
$ wget https://github.com/projectceladon/vendor-intel-utils-vertical-iot/blob/android/r/x86_64_defconfig
$ cp x86_64_defconfig .config
$ echo ""| make ARCH=x86_64 olddefconfig
Expand Down
Loading

0 comments on commit d6b99c6

Please sign in to comment.