80 lines
2.0 KiB
C
80 lines
2.0 KiB
C
|
|
#ifndef _PROJECT_SYSCFG_H_
|
|||
|
|
#define _PROJECT_SYSCFG_H_
|
|||
|
|
|
|||
|
|
enum WIFI_WORK_MODE {
|
|||
|
|
WIFI_MODE_NONE = 0,
|
|||
|
|
WIFI_MODE_STA,
|
|||
|
|
WIFI_MODE_AP,
|
|||
|
|
WIFI_MODE_APSTA,
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
/* 系统状态信息 */
|
|||
|
|
struct system_status {
|
|||
|
|
uint32 dhcpc_done: 1,
|
|||
|
|
wifi_connected: 1,
|
|||
|
|
dbg_heap: 1,
|
|||
|
|
dbg_top: 2,
|
|||
|
|
dbg_lmac: 1,
|
|||
|
|
dbg_umac: 1,
|
|||
|
|
dbg_irq: 1,
|
|||
|
|
upgrading: 1,
|
|||
|
|
dbg_cache: 1,
|
|||
|
|
dbg_net: 1;
|
|||
|
|
int8 rssi;
|
|||
|
|
int8 evm;
|
|||
|
|
uint8 channel;
|
|||
|
|
uint8 wifi_mode;
|
|||
|
|
int8 pair_role;
|
|||
|
|
uint8 bssid[6];
|
|||
|
|
uint16 wifi_status_code;
|
|||
|
|
uint16 wifi_reason_code;
|
|||
|
|
struct {
|
|||
|
|
uint32 ipaddr, netmask, svrip, router, dns1, dns2, last_router;
|
|||
|
|
} dhcpc_result;
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
/* 系统参数信息 */
|
|||
|
|
struct sys_config {
|
|||
|
|
/******* 参数区头部: 这部分区域不能修改 *****/
|
|||
|
|
uint16 magic_num, crc;
|
|||
|
|
uint16 size, rev1, rev2, rev3;
|
|||
|
|
/*******************************************/
|
|||
|
|
|
|||
|
|
uint8 wifi_mode, bss_bw, tx_mcs, channel;
|
|||
|
|
uint8 bssid[6], mac[6];
|
|||
|
|
uint8 ssid[SSID_MAX_LEN + 1];
|
|||
|
|
uint8 psk[32];
|
|||
|
|
uint8 passwd[PASSWD_MAX_LEN + 1];
|
|||
|
|
uint8 wifi_hwmode;
|
|||
|
|
uint16 bss_max_idle, beacon_int;
|
|||
|
|
uint16 ack_tmo, dtim_period;
|
|||
|
|
uint32 key_mgmt;
|
|||
|
|
|
|||
|
|
/*标识位*/
|
|||
|
|
uint32 dhcpc_en: 1,
|
|||
|
|
dhcpd_en: 1,
|
|||
|
|
use4addr: 1,
|
|||
|
|
cfg_init: 1,
|
|||
|
|
ap_hide: 1,
|
|||
|
|
xxxxxx: 27;
|
|||
|
|
|
|||
|
|
uint32 ipaddr, netmask, gw_ip;
|
|||
|
|
uint32 dhcpd_startip, dhcpd_endip, dhcpd_lease_time, dhcpd_dns1, dhcpd_dns2, dhcpd_router;
|
|||
|
|
|
|||
|
|
/* 只能在后面添加参数,保证参数区的兼容性 *****
|
|||
|
|
* 添加参数注意对齐,避免浪费Memory空间 ******/
|
|||
|
|
uint32 mipi_csi0_hs_zero_cnt : 16, mipi_csi1_hs_zero_cnt : 16;
|
|||
|
|
uint32 mipi_csi0_sensor_id : 8, mipi_csi1_sensor_id : 8, reserved : 16;
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
extern struct sys_config sys_cfgs;
|
|||
|
|
extern struct system_status sys_status;
|
|||
|
|
|
|||
|
|
void syscfg_default(void);
|
|||
|
|
int32 wificfg_flush(uint8 ifidx);
|
|||
|
|
void syscfg_check(void);
|
|||
|
|
void syscfg_dump(void);
|
|||
|
|
void netcfg_flush(void);
|
|||
|
|
#endif
|
|||
|
|
|