cc3000 hostdriver with the mbed socket interface

Dependents:   cc3000_hello_world_demo cc3000_simple_socket_demo cc3000_ntp_demo cc3000_ping_demo ... more

Committer:
SolderSplashLabs
Date:
Thu Oct 03 21:00:00 2013 +0000
Revision:
23:fed7f64dd520
Parent:
0:615c697c33b0
Added separate debug messages and VT100 formatting

Who changed what in which revision?

UserRevisionLine numberNew contents of line
SolderSplashLabs 23:fed7f64dd520 1 /*****************************************************************************
SolderSplashLabs 23:fed7f64dd520 2 *
SolderSplashLabs 23:fed7f64dd520 3 * C++ interface/implementation created by Martin Kojtal (0xc0170). Thanks to
SolderSplashLabs 23:fed7f64dd520 4 * Jim Carver and Frank Vannieuwkerke for their inital cc3000 mbed port and
SolderSplashLabs 23:fed7f64dd520 5 * provided help.
SolderSplashLabs 23:fed7f64dd520 6 *
SolderSplashLabs 23:fed7f64dd520 7 * This version of "host driver" uses CC3000 Host Driver Implementation. Thus
SolderSplashLabs 23:fed7f64dd520 8 * read the following copyright:
SolderSplashLabs 23:fed7f64dd520 9 *
SolderSplashLabs 23:fed7f64dd520 10 * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
SolderSplashLabs 23:fed7f64dd520 11 *
SolderSplashLabs 23:fed7f64dd520 12 * Redistribution and use in source and binary forms, with or without
SolderSplashLabs 23:fed7f64dd520 13 * modification, are permitted provided that the following conditions
SolderSplashLabs 23:fed7f64dd520 14 * are met:
SolderSplashLabs 23:fed7f64dd520 15 *
SolderSplashLabs 23:fed7f64dd520 16 * Redistributions of source code must retain the above copyright
SolderSplashLabs 23:fed7f64dd520 17 * notice, this list of conditions and the following disclaimer.
SolderSplashLabs 23:fed7f64dd520 18 *
SolderSplashLabs 23:fed7f64dd520 19 * Redistributions in binary form must reproduce the above copyright
SolderSplashLabs 23:fed7f64dd520 20 * notice, this list of conditions and the following disclaimer in the
SolderSplashLabs 23:fed7f64dd520 21 * documentation and/or other materials provided with the
SolderSplashLabs 23:fed7f64dd520 22 * distribution.
SolderSplashLabs 23:fed7f64dd520 23 *
SolderSplashLabs 23:fed7f64dd520 24 * Neither the name of Texas Instruments Incorporated nor the names of
SolderSplashLabs 23:fed7f64dd520 25 * its contributors may be used to endorse or promote products derived
SolderSplashLabs 23:fed7f64dd520 26 * from this software without specific prior written permission.
SolderSplashLabs 23:fed7f64dd520 27 *
SolderSplashLabs 23:fed7f64dd520 28 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
SolderSplashLabs 23:fed7f64dd520 29 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
SolderSplashLabs 23:fed7f64dd520 30 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
SolderSplashLabs 23:fed7f64dd520 31 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
SolderSplashLabs 23:fed7f64dd520 32 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SolderSplashLabs 23:fed7f64dd520 33 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
SolderSplashLabs 23:fed7f64dd520 34 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
SolderSplashLabs 23:fed7f64dd520 35 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
SolderSplashLabs 23:fed7f64dd520 36 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
SolderSplashLabs 23:fed7f64dd520 37 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
SolderSplashLabs 23:fed7f64dd520 38 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
SolderSplashLabs 23:fed7f64dd520 39 *
SolderSplashLabs 23:fed7f64dd520 40 *****************************************************************************/
SolderSplashLabs 23:fed7f64dd520 41 #ifndef CC3000_NVMEM_H
SolderSplashLabs 23:fed7f64dd520 42 #define CC3000_NVMEM_H
SolderSplashLabs 23:fed7f64dd520 43
SolderSplashLabs 23:fed7f64dd520 44 #define NVMEM_READ_PARAMS_LEN (12)
SolderSplashLabs 23:fed7f64dd520 45 #define NVMEM_CREATE_PARAMS_LEN (8)
SolderSplashLabs 23:fed7f64dd520 46 #define NVMEM_WRITE_PARAMS_LEN (16)
SolderSplashLabs 23:fed7f64dd520 47
SolderSplashLabs 23:fed7f64dd520 48
SolderSplashLabs 23:fed7f64dd520 49 /****************************************************************************
SolderSplashLabs 23:fed7f64dd520 50 **
SolderSplashLabs 23:fed7f64dd520 51 ** Definitions for File IDs
SolderSplashLabs 23:fed7f64dd520 52 **
SolderSplashLabs 23:fed7f64dd520 53 ****************************************************************************/
SolderSplashLabs 23:fed7f64dd520 54 /* --------------------------------------------------------- EEPROM FAT table ---------------------------------------------------------
SolderSplashLabs 23:fed7f64dd520 55
SolderSplashLabs 23:fed7f64dd520 56 File ID Offset File Size Used Size Parameter
SolderSplashLabs 23:fed7f64dd520 57 # ID address (bytes) (bytes)
SolderSplashLabs 23:fed7f64dd520 58 --------------------------------------------------------------------------------------------------------------------------------------
SolderSplashLabs 23:fed7f64dd520 59 0 NVMEM_NVS_FILEID 0x50 0x1A0 0x1A RF Calibration results table(generated automatically by TX Bip)
SolderSplashLabs 23:fed7f64dd520 60 1 NVMEM_NVS_SHADOW_FILEID 0x1F0 0x1A0 0x1A NVS Shadow
SolderSplashLabs 23:fed7f64dd520 61 2 NVMEM_WLAN_CONFIG_FILEID 0x390 0x1000 0x64 WLAN configuration
SolderSplashLabs 23:fed7f64dd520 62 3 NVMEM_WLAN_CONFIG_SHADOW_FILEID 0x1390 0x1000 0x64 WLAN configuration shadow
SolderSplashLabs 23:fed7f64dd520 63 4 NVMEM_WLAN_DRIVER_SP_FILEID 0x2390 0x2000 variable WLAN Driver ROM Patches
SolderSplashLabs 23:fed7f64dd520 64 5 NVMEM_WLAN_FW_SP_FILEID 0x4390 0x2000 variable WLAN FW Patches
SolderSplashLabs 23:fed7f64dd520 65 6 NVMEM_MAC_FILEID 0x6390 0x10 0x10 6 bytes of MAC address
SolderSplashLabs 23:fed7f64dd520 66 7 NVMEM_FRONTEND_VARS_FILEID 0x63A0 0x10 0x10 Frontend Vars
SolderSplashLabs 23:fed7f64dd520 67 8 NVMEM_IP_CONFIG_FILEID 0x63B0 0x40 0x40 IP configuration
SolderSplashLabs 23:fed7f64dd520 68 9 NVMEM_IP_CONFIG_SHADOW_FILEID 0x63F0 0x40 0x40 IP configuration shadow
SolderSplashLabs 23:fed7f64dd520 69 10 NVMEM_BOOTLOADER_SP_FILEID 0x6430 0x400 variable Bootloader Patches
SolderSplashLabs 23:fed7f64dd520 70 11 NVMEM_RM_FILEID 0x6830 0x200 0x7F Radio parameters
SolderSplashLabs 23:fed7f64dd520 71 12 NVMEM_AES128_KEY_FILEID 0x6A30 0x10 0x10 AES128 key file
SolderSplashLabs 23:fed7f64dd520 72 13 NVMEM_SHARED_MEM_FILEID 0x6A40 0x50 0x44 Host-CC3000 shared memory file
SolderSplashLabs 23:fed7f64dd520 73 14 NVMEM_USER_FILE_1_FILEID 0x6A90 variable variable 1st user file
SolderSplashLabs 23:fed7f64dd520 74 15 NVMEM_USER_FILE_2_FILEID variable variable variable 2nd user file
SolderSplashLabs 23:fed7f64dd520 75 */
SolderSplashLabs 23:fed7f64dd520 76 /* NVMEM file ID - system files*/
SolderSplashLabs 23:fed7f64dd520 77 #define NVMEM_NVS_FILEID (0)
SolderSplashLabs 23:fed7f64dd520 78 #define NVMEM_NVS_SHADOW_FILEID (1)
SolderSplashLabs 23:fed7f64dd520 79 #define NVMEM_WLAN_CONFIG_FILEID (2)
SolderSplashLabs 23:fed7f64dd520 80 #define NVMEM_WLAN_CONFIG_SHADOW_FILEID (3)
SolderSplashLabs 23:fed7f64dd520 81 #define NVMEM_WLAN_DRIVER_SP_FILEID (4)
SolderSplashLabs 23:fed7f64dd520 82 #define NVMEM_WLAN_FW_SP_FILEID (5)
SolderSplashLabs 23:fed7f64dd520 83 #define NVMEM_MAC_FILEID (6)
SolderSplashLabs 23:fed7f64dd520 84 #define NVMEM_FRONTEND_VARS_FILEID (7)
SolderSplashLabs 23:fed7f64dd520 85 #define NVMEM_IP_CONFIG_FILEID (8)
SolderSplashLabs 23:fed7f64dd520 86 #define NVMEM_IP_CONFIG_SHADOW_FILEID (9)
SolderSplashLabs 23:fed7f64dd520 87 #define NVMEM_BOOTLOADER_SP_FILEID (10)
SolderSplashLabs 23:fed7f64dd520 88 #define NVMEM_RM_FILEID (11)
SolderSplashLabs 23:fed7f64dd520 89
SolderSplashLabs 23:fed7f64dd520 90 /* NVMEM file ID - user files*/
SolderSplashLabs 23:fed7f64dd520 91 #define NVMEM_AES128_KEY_FILEID (12)
SolderSplashLabs 23:fed7f64dd520 92 #define NVMEM_SHARED_MEM_FILEID (13)
SolderSplashLabs 23:fed7f64dd520 93 #define NVMEM_USER_FILE_1_FILEID (14)
SolderSplashLabs 23:fed7f64dd520 94 #define NVMEM_USER_FILE_2_FILEID (15)
SolderSplashLabs 23:fed7f64dd520 95
SolderSplashLabs 23:fed7f64dd520 96 /* max entry in order to invalid nvmem */
SolderSplashLabs 23:fed7f64dd520 97 #define NVMEM_MAX_ENTRY (16)
SolderSplashLabs 23:fed7f64dd520 98
SolderSplashLabs 23:fed7f64dd520 99
SolderSplashLabs 23:fed7f64dd520 100 #endif