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

Commit f527f8f7 authored by Roshan Pius's avatar Roshan Pius
Browse files

uwb(interface): Add a package for Android specific params in UCI

Along with the FIRA standard defined UCI specification, Android needs to
support some Android specific commands/params (uses vendor carve-outs in
the specifications). Use this new package to explicitly specify these
Android specific commands/params.

Note: This package is not tied to main UWB HAL interface and should be
updatable between dessert releases (infra changes needed to support
this still needs to be figured out).

Bug: 197886322
Test: Compiles
Change-Id: Id8b50a84cec40f80389cef3a7bfad920a3e07446
parent 1b5669f7
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -57,6 +57,7 @@ bool ShouldCheckMissingHalsInFcm(const std::string& package) {
            "android.hardware.graphics.common",
            "android.hardware.graphics.common",
            "android.hardware.keymaster",
            "android.hardware.keymaster",
            "android.hardware.radio",
            "android.hardware.radio",
            "android.hardware.uwb.fira_android",


            // Fastboot HAL is only used by recovery. Recovery is owned by OEM. Framework
            // Fastboot HAL is only used by recovery. Recovery is owned by OEM. Framework
            // does not depend on this HAL, hence it is not declared in any manifests or matrices.
            // does not depend on this HAL, hence it is not declared in any manifests or matrices.
+27 −0
Original line number Original line Diff line number Diff line
@@ -17,6 +17,7 @@ aidl_interface {
    backend: {
    backend: {
        java: {
        java: {
            sdk_version: "module_current",
            sdk_version: "module_current",
            enabled: false,
        },
        },
        ndk: {
        ndk: {
            vndk: {
            vndk: {
@@ -37,3 +38,29 @@ aidl_interface {
        },
        },
    },
    },
}
}

aidl_interface {
    name: "android.hardware.uwb.fira_android",
    vendor_available: true,
    srcs: ["android/hardware/uwb/fira_android/*.aidl"],
    stability: "vintf",
    backend: {
        java: {
            sdk_version: "module_current",
            enabled: true,
            apex_available: [
                "com.android.uwb",
            ],
        },
        ndk: {
            vndk: {
                enabled: true,
            },
            apex_available: [
                "//apex_available:platform",
                "com.android.uwb",
            ],
            min_sdk_version: "current",
        },
    },
}
+38 −0
Original line number Original line Diff line number Diff line
/*
 * Copyright (C) 2021 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.
 */
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE.                          //
///////////////////////////////////////////////////////////////////////////////

// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
//     the interface (from the latest frozen version), the build system will
//     prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.

package android.hardware.uwb.fira_android;
@Backing(type="byte") @VintfStability
enum UwbVendorGids {
  ANDROID = 14,
}
+41 −0
Original line number Original line Diff line number Diff line
/*
 * Copyright (C) 2021 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.
 */
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE.                          //
///////////////////////////////////////////////////////////////////////////////

// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
//     the interface (from the latest frozen version), the build system will
//     prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.

package android.hardware.uwb.fira_android;
@Backing(type="int") @VintfStability
enum UwbVendorSessionSetAppConfigCmdParams {
  CCC_RANGING_PROTOCOL_VER = 163,
  CCC_UWB_CONFIG_ID = 164,
  CCC_PULSESHAPE_COMBO = 165,
  CCC_URSK_TTL = 166,
}
+36 −0
Original line number Original line Diff line number Diff line
/*
 * Copyright (C) 2021 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.uwb.fira_android;

/**
 * Android specific vendor command GIDs (Group ID) should be defined here.
 *
 * For each vendor GID defined here, also create a corresponding AIDL file enumerating the
 * OIDs (Opcode Identifier) allowed within that GID.
 * For ex: VENDOR_GID_XXX = 1110b -> UwbVendorGidXXXOids.aidl
 */
@VintfStability
@Backing(type="byte")
enum UwbVendorGids {
    /**
     * Use values from the Proprietary Group range: 1110b – 1111b defined in Table 36 of
     * UCI specification.
     */

    /** All Android specific commands/response/notification should use this GID */
    ANDROID = 0xE,
}
Loading