This commit is contained in:
pvvx 2017-06-28 07:09:45 +03:00
parent b8c699eb1c
commit 3a865fb51d
40 changed files with 293 additions and 463 deletions

View file

@ -707,14 +707,14 @@ void fATSP(void *arg) {
switch (argv[1][0]) {
case 'a': // acquire
{
pmu_acquire_wakelock(WAKELOCK_OS);
acquire_wakelock(WAKELOCK_OS);
//at_printf("\r\n[ATSP] wakelock:0x%08x", get_wakelock_status());
break;
}
case 'r': // release
{
pmu_release_wakelock(WAKELOCK_OS);
release_wakelock(WAKELOCK_OS);
//at_printf("\r\n[ATSP] wakelock:0x%08x", get_wakelock_status());
break;
}
@ -1110,7 +1110,7 @@ void fATSL(void *arg) {
{
if (argc == 3) {
lock_id = strtoul(argv[2], NULL, 16);
pmu_acquire_wakelock(lock_id);
acquire_wakelock(lock_id);
}
AT_DBG_MSG(AT_FLAG_OS, AT_DBG_ALWAYS, "[ATSL] wakelock:0x%08x",
pmu_get_wakelock_status());
@ -1121,7 +1121,7 @@ void fATSL(void *arg) {
{
if (argc == 3) {
lock_id = strtoul(argv[2], NULL, 16);
pmu_release_wakelock(lock_id);
release_wakelock(lock_id);
}
AT_DBG_MSG(AT_FLAG_OS, AT_DBG_ALWAYS, "[ATSL] wakelock:0x%08x",
pmu_get_wakelock_status());

View file

@ -427,7 +427,7 @@ void log_service(void *param)
log_service_unlock();
#endif
#if defined(configUSE_WAKELOCK_PMU) && (configUSE_WAKELOCK_PMU == 1)
pmu_release_wakelock(WAKELOCK_LOGUART);
release_wakelock(WAKELOCK_LOGUART);
#endif
}
}

View file

@ -13,7 +13,12 @@
#endif
#include <osdep_service.h>
#include "sdk_ver.h"
#if SDK_VER_NUM < 0x4000
#define USE_WIFI_ADAPTER 1 // использовать прямое обращение в тело драйвера WiFi
#else
#define USE_WIFI_ADAPTER 0 // не использовать прямое обращение в тело драйвера WiFi (ещё не согласована struct adapter)
#endif
int iw_ioctl(const char * ifname, unsigned long request, struct iwreq * pwrq) {
memcpy(pwrq->ifr_name, ifname, 5);
@ -32,7 +37,7 @@ int iw_ioctl(const char * ifname, unsigned long request, struct iwreq * pwrq) {
return ret;
}
#ifdef USE_WIFI_ADAPTER
#if USE_WIFI_ADAPTER
extern Rltk_wlan_t rltk_wlan_info[2]; // in wrapper.h
LOCAL _adapter * get_padapter(const char *ifname) {
if(ifname[4] == '0') {
@ -46,7 +51,7 @@ LOCAL _adapter * get_padapter(const char *ifname) {
/* ssid = NULL -> not connected */
int wext_get_ssid(const char *ifname, __u8 *ssid) {
#ifdef USE_WIFI_ADAPTER
#if USE_WIFI_ADAPTER
_adapter * pad = get_padapter(ifname);
rtw_result_t ret = RTW_ERROR;
if(pad != NULL && (pad->mlmepriv.fw_state & 0x41) != 0) {
@ -250,7 +255,7 @@ int wext_get_mac_address(const char *ifname, char * mac)
#endif
int wext_enable_powersave(const char *ifname, __u8 ips_mode, __u8 lps_mode) {
#ifdef USE_WIFI_ADAPTER
#if USE_WIFI_ADAPTER
_adapter * pad = get_padapter(ifname);
rtw_result_t ret = RTW_ERROR;
if(pad) {
@ -303,7 +308,7 @@ int wext_disable_powersave(const char *ifname) {
int wext_set_tdma_param(const char *ifname, __u8 slot_period,
__u8 rfon_period_len_1, __u8 rfon_period_len_2, __u8 rfon_period_len_3) {
#ifdef USE_WIFI_ADAPTER
#if USE_WIFI_ADAPTER
_adapter * pad = get_padapter(ifname);
rtw_result_t ret = RTW_ERROR;
if(pad) {
@ -336,7 +341,7 @@ int wext_set_tdma_param(const char *ifname, __u8 slot_period,
}
int wext_set_lps_dtim(const char *ifname, __u8 lps_dtim) {
#ifdef USE_WIFI_ADAPTER
#if USE_WIFI_ADAPTER
_adapter * pad = get_padapter(ifname);
rtw_result_t ret = RTW_ERROR;
if(pad) {
@ -365,7 +370,7 @@ int wext_set_lps_dtim(const char *ifname, __u8 lps_dtim) {
}
int wext_get_lps_dtim(const char *ifname, __u8 *lps_dtim) {
#ifdef USE_WIFI_ADAPTER
#if USE_WIFI_ADAPTER
_adapter * pad = get_padapter(ifname);
rtw_result_t ret = RTW_ERROR;
if(pad) {
@ -506,7 +511,7 @@ int wext_get_ap_info(const char *ifname, rtw_bss_info_t * ap_info,
#endif
int wext_set_mode(const char *ifname, int mode) {
#ifdef USE_WIFI_ADAPTER
#if USE_WIFI_ADAPTER
_adapter * pad = get_padapter(ifname);
int nwm;
if(rtw_pwr_wakeup(pad) && pad->hw_init_completed) {
@ -540,7 +545,7 @@ int wext_set_mode(const char *ifname, int mode) {
}
int wext_get_mode(const char *ifname, int *mode) {
#ifdef USE_WIFI_ADAPTER
#if USE_WIFI_ADAPTER
_adapter * pad = get_padapter(ifname);
rtw_result_t ret = RTW_ERROR;
if(pad) {
@ -563,7 +568,7 @@ int wext_get_mode(const char *ifname, int *mode) {
}
int wext_set_ap_ssid(const char *ifname, const __u8 *ssid, __u16 ssid_len) {
#ifdef USE_WIFI_ADAPTER
#if USE_WIFI_ADAPTER
struct net_device * pdev = rltk_wlan_info[0].dev;
if(ifname[4] != '0')
pdev = rltk_wlan_info[1].dev;
@ -593,7 +598,7 @@ int wext_set_country(const char *ifname, rtw_country_code_t country_code) {
}
int wext_get_rssi(const char *ifname, int *rssi) {
#ifdef USE_WIFI_ADAPTER
#if USE_WIFI_ADAPTER
_adapter * pad = get_padapter(ifname);
rtw_result_t ret = RTW_ERROR;
if(pad) {
@ -671,7 +676,7 @@ int wext_set_channel(const char *ifname, __u8 ch) {
}
int wext_get_channel(const char *ifname, __u8 *ch) {
#ifdef USE_WIFI_ADAPTER
#if USE_WIFI_ADAPTER
_adapter * pad = get_padapter(ifname);
rtw_result_t ret = RTW_ERROR;
if(pad) {

View file

@ -248,16 +248,16 @@ LOCAL uint8 chk_ap_netif_num(void)
extern Rltk_wlan_t rltk_wlan_info[2]; // in wrapper.h
/*LOCAL _adapter * get_padapter(int num) {
/*LOCAL _adapter * get_padaptern(int num) {
if(rltk_wlan_info[num].enable) {
return *(_adapter **)((rltk_wlan_info[0].dev)->priv);
}
return NULL;
};*/
#define get_padapter(num) (*(_adapter **)((rltk_wlan_info[num].dev)->priv));
#define get_padaptern(num) (*(_adapter **)((rltk_wlan_info[num].dev)->priv));
LOCAL rtw_result_t _wext_set_lps_dtim(int adapter_num, uint8 lps_dtim ) {
_adapter * pad = get_padapter(adapter_num);
rtw_result_t _wext_set_lps_dtim(int adapter_num, uint8 lps_dtim ) {
_adapter * pad = get_padaptern(adapter_num);
rtw_result_t ret = RTW_ERROR;
if(pad) {
ret = rtw_pm_set_lps_dtim(pad, lps_dtim);
@ -265,8 +265,13 @@ LOCAL rtw_result_t _wext_set_lps_dtim(int adapter_num, uint8 lps_dtim ) {
return ret;
}
LOCAL rtw_result_t _wext_enable_powersave(int adapter_num, uint8 ips_mode, uint8 lps_mode) {
_adapter * pad = get_padapter(adapter_num);
int _wext_get_lps_dtim(int adapter_num) {
_adapter * pad = get_padaptern(adapter_num);
return rtw_pm_get_lps_dtim(pad);
}
rtw_result_t _wext_enable_powersave(int adapter_num, uint8 ips_mode, uint8 lps_mode) {
_adapter * pad = get_padaptern(adapter_num);
rtw_result_t ret = RTW_ERROR;
if(pad) {
ret = rtw_pm_set_ips(pad, ips_mode); // 2 режима 1,2 !
@ -280,7 +285,7 @@ LOCAL rtw_result_t _wext_enable_powersave(int adapter_num, uint8 ips_mode, uint8
LOCAL int _wext_cmp_ssid(int adapter_num, uint8 *ssid)
{
_adapter * pad = get_padapter(adapter_num);
_adapter * pad = get_padaptern(adapter_num);
int ret = 0;
if((pad != NULL) && (pad->mlmepriv.fw_state & 0x41) != 0) {
int len = pad->mlmepriv.cur_network.network.Ssid.SsidLength;
@ -295,7 +300,7 @@ LOCAL int _wext_cmp_ssid(int adapter_num, uint8 *ssid)
#ifdef NOT_USE_CALLS
LOCAL rtw_result_t _wext_get_mode(int adapter_num, int *mode) {
_adapter * pad = get_padapter(adapter_num);
_adapter * pad = get_padaptern(adapter_num);
rtw_result_t ret = RTW_ERROR;
if(pad) {
uint16 f = pad->mlmepriv.fw_state;
@ -310,7 +315,7 @@ LOCAL rtw_result_t _wext_get_mode(int adapter_num, int *mode) {
LOCAL rtw_result_t _wext_get_channel(int adapter_num, uint8 *ch)
{
_adapter * pad = get_padapter(adapter_num);
_adapter * pad = get_padaptern(adapter_num);
rtw_result_t ret = RTW_ERROR;
if(pad) {
if(pad->mlmepriv.fw_state & 1) {

View file

@ -185,4 +185,8 @@ rtw_result_t api_wifi_scan(api_scan_result_handler_t scan_result_cb);
void wifi_close_scan(void);
rtw_result_t _wext_set_lps_dtim(int adapter_num, uint8 lps_dtim);
int _wext_get_lps_dtim(int adapter_num);
rtw_result_t _wext_enable_powersave(int adapter_num, uint8 ips_mode, uint8 lps_mode);
#endif // _WIFI_API_H_