Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5b1d0017 authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Snap for 7814207 from 36b6d088 to tm-release

Change-Id: I75f5b17633a5e2dcebc3b92b33b370cd6c2e437f
parents 245e1e45 36b6d088
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -906,6 +906,7 @@ c8a57364f6ad20842be14f4db284df5304f7521ca8eac6bcc1fa6c5b466fb8a6 android.hardwar

# ABI preserving changes to HALs during Android T
62ace52d9c3ff1f60f94118557a2aaf0b953513e59dcd34d5f94ae28d4c7e780 android.hardware.fastboot@1.0::IFastboot
b4a59462aa7d1346ee3eaa06a8e13682462746cf1be62ed2a2bd46bf404d01b7 android.hardware.graphics.composer@2.4::IComposerClient
ca62a2a95d173ed323309e5e00f653ad3cceec82a6e5e4976a249cb5aafe2515 android.hardware.neuralnetworks@1.2::types
fa76bced6b1b71c40fc706c508a9011284c57f57831cd0cf5f45653ed4ea463e android.hardware.neuralnetworks@1.3::types

+2 −3
Original line number Diff line number Diff line
@@ -307,9 +307,8 @@ interface IComposerClient extends @2.3::IComposerClient {
     * If the display is internally connected (not through HDMI), and such modes are available,
     * this method should trigger them.
     *
     * This function should only be called if the display reports support for the corresponding
     * content type (ContentType::{GRAPHICS, PHOTO, CINEMA, GAME}) from getSupportedContentTypes.
     * ContentType::NONE is supported by default and can always be set.
     * This function can be called for a content type even if no support for it is
     * reported from getSupportedContentTypes.
     *
     * @return error is NONE upon success. Otherwise,
     *     BAD_DISPLAY when an invalid display handle was passed in.
+2 −3
Original line number Diff line number Diff line
@@ -690,9 +690,8 @@ interface IComposerClient {
     * If the display is internally connected (not through HDMI), and such modes are available,
     * this method should trigger them.
     *
     * This function should only be called if the display reports support for the corresponding
     * content type (ContentType::{GRAPHICS, PHOTO, CINEMA, GAME}) from getSupportedContentTypes.
     * ContentType::NONE is supported by default and can always be set.
     * This function can be called for a content type even if no support for it is
     * reported from getSupportedContentTypes.
     *
     * @exception EX_BAD_DISPLAY when an invalid display handle was passed in.
     * @exception EX_UNSUPPORTED when the given content type is not supported by the composer
+1 −1
Original line number Diff line number Diff line
@@ -12,7 +12,7 @@ LOCAL_SRC_FILES := \

LOCAL_SHARED_LIBRARIES := \
    liblog \
    libpuresoftkeymasterdevice \
    libsoftkeymasterdevice \
    libcrypto \
    libkeymaster_portable \
    libpuresoftkeymasterdevice \
+20 −1
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@
#include <log/log.h>

#include <AndroidKeymaster3Device.h>
#include <hardware/keymaster1.h>
#include <hardware/keymaster2.h>
#include <hardware/keymaster_defs.h>

@@ -31,6 +32,18 @@ namespace keymaster {
namespace V3_0 {
namespace implementation {

static int get_keymaster1_dev(keymaster1_device_t** dev, const hw_module_t* mod) {
    int rc = keymaster1_open(mod, dev);
    if (rc) {
        ALOGE("Error %d opening keystore keymaster1 device", rc);
        if (*dev) {
            (*dev)->common.close(&(*dev)->common);
            *dev = nullptr;
        }
    }
    return rc;
}

static int get_keymaster2_dev(keymaster2_device_t** dev, const hw_module_t* mod) {
    int rc = keymaster2_open(mod, dev);
    if (rc) {
@@ -50,8 +63,14 @@ static IKeymasterDevice* createKeymaster3Device() {
        return ::keymaster::ng::CreateKeymasterDevice();
    }

    if (mod->module_api_version < KEYMASTER_MODULE_API_VERSION_2_0) {
    if (mod->module_api_version < KEYMASTER_MODULE_API_VERSION_1_0) {
        return nullptr;
    } else if (mod->module_api_version == KEYMASTER_MODULE_API_VERSION_1_0) {
        keymaster1_device_t* dev = nullptr;
        if (get_keymaster1_dev(&dev, mod)) {
            return nullptr;
        }
        return ::keymaster::ng::CreateKeymasterDevice(dev);
    } else {
        keymaster2_device_t* dev = nullptr;
        if (get_keymaster2_dev(&dev, mod)) {
Loading