Commit Graph

111 Commits

Author SHA1 Message Date
Kumar Gala 4f1b1aea9b ext: simplelink: host driver: depend on multithreading
We need multithreading support for the host driver to function.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2017-08-11 12:47:18 -05:00
Gil Pitney 1afcb2360e ext: simplelink: Enable SimpleLink to use Zephyr __errno
The SimpleLink host driver comes with its own definition of
__errno, which conflicts with Zephyr's definition, but has
a mechanism to enable use of the porting OS's __errno variable.

This patch enables SimpleLink to use Zephyr's __errno
via the DPL porting layer.

Jira: ZEP-1958

Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
2017-08-10 16:46:49 -05:00
Gil Pitney 88eca81ba2 ext: simplelink: Add SimpleLink DPL porting layer to Zephyr
This ports the SimpleLink WiFi host driver via its OS adaptation
layer to Zephyr OS primitives.

This was validated using an out-of-tree SimpleLink shell
application including functions for:
* WLAN connect, disconnect and scan
* Socket: UDP server and client
* NetApp: pinging an external host.

Jira: ZEP-1958

Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
2017-08-10 16:46:49 -05:00
Gil Pitney 78389523ce ext: simplelink: Enable build of the SimpleLink host driver.
This patch enables and builds the SimpleLink host driver
for Zephyr introduced in a previous patch.

Jira: ZEP-1958

Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
2017-08-10 16:46:49 -05:00
Gil Pitney 63d0758591 ext: simplelink: Import TI SimpleLink SDK host driver for CC3220SF
The SimpleLink SDK provides a WiFi host driver to access the
network coprocessor over a dedicated SPI.

This patch imports the host driver plus other driver files
required to communicate with the network coprocessor.

All files have been copied from a Linux SDK installation, without
modification (except for whitespace cleanup and file mode fixes).

Note that one of the imported files, wifi/porting/user.h, has to
be modified to enable the DPL (Driver Porting Layer) port to Zephyr.
This is provided in a follow-on DPL porting patch.

Origin: Texas Instruments SimpleLink CC3220 SDK URL:
http://www.ti.com/tool/download/SIMPLELINK-CC3220-SDK Purpose:
Provide WiFi host driver for TI CC32XX SoC

Jira: ZEP-1958

Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
2017-08-10 16:46:49 -05:00
Gil Pitney fdb92bebcc ext: simplelink: Update HAL for CC3220sf to version 1.40.00.03
The SimpleLink SDK provides a peripheral driver library and hardware
register access header files for the Texas Instruments SimpleLink
CC3220S and CC3220SF SoCs.

This patch updates the SDK version in Zephyr from 1.30.01.03
to 1.40.00.03.

The SDK can be downloaded from:

http://www.ti.com/tool/download/SIMPLELINK-CC3220-SDK

Jira: ZEP-1958

Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2017-07-14 08:40:44 -05:00
Gil Pitney b50cd47ab8 ext: simplelink: Restructure CC3220SDK as SimpleLink SDK
The SimpleLink SDK actually encapsulates a family of devices,
of which cc32xx is just one device.  Other devices can fit
under this SDK directory structure.

This expansion will also allow the import of the WiFi
host driver and its driver porting layer in the future,
inserted at the correct levels in the SimpleLink SDK
directory heirarchy.

Follow the URL (ending in "#directory-structure") referenced in
ext/hal/ti/simplelink/README which explains the SDK structure,
and where devices fit in.

Jira: ZEP-1958

Change-Id: I16515d3e3779de0d55d3b1b8e25029609d1f66c3
Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
2017-05-08 15:03:15 -04:00
Gil Pitney 09215859ea ext: cc3220sdk: Import HAL for TI CC3220S SoC
The CC3220 SDK provides a peripheral driver library and hardware
register access header files for the Texas Instruments SimpleLink
CC3220S and CC3220SF SoCs.

The current version supported in Zephyr is CC3220 SDK 1.30.01.03,
downloaded from:

	http://www.ti.com/tool/download/SIMPLELINK-CC3220-SDK

Jira: ZEP-1958

Change-Id: Ib278a6e067a621c589d6efd17cda6f75dc2a9cdb
Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
2017-04-04 17:55:13 -05:00
Gil Pitney 9c21aaee87 cc3200: Use peripheral driver library functions from ROM
Previously, CC3200 drivers had two options to use the peripheral
driver library APIs:
1) Build driverlib SDK files in Zephyr, in ext/hal/ti/cc3200/*
2) Link directly with the driverlib.a, from an externally installed
   TI CC3200 SDK.

A new option is added to replace option 2), and is now the default:
3) Use the driverlib functions already provided in ROM.

This enables a savings in code size, which will depend on the
types of device drivers configured and the number of SDK
APIs actually used.

A rom_report build of the shell sample application showed
a savings of about 2kb in code space using this new config option.

Change-Id: Ie1ede6f7aacd23db20f5292e776f1dfeab5c7fe0
Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2017-01-12 09:46:25 -06:00
Gil Pitney 62a8ec001e ext: cc3200sdk: Enable build of CC3200 HAL
Enable building CC3200 SDK driver peripheral library files in Zephyr.

The SDK provides convenience functions to access CC3200 hardware
peripherals, and header files with register definitions.

Jira: ZEP-1109
Change-Id: I89f1485b9f35320a253ae211a27168bb2288c8b7
Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
2016-11-04 09:38:50 +00:00
Gil Pitney 7060625ff2 ext: cc3200sdk: Import HAL for TI CC3200 SoC
The CC3200 SDK provides a peripheral driver library and hardware
register access header files for the Texas Instruments SimpleLink
CC3200 SoC.

Origin: Texas Instruments CC3200 SDK v1.2.0
URL: http://www.ti.com/tool/cc3200sdk
Purpose: Provide driver library and HAL for TI CC3200 SoC
Maintained-by: External

Jira: ZEP-1109
Change-Id: Ieb7f833adfbb7bc04842cfd0cd95127c48ab9eb1
Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
2016-11-04 09:38:49 +00:00