TI's CC3100 host driver and demo. Experimental and a work in progress.

Dependencies:   mbed

Committer:
dflet
Date:
Mon Nov 17 19:38:34 2014 +0000
Revision:
0:bbe98578d4c0
Experimental and a work in progress. Mostly left as TI C code. Does compile and run, but I have seen a few glitches. cc3100_sl_common.h will need your ssid and pass key at line 82.....

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dflet 0:bbe98578d4c0 1 /*
dflet 0:bbe98578d4c0 2 * objInclusion.h - CC31xx/CC32xx Host Driver Implementation
dflet 0:bbe98578d4c0 3 *
dflet 0:bbe98578d4c0 4 * Copyright (C) 2014 Texas Instruments Incorporated - http://www.ti.com/
dflet 0:bbe98578d4c0 5 *
dflet 0:bbe98578d4c0 6 *
dflet 0:bbe98578d4c0 7 * Redistribution and use in source and binary forms, with or without
dflet 0:bbe98578d4c0 8 * modification, are permitted provided that the following conditions
dflet 0:bbe98578d4c0 9 * are met:
dflet 0:bbe98578d4c0 10 *
dflet 0:bbe98578d4c0 11 * Redistributions of source code must retain the above copyright
dflet 0:bbe98578d4c0 12 * notice, this list of conditions and the following disclaimer.
dflet 0:bbe98578d4c0 13 *
dflet 0:bbe98578d4c0 14 * Redistributions in binary form must reproduce the above copyright
dflet 0:bbe98578d4c0 15 * notice, this list of conditions and the following disclaimer in the
dflet 0:bbe98578d4c0 16 * documentation and/or other materials provided with the
dflet 0:bbe98578d4c0 17 * distribution.
dflet 0:bbe98578d4c0 18 *
dflet 0:bbe98578d4c0 19 * Neither the name of Texas Instruments Incorporated nor the names of
dflet 0:bbe98578d4c0 20 * its contributors may be used to endorse or promote products derived
dflet 0:bbe98578d4c0 21 * from this software without specific prior written permission.
dflet 0:bbe98578d4c0 22 *
dflet 0:bbe98578d4c0 23 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
dflet 0:bbe98578d4c0 24 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
dflet 0:bbe98578d4c0 25 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
dflet 0:bbe98578d4c0 26 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
dflet 0:bbe98578d4c0 27 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
dflet 0:bbe98578d4c0 28 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
dflet 0:bbe98578d4c0 29 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
dflet 0:bbe98578d4c0 30 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
dflet 0:bbe98578d4c0 31 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
dflet 0:bbe98578d4c0 32 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
dflet 0:bbe98578d4c0 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
dflet 0:bbe98578d4c0 34 *
dflet 0:bbe98578d4c0 35 */
dflet 0:bbe98578d4c0 36
dflet 0:bbe98578d4c0 37 #ifndef OBJINCLUSION_H_
dflet 0:bbe98578d4c0 38 #define OBJINCLUSION_H_
dflet 0:bbe98578d4c0 39
dflet 0:bbe98578d4c0 40 #include "cc3100_simplelink.h"
dflet 0:bbe98578d4c0 41
dflet 0:bbe98578d4c0 42 //#ifndef OBJINCLUSION_H_
dflet 0:bbe98578d4c0 43 //#define OBJINCLUSION_H_
dflet 0:bbe98578d4c0 44
dflet 0:bbe98578d4c0 45 #ifdef __cplusplus
dflet 0:bbe98578d4c0 46 extern "C" {
dflet 0:bbe98578d4c0 47 #endif
dflet 0:bbe98578d4c0 48
dflet 0:bbe98578d4c0 49 /******************************************************************************
dflet 0:bbe98578d4c0 50
dflet 0:bbe98578d4c0 51 For future use
dflet 0:bbe98578d4c0 52
dflet 0:bbe98578d4c0 53 *******************************************************************************/
dflet 0:bbe98578d4c0 54
dflet 0:bbe98578d4c0 55 #define __inln /* if inline functions requiered: #define __inln inline */
dflet 0:bbe98578d4c0 56
dflet 0:bbe98578d4c0 57 #define SL_DEVICE /* Device silo is currently always mandatory */
dflet 0:bbe98578d4c0 58
dflet 0:bbe98578d4c0 59
dflet 0:bbe98578d4c0 60
dflet 0:bbe98578d4c0 61 /******************************************************************************
dflet 0:bbe98578d4c0 62
dflet 0:bbe98578d4c0 63 Qualifiers for package customizations
dflet 0:bbe98578d4c0 64
dflet 0:bbe98578d4c0 65 *******************************************************************************/
dflet 0:bbe98578d4c0 66
dflet 0:bbe98578d4c0 67 #if defined (SL_DEVICE)
dflet 0:bbe98578d4c0 68 #define __dev 1
dflet 0:bbe98578d4c0 69 #else
dflet 0:bbe98578d4c0 70 #define __dev 0
dflet 0:bbe98578d4c0 71 #endif
dflet 0:bbe98578d4c0 72
dflet 0:bbe98578d4c0 73 #if defined (SL_DEVICE) && defined (SL_INC_EXT_API)
dflet 0:bbe98578d4c0 74 #define __dev__ext 1
dflet 0:bbe98578d4c0 75 #else
dflet 0:bbe98578d4c0 76 #define __dev__ext 0
dflet 0:bbe98578d4c0 77 #endif
dflet 0:bbe98578d4c0 78
dflet 0:bbe98578d4c0 79
dflet 0:bbe98578d4c0 80 #if (!defined (SL_PLATFORM_MULTI_THREADED)) || (!defined (SL_PLATFORM_EXTERNAL_SPAWN))
dflet 0:bbe98578d4c0 81 #define __int__spwn 1
dflet 0:bbe98578d4c0 82 #else
dflet 0:bbe98578d4c0 83 #define __int__spwn 0
dflet 0:bbe98578d4c0 84 #endif
dflet 0:bbe98578d4c0 85
dflet 0:bbe98578d4c0 86 #if defined (SL_INC_NET_APP_PKG)
dflet 0:bbe98578d4c0 87 #define __nap 1
dflet 0:bbe98578d4c0 88 #else
dflet 0:bbe98578d4c0 89 #define __nap 0
dflet 0:bbe98578d4c0 90 #endif
dflet 0:bbe98578d4c0 91
dflet 0:bbe98578d4c0 92 #if defined (SL_INC_NET_APP_PKG) && defined (SL_INC_SOCK_CLIENT_SIDE_API)
dflet 0:bbe98578d4c0 93 #define __nap__clt 1
dflet 0:bbe98578d4c0 94 #else
dflet 0:bbe98578d4c0 95 #define __nap__clt 0
dflet 0:bbe98578d4c0 96 #endif
dflet 0:bbe98578d4c0 97
dflet 0:bbe98578d4c0 98 #if defined (SL_INC_NET_APP_PKG) && defined (SL_INC_EXT_API)
dflet 0:bbe98578d4c0 99 #define __nap__ext 1
dflet 0:bbe98578d4c0 100 #else
dflet 0:bbe98578d4c0 101 #define __nap__ext 0
dflet 0:bbe98578d4c0 102 #endif
dflet 0:bbe98578d4c0 103
dflet 0:bbe98578d4c0 104 #if defined (SL_INC_NET_CFG_PKG)
dflet 0:bbe98578d4c0 105 #define __ncg 1
dflet 0:bbe98578d4c0 106 #else
dflet 0:bbe98578d4c0 107 #define __ncg 0
dflet 0:bbe98578d4c0 108 #endif
dflet 0:bbe98578d4c0 109
dflet 0:bbe98578d4c0 110 #if defined (SL_INC_NET_CFG_PKG) && defined (SL_INC_EXT_API)
dflet 0:bbe98578d4c0 111 #define __ncg__ext 1
dflet 0:bbe98578d4c0 112 #else
dflet 0:bbe98578d4c0 113 #define __ncg__ext 0
dflet 0:bbe98578d4c0 114 #endif
dflet 0:bbe98578d4c0 115
dflet 0:bbe98578d4c0 116 #if defined (SL_INC_NVMEM_PKG)
dflet 0:bbe98578d4c0 117 #define __nvm 1
dflet 0:bbe98578d4c0 118 #else
dflet 0:bbe98578d4c0 119 #define __nvm 0
dflet 0:bbe98578d4c0 120 #endif
dflet 0:bbe98578d4c0 121
dflet 0:bbe98578d4c0 122 #if defined (SL_INC_SOCKET_PKG)
dflet 0:bbe98578d4c0 123 #define __sck 1
dflet 0:bbe98578d4c0 124 #else
dflet 0:bbe98578d4c0 125 #define __sck 0
dflet 0:bbe98578d4c0 126 #endif
dflet 0:bbe98578d4c0 127
dflet 0:bbe98578d4c0 128 #if defined (SL_INC_SOCKET_PKG) && defined (SL_INC_EXT_API)
dflet 0:bbe98578d4c0 129 #define __sck__ext 1
dflet 0:bbe98578d4c0 130 #else
dflet 0:bbe98578d4c0 131 #define __sck__ext 0
dflet 0:bbe98578d4c0 132 #endif
dflet 0:bbe98578d4c0 133
dflet 0:bbe98578d4c0 134 #if defined (SL_INC_SOCKET_PKG) && defined (SL_INC_SOCK_SERVER_SIDE_API)
dflet 0:bbe98578d4c0 135 #define __sck__srv 1
dflet 0:bbe98578d4c0 136 #else
dflet 0:bbe98578d4c0 137 #define __sck__srv 0
dflet 0:bbe98578d4c0 138 #endif
dflet 0:bbe98578d4c0 139
dflet 0:bbe98578d4c0 140 #if defined (SL_INC_SOCKET_PKG) && defined (SL_INC_SOCK_CLIENT_SIDE_API)
dflet 0:bbe98578d4c0 141 #define __sck__clt 1
dflet 0:bbe98578d4c0 142 #else
dflet 0:bbe98578d4c0 143 #define __sck__clt 0
dflet 0:bbe98578d4c0 144 #endif
dflet 0:bbe98578d4c0 145
dflet 0:bbe98578d4c0 146 #if defined (SL_INC_SOCKET_PKG) && defined (SL_INC_SOCK_RECV_API)
dflet 0:bbe98578d4c0 147 #define __sck__rcv 1
dflet 0:bbe98578d4c0 148 #else
dflet 0:bbe98578d4c0 149 #define __sck__rcv 0
dflet 0:bbe98578d4c0 150 #endif
dflet 0:bbe98578d4c0 151
dflet 0:bbe98578d4c0 152 #if defined (SL_INC_SOCKET_PKG) && defined (SL_INC_SOCK_SEND_API)
dflet 0:bbe98578d4c0 153 #define __sck__snd 1
dflet 0:bbe98578d4c0 154 #else
dflet 0:bbe98578d4c0 155 #define __sck__snd 0
dflet 0:bbe98578d4c0 156 #endif
dflet 0:bbe98578d4c0 157
dflet 0:bbe98578d4c0 158 #if defined (SL_INC_WLAN_PKG)
dflet 0:bbe98578d4c0 159 #define __wln 1
dflet 0:bbe98578d4c0 160 #else
dflet 0:bbe98578d4c0 161 #define __wln 0
dflet 0:bbe98578d4c0 162 #endif
dflet 0:bbe98578d4c0 163
dflet 0:bbe98578d4c0 164 #if defined (SL_INC_WLAN_PKG) && defined (SL_INC_EXT_API)
dflet 0:bbe98578d4c0 165 #define __wln__ext 1
dflet 0:bbe98578d4c0 166 #else
dflet 0:bbe98578d4c0 167 #define __wln__ext 0
dflet 0:bbe98578d4c0 168 #endif
dflet 0:bbe98578d4c0 169
dflet 0:bbe98578d4c0 170 /* The return 1 is the function need to be included in the output */
dflet 0:bbe98578d4c0 171 #define _SL_INCLUDE_FUNC(Name) (_SL_INC_##Name)
dflet 0:bbe98578d4c0 172
dflet 0:bbe98578d4c0 173 /* Driver */
dflet 0:bbe98578d4c0 174 #define _SL_INC_sl_NetAppStart __nap
dflet 0:bbe98578d4c0 175
dflet 0:bbe98578d4c0 176 #define _SL_INC_sl_NetAppStop __nap
dflet 0:bbe98578d4c0 177
dflet 0:bbe98578d4c0 178 #define _SL_INC_sl_NetAppDnsGetHostByName __nap__clt
dflet 0:bbe98578d4c0 179
dflet 0:bbe98578d4c0 180
dflet 0:bbe98578d4c0 181 #define _SL_INC_sl_NetAppDnsGetHostByService __nap__clt
dflet 0:bbe98578d4c0 182 #define _SL_INC_sl_NetAppMDNSRegisterService __nap__clt
dflet 0:bbe98578d4c0 183 #define _SL_INC_sl_NetAppMDNSUnRegisterService __nap__clt
dflet 0:bbe98578d4c0 184 #define _SL_INC_sl_NetAppMDNSRegisterUnregisterService __nap__clt
dflet 0:bbe98578d4c0 185 #define _SL_INC_sl_NetAppGetServiceList __nap__clt
dflet 0:bbe98578d4c0 186
dflet 0:bbe98578d4c0 187
dflet 0:bbe98578d4c0 188 #define _SL_INC_sl_DnsGetHostByAddr __nap__ext
dflet 0:bbe98578d4c0 189
dflet 0:bbe98578d4c0 190 #define _SL_INC_sl_NetAppPingStart __nap
dflet 0:bbe98578d4c0 191
dflet 0:bbe98578d4c0 192 #define _SL_INC_sl_NetAppPingReport __nap
dflet 0:bbe98578d4c0 193
dflet 0:bbe98578d4c0 194 /* FS */
dflet 0:bbe98578d4c0 195 #define _SL_INC_sl_FsOpen __nvm
dflet 0:bbe98578d4c0 196
dflet 0:bbe98578d4c0 197 #define _SL_INC_sl_FsClose __nvm
dflet 0:bbe98578d4c0 198
dflet 0:bbe98578d4c0 199 #define _SL_INC_sl_FsRead __nvm
dflet 0:bbe98578d4c0 200
dflet 0:bbe98578d4c0 201 #define _SL_INC_sl_FsWrite __nvm
dflet 0:bbe98578d4c0 202
dflet 0:bbe98578d4c0 203 #define _SL_INC_sl_FsGetInfo __nvm
dflet 0:bbe98578d4c0 204
dflet 0:bbe98578d4c0 205 #define _SL_INC_sl_FsDel __nvm
dflet 0:bbe98578d4c0 206
dflet 0:bbe98578d4c0 207 /* netcfg */
dflet 0:bbe98578d4c0 208 #define _SL_INC_sl_MacAdrrSet __ncg
dflet 0:bbe98578d4c0 209
dflet 0:bbe98578d4c0 210 #define _SL_INC_sl_MacAdrrGet __ncg
dflet 0:bbe98578d4c0 211
dflet 0:bbe98578d4c0 212 #define _SL_INC_sl_NetCfgGet __ncg
dflet 0:bbe98578d4c0 213
dflet 0:bbe98578d4c0 214 #define _SL_INC_sl_NetCfgSet __ncg
dflet 0:bbe98578d4c0 215
dflet 0:bbe98578d4c0 216 #define _SL_INC_sl_NetAppSet __nap
dflet 0:bbe98578d4c0 217
dflet 0:bbe98578d4c0 218 #define _SL_INC_sl_NetAppGet __nap
dflet 0:bbe98578d4c0 219
dflet 0:bbe98578d4c0 220 /* socket */
dflet 0:bbe98578d4c0 221 #define _SL_INC_sl_Socket __sck
dflet 0:bbe98578d4c0 222
dflet 0:bbe98578d4c0 223 #define _SL_INC_sl_Close __sck__ext
dflet 0:bbe98578d4c0 224
dflet 0:bbe98578d4c0 225 #define _SL_INC_sl_Accept __sck__srv
dflet 0:bbe98578d4c0 226
dflet 0:bbe98578d4c0 227 #define _SL_INC_sl_Bind __sck
dflet 0:bbe98578d4c0 228
dflet 0:bbe98578d4c0 229 #define _SL_INC_sl_Listen __sck__srv
dflet 0:bbe98578d4c0 230
dflet 0:bbe98578d4c0 231 #define _SL_INC_sl_Connect __sck__clt
dflet 0:bbe98578d4c0 232
dflet 0:bbe98578d4c0 233 #define _SL_INC_sl_Select __sck
dflet 0:bbe98578d4c0 234
dflet 0:bbe98578d4c0 235 #define _SL_INC_sl_SetSockOpt __sck
dflet 0:bbe98578d4c0 236
dflet 0:bbe98578d4c0 237 #define _SL_INC_sl_GetSockOpt __sck__ext
dflet 0:bbe98578d4c0 238
dflet 0:bbe98578d4c0 239 #define _SL_INC_sl_Recv __sck__rcv
dflet 0:bbe98578d4c0 240
dflet 0:bbe98578d4c0 241 #define _SL_INC_sl_RecvFrom __sck__rcv
dflet 0:bbe98578d4c0 242
dflet 0:bbe98578d4c0 243 #define _SL_INC_sl_Write __sck__snd
dflet 0:bbe98578d4c0 244
dflet 0:bbe98578d4c0 245 #define _SL_INC_sl_Send __sck__snd
dflet 0:bbe98578d4c0 246
dflet 0:bbe98578d4c0 247 #define _SL_INC_sl_SendTo __sck__snd
dflet 0:bbe98578d4c0 248
dflet 0:bbe98578d4c0 249 #define _SL_INC_sl_Htonl __sck
dflet 0:bbe98578d4c0 250
dflet 0:bbe98578d4c0 251 #define _SL_INC_sl_Htons __sck
dflet 0:bbe98578d4c0 252
dflet 0:bbe98578d4c0 253 /* wlan */
dflet 0:bbe98578d4c0 254 #define _SL_INC_sl_WlanConnect __wln__ext
dflet 0:bbe98578d4c0 255
dflet 0:bbe98578d4c0 256 #define _SL_INC_sl_WlanDisconnect __wln__ext
dflet 0:bbe98578d4c0 257
dflet 0:bbe98578d4c0 258 #define _SL_INC_sl_WlanProfileAdd __wln__ext
dflet 0:bbe98578d4c0 259
dflet 0:bbe98578d4c0 260 #define _SL_INC_sl_WlanProfileGet __wln__ext
dflet 0:bbe98578d4c0 261
dflet 0:bbe98578d4c0 262 #define _SL_INC_sl_WlanProfileDel __wln__ext
dflet 0:bbe98578d4c0 263
dflet 0:bbe98578d4c0 264 #define _SL_INC_sl_WlanPolicySet __wln__ext
dflet 0:bbe98578d4c0 265
dflet 0:bbe98578d4c0 266 #define _SL_INC_sl_WlanPolicyGet __wln__ext
dflet 0:bbe98578d4c0 267
dflet 0:bbe98578d4c0 268 #define _SL_INC_sl_WlanGetNetworkList __wln__ext
dflet 0:bbe98578d4c0 269
dflet 0:bbe98578d4c0 270 #define _SL_INC_sl_WlanRxFilterAdd __wln__ext
dflet 0:bbe98578d4c0 271
dflet 0:bbe98578d4c0 272 #define _SL_INC_sl_WlanRxFilterSet __wln__ext
dflet 0:bbe98578d4c0 273
dflet 0:bbe98578d4c0 274 #define _SL_INC_sl_WlanRxFilterGet __wln__ext
dflet 0:bbe98578d4c0 275
dflet 0:bbe98578d4c0 276 #define _SL_INC_sl_SmartConfigStart __wln
dflet 0:bbe98578d4c0 277
dflet 0:bbe98578d4c0 278 #define _SL_INC_sl_SmartConfigOptSet __wln__ext
dflet 0:bbe98578d4c0 279
dflet 0:bbe98578d4c0 280
dflet 0:bbe98578d4c0 281 #define _SL_INC_sl_WlanSmartConfigStart __wln
dflet 0:bbe98578d4c0 282
dflet 0:bbe98578d4c0 283 #define _SL_INC_sl_WlanSmartConfigStop __wln
dflet 0:bbe98578d4c0 284
dflet 0:bbe98578d4c0 285 #define _SL_INC_sl_WlanSetMode __wln
dflet 0:bbe98578d4c0 286
dflet 0:bbe98578d4c0 287 #define _SL_INC_sl_WlanSet __wln
dflet 0:bbe98578d4c0 288
dflet 0:bbe98578d4c0 289 #define _SL_INC_sl_WlanGet __wln
dflet 0:bbe98578d4c0 290
dflet 0:bbe98578d4c0 291 #define _SL_INC_sl_SmartConfigOptSet __wln__ext
dflet 0:bbe98578d4c0 292
dflet 0:bbe98578d4c0 293 #define _SL_INC_sl_SmartConfigOptGet __wln__ext
dflet 0:bbe98578d4c0 294
dflet 0:bbe98578d4c0 295 #define _SL_INC_sl_WlanRxStatStart __wln__ext
dflet 0:bbe98578d4c0 296
dflet 0:bbe98578d4c0 297 #define _SL_INC_sl_WlanRxStatStop __wln__ext
dflet 0:bbe98578d4c0 298
dflet 0:bbe98578d4c0 299 #define _SL_INC_sl_WlanRxStatGet __wln__ext
dflet 0:bbe98578d4c0 300
dflet 0:bbe98578d4c0 301
dflet 0:bbe98578d4c0 302 /* device */
dflet 0:bbe98578d4c0 303 #define _SL_INC_sl_Task __int__spwn
dflet 0:bbe98578d4c0 304
dflet 0:bbe98578d4c0 305 #define _SL_INC_sl_Start __dev
dflet 0:bbe98578d4c0 306
dflet 0:bbe98578d4c0 307 #define _SL_INC_sl_Stop __dev
dflet 0:bbe98578d4c0 308
dflet 0:bbe98578d4c0 309 #define _SL_INC_sl_StatusGet __dev
dflet 0:bbe98578d4c0 310
dflet 0:bbe98578d4c0 311 #ifdef SL_IF_TYPE_UART
dflet 0:bbe98578d4c0 312 #define _SL_INC_sl_UartSetMode __dev
dflet 0:bbe98578d4c0 313 #endif
dflet 0:bbe98578d4c0 314
dflet 0:bbe98578d4c0 315 #define _SL_INC_sl_EventMaskGet __dev__ext
dflet 0:bbe98578d4c0 316
dflet 0:bbe98578d4c0 317 #define _SL_INC_sl_EventMaskSet __dev__ext
dflet 0:bbe98578d4c0 318
dflet 0:bbe98578d4c0 319 #define _SL_INC_sl_DevGet __dev__ext
dflet 0:bbe98578d4c0 320
dflet 0:bbe98578d4c0 321 #define _SL_INC_sl_DevSet __dev__ext
dflet 0:bbe98578d4c0 322
dflet 0:bbe98578d4c0 323
dflet 0:bbe98578d4c0 324 #ifdef __cplusplus
dflet 0:bbe98578d4c0 325 }
dflet 0:bbe98578d4c0 326 #endif /* __cplusplus */
dflet 0:bbe98578d4c0 327
dflet 0:bbe98578d4c0 328 #endif /*OBJINCLUSION_H_ */
dflet 0:bbe98578d4c0 329