/**
 * \page ChangeLog
 *
 * \section v36_4TO_v36_5 Version v36.4 to version v36.5 changes
 *
 * \subsection v36_4_TO_v36_5Added Added functions
 *
 * The following functions were added between versions v36.4 and v36.4
 *
 * \li \ref qcsapi_wifi_set_dscp_ac_map (36.4.0.2)
 * \li \ref qcsapi_wifi_get_congestion_index (36.4.0.2)
 * \li \ref qcsapi_wifi_set_tx_power (36.4.0.2)
 * \li \ref qcsapi_wifi_get_dscp_ac_map (36.4.0.2)
 * \li \ref qcsapi_registrar_get_default_pbc_bss (36.4.0.2)
 * \li \ref qcsapi_wifi_get_priority (36.4.0.2)
 * \li \ref qcsapi_regulatory_get_db_version (36.4.0.2)
 * \li \ref qcsapi_wifi_get_carrier_interference (36.4.0.2)
 * \li \ref qcsapi_wifi_set_priority (36.4.0.2)
 * \li \ref qcsapi_registrar_set_default_pbc_bss (36.4.0.2)
 * \li \ref qcsapi_wps_on_hidden_ssid_status (36.4.0.2)
 * \li \ref qcsapi_wps_get_runtime_state (36.4.0.2)
 * \li \ref qcsapi_regulatory_overwrite_country_code (36.4.0.4)
 * \li \ref qcsapi_wifi_get_spinor_jedecid (36.4.0.4)
 * \li \ref qcsapi_get_custom_value (36.4.0.5)
 * \li \ref qcsapi_wifi_get_michael_errcnt (36.4.0.9)
 * \li \ref qcsapi_wifi_get_bw_power (36.5.0.0)
 * \li \ref qcsapi_wifi_set_bw_power (36.5.0.0)
 * \li \ref qcsapi_regulatory_set_bw_power (36.5.0.0)
 *
 * \subsection v36_4TO_v36_5Removed Removed functions
 *
 * The following functions were removed between versions v36.4 and v36.5
 *
 * \li qcsapi_regulatory_get_supported_tx_power_levels (36.4.0.5)
 * \li qcsapi_regulatory_get_current_tx_power_level (36.4.0.5)
 */
