mirror of https://github.com/ARMmbed/mbed-os.git
387 lines
11 KiB
C
387 lines
11 KiB
C
/**
|
|
Copyright (c) 2016 Realtek Semiconductor Corp.
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
|
|
******************************************************************************
|
|
*This file contains general configurations for ameba platform
|
|
******************************************************************************
|
|
*/
|
|
|
|
#ifndef __PLATFORM_OPTS_H__
|
|
#define __PLATFORM_OPTS_H__
|
|
|
|
/*For MP mode setting*/
|
|
#define SUPPORT_MP_MODE 1
|
|
|
|
/**
|
|
* For AT cmd Log service configurations
|
|
*/
|
|
#define SUPPORT_LOG_SERVICE 1
|
|
#if SUPPORT_LOG_SERVICE
|
|
#define LOG_SERVICE_BUFLEN 100 //can't larger than UART_LOG_CMD_BUFLEN(127)
|
|
#define CONFIG_LOG_HISTORY 0
|
|
#if CONFIG_LOG_HISTORY
|
|
#define LOG_HISTORY_LEN 5
|
|
#endif
|
|
#define SUPPORT_INTERACTIVE_MODE 0//on/off wifi_interactive_mode
|
|
#define CONFIG_LOG_SERVICE_LOCK 0
|
|
|
|
#define CONFIG_LOG_USE_HS_UART 0 //command/log via highspeed uart
|
|
#define CONFIG_LOG_USE_I2C 0 //command/log via I2C
|
|
#endif
|
|
|
|
/**
|
|
* For interactive mode configurations, depends on log service
|
|
*/
|
|
#if SUPPORT_INTERACTIVE_MODE
|
|
#define CONFIG_INTERACTIVE_MODE 1
|
|
#define CONFIG_INTERACTIVE_EXT 0
|
|
#else
|
|
#define CONFIG_INTERACTIVE_MODE 0
|
|
#define CONFIG_INTERACTIVE_EXT 0
|
|
#endif
|
|
|
|
/**
|
|
* For FreeRTOS tickless configurations
|
|
*/
|
|
#define FREERTOS_PMU_TICKLESS_PLL_RESERVED 0 // In sleep mode, 0: close PLL clock, 1: reserve PLL clock
|
|
#define FREERTOS_PMU_TICKLESS_SUSPEND_SDRAM 1 // In sleep mode, 1: suspend SDRAM, 0: no act
|
|
|
|
/******************************************************************************/
|
|
|
|
/**
|
|
* For common flash usage
|
|
*/
|
|
#define AP_SETTING_SECTOR 0x000FE000
|
|
#define UART_SETTING_SECTOR 0x000FC000
|
|
#define FAST_RECONNECT_DATA (0x80000 - 0x1000)
|
|
|
|
/**
|
|
* For Wlan configurations
|
|
*/
|
|
#define CONFIG_WLAN 1
|
|
#if CONFIG_WLAN
|
|
#define CONFIG_LWIP_LAYER 1
|
|
#define CONFIG_INIT_NET 1 //init lwip layer when start up
|
|
#define CONFIG_WIFI_IND_USE_THREAD 0 // wifi indicate worker thread
|
|
|
|
//on/off relative commands in log service
|
|
#define CONFIG_SSL_CLIENT 0
|
|
#define CONFIG_WEBSERVER 0
|
|
#define CONFIG_OTA_UPDATE 1
|
|
#define CONFIG_BSD_TCP 0//NOTE : Enable CONFIG_BSD_TCP will increase about 11KB code size
|
|
#define CONFIG_AIRKISS 0//on or off tencent airkiss
|
|
#define CONFIG_UART_SOCKET 0
|
|
#define CONFIG_JD_SMART 0//on or off for jdsmart
|
|
#define CONFIG_JOYLINK 0//on or off for jdsmart2.0
|
|
#define CONFIG_QQ_LINK 0//on or off for qqlink
|
|
#define CONFIG_AIRKISS_CLOUD 0//on or off for weixin hardware cloud
|
|
#define CONFIG_UART_YMODEM 0//support uart ymodem upgrade or not
|
|
#define CONFIG_GOOGLE_NEST 0//on or off the at command control for google nest
|
|
#define CONFIG_TRANSPORT 0//on or off the at command for transport socket
|
|
#define CONFIG_ALINK 0//on or off for alibaba alink
|
|
|
|
/* For WPS and P2P */
|
|
#define CONFIG_ENABLE_WPS 0
|
|
#define CONFIG_ENABLE_P2P 0
|
|
#if CONFIG_ENABLE_P2P
|
|
#define CONFIG_ENABLE_WPS_AP 1
|
|
#undef CONFIG_WIFI_IND_USE_THREAD
|
|
#define CONFIG_WIFI_IND_USE_THREAD 1
|
|
#endif
|
|
#if (CONFIG_ENABLE_P2P && ((CONFIG_ENABLE_WPS_AP == 0) || (CONFIG_ENABLE_WPS == 0)))
|
|
#error "If CONFIG_ENABLE_P2P, need to define CONFIG_ENABLE_WPS_AP 1"
|
|
#endif
|
|
|
|
/* For Simple Link */
|
|
#define CONFIG_INCLUDE_SIMPLE_CONFIG 1
|
|
|
|
/*For fast reconnection*/
|
|
#define CONFIG_EXAMPLE_WLAN_FAST_CONNECT 0
|
|
|
|
/*For wowlan service settings*/
|
|
#define CONFIG_WOWLAN_SERVICE 0
|
|
|
|
#define CONFIG_GAGENT 0
|
|
/*Disable CONFIG_EXAMPLE_WLAN_FAST_CONNECT when CONFIG_GAGENT is enabled,because
|
|
reconnect to previous AP is not suitable when re-configuration.
|
|
*/
|
|
#if CONFIG_GAGENT
|
|
#define CONFIG_EXAMPLE_WLAN_FAST_CONNECT 0
|
|
#endif
|
|
|
|
|
|
#endif //end of #if CONFIG_WLAN
|
|
/*******************************************************************************/
|
|
|
|
/**
|
|
* For Ethernet configurations
|
|
*/
|
|
#define CONFIG_ETHERNET 0
|
|
#if CONFIG_ETHERNET
|
|
|
|
#define CONFIG_LWIP_LAYER 1
|
|
#define CONFIG_INIT_NET 1 //init lwip layer when start up
|
|
|
|
//on/off relative commands in log service
|
|
#define CONFIG_SSL_CLIENT 0
|
|
#define CONFIG_BSD_TCP 0//NOTE : Enable CONFIG_BSD_TCP will increase about 11KB code size
|
|
|
|
#endif
|
|
|
|
|
|
/**
|
|
* For iNIC configurations
|
|
*/
|
|
#ifdef CONFIG_INIC //this flag is defined in IAR project
|
|
#define CONFIG_INIC_EN 1//enable iNIC mode
|
|
#undef CONFIG_ENABLE_WPS
|
|
#define CONFIG_ENABLE_WPS 1
|
|
#undef CONFIG_INCLUDE_SIMPLE_CONFIG
|
|
#define CONFIG_INCLUDE_SIMPLE_CONFIG 1
|
|
#undef CONFIG_WOWLAN_SERVICE
|
|
#define CONFIG_WOWLAN_SERVICE 1
|
|
#undef LOG_SERVICE_BUFLEN
|
|
#define LOG_SERVICE_BUFLEN 256
|
|
#undef CONFIG_LWIP_LAYER
|
|
#define CONFIG_LWIP_LAYER 0
|
|
#undef CONFIG_OTA_UPDATE
|
|
#define CONFIG_OTA_UPDATE 0
|
|
#undef CONFIG_EXAMPLE_WLAN_FAST_CONNECT
|
|
#define CONFIG_EXAMPLE_WLAN_FAST_CONNECT 0
|
|
#define CONFIG_INIC_SDIO_HCI 1 //for SDIO or USB iNIC
|
|
#define CONFIG_INIC_USB_HCI 0
|
|
#define CONFIG_INIC_CMD_RSP 1 //need to return msg to host
|
|
#endif
|
|
/******************End of iNIC configurations*******************/
|
|
|
|
/* For aj_basic_example */
|
|
#define CONFIG_EXAMPLE_AJ_BASIC 0
|
|
|
|
/*For aj_ameba_led example*/
|
|
#define CONFIG_EXAMPLE_AJ_AMEBA_LED 0
|
|
|
|
/* For WIFI GET BEACON FRAME example */
|
|
#define CONFIG_EXAMPLE_GET_BEACON_FRAME 0
|
|
|
|
/* For WIFI MAC MONITOR example */
|
|
#define CONFIG_EXAMPLE_WIFI_MAC_MONITOR 0
|
|
|
|
/* For HTTP CLIENT example */
|
|
#define CONFIG_EXAMPLE_HTTP_CLIENT 0
|
|
|
|
/* For MQTT example */
|
|
#define CONFIG_EXAMPLE_MQTT 0
|
|
|
|
/* For WiGadget example */
|
|
#define CONFIG_EXAMPLE_WIGADGET 0
|
|
|
|
/*For google nest example*/
|
|
#define CONFIG_EXAMPLE_GOOGLE_NEST 0
|
|
|
|
/* For mDNS example */
|
|
#define CONFIG_EXAMPLE_MDNS 0
|
|
|
|
/* For multicast example */
|
|
#define CONFIG_EXAMPLE_MCAST 0
|
|
|
|
/* For XML example */
|
|
#define CONFIG_EXAMPLE_XML 0
|
|
|
|
/* For socket select example */
|
|
#define CONFIG_EXAMPLE_SOCKET_SELECT 0
|
|
|
|
/* For socket nonblocking connect example */
|
|
#define CONFIG_EXAMPLE_NONBLOCK_CONNECT 0
|
|
|
|
/* For socket TCP bidirectional transmission example */
|
|
#define CONFIG_EXAMPLE_SOCKET_TCP_TRX 0
|
|
|
|
/* For ssl download example */
|
|
#define CONFIG_EXAMPLE_SSL_DOWNLOAD 0
|
|
|
|
/* For http download example */
|
|
#define CONFIG_EXAMPLE_HTTP_DOWNLOAD 0
|
|
|
|
/* For tcp keepalive example */
|
|
#define CONFIG_EXAMPLE_TCP_KEEPALIVE 0
|
|
|
|
/* For sntp show time example */
|
|
#define CONFIG_EXAMPLE_SNTP_SHOWTIME 0
|
|
|
|
/* For pppoe example */
|
|
#define CONFIG_EXAMPLE_PPPOE 0
|
|
|
|
/* For websocket client example */
|
|
#define CONFIG_EXAMPLE_WEBSOCKET 0
|
|
|
|
/*For Audio example */
|
|
#define CONFIG_EXAMPLE_AUDIO 0
|
|
#if CONFIG_EXAMPLE_AUDIO
|
|
#define FATFS_DISK_SD 1
|
|
#define CONFIG_EXAMPLE_CODEC_SGTL5000 1
|
|
#endif
|
|
|
|
/* For UART Module AT command example */
|
|
#define CONFIG_EXAMPLE_UART_ATCMD 0
|
|
#if CONFIG_EXAMPLE_UART_ATCMD
|
|
#undef FREERTOS_PMU_TICKLESS_PLL_RESERVED
|
|
#define FREERTOS_PMU_TICKLESS_PLL_RESERVED 1
|
|
#undef CONFIG_OTA_UPDATE
|
|
#define CONFIG_OTA_UPDATE 1
|
|
#undef CONFIG_TRANSPORT
|
|
#define CONFIG_TRANSPORT 1
|
|
#undef LOG_SERVICE_BUFLEN
|
|
#define LOG_SERVICE_BUFLEN 1600
|
|
#undef CONFIG_LOG_SERVICE_LOCK
|
|
#define CONFIG_LOG_SERVICE_LOCK 1
|
|
#undef CONFIG_EXAMPLE_WLAN_FAST_CONNECT
|
|
#define CONFIG_EXAMPLE_WLAN_FAST_CONNECT 0
|
|
#endif
|
|
|
|
#define CONFIG_EXAMPLE_MEDIA_SS 0
|
|
#define CONFIG_EXAMPLE_MEDIA_MS 0
|
|
#define CONFIG_EXAMPLE_MEDIA_AUDIO_FROM_RTP 0
|
|
// Use media source/sink example
|
|
#if (CONFIG_EXAMPLE_MEDIA_SS==1) || (CONFIG_EXAMPLE_MEDIA_MS==1)
|
|
#undef CONFIG_INCLUDE_SIMPLE_CONFIG
|
|
#define CONFIG_INCLUDE_SIMPLE_CONFIG 0
|
|
#define CONFIG_ENABLE_WPS 0
|
|
#endif
|
|
|
|
/* For Mjpeg capture example*/
|
|
#define CONFIG_EXAMPLE_MJPEG_CAPTURE 0
|
|
#if CONFIG_EXAMPLE_MJPEG_CAPTURE
|
|
#define FATFS_DISK_SD 1
|
|
#endif
|
|
|
|
/****************** For EAP method example *******************/
|
|
#define CONFIG_EXAMPLE_EAP 0
|
|
|
|
// on/off specified eap method
|
|
#define CONFIG_ENABLE_PEAP 0
|
|
#define CONFIG_ENABLE_TLS 0
|
|
#define CONFIG_ENABLE_TTLS 0
|
|
|
|
// optional feature: whether to verify the cert of radius server
|
|
#define ENABLE_EAP_SSL_VERIFY_SERVER 0
|
|
|
|
#if CONFIG_ENABLE_PEAP || CONFIG_ENABLE_TLS || CONFIG_ENABLE_TTLS
|
|
#define CONFIG_ENABLE_EAP
|
|
#define CONFIG_EXAMPLE_WLAN_FAST_CONNECT 0
|
|
#endif
|
|
|
|
#if CONFIG_ENABLE_TLS
|
|
#define ENABLE_EAP_SSL_VERIFY_CLIENT 1
|
|
#else
|
|
#define ENABLE_EAP_SSL_VERIFY_CLIENT 0
|
|
#endif
|
|
/******************End of EAP configurations*******************/
|
|
|
|
/* For usb mass storage example */
|
|
#define CONFIG_EXAMPLE_USB_MASS_STORAGE 0
|
|
|
|
/* For FATFS example*/
|
|
#define CONFIG_EXAMPLE_FATFS 0
|
|
#if CONFIG_EXAMPLE_FATFS
|
|
#define CONFIG_FATFS_EN 1
|
|
#if CONFIG_FATFS_EN
|
|
// fatfs version
|
|
#define FATFS_R_10C
|
|
// fatfs disk interface
|
|
#define FATFS_DISK_USB 0
|
|
#define FATFS_DISK_SD 1
|
|
#endif
|
|
#endif
|
|
|
|
/* For iNIC host example*/
|
|
#ifdef CONFIG_INIC_GSPI_HOST //this flag is defined in IAR project
|
|
#define CONFIG_EXAMPLE_INIC_GSPI_HOST 1
|
|
#if CONFIG_EXAMPLE_INIC_GSPI_HOST
|
|
|
|
#define CONFIG_INIC_HOST 1
|
|
|
|
#undef CONFIG_WLAN
|
|
#define CONFIG_WLAN 0
|
|
#undef CONFIG_INCLUDE_SIMPLE_CONFIG
|
|
#define CONFIG_INCLUDE_SIMPLE_CONFIG 0
|
|
#undef CONFIG_EXAMPLE_WLAN_FAST_CONNECT
|
|
#define CONFIG_EXAMPLE_WLAN_FAST_CONNECT 0
|
|
#undef CONFIG_LWIP_LAYER
|
|
#define CONFIG_LWIP_LAYER 1
|
|
#undef CONFIG_BSD_TCP
|
|
#define CONFIG_BSD_TCP 1
|
|
|
|
#endif
|
|
#endif
|
|
|
|
/*For uart update example*/
|
|
#define CONFIG_UART_UPDATE 0
|
|
#if CONFIG_UART_UPDATE
|
|
#undef CONFIG_EXAMPLE_WLAN_FAST_CONNECT
|
|
#define CONFIG_EXAMPLE_WLAN_FAST_CONNECT 0
|
|
#endif
|
|
|
|
|
|
/*For arduino wifi shield example */
|
|
#define CONFIG_EXAMPLE_ARDUINO_WIFI 0
|
|
#if CONFIG_EXAMPLE_ARDUINO_WIFI
|
|
#undef CONFIG_WIFI_NORMAL
|
|
#endif
|
|
|
|
/* For uart adapter example */
|
|
/* Please also configure LWIP_UART_ADAPTER to 1
|
|
in lwip_opt.h for support uart adapter*/
|
|
#define CONFIG_EXAMPLE_UART_ADAPTER 0
|
|
#if CONFIG_EXAMPLE_UART_ADAPTER
|
|
#undef CONFIG_EXAMPLE_WLAN_FAST_CONNECT
|
|
#define CONFIG_EXAMPLE_WLAN_FAST_CONNECT 1
|
|
#undef CONFIG_EXAMPLE_MDNS
|
|
#define CONFIG_EXAMPLE_MDNS 1
|
|
#undef FREERTOS_PMU_TICKLESS_PLL_RESERVED
|
|
#define FREERTOS_PMU_TICKLESS_PLL_RESERVED 1
|
|
#endif
|
|
#if CONFIG_JD_SMART
|
|
#if (CONFIG_ENABLE_WPS == 1)
|
|
#define CONFIG_ENABLE_WPS 0
|
|
#endif
|
|
#if (CONFIG_INCLUDE_SIMPLE_CONFIG == 1)
|
|
#define CONFIG_INCLUDE_SIMPLE_CONFIG 0
|
|
#endif
|
|
#if (CONFIG_EXAMPLE_WLAN_FAST_CONNECT == 1)
|
|
#define CONFIG_EXAMPLE_WLAN_FAST_CONNECT 0
|
|
#endif
|
|
#endif
|
|
|
|
/* For wifi scenarios example (Wi-Fi, WPS enrollee, P2P GO) */
|
|
// also need to enable WPS and P2P
|
|
#define CONFIG_EXAMPLE_WLAN_SCENARIO 0
|
|
|
|
/* For broadcast example */
|
|
#define CONFIG_EXAMPLE_BCAST 0
|
|
|
|
/* For high-load memory use case memory usage */
|
|
#define CONFIG_EXAMPLE_HIGH_LOAD_MEMORY_USE 0
|
|
|
|
/* For rarp example */
|
|
#define CONFIG_EXAMPLE_RARP 0
|
|
|
|
/* For ssl server example */
|
|
#define CONFIG_EXAMPLE_SSL_SERVER 0
|
|
|
|
/* For ota update http example */
|
|
#define CONFIG_EXAMPLE_OTA_HTTP 0
|
|
|
|
#endif
|