<manifest version="1.0" type="framework">
    <hal>
        <name>android.hidl.manager</name>
        <transport>hwbinder</transport>
        <version>1.1</version>
        <interface>
            <name>IServiceManager</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal>
        <name>android.hidl.allocator</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IAllocator</name>
            <instance>ashmem</instance>
        </interface>
    </hal>
    <hal>
        <name>android.hidl.memory</name>
        <transport arch="32+64">passthrough</transport>
        <version>1.0</version>
        <interface>
            <name>IMapper</name>
            <instance>ashmem</instance>
        </interface>
    </hal>
    <hal>
        <name>android.hidl.token</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>ITokenManager</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal>
        <name>android.frameworks.displayservice</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IDisplayService</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal>
        <name>android.frameworks.schedulerservice</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>ISchedulingPolicyService</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal>
        <name>android.frameworks.sensorservice</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>ISensorManager</name>
            <instance>default</instance>
        </interface>
    </hal>
        <hal format="hidl">
        <name>android.system.net.netd</name>
        <transport>hwbinder</transport>
        <version>1.1</version>
        <interface>
            <name>INetd</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal>
        <name>android.system.wifi.keystore</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IKeystore</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal>
      <name>android.hardware.graphics.composer</name>
      <transport>hwbinder</transport>
      <version>2.1</version>
      <interface>
          <name>IComposer</name>
          <instance>vr</instance>
      </interface>
    </hal>
    <hal>
        <name>android.hardware.health</name>
        <transport>hwbinder</transport>
        <version>2.0</version>
        <interface>
            <name>IHealth</name>
            <!-- The backup instance provided by healthd. -->
            <instance>backup</instance>
        </interface>
    </hal>
    <hal format="native">
        <name>netutils-wrapper</name>
        <!--
            netutils-wrapper versions must be x.0.
            netutils-wrapper next version has less functionalities than
            previous versions, so unlike a HAL, netutils-wrapper are not
            backwards compatible. Hence the major version must be bumped for
            each update.
            If a minor version were bumped instead (say, <version>1.1</version>),
            it would be incorrectly considered compatible with version 1.0 in
            device compatibility matrix.
        -->
        <version>1.0</version>
    </hal>
</manifest>
