Implementing a few functions that are necessary for the RF driver
to build:
- ClockP_getTimeout
- ClockP_isActive
- ClockP_destruct
- SemaphoreP_construct
- SemaphoreP_constructBinary
- SemaphoreP_destruct
- HwiP_post
- HwiP_setFunc
- HwiP_destruct
Zephyr expects interrupts to stay disabled when running hooks during
resume. Hence we must modify Power_sleep to leave interrupts disabled.
Signed-off-by: Vincent Wan <vincent.wan@linaro.org>
This commit updates the dpl layer for Zephyr to support the Power
manager module on the CC13x2/CC26x2 family of devices.
Signed-off-by: Vincent Wan <vincent.wan@linaro.org>
The SoC initialization code used system clock frequency
as a CPU clock frequency. This commit corrects that by
obtaining the needed value from DTS.
Signed-off-by: Piotr Zięcik <piotr.ziecik@nordicsemi.no>
move misc/util.h to sys/util.h and
create a shim for backward-compatibility.
No functional changes to the headers.
A warning in the shim can be controlled with CONFIG_COMPAT_INCLUDES.
Related to #16539
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
move misc/__assert.h to sys/__assert.h and
create a shim for backward-compatibility.
No functional changes to the headers.
A warning in the shim can be controlled with CONFIG_COMPAT_INCLUDES.
Related to #16539
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
move watchdog.h to drivers/watchdog.h and
create a shim for backward-compatibility.
No functional changes to the headers.
A warning in the shim can be controlled with CONFIG_COMPAT_INCLUDES.
Related to #16539
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Several customer configuration (CCFG) settings are useful for
development and deployment. This commit adds support for setting CCFG
values via Kconfig. It follows TI's recommendation of setting CCFG
values and then including the TI provided CCFG. This commit includes
support for enabling the ROM bootloader and additional settings can be
added as needed.
Signed-off-by: Brett Witherspoon <spoonb@cdspooner.com>
Add initial support for the TI CC13x2 / CC26x2 series with the CC2652R
and CC1352R SoCs. The UART and GPIO peripherals are supported. Drivers
use the driverlib HAL from the TI CC13x2 / CC26x2 SDK.
Signed-off-by: Brett Witherspoon <spoonb@cdspooner.com>
The default customer configuration (CCFG) provided by the
TI CC13x2 / CC26x2 SDK puts the configuration in a section different
than expected by Zephyr. It has been modified to use the appropriate
section.
Signed-off-by: Brett Witherspoon <spoonb@cdspooner.com>
Add low level drivers (driverlib) and RF patches from the TI CC13x2 and
CC26x2 SDK. These sources have been added unmodified with the exception
of converting DOS to UNIX line endings.
The majority of these APIs are available in ROM and inclusion of the
headers will map functions that are not inline to the ROM versions.
Origin: Texas Instruments SimpleLink CC13x2 and CC26x2 SDK
License: BSD 3-Clause
URL: http://www.ti.com/tool/simplelink-cc13x2-26x2-sdk
Purpose: Provides HAL for TI CC13x2 and CC26x2 SoCs
Maintained-by: External
Signed-off-by: Brett Witherspoon <spoonb@cdspooner.com>
Adding additional workarounds to cc_pal.h that are necessary due to the
fact that the POSIX subsys does not integrate well with other parts of
Zephyr, as per discussion in #13444. These workarounds are needed when
fcntl.h is included, to avoid symbols from being redefined in POSIX
headers. They disable some POSIX headers and define what is necessary
for the code to compile.
We should aim to remove these when the integration story has improved.
Signed-off-by: Vincent Wan <vincent.wan@linaro.org>
Update reserved function names starting with one underscore, replacing
them as follows:
'_k_' with 'z_'
'_K_' with 'Z_'
'_handler_' with 'z_handl_'
'_Cstart' with 'z_cstart'
'_Swap' with 'z_swap'
This renaming is done on both global and those static function names
in kernel/include and include/. Other static function names in kernel/
are renamed by removing the leading underscore. Other function names
not starting with any prefix listed above are renamed starting with
a 'z_' or 'Z_' prefix.
Function names starting with two or three leading underscores are not
automatcally renamed since these names will collide with the variants
with two or three leading underscores.
Various generator scripts have also been updated as well as perf,
linker and usb files. These are
drivers/serial/uart_handlers.c
include/linker/kobject-text.ld
kernel/include/syscall_handler.h
scripts/gen_kobject_list.py
scripts/gen_syscall_header.py
Signed-off-by: Patrik Flykt <patrik.flykt@intel.com>
This commit removes build warnings in the SimpleLink SDK's driver.c file
by updating CMakeLists.txt
Signed-off-by: Vincent Wan <vincent.wan@linaro.org>
When using the wifi driver, we should automatically select
CONFIG_POSIX_API and CONFIG_PTHREAD_IPC. This is necessary given the
code in the new SimpleLink host driver from the SimpleLink SDK uses
pthread and sem.
Signed-off-by: Vincent Wan <vincent.wan@linaro.org>
We should use the headers from Zephyr, not the ones provided by TI for
their posix implementations.
Signed-off-by: Vincent Wan <vincent.wan@linaro.org>
We are using the external spawn option, hence must make a change
to point to our os_Spawn implementation.
We are also supplying errno values that are missing from Zephyr errno.h
and the external errno setter function, to allow the SimpleLink
driver.c to compile.
Signed-off-by: Vincent Wan <vincent.wan@linaro.org>
Add/Update files taken from TI CC32XX SDK, including
- peripheral drivers
- driverlib (HAL)
- WiFi host driver and porting layer interface headers
Origin: Texas Instruments cc32xx SimpleLink SDK
URL: http://www.ti.com/tool/download/simplelink-cc32xx-sdk
Purpose: Provide driver libraries and HAL for TI CC32XX SoC
Maintained-by: External
Fixes#11126
Signed-off-by: Vincent Wan <vincent.wan@linaro.org>
Bool symbols implicitly default to 'n'.
A 'default n' could make sense e.g. in a Kconfig.defconfig file, if you
wanted to override a 'default y' on the base definition of the symbol,
but it doesn't seem to be used like that on any of these symbols.
Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
Initiate a SimpleLink WiFi Driver, implemented to the WiFi management
offload APIs for scan, connect, disconnect.
Also registers the DHCP-obtained IPv4 address upon connect.
This was validated on a cc3220sf_launchxl using the wifi
shell module from the Zephyr shell_module sample.
Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
Add comments explaining why these three driverlib files need to be
built rather than using the ROM versions.
Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
Previously, a rom.h header was missing from the SDK board porting
file, resulting in some MAP_ API calls not getting vectored to ROM.
Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
After the cmake conversion, the SimpleLink WiFi host
driver would not build, and compiler flags like -Wno-strict-aliasing
were not being applied as they got spliced in before
-Wall rather than after.
This fixes those issues, using the set_source_files_properties()
method as suggeted in the CMakeLists.txt TODO comment.
Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
Introducing CMake is an important step in a larger effort to make
Zephyr easy to use for application developers working on different
platforms with different development environment needs.
Simplified, this change retains Kconfig as-is, and replaces all
Makefiles with CMakeLists.txt. The DSL-like Make language that KBuild
offers is replaced by a set of CMake extentions. These extentions have
either provided simple one-to-one translations of KBuild features or
introduced new concepts that replace KBuild concepts.
This is a breaking change for existing test infrastructure and build
scripts that are maintained out-of-tree. But for FW itself, no porting
should be necessary.
For users that just want to continue their work with minimal
disruption the following should suffice:
Install CMake 3.8.2+
Port any out-of-tree Makefiles to CMake.
Learn the absolute minimum about the new command line interface:
$ cd samples/hello_world
$ mkdir build && cd build
$ cmake -DBOARD=nrf52_pca10040 ..
$ cd build
$ make
PR: zephyrproject-rtos#4692
docs: http://docs.zephyrproject.org/getting_started/getting_started.html
Signed-off-by: Sebastian Boe <sebastian.boe@nordicsemi.no>
This patch adds Kconfig/build support to MSP432P4XX
SDK. MSP432P4XX microcontrollers have driverlib flashed
onto the ROM, which will be used by default.
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
There are some minor conflicts or porting changes needed to get the
msp432p4xx SDK to work with Zephyr:
1. Remove definition of BIT, as it conflicts with Zephyr defined one
2. Set __SYSTEM_CLOCK define based on Zephyr Kconfig define
3. Fix a build warning that gets treated as an error.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
MSP432P4XX SDK is a CMSIS based SDK offered by Texas Instruments
for supporting their Simplelink MSP432P4XX microcontrollers. The
version included in Zephyr is V1.50.00.12 which is a stripped
down version containing only HAL and SoC header support.
Origin: SIMPLELINK-MSP432-SDK
License: BSD 3-Clause
URL: http://www.ti.com/tool/simplelink-msp432-sdk
Version: V1.50.00.12
Purpose: Provides HAL support to MSP432P4XX SoC
Maintained-by: External
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
This patch adds files to build the SimpleLink host driver
and its DPL port to Zephyr.
It disables the host driver build by default.
Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
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
Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
This includes:
- peripheral drivers
- driverlib (HAL)
- WiFi host driver and porting layer interface headers
See README in this patch for details.
Origin: Texas Instruments cc32xx SimpleLink SDK
URL: http://www.ti.com/tool/download/SIMPLELINK-CC3220-SDK
Purpose: Provide driver libraries and HAL for TI CC32XX SoC
Maintained-by: External
Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
This reverts commit e1382cc7d6344477167d076ad00b4238f22fe777.
Due to restrictive simplelink host driver source licensing.
This also reverts commits based on the simplelink wifi host
driver:
Revert "ext: simplelink: host driver: depend on multithreading"
commit: 4d912b004b6997e4312a903c85a3c75e2e24d7ca
Revert "ext: simplelink: Enable SimpleLink to use Zephyr __errno"
commit: 4e022f7b28dae683497e68180e500fbba24fd88f
Revert "ext: simplelink: Add SimpleLink DPL porting layer to Zephyr"
commit: 4bc51e67d481bc12e6555c6c3afd08c8c71706fb
Revert "ext: simplelink: Enable build of the SimpleLink host driver."
commit: 2d2615a49a9812784edbd57a9006b078ee220542
Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
Per ZEP-1958, Phase 2 of adding CC3220sf LaunchXL support,
was to "deprecate the CC3200 launchxl support in Zephyr
(redundant to the CC3220)."
Effectively, the CC3220 SOC replaces the CC3200.
This patch removes the following:
* the imported CC3200 SDK
* CC3200 SOC, board, DTS files.
* adjusts other files where cc3200 was mentioned.
Also, it fixes explicit references to CC3200 in generic
CC32xx driver files.
Jira: ZEP-1958
Signed-off-by: Gil Pitney <gil.pitney@linaro.org>