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

Commit 6c75987e authored by Jeff Tinker's avatar Jeff Tinker Committed by Android (Google) Code Review
Browse files

Merge changes from topic 'finalize drm hal'

* changes:
  Reorganize drm hal modules
  Update shared memory access method in the crypto plugin hal
parents 272e495c da002fe6
Loading
Loading
Loading
Loading
+88 −0
Original line number Diff line number Diff line
// This file is autogenerated by hidl-gen. Do not edit manually.

genrule {
    name: "android.hardware.drm.drm@1.0_genc++",
    name: "android.hardware.drm@1.0_genc++",
    tools: ["hidl-gen"],
    cmd: "$(location hidl-gen) -o $(genDir) -Lc++ -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.drm.drm@1.0",
    cmd: "$(location hidl-gen) -o $(genDir) -Lc++ -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.drm@1.0",
    srcs: [
        "types.hal",
        "ICryptoFactory.hal",
        "ICryptoPlugin.hal",
        "IDrmFactory.hal",
        "IDrmPlugin.hal",
        "IDrmPluginListener.hal",
    ],
    out: [
        "android/hardware/drm/drm/1.0/types.cpp",
        "android/hardware/drm/drm/1.0/DrmFactoryAll.cpp",
        "android/hardware/drm/drm/1.0/DrmPluginAll.cpp",
        "android/hardware/drm/drm/1.0/DrmPluginListenerAll.cpp",
        "android/hardware/drm/1.0/types.cpp",
        "android/hardware/drm/1.0/CryptoFactoryAll.cpp",
        "android/hardware/drm/1.0/CryptoPluginAll.cpp",
        "android/hardware/drm/1.0/DrmFactoryAll.cpp",
        "android/hardware/drm/1.0/DrmPluginAll.cpp",
        "android/hardware/drm/1.0/DrmPluginListenerAll.cpp",
    ],
}

genrule {
    name: "android.hardware.drm.drm@1.0_genc++_headers",
    name: "android.hardware.drm@1.0_genc++_headers",
    tools: ["hidl-gen"],
    cmd: "$(location hidl-gen) -o $(genDir) -Lc++ -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.drm.drm@1.0",
    cmd: "$(location hidl-gen) -o $(genDir) -Lc++ -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.drm@1.0",
    srcs: [
        "types.hal",
        "ICryptoFactory.hal",
        "ICryptoPlugin.hal",
        "IDrmFactory.hal",
        "IDrmPlugin.hal",
        "IDrmPluginListener.hal",
    ],
    out: [
        "android/hardware/drm/drm/1.0/types.h",
        "android/hardware/drm/drm/1.0/IDrmFactory.h",
        "android/hardware/drm/drm/1.0/IHwDrmFactory.h",
        "android/hardware/drm/drm/1.0/BnHwDrmFactory.h",
        "android/hardware/drm/drm/1.0/BpHwDrmFactory.h",
        "android/hardware/drm/drm/1.0/BsDrmFactory.h",
        "android/hardware/drm/drm/1.0/IDrmPlugin.h",
        "android/hardware/drm/drm/1.0/IHwDrmPlugin.h",
        "android/hardware/drm/drm/1.0/BnHwDrmPlugin.h",
        "android/hardware/drm/drm/1.0/BpHwDrmPlugin.h",
        "android/hardware/drm/drm/1.0/BsDrmPlugin.h",
        "android/hardware/drm/drm/1.0/IDrmPluginListener.h",
        "android/hardware/drm/drm/1.0/IHwDrmPluginListener.h",
        "android/hardware/drm/drm/1.0/BnHwDrmPluginListener.h",
        "android/hardware/drm/drm/1.0/BpHwDrmPluginListener.h",
        "android/hardware/drm/drm/1.0/BsDrmPluginListener.h",
        "android/hardware/drm/1.0/types.h",
        "android/hardware/drm/1.0/ICryptoFactory.h",
        "android/hardware/drm/1.0/IHwCryptoFactory.h",
        "android/hardware/drm/1.0/BnHwCryptoFactory.h",
        "android/hardware/drm/1.0/BpHwCryptoFactory.h",
        "android/hardware/drm/1.0/BsCryptoFactory.h",
        "android/hardware/drm/1.0/ICryptoPlugin.h",
        "android/hardware/drm/1.0/IHwCryptoPlugin.h",
        "android/hardware/drm/1.0/BnHwCryptoPlugin.h",
        "android/hardware/drm/1.0/BpHwCryptoPlugin.h",
        "android/hardware/drm/1.0/BsCryptoPlugin.h",
        "android/hardware/drm/1.0/IDrmFactory.h",
        "android/hardware/drm/1.0/IHwDrmFactory.h",
        "android/hardware/drm/1.0/BnHwDrmFactory.h",
        "android/hardware/drm/1.0/BpHwDrmFactory.h",
        "android/hardware/drm/1.0/BsDrmFactory.h",
        "android/hardware/drm/1.0/IDrmPlugin.h",
        "android/hardware/drm/1.0/IHwDrmPlugin.h",
        "android/hardware/drm/1.0/BnHwDrmPlugin.h",
        "android/hardware/drm/1.0/BpHwDrmPlugin.h",
        "android/hardware/drm/1.0/BsDrmPlugin.h",
        "android/hardware/drm/1.0/IDrmPluginListener.h",
        "android/hardware/drm/1.0/IHwDrmPluginListener.h",
        "android/hardware/drm/1.0/BnHwDrmPluginListener.h",
        "android/hardware/drm/1.0/BpHwDrmPluginListener.h",
        "android/hardware/drm/1.0/BsDrmPluginListener.h",
    ],
}

cc_library_shared {
    name: "android.hardware.drm.drm@1.0",
    generated_sources: ["android.hardware.drm.drm@1.0_genc++"],
    generated_headers: ["android.hardware.drm.drm@1.0_genc++_headers"],
    export_generated_headers: ["android.hardware.drm.drm@1.0_genc++_headers"],
    name: "android.hardware.drm@1.0",
    generated_sources: ["android.hardware.drm@1.0_genc++"],
    generated_headers: ["android.hardware.drm@1.0_genc++_headers"],
    export_generated_headers: ["android.hardware.drm@1.0_genc++_headers"],
    shared_libs: [
        "libhidlbase",
        "libhidltransport",
+1 −1
Original line number Diff line number Diff line
@@ -13,7 +13,7 @@
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package android.hardware.drm.crypto@1.0;
package android.hardware.drm@1.0;

import ICryptoPlugin;

+12 −3
Original line number Diff line number Diff line
@@ -13,9 +13,9 @@
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package android.hardware.drm.crypto@1.0;
package android.hardware.drm@1.0;

import android.hardware.drm.crypto@1.0::types;
import android.hardware.drm@1.0::types;

/**
 * Ref: frameworks/native/include/media/hardware/CryptoAPI.h:CryptoPlugin
@@ -56,6 +56,15 @@ interface ICryptoPlugin {
     */
    setMediaDrmSession(vec<uint8_t> sessionId) generates(Status status);

    /**
     * Set a shared memory base for subsequent decrypt operations. The buffer
     * base is a hidl_memory which maps shared memory in the HAL module.
     * After the shared buffer base is established, the decrypt() method
     * receives SharedBuffer instances which specify the buffer address range
     * for decrypt source and destination addresses.
     */
    setSharedBufferBase(memory base);

    /**
     * Decrypt an array of subsamples from the source memory buffer to the
     * destination memory buffer.
@@ -91,6 +100,6 @@ interface ICryptoPlugin {
     */
    decrypt(bool secure, uint8_t[16] keyId, uint8_t[16] iv, Mode mode,
        Pattern pattern, vec<SubSample> subSamples,
            memory source, uint32_t offset, DestinationBuffer destination)
            SharedBuffer source, uint64_t offset, DestinationBuffer destination)
        generates(Status status, uint32_t bytesWritten, string detailedError);
};
+1 −1
Original line number Diff line number Diff line
@@ -13,7 +13,7 @@
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package android.hardware.drm.drm@1.0;
package android.hardware.drm@1.0;

import IDrmPlugin;

+1 −1
Original line number Diff line number Diff line
@@ -13,7 +13,7 @@
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package android.hardware.drm.drm@1.0;
package android.hardware.drm@1.0;

import IDrmPluginListener;

Loading