qca-vendor.h revision f9bdef99ce3b2858f2812c745a3d6bb093fb0e5d
1e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org/*
23484964a86451e86dcf04be9bd8c0d76ee04f081rossberg@chromium.org * Qualcomm Atheros OUI and vendor specific assignments
33484964a86451e86dcf04be9bd8c0d76ee04f081rossberg@chromium.org * Copyright (c) 2014, Qualcomm Atheros, Inc.
4e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org *
5e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org * This software may be distributed under the terms of the BSD license.
6e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org * See README for more details.
7e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org */
8196eb601290dc49c3754da728dc58700dff2de1bmachenbach@chromium.org
9196eb601290dc49c3754da728dc58700dff2de1bmachenbach@chromium.org#ifndef QCA_VENDOR_H
10196eb601290dc49c3754da728dc58700dff2de1bmachenbach@chromium.org#define QCA_VENDOR_H
11e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org
12e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org/*
13e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org * This file is a registry of identifier assignments from the Qualcomm Atheros
14e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org * OUI 00:13:74 for purposes other than MAC address assignment. New identifiers
15e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org * can be assigned through normal review process for changes to the upstream
16e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org * hostap.git repository.
17e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org */
18e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org
19e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org#define OUI_QCA 0x001374
20e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org
21e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org/**
22e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org * enum qca_radiotap_vendor_ids - QCA radiotap vendor namespace IDs
23e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org */
24c1789eecd43bf9c5497636592bf14fa754d04c89machenbach@chromium.orgenum qca_radiotap_vendor_ids {
25c1789eecd43bf9c5497636592bf14fa754d04c89machenbach@chromium.org	QCA_RADIOTAP_VID_WLANTEST = 0,
26c1789eecd43bf9c5497636592bf14fa754d04c89machenbach@chromium.org};
27c1789eecd43bf9c5497636592bf14fa754d04c89machenbach@chromium.org
28c1789eecd43bf9c5497636592bf14fa754d04c89machenbach@chromium.org/**
29c1789eecd43bf9c5497636592bf14fa754d04c89machenbach@chromium.org * enum qca_nl80211_vendor_subcmds - QCA nl80211 vendor command identifiers
30c1789eecd43bf9c5497636592bf14fa754d04c89machenbach@chromium.org *
31e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org * @QCA_NL80211_VENDOR_SUBCMD_UNSPEC: Reserved value 0
32e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org *
33e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org * @QCA_NL80211_VENDOR_SUBCMD_TEST: Test command/event
34e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org *
35e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org * @QCA_NL80211_VENDOR_SUBCMD_AVOID_FREQUENCY: Recommendation of frequency
36e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org *	ranges to avoid to reduce issues due to interference or internal
3777ca49ac05d25684c89442029c22f5b2bce94395ulan@chromium.org *	co-existence information in the driver. The event data structure is
38c1789eecd43bf9c5497636592bf14fa754d04c89machenbach@chromium.org *	defined in struct qca_avoid_freq_list.
39c1789eecd43bf9c5497636592bf14fa754d04c89machenbach@chromium.org *
40c1789eecd43bf9c5497636592bf14fa754d04c89machenbach@chromium.org * @QCA_NL80211_VENDOR_SUBCMD_DFS_CAPABILITY: Command to check driver support
41e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org *	for DFS offloading.
42e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org *
4377ca49ac05d25684c89442029c22f5b2bce94395ulan@chromium.org * @QCA_NL80211_VENDOR_SUBCMD_NAN: NAN command/event which is used to pass
4477ca49ac05d25684c89442029c22f5b2bce94395ulan@chromium.org *	NAN Request/Response and NAN Indication messages. These messages are
4577ca49ac05d25684c89442029c22f5b2bce94395ulan@chromium.org *	interpreted between the framework and the firmware component.
4677ca49ac05d25684c89442029c22f5b2bce94395ulan@chromium.org */
47e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.orgenum qca_nl80211_vendor_subcmds {
48e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org	QCA_NL80211_VENDOR_SUBCMD_UNSPEC = 0,
49865f51ff8c94f86f4c97636d70addc0f29e79674machenbach@chromium.org	QCA_NL80211_VENDOR_SUBCMD_TEST = 1,
50e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org	/* subcmds 2..9 not yet allocated */
5177ca49ac05d25684c89442029c22f5b2bce94395ulan@chromium.org	QCA_NL80211_VENDOR_SUBCMD_AVOID_FREQUENCY = 10,
52c1789eecd43bf9c5497636592bf14fa754d04c89machenbach@chromium.org	QCA_NL80211_VENDOR_SUBCMD_DFS_CAPABILITY =  11,
53e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org	QCA_NL80211_VENDOR_SUBCMD_NAN =  12,
54e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org};
55e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org
56e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org
57e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.orgstruct qca_avoid_freq_range {
58e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org	u32 start_freq;
59e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org	u32 end_freq;
60e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org} STRUCT_PACKED;
61e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org
62e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.orgstruct qca_avoid_freq_list {
63e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org	u32 count;
64e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org	struct qca_avoid_freq_range range[0];
65e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org} STRUCT_PACKED;
66e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org
67e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.orgenum qca_wlan_vendor_attr {
68e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org	QCA_WLAN_VENDOR_ATTR_INVALID = 0,
69c1789eecd43bf9c5497636592bf14fa754d04c89machenbach@chromium.org	/* used by QCA_NL80211_VENDOR_SUBCMD_DFS_CAPABILITY */
70e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org	QCA_WLAN_VENDOR_ATTR_DFS     = 1,
71e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org	/* used by QCA_NL80211_VENDOR_SUBCMD_NAN */
72e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org	QCA_WLAN_VENDOR_ATTR_NAN     = 2,
73e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org	/* keep last */
74e27d617298263725e8a48c2aa14029759b952623mstarzinger@chromium.org	QCA_WLAN_VENDOR_ATTR_AFTER_LAST,
751e8da746019f818a22dfdc6f691dbc0447048cadjkummerow@chromium.org	QCA_WLAN_VENDOR_ATTR_MAX	= QCA_WLAN_VENDOR_ATTR_AFTER_LAST - 1,
761e8da746019f818a22dfdc6f691dbc0447048cadjkummerow@chromium.org};
771e8da746019f818a22dfdc6f691dbc0447048cadjkummerow@chromium.org
781e8da746019f818a22dfdc6f691dbc0447048cadjkummerow@chromium.org#endif /* QCA_VENDOR_H */
791e8da746019f818a22dfdc6f691dbc0447048cadjkummerow@chromium.org