The current matrix should not be used in Android S. However, it is left
here so that any late fixes to the S matrix can be made in a way that
will flow downstream.
Reason for 'DO NOT MERGE' - avoid landing this change in goog/master,
since the current matrix has HALs added there, some devices may be
relying on it.
In order to allow the (AOSP subset of) the S manifest to be frozen in
AOSP, and the current matrix to be enabled from aosp/master -..->
goog/master, this will be reverted in sc-dev-plus-aosp immediately after
it merges.
Bug: 178221726
Test: boot devices and vts_treble_vintf_vendor_test passes
Change-Id: I5716db7cfd629527dd33daac94244e5df41520f5
(cherry picked from commit e0bb84be37)
The current matrix is left in this same CL because this way, downstream
modifications to the current CL will automatically get absorbed into the
level 7 compatibility matrix. A CL on top of this will disable the 7
matrix and then get reverted in the aosp/master..goog/master merge
path.
Bug: 178221726
Test: boot device, vts_treble_vintf_vendor_test
Test: inspect matrix by diffing matrix with old matrix using:
m analyze_matrix &&
system/libvintf/analyze_matrix/hals_for_release.py
Change-Id: Id83986fc5089eefc2292f0042753f739f4e01a44
This reverts commit 540dc2771a.
Reason for revert: reland because target-level 2 are fixed
Bug: 163419744
Change-Id: I293852d50de9a4eeaeec6ccf4c0290f1c1b0012d
Devices with legacy/O/O-MR1 VINTF won't be able to
update to Android S. Devices launching with pre-O,
O, or O-MR1 will need to update its VINTF to P and
above to work with Android S.
Test: builds
Bug: 163419744
Bug: 171260360
Bug: 171260613
Bug: 171260670
Bug: 171260715
Change-Id: I2a65f5a24c0731df9c4247bf9dd2616c2279042f
The fact that these variables are 'FILE' instead of 'FILES' is due to
historical changes, but updating comment to reflect this to avoid
confusion.
Bug: N/A
Test: N/A
Change-Id: I92b685eceaab99c7786384c08076dcf3bd087326
Bug: 152310927
Test: build only (b/150215458 for enabling this on cf)
Change-Id: Id33494d8433ba58362c592deb2598fe89127561e
(cherry picked from commit 7f431d264a993ad0eda47299a59da4eb37fc2358)
Merged-In: Id33494d8433ba58362c592deb2598fe89127561e
To signify this as being ready for release.
Bug: 147496715
Test: build & boot cf (which is at target-level 5)
Change-Id: I7bb9d561506849bac2353d9356a6580f6e2393ab
(cherry picked from commit 0e0665efec1b61ef329a370b9483937b7ce9ac9f)
Merged-In: I7bb9d561506849bac2353d9356a6580f6e2393ab
This was used in VINTF OTA metadata in update package, but VINTF metadata
is deleted in update package now.
Test: builds
Change-Id: I831d7547d7aee2ab1d344304e13fb0e1aeeb6bd6
DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE is installed on
/product/etc/vintf. It is considered as a replacement of
DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE, so only one
of them may be defined. At build time, things like
SEPolicy versions etc. will be written to
/product/etc/vintf/compatibility_matrix.device.xml, just
like the /system one.
Also, split framework_compatibitity_matrix.xml to
system_compatibility_matrix.xml and product_compatibility_matrix.xml.
The latter two corresponds to matrices installed to respective
partitions only.
Test: build with DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE defined
Test: boot (sanity)
Bug: 120600021
Change-Id: I81f9a8f5028cbb88c45f44df04bccb8ccb483972
* Kernel config requirements are built as
separate rules in kernel/configs. All kernel requirements
(including minlts and configs) are represented there.
* device framework compatibility matrix and final
framework compatibility matrix need special environment
variables, so they are not generic enough to be written
in the soong rule.
See compatibility_matrices/Android.bp for sample usages.
Test: builds and compare output before change
Change-Id: I53bf88362314f96487ca243c9292570b7931f24b
HAL development is starting for Andorid Q, so we need this.
Test: m compatibility_matrix.current.xml
Test: assemble_vintf (but b/78895849)
Test: boot a Pixel device after setting its target-level to 4
and verify that the compatibility check passes, and the
file is in the correct location (system/etc/vintf) and that
the dependencies are setup properly.
Change-Id: I42426d0145a97c719092306abc4f7ce8fa2b51bd
(cherry picked from commit 2d2e2d5c05)
Merged-In: I42426d0145a97c719092306abc4f7ce8fa2b51bd
The system_matrix.xml in compatibility.zip can contain a fake
AVB version as specified by BOARD_OTA_FRAMEWORK_VBMETA_VERSION_OVERRIDE.
This allows OTA to pass compatibility check when the AVB version is
updated *during* the OTA.
Bug: 112291283
Test: specify BOARD_OTA_FRAMEWORK_VBMETA_VERSION_OVERRIDE and
manual test
Change-Id: I53c2de49ee68d6a3afc97201e759be344de6bdff
Enforce only when PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS
is set. If a device does want to require kernel configs, it has to
provide info for new kernel in OTA package.
Bug: 111840577
Test: build and manual inspection
Change-Id: I36b3fcd9d14a9795aaf8d020bba6180c5e8681d1
These are the P requirements of kernel versions:
4.4.107, 4.9.84, 4.14.40.
Test: build and manual inspection of matrices
Test: boots
Test: vts_treble_vintf_test
Change-Id: Ic3cec1395e960000b70c6e001aa4981a9ffcd8c6
Fixes: 72409164
These are to be checked in verify_vintf_matrices at
the end of the build when all of the manifest fragments
are available.
Bug: 66917623
Test: check that verify_vintf_matrices hits these checks
Change-Id: I3f184a05a6a95751384da077257dddcf73d3a6f2
Requirements for legacy/1/2.xml has changed because
android-base.cfg files are changed. These files should
build from an older snapshot of the requirements.
Fixes: 78576469
Test: builds
Test: vts_treble_vintf_test
Change-Id: I908ebbe495ae06f983ef983a1be7937cf6be1c12
Merged-In: I908ebbe495ae06f983ef983a1be7937cf6be1c12
P framework can work with 4.14 kernel. 0 should
be updated to the correct value in a follow-up
patch.
This creates the following tags in all matrices:
Kernel 4.14 common requirements
Kernel 4.14 requirements on CONFIG_ARM is set
Kernel 4.14 requirements on CONFIG_ARM64 is set
Bug: 72409164
Bug: 77886167
Test: manually inspect built matrix
Change-Id: I82168df314ad61b21440ec5c703db8358468e083
Merged-In: I82168df314ad61b21440ec5c703db8358468e083
Requirements for legacy/1/2.xml has changed because
android-base.cfg files are changed. These files should
build from an older snapshot of the requirements.
Fixes: 78576469
Test: builds
Test: vts_treble_vintf_test
Change-Id: I908ebbe495ae06f983ef983a1be7937cf6be1c12
P framework can work with 4.14 kernel. 0 should
be updated to the correct value in a follow-up
patch.
This creates the following tags in all matrices:
Kernel 4.14 common requirements
Kernel 4.14 requirements on CONFIG_ARM is set
Kernel 4.14 requirements on CONFIG_ARM64 is set
Bug: 72409164
Bug: 77886167
Test: manually inspect built matrix
Change-Id: I82168df314ad61b21440ec5c703db8358468e083
This freezes the current compatibility_matrix for
Android P.
Fixes: 68112778
Test: m (assemble_vintf checks devices)
Change-Id: Ida30b7ba7f5df7c2755bd7c737190574b9195a92
Enforce that all hals in the device manifest are
in framework compatibility matrix -- at build time.
Bug: 65028233
Test: build a phone without DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX.
Change-Id: Ibf220f80ca3621ddbf8288d372d5f40336e45248
Merged-In: Ibf220f80ca3621ddbf8288d372d5f40336e45248
Add LOCAL_ASSEMBLE_VINTF_ENV_VARS_OVERRIDE and
LOCAL_ASSEMBLE_VINTF_ERROR_MESSAGE for a more generic case.
Test: m framework_compatibility_matrix.xml -j
Bug: 65028233
Change-Id: Iec142d161daa18122e7a6daebb82c7230cb98ba6
Merged-In: Iec142d161daa18122e7a6daebb82c7230cb98ba6
All "private" environment variables to assemble_vintf
(inserted by the build rules, not build system variables)
should have this prefix (to distinguish against,
e.g. PRODUCT_ENFORCE_VINTF_MANIFEST)
Test: m framework_compatibility_matrix -j
Bug: 65028233
Change-Id: Iaefa88cefc0918fb86235ea6fcd8e367cbd82788
Merged-In: Iaefa88cefc0918fb86235ea6fcd8e367cbd82788
Enforce that all hals in the device manifest are
in framework compatibility matrix -- at build time.
Bug: 65028233
Test: build a phone without DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX.
Change-Id: Ibf220f80ca3621ddbf8288d372d5f40336e45248
Add LOCAL_ASSEMBLE_VINTF_ENV_VARS_OVERRIDE and
LOCAL_ASSEMBLE_VINTF_ERROR_MESSAGE for a more generic case.
Test: m framework_compatibility_matrix.xml -j
Bug: 65028233
Change-Id: Iec142d161daa18122e7a6daebb82c7230cb98ba6
All "private" environment variables to assemble_vintf
(inserted by the build rules, not build system variables)
should have this prefix (to distinguish against,
e.g. PRODUCT_ENFORCE_VINTF_MANIFEST)
Test: m framework_compatibility_matrix -j
Bug: 65028233
Change-Id: Iaefa88cefc0918fb86235ea6fcd8e367cbd82788
... along with compatibility_matrix.device.xml.
The new module cm.device.xml contains the original content
of empty.xml (kernel configs, sepolicy, etc.) as well
as HALs from DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE.
This variable points to a framework compatibility matrix
that contains framework HALs as a vendor extension; all
HALs in this file must be optional.
Bug: 65028233
Test: m framework_compatibility_matrix.xml -j and manual inspection
Test: vts_treble_vintf_test
Change-Id: I94949f62f7f5b332d845f2e7fa4714df7c49ed3e
Merged-In: I94949f62f7f5b332d845f2e7fa4714df7c49ed3e
... along with compatibility_matrix.device.xml.
The new module cm.device.xml contains the original content
of empty.xml (kernel configs, sepolicy, etc.) as well
as HALs from DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE.
This variable points to a framework compatibility matrix
that contains framework HALs as a vendor extension; all
HALs in this file must be optional.
Bug: 65028233
Test: m framework_compatibility_matrix.xml -j and manual inspection
Test: vts_treble_vintf_test
Change-Id: I94949f62f7f5b332d845f2e7fa4714df7c49ed3e
It used BOARD_SEPOLICY_VERS as a workaround, which is incorrect.
Test: m framework_compatibility_matrix.xml -j
Bug: 67920434
Change-Id: I029edd2f573740af272f8b767bb1ec5cc1dc0415
* devices with Shipping FCM version
legacy / O / O-MR1 use 3.18, 4.4, 4.9
* devices with Shipping FCM version P use 4.4 4.9
Bug: 72389707
Test: manual inspection on
$OUT/system/etc/vintf/compatibility_matrix.*.xml
Change-Id: I4f37325c0210f88e9e6d3e7136a82d50da3e93fe
Moved framework_compatibility_matrix.xml module definition
from target/board/Android.mk here because it depends on
compatibility_matrix.*.xml.
Test: m dist
Bug: 69636193
Change-Id: I7480b27756992b47555f6b397925170ae9d1ac22