/* * Copyright (c) 2015 South Silicon Valley Microelectronics Inc. * Copyright (c) 2015 iComm Corporation * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * See the GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #ifndef _CFG_H_ #define _CFG_H_ #include #define SAR_XTAL_INDEX (0) #define SAR_TXGAIN_INDEX (1) #define THERMAL_MONITOR_TIME (10 * HZ) #define DEFAULT_CFG_BIN_NAME "/tmp/flash.bin" #define SEC_CFG_BIN_NAME "/system/etc/wifi/ssv6051/flash.bin" enum { SAR_LVL_LT, SAR_LVL_RT, SAR_LVL_HT, SAR_LVL_INVALID }; struct flash_thermal_info { u32 rt; u32 lt; u32 ht; u8 lt_ts; u8 ht_ts; u16 reserve; }; typedef struct t_WIFI_FLASH_CCFG { //16bytes u16 chip_id; u16 sid; u32 date; u16 version; u16 reserve_1; u32 reserve_2; //16bytes struct flash_thermal_info sar_rlh[2]; #if 0 u32 x_rt; u32 x_lt; u32 x_ht; u8 x_tt_lt; u8 x_tt_ht; u16 reserve_3; //16bytes u32 g_rt; u32 g_lt; u32 g_ht; u8 g_tt_lt; u8 g_tt_ht; u16 reserve_4; #endif } WIFI_FLASH_CCFG; struct t_sar_info { u32 lvl; u32 value; struct flash_thermal_info *p; }; void thermal_monitor(struct work_struct *work); int get_flash_info(struct ssv_softc *sc); void flash_hexdump(void); #endif