• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2021 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.android.server.uwb.config;
18 
19 import android.hardware.uwb.fira_android.UwbVendorCapabilityTlvTypes;
20 import android.hardware.uwb.fira_android.UwbVendorCapabilityTlvValues;
21 
22 public class CapabilityParam {
23     /**
24      *  CR 287 params
25      */
26     public static final int SUPPORTED_FIRA_PHY_VERSION_RANGE = 0x0;
27     public static final int SUPPORTED_FIRA_MAC_VERSION_RANGE = 0x1;
28     public static final int SUPPORTED_DEVICE_ROLES = 0x2;
29     public static final int SUPPORTED_RANGING_METHOD = 0x3;
30     public static final int SUPPORTED_STS_CONFIG = 0x4;
31     public static final int SUPPORTED_MULTI_NODE_MODES = 0x5;
32     public static final int SUPPORTED_RANGING_TIME_STRUCT = 0x6;
33     public static final int SUPPORTED_SCHEDULED_MODE = 0x7;
34     public static final int SUPPORTED_HOPPING_MODE = 0x8;
35     public static final int SUPPORTED_BLOCK_STRIDING = 0x9;
36     public static final int SUPPORTED_UWB_INITIATION_TIME = 0x0A;
37     public static final int SUPPORTED_CHANNELS = 0x0B;
38     public static final int SUPPORTED_RFRAME_CONFIG = 0x0C;
39     public static final int SUPPORTED_CC_CONSTRAINT_LENGTH = 0x0D;
40     public static final int SUPPORTED_BPRF_PARAMETER_SETS = 0x0E;
41     public static final int SUPPORTED_HPRF_PARAMETER_SETS = 0x0F;
42     public static final int SUPPORTED_AOA = 0x10;
43     public static final int SUPPORTED_EXTENDED_MAC_ADDRESS = 0x11;
44     public static final int SUPPORTED_AOA_RESULT_REQ_INTERLEAVING =
45             UwbVendorCapabilityTlvTypes.SUPPORTED_AOA_RESULT_REQ_ANTENNA_INTERLEAVING;
46 
47     // CCC specific
48     public static final int CCC_SUPPORTED_VERSIONS =
49              UwbVendorCapabilityTlvTypes.CCC_SUPPORTED_VERSIONS;
50     public static final int CCC_SUPPORTED_UWB_CONFIGS =
51              UwbVendorCapabilityTlvTypes.CCC_SUPPORTED_UWB_CONFIGS;
52     public static final int CCC_SUPPORTED_PULSE_SHAPE_COMBOS =
53              UwbVendorCapabilityTlvTypes.CCC_SUPPORTED_PULSE_SHAPE_COMBOS;
54     public static final int CCC_SUPPORTED_RAN_MULTIPLIER =
55              UwbVendorCapabilityTlvTypes.CCC_SUPPORTED_RAN_MULTIPLIER;
56     public static final int CCC_SUPPORTED_CHAPS_PER_SLOT =
57              UwbVendorCapabilityTlvTypes.CCC_SUPPORTED_CHAPS_PER_SLOT;
58     public static final int CCC_SUPPORTED_SYNC_CODES =
59              UwbVendorCapabilityTlvTypes.CCC_SUPPORTED_SYNC_CODES;
60     public static final int CCC_SUPPORTED_CHANNELS =
61              UwbVendorCapabilityTlvTypes.CCC_SUPPORTED_CHANNELS;
62     public static final int CCC_SUPPORTED_HOPPING_CONFIG_MODES_AND_SEQUENCES =
63              UwbVendorCapabilityTlvTypes.CCC_SUPPORTED_HOPPING_CONFIG_MODES_AND_SEQUENCES;
64 
65     public static final int RESPONDER = 0x01;
66     public static final int INITIATOR = 0x02;
67 
68     public static final int OWR = 0x01;
69     public static final int SS_TWR_DEFERRED = 0x02;
70     public static final int DS_TWR_DEFERRED = 0x04;
71     public static final int SS_TWR_NON_DEFERRED = 0x08;
72     public static final int DS_TWR_NON_DEFERRED = 0x10;
73 
74     public static final int STATIC_STS = 0x1;
75     public static final int DYNAMIC_STS = 0x2;
76     public static final int DYNAMIC_STS_RESPONDER_SPECIFIC_SUBSESSION_KEY = 0x4;
77 
78     public static final int UNICAST = 0x1;
79     public static final int ONE_TO_MANY = 0x2;
80     public static final int MANY_TO_MANY = 0x4;
81 
82     public static final int NO_BLOCK_STRIDING = 0x0;
83     public static final int BLOCK_STRIDING = 0x1;
84 
85     public static final int NO_UWB_INITIATION_TIME = 0x0;
86     public static final int UWB_INITIATION_TIME = 0x1;
87 
88     public static final int CHANNEL_5 = 0x1;
89     public static final int CHANNEL_6 = 0x2;
90     public static final int CHANNEL_8 = 0x4;
91     public static final int CHANNEL_9 = 0x8;
92     public static final int CHANNEL_10 = 0x10;
93     public static final int CHANNEL_12 = 0x20;
94     public static final int CHANNEL_13 = 0x40;
95     public static final int CHANNEL_14 = 0x80;
96 
97     public static final int SP0 = 0x1;
98     public static final int SP1 = 0x2;
99     public static final int SP2 = 0x4;
100     public static final int SP3 = 0x8;
101 
102     public static final int CC_CONSTRAINT_LENGTH_K3 = 0x1;
103     public static final int CC_CONSTRAINT_LENGTH_K7 = 0x2;
104 
105     public static final int AOA_AZIMUTH_90 = 0x1;
106     public static final int AOA_AZIMUTH_180 = 0x2;
107     public static final int AOA_ELEVATION = 0x4;
108     public static final int AOA_FOM = 0x4;
109 
110     public static final int NO_EXTENDED_MAC = 0x0;
111     public static final int EXTENDED_MAC = 0x1;
112 
113     public static final int NO_AOA_RESULT_REQ_INTERLEAVING = 0x0;
114     public static final int AOA_RESULT_REQ_INTERLEAVING = 0x1;
115 
116     public static final int CCC_CHANNEL_5 = (int) UwbVendorCapabilityTlvValues.CCC_CHANNEL_5;
117     public static final int CCC_CHANNEL_9 = (int) UwbVendorCapabilityTlvValues.CCC_CHANNEL_9;
118 
119     public static final int CCC_CHAPS_PER_SLOT_3 =
120             (int) UwbVendorCapabilityTlvValues.CHAPS_PER_SLOT_3;
121     public static final int CCC_CHAPS_PER_SLOT_4 =
122             (int) UwbVendorCapabilityTlvValues.CHAPS_PER_SLOT_4;
123     public static final int CCC_CHAPS_PER_SLOT_6 =
124             (int) UwbVendorCapabilityTlvValues.CHAPS_PER_SLOT_6;
125     public static final int CCC_CHAPS_PER_SLOT_8 =
126             (int) UwbVendorCapabilityTlvValues.CHAPS_PER_SLOT_8;
127     public static final int CCC_CHAPS_PER_SLOT_9 =
128             (int) UwbVendorCapabilityTlvValues.CHAPS_PER_SLOT_9;
129     public static final int CCC_CHAPS_PER_SLOT_12 =
130             (int) UwbVendorCapabilityTlvValues.CHAPS_PER_SLOT_12;
131     public static final int CCC_CHAPS_PER_SLOT_24 =
132             (int) UwbVendorCapabilityTlvValues.CHAPS_PER_SLOT_24;
133 
134     public static final int CCC_HOPPING_CONFIG_MODE_NONE =
135             (int) UwbVendorCapabilityTlvValues.HOPPING_CONFIG_MODE_NONE;
136     public static final int CCC_HOPPING_CONFIG_MODE_CONTINUOUS =
137             (int) UwbVendorCapabilityTlvValues.HOPPING_CONFIG_MODE_CONTINUOUS;
138     public static final int CCC_HOPPING_CONFIG_MODE_ADAPTIVE =
139             (int) UwbVendorCapabilityTlvValues.HOPPING_CONFIG_MODE_ADAPTIVE;
140 
141     public static final int CCC_HOPPING_SEQUENCE_AES =
142             (int) UwbVendorCapabilityTlvValues.HOPPING_SEQUENCE_AES;
143     public static final int CCC_HOPPING_SEQUENCE_DEFAULT =
144             (int) UwbVendorCapabilityTlvValues.HOPPING_SEQUENCE_DEFAULT;
145 
146     public static final int SUPPORTED_POWER_STATS_QUERY =
147             UwbVendorCapabilityTlvTypes.SUPPORTED_POWER_STATS_QUERY;
148 }
149