mirror of
https://github.com/Ai-Thinker-Open/Ai-Thinker-Open_RTL8710BX_ALIOS_SDK.git
synced 2026-07-09 03:55:37 +00:00
rel_1.6.0 init
This commit is contained in:
commit
27b3e2883d
19359 changed files with 8093121 additions and 0 deletions
16
Living_SDK/kernel/hal/hal.mk
Normal file
16
Living_SDK/kernel/hal/hal.mk
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
NAME := hal
|
||||
|
||||
$(NAME)_TYPE := kernel
|
||||
$(NAME)_MBINS_TYPE := kernel
|
||||
|
||||
$(NAME)_SOURCES := wifi.c
|
||||
$(NAME)_SOURCES += ota.c
|
||||
|
||||
#default gcc
|
||||
ifeq ($(COMPILER),)
|
||||
$(NAME)_CFLAGS += -Wall -Werror
|
||||
else ifeq ($(COMPILER),gcc)
|
||||
$(NAME)_CFLAGS += -Wall -Werror
|
||||
endif
|
||||
|
||||
GLOBAL_DEFINES += AOS_HAL
|
||||
63
Living_SDK/kernel/hal/ota.c
Normal file
63
Living_SDK/kernel/hal/ota.c
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
/*
|
||||
* Copyright (C) 2015-2017 Alibaba Group Holding Limited
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <hal/hal.h>
|
||||
|
||||
static hal_ota_module_t *ota_module;
|
||||
|
||||
hal_ota_module_t *hal_ota_get_default_module(void)
|
||||
{
|
||||
return ota_module;
|
||||
}
|
||||
|
||||
void hal_ota_register_module(hal_ota_module_t *module)
|
||||
{
|
||||
ota_module = module;
|
||||
}
|
||||
|
||||
hal_stat_t hal_ota_init(void *something)
|
||||
{
|
||||
return ota_module->init(ota_module, something);
|
||||
}
|
||||
|
||||
hal_stat_t hal_ota_write(hal_ota_module_t *m, volatile uint32_t *off_set, uint8_t *in_buf , uint32_t in_buf_len)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_ota_get_default_module();
|
||||
}
|
||||
|
||||
if (m != NULL && m->ota_write != NULL) {
|
||||
return m->ota_write(m, off_set, in_buf, in_buf_len);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
hal_stat_t hal_ota_read(hal_ota_module_t *m, volatile uint32_t *off_set, uint8_t *out_buf, uint32_t out_buf_len)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_ota_get_default_module();
|
||||
}
|
||||
|
||||
if (m != NULL && m->ota_read != NULL) {
|
||||
return m->ota_read(m, off_set, out_buf, out_buf_len);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
hal_stat_t hal_ota_set_boot(hal_ota_module_t *m, void *something)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_ota_get_default_module();
|
||||
}
|
||||
|
||||
if (m != NULL && m->ota_set_boot != NULL) {
|
||||
return m->ota_set_boot(m, something);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
7
Living_SDK/kernel/hal/ucube.py
Normal file
7
Living_SDK/kernel/hal/ucube.py
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
src = Split('''
|
||||
wifi.c
|
||||
ota.c
|
||||
''')
|
||||
component = aos_component('hal', src)
|
||||
|
||||
component.add_global_macros('AOS_HAL')
|
||||
334
Living_SDK/kernel/hal/wifi.c
Executable file
334
Living_SDK/kernel/hal/wifi.c
Executable file
|
|
@ -0,0 +1,334 @@
|
|||
/*
|
||||
* Copyright (C) 2015-2017 Alibaba Group Holding Limited
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <hal/hal.h>
|
||||
|
||||
static AOS_DLIST_HEAD(g_wifi_module);
|
||||
|
||||
hal_wifi_module_t *hal_wifi_get_default_module(void)
|
||||
{
|
||||
hal_wifi_module_t *m = 0;
|
||||
|
||||
if (dlist_empty(&g_wifi_module)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
m = dlist_first_entry(&g_wifi_module, hal_wifi_module_t, base.list);
|
||||
|
||||
return m;
|
||||
}
|
||||
|
||||
void hal_wifi_register_module(hal_wifi_module_t *module)
|
||||
{
|
||||
dlist_add_tail(&module->base.list, &g_wifi_module);
|
||||
|
||||
}
|
||||
|
||||
int hal_wifi_init(void)
|
||||
{
|
||||
int err = 0;
|
||||
dlist_t *t;
|
||||
|
||||
/* do low level init */
|
||||
dlist_for_each(t, &g_wifi_module) {
|
||||
hal_wifi_module_t *m = (hal_wifi_module_t *)t;
|
||||
#if ((WIFI_CONFIG_SUPPORT_LOWPOWER > 0) && (WIFI_CONFIG_LISTENSET_BINIT > 0))
|
||||
m->set_listeninterval(m, WIFI_CONFIG_LISTEN_INTERVAL);
|
||||
#endif
|
||||
m->init(m);
|
||||
#if ((WIFI_CONFIG_SUPPORT_LOWPOWER > 0) && (WIFI_CONFIG_LISTENSET_BINIT == 0))
|
||||
m->set_listeninterval(m, WIFI_CONFIG_LISTEN_INTERVAL);
|
||||
#endif
|
||||
}
|
||||
|
||||
return err;
|
||||
}
|
||||
|
||||
int hal_wifi_get_mac_addr(hal_wifi_module_t *m, uint8_t *mac)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
if (m && m->get_mac_addr) {
|
||||
m->get_mac_addr(m, mac);
|
||||
return 0;
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
int hal_wifi_set_mac_addr(hal_wifi_module_t *m, const uint8_t *mac)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
if (m && m->set_mac_addr) {
|
||||
m->set_mac_addr(m, mac);
|
||||
return 0;
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
int hal_wifi_start(hal_wifi_module_t *m, hal_wifi_init_type_t *init_para)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
if (m == NULL)
|
||||
return -1;
|
||||
|
||||
return m->start(m, init_para);
|
||||
}
|
||||
|
||||
int hal_wifi_start_adv(hal_wifi_module_t *m, hal_wifi_init_type_adv_t *init_para_adv)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
return m->start_adv(m, init_para_adv);
|
||||
}
|
||||
|
||||
int hal_wifi_get_ip_stat(hal_wifi_module_t *m, hal_wifi_ip_stat_t *out_net_para, hal_wifi_type_t wifi_type)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
return m->get_ip_stat(m, out_net_para, wifi_type);
|
||||
}
|
||||
|
||||
int hal_wifi_get_link_stat(hal_wifi_module_t *m, hal_wifi_link_stat_t *out_stat)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
return m->get_link_stat(m, out_stat);
|
||||
}
|
||||
|
||||
void hal_wifi_start_scan(hal_wifi_module_t *m)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
m->start_scan(m);
|
||||
}
|
||||
|
||||
void hal_wifi_start_scan_adv(hal_wifi_module_t *m)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
m->start_scan_adv(m);
|
||||
}
|
||||
|
||||
void hal_wifi_start_scan_direct(hal_wifi_module_t *m)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
if (m->start_scan_direct) m->start_scan_direct(m);
|
||||
}
|
||||
|
||||
int hal_wifi_power_off(hal_wifi_module_t *m)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
return m->power_off(m);
|
||||
}
|
||||
|
||||
int hal_wifi_power_on(hal_wifi_module_t *m)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
return m->power_on(m);
|
||||
}
|
||||
|
||||
int hal_wifi_suspend(hal_wifi_module_t *m)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
return m->suspend(m);
|
||||
}
|
||||
|
||||
int hal_wifi_suspend_station(hal_wifi_module_t *m)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
return m->suspend_station(m);
|
||||
}
|
||||
|
||||
int hal_wifi_suspend_soft_ap(hal_wifi_module_t *m)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
return m->suspend_soft_ap(m);
|
||||
}
|
||||
|
||||
int hal_wifi_set_channel(hal_wifi_module_t *m, int ch)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
return m->set_channel(m, ch);
|
||||
}
|
||||
|
||||
int hal_wifi_get_channel(hal_wifi_module_t *m)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
return m->get_channel(m);
|
||||
}
|
||||
|
||||
int hal_wifi_get_channel_list(hal_wifi_module_t *m, const uint8_t **chnlist)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
return m->get_channel_list(m, chnlist);
|
||||
}
|
||||
|
||||
void hal_wifi_start_wifi_monitor(hal_wifi_module_t *m)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
m->start_monitor(m);
|
||||
}
|
||||
|
||||
void hal_wifi_stop_wifi_monitor(hal_wifi_module_t *m)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
m->stop_monitor(m);
|
||||
}
|
||||
|
||||
void hal_wifi_register_monitor_cb(hal_wifi_module_t *m, monitor_data_cb_t fn)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
m->register_monitor_cb(m, fn);
|
||||
}
|
||||
|
||||
void hal_wifi_install_event(hal_wifi_module_t *m, const hal_wifi_event_cb_t *cb)
|
||||
{
|
||||
if (NULL == m)
|
||||
return;
|
||||
m->ev_cb = cb;
|
||||
}
|
||||
|
||||
void hal_wlan_register_mgnt_monitor_cb(hal_wifi_module_t *m, monitor_data_cb_t fn)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
m->register_wlan_mgnt_monitor_cb(m, fn);
|
||||
}
|
||||
|
||||
int hal_wlan_send_80211_raw_frame(hal_wifi_module_t *m, uint8_t *buf, int len)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
return m->wlan_send_80211_raw_frame(m, buf, len);
|
||||
}
|
||||
|
||||
void hal_wifi_start_debug_mode(hal_wifi_module_t *m)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
if (m->start_debug_mode == NULL) {
|
||||
return;
|
||||
}
|
||||
|
||||
m->start_debug_mode(m);
|
||||
}
|
||||
|
||||
void hal_wifi_stop_debug_mode(hal_wifi_module_t *m)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
if (m->stop_debug_mode == NULL) {
|
||||
return;
|
||||
}
|
||||
|
||||
m->stop_debug_mode(m);
|
||||
}
|
||||
|
||||
#if (WIFI_CONFIG_SUPPORT_LOWPOWER > 0)
|
||||
|
||||
int hal_wifi_set_listeninterval(hal_wifi_module_t *m, uint8_t listen_interval)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
if (m->set_listeninterval == NULL) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
return m->set_listeninterval(m, listen_interval);
|
||||
}
|
||||
|
||||
int hal_wifi_enter_powersave(hal_wifi_module_t *m, uint8_t recvDTIMs)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
if (m->enter_powersave == NULL) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
return m->enter_powersave(m, recvDTIMs);
|
||||
}
|
||||
|
||||
int hal_wifi_exit_powersave(hal_wifi_module_t *m)
|
||||
{
|
||||
if (m == NULL) {
|
||||
m = hal_wifi_get_default_module();
|
||||
}
|
||||
|
||||
if (m->exit_powersave == NULL) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
return m->exit_powersave(m);
|
||||
}
|
||||
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue