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

Commit b169712d authored by Robert Shih's avatar Robert Shih Committed by Android (Google) Code Review
Browse files

Merge "Add Drm 1.3"

parents 593c5124 37e52fa8
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -155,7 +155,7 @@
    </hal>
    <hal format="hidl" optional="true">
        <name>android.hardware.drm</name>
        <version>1.0-2</version>
        <version>1.0-3</version>
        <interface>
            <name>ICryptoFactory</name>
            <regex-instance>.*</regex-instance>
+2 −0
Original line number Diff line number Diff line
@@ -593,6 +593,8 @@ c1aa508d00b66ed5feefea398fd5edf28fa651ac89773adad7dfda4e0a73a952 android.hardwar
9811f867def49b420d8c707f7e38d3bdd64f835244e1d2a5e9762ab9835672dc android.hardware.cas@1.2::ICasListener
f18695dd36ee205640b8326a17453858a7b4596653aaa6ef0016b0aef1bd4dac android.hardware.cas@1.2::IMediaCasService
4d85e814f94949dae4dc6cb82bbd7d6bb24ffafda6ddb2eac928d2a4fc2e21ce android.hardware.cas@1.2::types
66931c2506fbb5af61f20138cb05e0a09e7bf67d6964c231d27c648933bb33ec android.hardware.drm@1.3::ICryptoFactory
994d08ab27d613022c258a9ec48cece7adf2a305e92df5d76ef923e2c6665f64 android.hardware.drm@1.3::IDrmFactory
ce8dbe76eb9ee94b46ef98f725be992e760a5751073d4f4912484026541371f3 android.hardware.health@2.1::IHealth
26f04510a0b57aba5167c5c0a7c2f077c2acbb98b81902a072517829fd9fd67f android.hardware.health@2.1::IHealthInfoCallback
db47f4ceceb1f06c656f39caa70c557b0f8471ef59fd58611bea667ffca20101 android.hardware.health@2.1::types

drm/1.3/Android.bp

0 → 100644
+20 −0
Original line number Diff line number Diff line
// This file is autogenerated by hidl-gen -Landroidbp.

hidl_interface {
    name: "android.hardware.drm@1.3",
    root: "android.hardware",
    vndk: {
        enabled: true,
    },
    srcs: [
        "IDrmFactory.hal",
        "ICryptoFactory.hal",
    ],
    interfaces: [
        "android.hardware.drm@1.0",
        "android.hardware.drm@1.1",
        "android.hardware.drm@1.2",
        "android.hidl.base@1.0",
    ],
    gen_java: false,
}
+32 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2019 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package android.hardware.drm@1.3;

import @1.2::ICryptoFactory;

/**
 * ICryptoFactory is the main entry point for interacting with a vendor's
 * crypto HAL to create crypto plugins. Crypto plugins create crypto sessions
 * which are used by a codec to decrypt protected video content.
 *
 * The 1.3 factory must always create 1.2 ICryptoPlugin interfaces, which are
 * returned via the 1.0 createPlugin method.
 *
 * The ICryptoFactory hal is required because all top-level interfaces
 * have to be updated in a minor uprev.
 */
interface ICryptoFactory extends @1.2::ICryptoFactory {
};
+38 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2019 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package android.hardware.drm@1.3;

import @1.2::IDrmFactory;

/**
 * IDrmFactory is the main entry point for interacting with a vendor's
 * drm HAL to create drm plugin instances. A drm plugin instance
 * creates drm sessions which are used to obtain keys for a crypto
 * session so it can decrypt protected video content.
 *
 * The 1.3 factory must always create 1.2 IDrmPlugin interfaces, which are
 * returned via the 1.0 createPlugin method.
 */

interface IDrmFactory extends @1.2::IDrmFactory {
    /**
     * Return vector of uuids identifying crypto schemes supported by this HAL.
     *
     * @return schemes Vector of uuids for which isCryptoSchemeSupported is true;
     *                 each uuid can be used as input to createPlugin.
     */
    getSupportedCryptoSchemes() generates(vec<uint8_t[16]> schemes);
};