1b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org/* 2b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org * hostapd / Hardware feature query and different modes 3b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org * Copyright 2002-2003, Instant802 Networks, Inc. 4b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org * Copyright 2005-2006, Devicescape Software, Inc. 5b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org * Copyright (c) 2008-2011, Jouni Malinen <j@w1.fi> 6b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org * 7b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org * This software may be distributed under the terms of the BSD license. 8b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org * See README for more details. 9b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org */ 10b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org 11b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org#ifndef HW_FEATURES_H 12b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org#define HW_FEATURES_H 13b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org 14b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org#ifdef NEED_AP_MLME 15b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgvoid hostapd_free_hw_features(struct hostapd_hw_modes *hw_features, 16b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org size_t num_hw_features); 17b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgint hostapd_get_hw_features(struct hostapd_iface *iface); 18b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgint hostapd_acs_completed(struct hostapd_iface *iface, int err); 19b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgint hostapd_select_hw_mode(struct hostapd_iface *iface); 20b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgconst char * hostapd_hw_mode_txt(int mode); 21b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgint hostapd_hw_get_freq(struct hostapd_data *hapd, int chan); 22b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgint hostapd_hw_get_channel(struct hostapd_data *hapd, int freq); 23b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgint hostapd_check_ht_capab(struct hostapd_iface *iface); 24b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgint hostapd_prepare_rates(struct hostapd_iface *iface, 25b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org struct hostapd_hw_modes *mode); 26fbda0fcf2f9e82c82bcaac138f44d4e5144f6e0dpbos@webrtc.orgvoid hostapd_stop_setup_timers(struct hostapd_iface *iface); 27fbda0fcf2f9e82c82bcaac138f44d4e5144f6e0dpbos@webrtc.org#else /* NEED_AP_MLME */ 28b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgstatic inline void 29fbda0fcf2f9e82c82bcaac138f44d4e5144f6e0dpbos@webrtc.orghostapd_free_hw_features(struct hostapd_hw_modes *hw_features, 30b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org size_t num_hw_features) 31b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org{ 32b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org} 33b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org 34b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgstatic inline int hostapd_get_hw_features(struct hostapd_iface *iface) 35b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org{ 36fbda0fcf2f9e82c82bcaac138f44d4e5144f6e0dpbos@webrtc.org return -1; 37b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org} 38fbda0fcf2f9e82c82bcaac138f44d4e5144f6e0dpbos@webrtc.org 39fbda0fcf2f9e82c82bcaac138f44d4e5144f6e0dpbos@webrtc.orgstatic inline int hostapd_select_hw_mode(struct hostapd_iface *iface) 40b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org{ 41fbda0fcf2f9e82c82bcaac138f44d4e5144f6e0dpbos@webrtc.org return -100; 42b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org} 43b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org 44b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgstatic inline const char * hostapd_hw_mode_txt(int mode) 45b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org{ 46fbda0fcf2f9e82c82bcaac138f44d4e5144f6e0dpbos@webrtc.org return NULL; 47b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org} 48b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org 49b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgstatic inline int hostapd_hw_get_freq(struct hostapd_data *hapd, int chan) 50b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org{ 51b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org return -1; 52fbda0fcf2f9e82c82bcaac138f44d4e5144f6e0dpbos@webrtc.org} 53fbda0fcf2f9e82c82bcaac138f44d4e5144f6e0dpbos@webrtc.org 54b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgstatic inline int hostapd_check_ht_capab(struct hostapd_iface *iface) 55b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org{ 56b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org return 0; 57b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org} 58b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org 59fbda0fcf2f9e82c82bcaac138f44d4e5144f6e0dpbos@webrtc.orgstatic inline int hostapd_prepare_rates(struct hostapd_iface *iface, 60fbda0fcf2f9e82c82bcaac138f44d4e5144f6e0dpbos@webrtc.org struct hostapd_hw_modes *mode) 61b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org{ 62b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org return 0; 63b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org} 64 65static inline void hostapd_stop_setup_timers(struct hostapd_iface *iface) 66{ 67} 68 69#endif /* NEED_AP_MLME */ 70 71#endif /* HW_FEATURES_H */ 72