143d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo/* 243d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo * Copyright (c) 2014 Qualcomm Atheros, Inc. 343d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo * 443d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo * Permission to use, copy, modify, and/or distribute this software for any 543d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo * purpose with or without fee is hereby granted, provided that the above 643d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo * copyright notice and this permission notice appear in all copies. 743d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo * 843d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 943d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 1043d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 1143d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 1243d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 1343d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 1443d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 1543d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo */ 1643d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo 1743d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo#include "core.h" 1843d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo 1943d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo#ifdef CONFIG_NL80211_TESTMODE 2043d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo 2143d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valovoid ath10k_testmode_destroy(struct ath10k *ar); 2243d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo 2343d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valobool ath10k_tm_event_wmi(struct ath10k *ar, u32 cmd_id, struct sk_buff *skb); 2443d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valoint ath10k_tm_cmd(struct ieee80211_hw *hw, struct ieee80211_vif *vif, 2543d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo void *data, int len); 2643d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo 2743d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo#else 2843d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo 2943d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valostatic inline void ath10k_testmode_destroy(struct ath10k *ar) 3043d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo{ 3143d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo} 3243d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo 3343d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valostatic inline bool ath10k_tm_event_wmi(struct ath10k *ar, u32 cmd_id, 3443d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo struct sk_buff *skb) 3543d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo{ 3643d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo return false; 3743d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo} 3843d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo 3943d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valostatic inline int ath10k_tm_cmd(struct ieee80211_hw *hw, 4043d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo struct ieee80211_vif *vif, 4143d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo void *data, int len) 4243d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo{ 4343d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo return 0; 4443d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo} 4543d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo 4643d2a30fa80166243498fc6b8c841828ce52fcc1Kalle Valo#endif 47