78 lines · c
1/* SPDX-License-Identifier: GPL-2.0-only */2/******************************************************************************3 *4 * Copyright(c) 2003 - 2011 Intel Corporation. All rights reserved.5 *6 * Portions of this file are derived from the ieee80211 subsystem header files.7 *8 * Contact Information:9 * Intel Linux Wireless <ilw@linux.intel.com>10 * Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-649711 *12 *****************************************************************************/13 14#ifndef __il_spectrum_h__15#define __il_spectrum_h__16enum { /* ieee80211_basic_report.map */17 IEEE80211_BASIC_MAP_BSS = (1 << 0),18 IEEE80211_BASIC_MAP_OFDM = (1 << 1),19 IEEE80211_BASIC_MAP_UNIDENTIFIED = (1 << 2),20 IEEE80211_BASIC_MAP_RADAR = (1 << 3),21 IEEE80211_BASIC_MAP_UNMEASURED = (1 << 4),22 /* Bits 5-7 are reserved */23 24};25struct ieee80211_basic_report {26 u8 channel;27 __le64 start_time;28 __le16 duration;29 u8 map;30} __packed;31 32enum { /* ieee80211_measurement_request.mode */33 /* Bit 0 is reserved */34 IEEE80211_MEASUREMENT_ENABLE = (1 << 1),35 IEEE80211_MEASUREMENT_REQUEST = (1 << 2),36 IEEE80211_MEASUREMENT_REPORT = (1 << 3),37 /* Bits 4-7 are reserved */38};39 40enum {41 IEEE80211_REPORT_BASIC = 0, /* required */42 IEEE80211_REPORT_CCA = 1, /* optional */43 IEEE80211_REPORT_RPI = 2, /* optional */44 /* 3-255 reserved */45};46 47struct ieee80211_measurement_params {48 u8 channel;49 __le64 start_time;50 __le16 duration;51} __packed;52 53struct ieee80211_info_element {54 u8 id;55 u8 len;56 u8 data[];57} __packed;58 59struct ieee80211_measurement_request {60 struct ieee80211_info_element ie;61 u8 token;62 u8 mode;63 u8 type;64 struct ieee80211_measurement_params params[];65} __packed;66 67struct ieee80211_measurement_report {68 struct ieee80211_info_element ie;69 u8 token;70 u8 mode;71 u8 type;72 union {73 struct ieee80211_basic_report basic[0];74 } u;75} __packed;76 77#endif78