1981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 2981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * TWDriverMsr.h 3981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 4981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Copyright(c) 1998 - 2009 Texas Instruments. All rights reserved. 5981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * All rights reserved. 6981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 7981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Redistribution and use in source and binary forms, with or without 8981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * modification, are permitted provided that the following conditions 9981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * are met: 10981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 11981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * * Redistributions of source code must retain the above copyright 12981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * notice, this list of conditions and the following disclaimer. 13981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * * Redistributions in binary form must reproduce the above copyright 14981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * notice, this list of conditions and the following disclaimer in 15981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * the documentation and/or other materials provided with the 16981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * distribution. 17981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * * Neither the name Texas Instruments nor the names of its 18981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * contributors may be used to endorse or promote products derived 19981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * from this software without specific prior written permission. 20981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 21981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 24981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 25981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 26981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 27981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 28981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 29981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 30981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 31981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */ 33981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 34981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifndef TWDDRIVERMSR_H 35981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWDDRIVERMSR_H 36981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 37981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \file TWDriverMsr.h 38981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWDriver Measurement APIs 39981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 40981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \see 41981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */ 42981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 43981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#include "TWDriverScan.h" 44981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#include "tidef.h" 45981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#include "public_radio.h" 46981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 47981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define NOISE_HISTOGRAM_LENGTH 8 48981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MAX_NUM_OF_MSR_TYPES_IN_PARALLEL 3 49981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 50981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* The size of the time frame in which we must start the */ 51981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* measurement request or give up */ 52981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MSR_START_MAX_DELAY 50 53981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 54981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* In non unicast measurement requests a random delay */ 55981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* between 4 and 40 milliseconds */ 56981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MSR_ACTIVATION_DELAY_RANDOM 36 57981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MSR_ACTIVATION_DELAY_OFFSET 4 58981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 59981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 60981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum EMeasurementType 61981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief different measurement types 62981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 63981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description 64981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 65981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa 66981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */ 67981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum 68981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{ 69981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 0 */ MSR_TYPE_BASIC_MEASUREMENT = 0, /**< */ 70981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 1 */ MSR_TYPE_CCA_LOAD_MEASUREMENT, /**< */ 71981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 2 */ MSR_TYPE_NOISE_HISTOGRAM_MEASUREMENT, /**< */ 72981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 3 */ MSR_TYPE_BEACON_MEASUREMENT, /**< */ 73981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 4 */ MSR_TYPE_FRAME_MEASUREMENT, /**< */ 74981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 5 */ MSR_TYPE_MAX_NUM_OF_MEASURE_TYPES /**< */ 75981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 76981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} EMeasurementType; 77981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 78981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum EMeasurementScanMode 79981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Measurement Scan Modes 80981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 81981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description 82981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * enumerates the different scan modes available for beacon measurement 83981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 84981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa 85981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */ 86981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum 87981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{ 88981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 0 */ MSR_SCAN_MODE_PASSIVE = 0, /**< Passive Scan Mode */ 89981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 1 */ MSR_SCAN_MODE_ACTIVE, /**< Active Scan Mode */ 90981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 2 */ MSR_SCAN_MODE_BEACON_TABLE, /**< Beacon Table Scan Mode */ 91981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 3 */ MSR_SCAN_MODE_MAX_NUM_OF_SCAN_MODES /**< Max number of Scan Modes */ 92981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 93981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} EMeasurementScanMode; 94981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 95981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum EMeasurementFrameType 96981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Measurement Frame Types 97981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 98981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description 99981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 100981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa 101981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */ 102981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum 103981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{ 104981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 0 */ MSR_FRAME_TYPE_NO_ACTIVE = 0, /**< */ 105981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 1 */ MSR_FRAME_TYPE_BROADCAST, /**< */ 106981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 2 */ MSR_FRAME_TYPE_MULTICAST, /**< */ 107981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 3 */ MSR_FRAME_TYPE_UNICAST /**< */ 108981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 109981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} EMeasurementFrameType; 110981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 111981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum EMeasurementMode 112981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Measurement Modes 113981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 114981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description 115981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 116981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa 117981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */ 118981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum 119981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{ 120981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 0 */ MSR_MODE_NONE = 0, /**< */ 121981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 1 */ MSR_MODE_XCC, /**< */ 122981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 2 */ MSR_MODE_SPECTRUM_MANAGEMENT /**< */ 123981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 124981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} EMeasurementMode; 125981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 126981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum EMeasurementRejectReason 127981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Measurement Reject Reason 128981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 129981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description 130981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 131981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa 132981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */ 133981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum 134981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{ 135981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 1 */ MSR_REJECT_OTHER_REASON = 1, /**< */ 136981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 2 */ MSR_REJECT_INVALID_MEASUREMENT_TYPE, /**< */ 137981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 3 */ MSR_REJECT_DTIM_OVERLAP, /**< */ 138981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 4 */ MSR_REJECT_DURATION_EXCEED_MAX_DURATION, /**< */ 139981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 5 */ MSR_REJECT_TRAFFIC_INTENSITY_TOO_HIGH, /**< */ 140981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 6 */ MSR_REJECT_SCR_UNAVAILABLE, /**< */ 141981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 7 */ MSR_REJECT_MAX_DELAY_PASSED, /**< */ 142981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 8 */ MSR_REJECT_INVALID_CHANNEL, /**< */ 143981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 9 */ MSR_REJECT_NOISE_HIST_FAIL, /**< */ 144981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 10 */ MSR_REJECT_CHANNEL_LOAD_FAIL, /**< */ 145981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 11 */ MSR_REJECT_EMPTY_REPORT /**< */ 146981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 147981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} EMeasurementRejectReason; 148981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 149981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt /* 150981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *********************************************************************** 151981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Unions. 152981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *********************************************************************** 153981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */ 154981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \union TMeasurementReplyValue 155981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Measurement possible Reply Values 156981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 157981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description 158981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 159981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa 160981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */ 161981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef union 162981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{ 163981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TI_UINT8 CCABusyFraction; /**< */ 164981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TI_UINT8 RPIDensity[ NOISE_HISTOGRAM_LENGTH ]; /**< */ 165981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 166981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMeasurementReplyValue; 167981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 168981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*********************************************************************** 169981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Structure definitions. 170981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *********************************************************************** 171981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */ 172981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TMeasurementTypeRequest 173981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Measurement Type Request 174981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 175981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description 176981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * This structure defines single channel parameters for normal scan operation (inc. triggered) 177981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 178981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa 179981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */ 180981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct 181981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{ 182981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt EMeasurementType msrType; /**< */ 183981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt EMeasurementScanMode scanMode; /**< */ 184981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TI_UINT32 duration; /**< */ 185981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TI_UINT8 reserved; /**< */ 186981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 187981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMeasurementTypeRequest; 188981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 189981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TMeasurementRequest 190981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Measurement Request 191981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 192981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description 193981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * This structure defines measurement parameters of several measurement request types 194981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * for one channel 195981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 196981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa 197981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */ 198981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct 199981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{ 200981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt ERadioBand band; /**< */ 201981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TI_UINT8 channel; /**< */ 202981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TI_UINT64 startTime; /**< */ 203981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TI_UINT8 txPowerDbm; /**< */ 204981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt EScanResultTag eTag; /**< */ 205981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TI_UINT8 numberOfTypes; /**< */ 206981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TMeasurementTypeRequest msrTypes[ MAX_NUM_OF_MSR_TYPES_IN_PARALLEL ]; /**< */ 207981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 208981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMeasurementRequest; 209981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 210981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TMeasurementTypeReply 211981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Measurement Type Reply 212981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 213981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description 214981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * This structure defines the reply parameters for measurement of specific type performed 215981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * (the type is indicated in the msrType field) 216981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 217981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa 218981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */ 219981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct 220981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{ 221981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt EMeasurementType msrType; /**< The type of performed measurement the reply reffer to */ 222981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TI_UINT8 status; /**< The status of measurement performed */ 223981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TMeasurementReplyValue replyValue; /**< The Reply Value of performed measurement */ 224981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TI_UINT8 reserved; /**< */ 225981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 226981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMeasurementTypeReply; 227981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 228981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TMeasurementReply 229981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Measurement Reply 230981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 231981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description 232981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * This structure defines the reply parameters for some measurements of some types performed 233981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 234981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa 235981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */ 236981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct 237981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{ 238981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TI_UINT8 numberOfTypes; /**< Number of measurements types (equal to number of measurement replys) */ 239981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TMeasurementTypeReply msrTypes[ MAX_NUM_OF_MSR_TYPES_IN_PARALLEL ]; /**< Measurements Replys buffer. One Reply per type */ 240981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 241981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMeasurementReply; 242981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 243981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TMeasurementFrameHdr 244981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Measurement Frame Header 245981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 246981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description 247981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * This structure defines a Header of a measurement 248981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 249981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa 250981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */ 251981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct 252981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{ 253981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TI_UINT16 dialogToken; /**< Indicates if the received Measurement is the same as the one that is being processed */ 254981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TI_UINT8 activatioDelay; /**< */ 255981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TI_UINT8 measurementOffset; /**< */ 256981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 257981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMeasurementFrameHdr; 258981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 259981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TMeasurementFrameRequest 260981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Measurement Frame Request 261981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 262981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description 263981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 264981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa 265981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */ 266981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct 267981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{ 268981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TMeasurementFrameHdr *hdr; /**< */ 269981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt EMeasurementFrameType frameType; /**< */ 270981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TI_UINT8 *requests; /**< */ 271981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt TI_INT32 requestsLen; /**< */ 272981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 273981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMeasurementFrameRequest; 274981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 275981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt 276981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif /* #define TWDDRIVERMSR_H */ 277