From 4c0fffb0abe64539e4ec97c645b90e2e8d7629f6 Mon Sep 17 00:00:00 2001 From: Roshan Pius Date: Thu, 9 Jun 2022 21:09:14 +0000 Subject: [PATCH 1/6] uwb(hal): Add a new capability TLV for min ranging interval Bug: 235488259 Test: Compiles Merged-In: I7f0c6d9b68ea3a1ba31911a031f2e7ee24c9d331 Change-Id: I7f0c6d9b68ea3a1ba31911a031f2e7ee24c9d331 --- uwb/aidl/Android.bp | 1 + .../uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl | 1 + .../uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl | 5 +++++ 3 files changed, 7 insertions(+) diff --git a/uwb/aidl/Android.bp b/uwb/aidl/Android.bp index 52f060575c..7dc2b7f141 100755 --- a/uwb/aidl/Android.bp +++ b/uwb/aidl/Android.bp @@ -47,6 +47,7 @@ aidl_interface { aidl_interface { name: "android.hardware.uwb.fira_android", + owner: "google", vendor_available: true, srcs: ["android/hardware/uwb/fira_android/*.aidl"], stability: "vintf", diff --git a/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl b/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl index cbe20688ad..17e438129e 100644 --- a/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl +++ b/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl @@ -44,4 +44,5 @@ enum UwbVendorCapabilityTlvTypes { CCC_SUPPORTED_PULSE_SHAPE_COMBOS = 166, CCC_SUPPORTED_RAN_MULTIPLIER = 167, SUPPORTED_AOA_RESULT_REQ_ANTENNA_INTERLEAVING = 227, + SUPPORTED_MIN_RANGING_INTERVAL_MS = 228, } diff --git a/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl b/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl index 0140fdd5ed..3961edaecb 100644 --- a/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl +++ b/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl @@ -150,4 +150,9 @@ enum UwbVendorCapabilityTlvTypes { * 0 - Feature not supported. */ SUPPORTED_AOA_RESULT_REQ_ANTENNA_INTERLEAVING = 0xE3, + + /** + * 4 byte value to indicate supported min ranging interval in ms. + */ + SUPPORTED_MIN_RANGING_INTERVAL_MS = 0xE4, } From 745c36cb74db579290137b3ce5c6a8ca23b59573 Mon Sep 17 00:00:00 2001 From: Roshan Pius Date: Wed, 22 Jun 2022 09:56:11 -0700 Subject: [PATCH 2/6] uwb(hal): Add a new capability TLV for supported rng ntf thresholds Bug: 235355249 Test: Compiles Merged-In: I44dd28b0b3ff5cfe6bf227e4cad917edfce10262 Change-Id: I44dd28b0b3ff5cfe6bf227e4cad917edfce10262 --- .../uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl | 1 + .../uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl b/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl index 17e438129e..002e11a427 100644 --- a/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl +++ b/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl @@ -45,4 +45,5 @@ enum UwbVendorCapabilityTlvTypes { CCC_SUPPORTED_RAN_MULTIPLIER = 167, SUPPORTED_AOA_RESULT_REQ_ANTENNA_INTERLEAVING = 227, SUPPORTED_MIN_RANGING_INTERVAL_MS = 228, + SUPPORTED_RANGE_DATA_NTF_CONFIG = 229, } diff --git a/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl b/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl index 3961edaecb..e15edcb1c4 100644 --- a/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl +++ b/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl @@ -155,4 +155,12 @@ enum UwbVendorCapabilityTlvTypes { * 4 byte value to indicate supported min ranging interval in ms. */ SUPPORTED_MIN_RANGING_INTERVAL_MS = 0xE4, + + /** + * 4 byte bitmask to indicate the supported RANGE_DATA_NTF_CONFIG values + * + * Bitmask where each bit corresponds to values used in + * RANGE_DATA_NTF_CONFIG in SET_APP_CFG_CMD + */ + SUPPORTED_RANGE_DATA_NTF_CONFIG = 0xE5, } From 8ad4251bbb43db9edc7666383efa972b4aede314 Mon Sep 17 00:00:00 2001 From: ziyiw Date: Fri, 24 Jun 2022 22:12:53 +0000 Subject: [PATCH 3/6] Add new capability TLV for supported RSSI reporting Test: Compile Bug: 236720553 Merged-In: Iae490f193c7e613ef8c9ee03784563b3286182bb Change-Id: Iae490f193c7e613ef8c9ee03784563b3286182bb --- .../uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl | 1 + .../uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl b/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl index 002e11a427..cd08671931 100644 --- a/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl +++ b/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl @@ -46,4 +46,5 @@ enum UwbVendorCapabilityTlvTypes { SUPPORTED_AOA_RESULT_REQ_ANTENNA_INTERLEAVING = 227, SUPPORTED_MIN_RANGING_INTERVAL_MS = 228, SUPPORTED_RANGE_DATA_NTF_CONFIG = 229, + SUPPORTED_RSSI_REPORTING = 230, } diff --git a/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl b/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl index e15edcb1c4..556bd13d58 100644 --- a/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl +++ b/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl @@ -163,4 +163,12 @@ enum UwbVendorCapabilityTlvTypes { * RANGE_DATA_NTF_CONFIG in SET_APP_CFG_CMD */ SUPPORTED_RANGE_DATA_NTF_CONFIG = 0xE5, + + /** + * 1 byte bitmask to indicate the supported RSSI_REPORTING values + * Values: + * 1 - Feature supported. + * 0 - Feature not supported. + */ + SUPPORTED_RSSI_REPORTING = 0xE6, } From e27f56430c7807dac4b93609f239e1ddd41845b9 Mon Sep 17 00:00:00 2001 From: ziyiw Date: Thu, 7 Jul 2022 23:03:46 +0000 Subject: [PATCH 4/6] Add new capability TLV and config TLV for supported diagnostics. Test: Compile Bug: 236969605 Merged-In: I9cd3e442857cf8691420f7d3f3386f1aa45a78a2 Change-Id: I9cd3e442857cf8691420f7d3f3386f1aa45a78a2 --- .../UwbVendorCapabilityTlvTypes.aidl | 1 + .../UwbVendorSessionAppConfigTlvTypes.aidl | 2 ++ .../UwbVendorCapabilityTlvTypes.aidl | 8 ++++++++ .../UwbVendorSessionAppConfigTlvTypes.aidl | 19 +++++++++++++++++++ 4 files changed, 30 insertions(+) diff --git a/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl b/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl index cd08671931..39bb5d9662 100644 --- a/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl +++ b/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl @@ -47,4 +47,5 @@ enum UwbVendorCapabilityTlvTypes { SUPPORTED_MIN_RANGING_INTERVAL_MS = 228, SUPPORTED_RANGE_DATA_NTF_CONFIG = 229, SUPPORTED_RSSI_REPORTING = 230, + SUPPORTED_DIAGNOSTICS = 231, } diff --git a/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorSessionAppConfigTlvTypes.aidl b/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorSessionAppConfigTlvTypes.aidl index d35728fbef..8413f06d0f 100644 --- a/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorSessionAppConfigTlvTypes.aidl +++ b/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorSessionAppConfigTlvTypes.aidl @@ -43,4 +43,6 @@ enum UwbVendorSessionAppConfigTlvTypes { NB_OF_RANGE_MEASUREMENTS = 227, NB_OF_AZIMUTH_MEASUREMENTS = 228, NB_OF_ELEVATION_MEASUREMENTS = 229, + ENABLE_DIAGNOSTICS = 232, + DIAGRAMS_FRAME_REPORTS_FIELDS = 233, } diff --git a/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl b/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl index 556bd13d58..86479fb314 100644 --- a/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl +++ b/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl @@ -171,4 +171,12 @@ enum UwbVendorCapabilityTlvTypes { * 0 - Feature not supported. */ SUPPORTED_RSSI_REPORTING = 0xE6, + + /** + * 1 byte value to indicate support for diagnostics feature. + * Values: + * 1 - Feature supported. + * 0 - Feature not supported. + */ + SUPPORTED_DIAGNOSTICS = 0xE7, } diff --git a/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorSessionAppConfigTlvTypes.aidl b/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorSessionAppConfigTlvTypes.aidl index f43b249c8f..f303ed92d7 100644 --- a/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorSessionAppConfigTlvTypes.aidl +++ b/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorSessionAppConfigTlvTypes.aidl @@ -66,4 +66,23 @@ enum UwbVendorSessionAppConfigTlvTypes { NB_OF_AZIMUTH_MEASUREMENTS = 0xE4, /** 1 byte data */ NB_OF_ELEVATION_MEASUREMENTS = 0xE5, + + /** + * Supported only if the UwbVendorCapabilityTlvTypes + * .SUPPORTED_DIAGNOSTICS set to 1. + */ + /** + * 1 byte data + * 1 - Enable, + * 0 - Disable + */ + ENABLE_DIAGNOSTICS = 0xE8, + /** + * 1 byte bitmask + * b0: Activate RSSIs field, + * b1: Activate AoAs field, + * b2: Activate CIRs field, + * b3 - b7: RFU + */ + DIAGRAMS_FRAME_REPORTS_FIELDS = 0xE9, } From 2cf69b7084b5ff5b9cfc534e6c3d2b48d0de2d1f Mon Sep 17 00:00:00 2001 From: ziyiw Date: Wed, 27 Jul 2022 18:58:30 +0000 Subject: [PATCH 5/6] Add Diagnostics Oid in HAL. Test: compile Bug: 236969605 Merged-In: Idc44d73f31dc23d4dfaf4f461d8c312338421234 Change-Id: Idc44d73f31dc23d4dfaf4f461d8c312338421234 --- .../hardware/uwb/fira_android/UwbVendorGidAndroidOids.aidl | 1 + .../hardware/uwb/fira_android/UwbVendorGidAndroidOids.aidl | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorGidAndroidOids.aidl b/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorGidAndroidOids.aidl index cd2e122029..fbcfbff667 100644 --- a/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorGidAndroidOids.aidl +++ b/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorGidAndroidOids.aidl @@ -36,4 +36,5 @@ package android.hardware.uwb.fira_android; enum UwbVendorGidAndroidOids { ANDROID_GET_POWER_STATS = 0, ANDROID_SET_COUNTRY_CODE = 1, + ANDROID_RANGE_DIAGNOSTICS = 2, } diff --git a/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorGidAndroidOids.aidl b/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorGidAndroidOids.aidl index e389a2dd23..42d52f1d5a 100644 --- a/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorGidAndroidOids.aidl +++ b/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorGidAndroidOids.aidl @@ -31,4 +31,8 @@ enum UwbVendorGidAndroidOids { // Used to set the current regulatory country code (determined usinag // SIM or hardcoded by OEM). ANDROID_SET_COUNTRY_CODE = 0x1, + // Used by the notification to get UWB ranging diagnostics stats. + // Supported only if the UwbVendorCapabilityTlvTypes.SUPPORTED_DIAGNOSTICS set + // to 1. + ANDROID_RANGE_DIAGNOSTICS = 0x2, } From 493e8216b085c0748745e7e50a4e8b4294008846 Mon Sep 17 00:00:00 2001 From: Roshan Pius Date: Mon, 22 Aug 2022 21:02:24 +0000 Subject: [PATCH 6/6] uwb(hal): Doc update to clarify country code payload of 00 Bug: 243426975 Test: N/A Merged-In: I6ec56c68df5e1049d93c31e498934501f7d75ad1 Change-Id: I6ec56c68df5e1049d93c31e498934501f7d75ad1 --- .../hardware/uwb/fira_android/UwbVendorGidAndroidOids.aidl | 2 ++ 1 file changed, 2 insertions(+) diff --git a/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorGidAndroidOids.aidl b/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorGidAndroidOids.aidl index 42d52f1d5a..4768f550b8 100644 --- a/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorGidAndroidOids.aidl +++ b/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorGidAndroidOids.aidl @@ -30,6 +30,8 @@ enum UwbVendorGidAndroidOids { ANDROID_GET_POWER_STATS = 0x0, // Used to set the current regulatory country code (determined usinag // SIM or hardcoded by OEM). + // Country code is sent as a 2 byte value corresponding to ISO-3166 country code. + // Note: "00" is used to indicate that the country code is unknown. ANDROID_SET_COUNTRY_CODE = 0x1, // Used by the notification to get UWB ranging diagnostics stats. // Supported only if the UwbVendorCapabilityTlvTypes.SUPPORTED_DIAGNOSTICS set