This code component is used to add Zephyr support on iMX7 processors,
exclusively on Cortex M4 core, and to speed up the development process
it was decided to have it based on NXP FreeRTOS BSP implementation.
The source code was imported from the following folders:
FreeRTOS_BSP_1.0.1_iMX7D/platform/drivers
FreeRTOS_BSP_1.0.1_iMX7D/platform/devices
This source code depends on headers and sources from zephyr:
ext/hal/cmsis
Origin: iMX7D NXP FreeRTOS BSP Peripheral Driver
License: BSD 3-Clause
URL: https://www.nxp.com/webapp/Download?colCode=FreeRTOS_iMX7D_1.0.1_LINUX&appType=license
commit: no commit hash
Purpose: The peripheral driver wraps the H/W for i.MX7 M4 core
Maintained-by: External
Signed-off-by: Diego Sueiro <diego.sueiro@gmail.com>
half-FP feature requires <math.h> form newlib_libc. It was include
wrongly by default. This path fix conduction for related include
directive.
Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
This path make logic for enabling float and half-float
support positive driven and fix NEWLIB_LIBC selections for
these features.
Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
This adds a translation layer to make the nrfx driver for the legacy
(i.e. without EasyDMA) nRF SPI peripheral accessible via the updated
Zephyr's API of the SPI driver.
Configuration files are already prepared for adding support for SPIM
(Master with EasyDMA) and SPIS (Slave with EasyDMA) peripherals.
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
Selecting a choice symbol is always a no-op, and the latest version of
Kconfiglib prints a warning. This commit removes all selects of choice
symbols, which might make the Kconfig files a bit clearer and gets rid
of the warnings.
This is just a dumb removal. I did not try to guess the intent of each
select.
Fixes#6849
Signed-off-by: Ulf Magnusson <ulfalizer@gmail.com>
These files contain addresses of memory-mapped registers and their
bitfields definitions. They may become very useful in debugging.
Origin: nrfx
License: BSD 3-Clause
URL: https://github.com/NordicSemiconductor/nrfx/tree/v1.0.0
commit: cf78ebfea1719d85cf4018fe6c08cc73fe5ec719
Purpose: Facilitate debugging on nRF5 SoCs
Maintained-by: External
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
Updates nrfx to the recently released version and adjusts its glue
layer accordingly.
License headers are slightly corrected to match the license text at
https://opensource.org/licenses/BSD-3-Clause.
Deprecated MDK files nrf51xxx_peripherals.h are removed, since they
are replaced by a common file named nrf51_peripherals.h.
Origin: nrfx
License: BSD 3-Clause
URL: https://github.com/NordicSemiconductor/nrfx/tree/v1.0.0
commit: cf78ebfea1719d85cf4018fe6c08cc73fe5ec719
Purpose: Provide peripheral drivers for Nordic SoCs
Maintained-by: External
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
Use HAS_ Kconfig option as intended, those are invisible option that
signify support of a certain feature that can be selected by a hardware
or platform.
For RTT and system view this was not dont in an inconsistent way.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Instead of CONFIG_COAP_MBEDTLS_SSL_MAX_CONTENT_LEN, use recently
introduced CONFIG_MBEDTLS_SSL_MAX_CONTENT_LEN.
Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
This value allows to set max payload length of a TLS protocol
message, and passed thru to mbedTLS as MBEDTLS_SSL_MAX_CONTENT_LEN
setting. The only safe value is 16384, which translates to 32KB
of RAM required just for mbedTLS input/output buffers. Any other
value can be configured *only* per a particular application
(e.g. knowing that it won't pass more than spefific amount of
data at once and/or won't connect to a server with a long cert
chain). Previosuly, we had quite an adhoc and inflexible config
with random values for that setting, based on protocol.
Note that while the safe value is 16384, "backward compatible"
default of 1500 is used (good for DTLS on the other hand).
Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
stm32l0xx_ll_spi.h causes compile warnings about aliasing.
Solution for F0 works here as well.
Tested on STM32L073RZ with 16-bit transfers.
Signed-off-by: Ilya Tagunov <tagunil@gmail.com>
STM32Cube doesn't provide a USB LL API for STM32L0XX series.
This patch removes stm32l0xx_ll_usb.c from CMakeLists because
it doesn't exist.
Signed-off-by: Yannis Damigos <giannis.damigos@gmail.com>
With the introduce of VFS the typedef for fs_file_t & fs_dir_t don't
exist anymore so we need to use 'struct fs_dir_t' or 'struct fs_file_t'.
Fix up some places that got missed in the VFS conversion.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
This Kconfig 'source' statement had no effect as it was referencing a
non-existing Kconfig file. It is not clear if the intention is to
include-if-exists, but I presume not.
Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
This adds the HAL code needed for the SoC in a later patch for
the stm32l0 series.
Origin: ST Microelectronics
License: BSD-3-Clause
URL: http://www.st.com/en/embedded-software/stm32cubel0.html
Commit: 1.10.0
Purpose: HAL layer for stm32l0
Maintained-by: External
Signed-off-by: Endre Karlson <endre.karlson@gmail.com>
To comply with Zephyr Contributing guidelines regarding
ext/ components, update README for STM32L4 series
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
To comply with Zephyr Contributing guidelines regarding
ext/ components, update README for STM32F7 series
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
To comply with Zephyr Contributing guidelines regarding
ext/ components, update README for STM32F4 series
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
To comply with Zephyr Contributing guidelines regarding
ext/ components, update README for STM32F3 series
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
To comply with Zephyr Contributing guidelines regarding
ext/ components, update README for STM32F1 series
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
To comply with Zephyr Contributing guidelines regarding
ext/ components, update README for STM32F0 series
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Reduce the code duplication in ext/hal/st/stm32cube/CMakeLists.txt by
using a foreach loop instead of copy-paste for each SoC.
Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
mbedTLS log level is obviously a mbedTLS config setting. It makes
sense to have it defined in mbedTLS Kconfig, and different parts
of Zephyr to reuse as needed (e.g. net-app vs upcoming TLS wrapper
for sockets).
Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
The goal of mcumgr is to define a common management infrastructure with
pluggable transport and encoding components. In addition, mcumgr
provides definitions and handlers for some core commands: e.g., image
management, file system management, and OS managment.
Origin: mcumgr
License: Apache 2.0
URL: https://github.com/apache/mynewt-mcumgr
commit: 59210e372c927e26637696f2198ff2efe8ea6897
Purpose: Introduction of mcumgr
Maintained-by: External
Signed-off-by: Christopher Collins <ccollins@apache.org>
Fix Kconfig help sections and add spacing to be consistent across all
Kconfig file. In a previous run we missed a few.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
The previous default, "config-threadnet.h", is more or less arbitrary
choice made in a commit 312def2c78 1.5 years ago. In particular,
it's not related to Thread support in Zephyr per se (there was no
such support at that time).
It doesn't make sense to have a default intended for a particular,
not widely used (yet) protocol. Instead, the default should work
out of the box with a contemporary widely deployed arrays of TLS
servers, which are HTTPS server. config-mini-tls1_2.h works with
https://google.com, and by extension, with many other servers on
the Internet.
So, have that as the default, and let applications with special
needs to override that to what they need.
Addresses: #6132
Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
This config enables TLS 1.2 (only), as its name suggests, and
contrary to the (copy-pasted) comments in the file header, so
update these comments.
Fixes: #6131
Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
Atmel SAMD21 series was classified too broadly as SAMD.
This patch names it correctly to make room,
for other members of SAMD series
Signed-off-by: Sean Nyekjaer <sean@nyekjaer.dk>
- Make half float encode/decode conditional
- src/cborpretty.c, src/cbortojson.c and src/cborvalidation.c
conditionally include math.h and half float type support
- Conditionally include math.h in src/compilersupport_p.h to avoid
newlib libc from getting compiled in
- Conditionally compile src/cborparser_dup_string.c if newlib libc is
compiled in
Signed-off-by: Vipul Rahane <vipulrahane@apache.org>
The TinyCBOR library is a small Concise Binary Object
Representation (CBOR) encoder and decoder library, optimized for
very fast operation with very small footprint.
Origin: TinyCBOR
License: MIT
URL: https://github.com/intel/tinycbor
Version: 0.5.0-beta1
commit: 497066ee87dd54341adaa1195bf15ad11ee33b20
Purpose: Introduction of TinyCBOR
Maintained-by: External
Signed-off-by: Vipul Rahane <vipulrahane@apache.org>
Disable compilation warnings for altera_avalon_i2c.c as it is not
maintained in Zephyr.
Cmake does not allow us to use set_source_files_properties on
source files directly, these files need to be linked to either
a target executable or a target library. Due to the above reason,
altera_avalon_i2c CMakeLists.txt creates a library and links the
source file to the zephyr library.
Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
Add wrapper or helper functions for Altera HAL runtime API's to
enable Altera HAL drivers on Zephyr.
Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
Due to a security advisory released on February 1st 2018[1], it's
advisable to update mbedTLS to 2.7.0.
The vulnerability, identified as CVE-2018-0488 and CVE-2018-0487, risk
remote code execution when truncated HMAC is enabled or when verifying
RSASSA-PSS signatures.
[1] https://tls.mbed.org/tech-updates/security-advisories/mbedtls-security-advisory-2018-01Fixes: #6025
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Add Altera Nios-II QSPI Controller HAL driver to Zephyr.
The sources are taken from the Altera SDK v17.
Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
The argument is a u32_t which limits the maximum disk size to 4 GiB.
Rather than fix this, delete the ioctl and switch the only use to
GET_SECTOR_COUNT instead.
Signed-off-by: Michael Hope <mlhx@google.com>
Kbuild supported CONFIG_MBEDTLS_LIBRARY and
CONFIG_MBEDTLS_INSTALL_PATH to allow users to link in an externally
built mbedtls. This was not ported over to CMake, causing build
failures when it was kconfig-enabled.
This patch implements this support. This support has been tested
as well as MBEDTLS_LIBRARY was tested in CI.
Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
Signed-off-by: Ding Tao <miyatsu@qq.com>
CONFIG_MBEDTLS means you are using MBEDTLS
CONFIG_MBEDTLS_BUILTIN means you are using a built-in MDEDTLS
CONFIG_MBEDTLS_LIBRARY means you are using an external MBEDTLS
This patch ensures that you must select one or the other
implementation when MBEDTLS is enabled.
Tested by opening xconfig and observing that when MBEDTLS was enabled,
BUILTIN was automatically enabled, and a radio-button interface
existed to change the implementation.
Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
Signed-off-by: Ding Tao <miyatsu@qq.com>
The old HAL and MDK have been removed from the source tree.
Since RADIO HAL is not yet present in nrfx, the "nrf_radio.h" file
was temporarily moved to "nrfx/hal" folder. It will be replaced with
the proper file from nrfx in its next update.
Signed-off-by: Michał Kruszewski <michal.kruszewski@nordicsemi.no>
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
This commit adds a glue layer that adapts nrfx to be usable in Zephyr
as a host environment and files with static configuration of nrfx
drivers for several supported SoCs.
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
nrfx is an extract from the nRF5 SDK that contains solely the drivers
for peripherals present in Nordic SoCs, for convenience complemented
with the MDK package containing required structures and bitfields
definitions, startup files etc.
Origin: nrfx
License: BSD 3-Clause
URL: https://github.com/NordicSemiconductor/nrfx/tree/v0.8.0
commit: b7cfe970b45ad7cc9c36b62ee620508e9e2c7fb5
Purpose: Provide peripheral drivers for Nordic SoCs
Maintained-by: External
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
The generic library provided by ST in ext/hal/st/lib/sensor/vl53l0x
needs to be adapted to the platform. In this case, the main
modification is the way to use I2C. This is now using the Zephyr
I2C API.
Signed-off-by: Vincent Veron <vincent.veron@st.com>
In order to ease the usage of its sensors, STMicroelectronics provides
some generic libraries. The first sensor to use that is vl53l0x time of
flight sensor. I have made the implementation generic enough to add some
more libraries in the future.
All the libraries will be located in ext/hal/st/lib.
The vl53l0X library is made of 2 parts :
* the core, that is generic to all platforms
* the platform, contains the adaptation layer. This will be
implemented in driver as it is Zephyr specific.
Origin: ST Microelectronics
License: BSD-3-Clause
URL: http://www.st.com/en/embedded-software/stsw-img005.html
Commit: 1.0.2
Purpose: API to ease the usage of vl53l0x sensor
Maintained-by: External
Signed-off-by: Vincent Veron <vincent.veron@st.com>
Add usart-yaml in dts.
Build fsl_lpc_usart and fsl_lpc_flexcomm in
ext/hal/nxp/mcux/drivers/Makefile.
Only polling mode is implemented in usart now. Interrupt can be added in
future.
Signed-off-by: Shiksha Patel <shiksha.patel@nxp.com>
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
By providing USE_STM32_HAL_* and USE_STM32_LL_* menuconfig
options drivers and user aplications can select parts of the HAL
without needing to change the Zephyr source code.
Signed-off-by: Erwin Rol <erwin@erwinrol.com>
Current implementation of LL_SPI_TransmitData16 on F0 family
generates following warning:
"warning: dereferencing type-punned pointer will break strict-aliasing
rules [-Wstrict-aliasing]"
Besides being forbidden by rule, this cast is not needed, as register is
16 bits wide. Modification has been tested on F0 SoC.
stm32yyxx_ll_spi.h being included in soc.h file, warning is generated
at each compiled object, this commit allows a clean build.
This issue is referenced in ST and tracked under
reference 13359. Code will be updated on upcoming stm32cube updates.
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Atmel Software Framework (ASF) provides a set of low-level header
files that give access to different hardware peripherals of Atmel's
ICs.
Origin: Atmel SAMD21 Series Device Support (1.2.276)
License: Apache-2.0
URL: http://packs.download.atmel.com/Atmel.SAMD21_DFP.1.2.276.atpack
Purpose: Introduction of ASF for the SAM0 series.
Maintained-by: External
Signed-off-by: Michael Hope <mlhx@google.com>
mbedTLS include directories will now default to be in the 'app'
include path when mbedTLS has been enabled.
Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
The CoAP samples use an MBEDTLS config "config-coap.h" which could be
re-used by the LwM2M sample, except that most servers use a larger
maximum content length setting of 1500 bytes.
Let's add a CONFIG to set this for users of the CoAP lib and set the
CONFIG value for the samples to the 256 size currently used.
Signed-off-by: Michael Scott <michael@opensourcefoundries.com>
Add the basic infrastructure like driver <-> IRQ mapping table
and ZEPHYR_RTOS compile time flag which are neccessary to make
use the HAL drivers from Zephyr shim drivers.
Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
Add the Altera HAL sources from Altera Quartus Lite SDK
to Zephyr OS under 'ext/hal/altera' folder.
Origin: Altera Quartus Prime Lite SDK
URL: http://dl.altera.com/?edition=lite
Version: v17.0
Purpose: Provides HAL support to Altera's soft IP's
Maintained-by: External
Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
Adds a new gpio driver for the NXP i.MX family of SoCs. Read, write,
configure, and callback API functions are all implemented.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Adds mcux 2.3.0 drivers and device header files for the mimxrt1051 and
mimxrt1052. Updates several drivers that were already imported for other
SoCs but also apply to the mimxrt1051 and mimxrt1052.
Origin: NXP MCUXpresso SDK 2.3.0
URL: mcux.nxp.com
Maintained-by: External
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
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>
Version 0.2.8 of this library has been released on Aug 29, and this
patch updates the library from version 0.2.7. A summary of changes
is available at the official repository at:
https://github.com/01org/tinycrypt/releases/tag/v0.2.8
A number of the changes we already had in tree, so the import to sync
with v0.2.8 is pretty minor.
Signed-off-by: Kumar Gala <kumar.gala@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>
Mysterious TLS errors are printed if we try to work with too
small crypto buffer when https is enabled.
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Add support for nrf52 series SOC. This patch Adds :-
1. Architecture specific Power Management APIs.
2. APIs for invoking various Power Management tasks into nrf52.
Signed-off-by: Youvedeep Singh <youvedeep.singh@intel.com>
Set default MBEDTLS_HEAP_SIZE to 512 which fixes the driver Kconfig
dependency issues.
Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
This should clear up some of the confusion with random number
generators and drivers that obtain entropy from the hardware. Also,
many hardware number generators have limited bandwidth, so it's natural
for their output to be only used for seeding a random number generator.
Signed-off-by: Leandro Pereira <leandro.pereira@intel.com>
The commit delivers HAL/LL static library source files for STM32F0 SoC.
Using STM32Cube provides generic access to all families, maximizes
code reuse across different STM32 families and helps taking benefits
of a mature SDK.
Origin: STM32Cube
URL: http://www.st.com/en/embedded-software/stm32cubef0.html
Purpose: Introduction of STM32F0xx STM32Cube definitions
and Abstraction Layers
Maintained-by: External
Original STM32Cube tree structure has been modified to a minimum
structure for a better fit into Zephyr. HAL is split into 2 parts:
-driver: initially Drivers/STM32F0xx_HAL_Driver, contains HAL and LL
-soc: initially Drivers/CMSIS/Device/ST/STM32F0xx, contains stm32f0xx
SoCs header files.
Fixes#3923
Signed-off-by: Maciej Debski <maciej.debski@rndity.com>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Adds a new clock control driver for Kinetis SoCs that have the system
integration (SIM) module. This will allow mcux shim drivers, such as
uart and i2c, to abstract the call to CLOCK_GetFreq() behind the
clock_control interface and thus be reused for SoCs with different clock
architectures.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
This patch sets the correct LSI_VALUE, according to
STM32F3 reference manual's (RM0316) section 9.2.5 and
STM32F1 reference manual's (RM0008) section 7.2.5.
Signed-off-by: Yannis Damigos <giannis.damigos@gmail.com>
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 is a USB controller driver for STM32F4xx devices using
the STM32 Cube HAL_PCD framework. This has been tested with
the cdc_acm driver on a 96b_carbon board (STM32F401RE).
This is a refactoring of:
usb: usb_dc_stm: Add support for STM32Cube HAL_PCD USB driver
Signed-off-by: Christer Weinigel <christer@weinigel.se>
[daniel.thompson@linaro.org: Removed STM32F40(157) defconfig changes
together with STM32F4Discovery pinmux and defconfig changes, updated
clock settings and pad configuration to match latest mainline]
Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org>
[giannis.damigos@gmail.com: Change uint*_t types to u*_t types,
change SYS_LOG_USB_DC_STM_LEVEL to SYS_LOG_USB_DRIVER_LEVEL and
update pinmux to match latest arm branch]
Signed-off-by: Yannis Damigos <giannis.damigos@gmail.com>
Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
The Silicon Labs Gecko SDK provides a set of low-level
header files that give access to different hardware
peripherals of Silabs EXX32 SoCs.
This patch adds build infrastructure files like Makefile
and Kconfig to introduce the Gecko SDK into Zephyr.
Signed-off-by: Christian Taedcke <hacking@taedcke.com>
This includes:
* the Gecko SDK files for the EFM32WG SoCs
* the emlib peripheral driver files
Origin: Silicon Labs Gecko SDK
URL: https://github.com/SiliconLabs/Gecko_SDK
Version: v5.1.2 (SHA: 938464c68e6c3b2237388a692f767bb0767ec010)
Purpose: Add support for Silicon Labs EXX32 SoCs
License: Zlib
Maintained-by: External
To update the Gecko SDK, download the current version from the given URL
and replace the following folders:
* Gecko_SDK/platform/Device/ should replace ext/hal/silabs/gecko/Device/
* Gecko_SDK/platform/emlib/ should replace ext/hal/silabs/gecko/emlib/
Signed-off-by: Christian Taedcke <hacking@taedcke.com>
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>
When default "n" is selected (as it is by default) this sets:
CONFIG_MBEDTLS_DEBUG="n"
When checked by the existing logic (example shown below) will always
be true and debug will be enabled all the time:
//#if defined(CONFIG_MBEDTLS_DEBUG)
Instead, let's change the config type to "bool" which will be
undefined when set to "n" (by default). The existing #if defined()
checks will work correctly.
NOTE: This fix saves a lot of binary space when MBEDTLS is enabled
due to the amount debug output being compiled in.
Signed-off-by: Michael Scott <michael.scott@linaro.org>
SoCs outside the Kinetis family can have the TRNG module, so move the
HAS_TRNG config from arch/arm/soc/nxp_kinetis to ext/hal/nxp/mcux
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
SoCs outside the Kinetis family can have the RNGA module, so move the
HAS_RNGA config from arch/arm/soc/nxp_kinetis to ext/hal/nxp/mcux
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
SoCs outside the Kinetis family can have the FTM module, so move the
HAS_FTM config from arch/arm/soc/nxp_kinetis to ext/hal/nxp/mcux
Note that 'select HAS_FTM' was previously missing from Kconfig.soc and
is now fixed.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
SoCs outside the Kinetis family can have the ADC16 module, so move the
HAS_ADC16 config from arch/arm/soc/nxp_kinetis to ext/hal/nxp/mcux
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
SoCs outside the Kinetis family can have the LPSCI module, so move the
HAS_LPSCI config from arch/arm/soc/nxp_kinetis to ext/hal/nxp/mcux
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
SoCs outside the Kinetis family can have the LPUART module, so move the
HAS_LPUART config from arch/arm/soc/nxp_kinetis to ext/hal/nxp/mcux
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Update Cube version for STM32L4XX family
from version: V1.8.0
to version: V1.9.0
Note: git shows 100% diff on all files.
You need to tick "Ignore space change" in git UI to see real
differences. I tried different things to fix this without
success (dos2unix, file encoding, files access right).
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Update Cube version for STM32F1XX family
from version: V1.5.0
to version: V1.6.0
Update Patch list, since this version corrects bug 33517
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Commit "ext: hal: stm32f1x and stm32f4x: disable i2c HAL"
and "stm32cube: Fix warning when SPI LL API is compiled"
modified stm32cube HAL but this was not documented in
series README file, which makes it hazardous to update
stm32cube packages.
This commit corrects this oversight.
Additionally STM32Cube README file to provide this information
and how to use it
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
While importing the nrf_power.h to use the nrf_power_resetreas_get()
function the missing header file error was presented.
Origin: Nordic SDK 12.2.0 (components/drivers_nrf/hal)
URL: http://developer.nordicsemi.com/nRF5_SDK/
License: 3-clause BSD
Maintained-by: External
Signed-off-by: Flavio Arieta Netto <flavio@exati.com.br>
Signed-off-by: flavio <flavio@exati.com.br>
Due to a security advisory released on August 28th 2017[1], it's
advisable to update mbedTLS to 2.6.0.
The vulnerability, identified as CVE-2017-14032, allows bypassing the
authentication of a peer when the authentication mode is configured as
optional (the default is secure, but applications might change the
setting.)
tests/crypto/mbedtls is passing.
[1] https://goo.gl/s4imN6
Signed-off-by: Leandro Pereira <leandro.pereira@intel.com>
This commit fixes the issue reported by Coverity: an array compared
against NULL is always false.
Coverity-CID: 143715
Coverity-CID: 143730
THis patch is ported from below patch:
https://gerrit.zephyrproject.org/r/#/c/7419/
Jira : ZEP-2468
Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
This commit fixes the issue reported by Coverity: an array compared
against NULL is always false.
Coverity-CID: 143687
Coverity-CID: 143737
Coverity-CID: 143740
This patch is ported from the below patch:
https://gerrit.zephyrproject.org/r/#/c/7418/
Jira: ZEP-2468
Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
Zeroing out 2*NUM_ECC_WORDS bytes starting from the `p2` pointer would
not only write 16 bytes to an 8-byte array allocated on the stack, but
also not clear out important arrays such as `_private` and `tmp`.
Moreover, no memory was cleared out before returning from the function,
and there are two exit points.
Properly memset() all private data and use an empty assembly block
referencing the memory region to avoid the memset() calls to be elided
by the compiler.
Ideally, in the future, all stack-allocated variables that contains
sensitive information should be marked with __attribute__((cleanup)), a
GCC extension that calls a function when the variable exits the scope.
This will not only reduce code size, but for other functions with
multiple exit points, also ensure that sensitive data is always
cleared.
Signed-off-by: Leandro Pereira <leandro.pereira@intel.com>
This reverts commit e1382cc7d6.
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: 4d912b004b
Revert "ext: simplelink: Enable SimpleLink to use Zephyr __errno"
commit: 4e022f7b28
Revert "ext: simplelink: Add SimpleLink DPL porting layer to Zephyr"
commit: 4bc51e67d4
Revert "ext: simplelink: Enable build of the SimpleLink host driver."
commit: 2d2615a49a
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>
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>
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>
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>
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>
Adds a shim layer around the mcux ftm driver to adapt it to the Zephyr
pwm interface.
Jira: ZEP-2025
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Sample code such as the adc_simple driver test set a sampling delay of
12, however that caused this calculation to underflow so the real
delay came out to more like 65534.
Signed-off-by: Geoff Gustafson <geoff@linux.intel.com>
When integrating Zephyr in other environments to build for a specific
product or platform, we should be able to remove HALs that are not
needed and usually huge in size.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
ReST defines interpreted text roles where text enclosed by single quotes
can be "intrepreted", for example :ref:`some name` becomes a link to
a label anywhere in the doc set named "some name", :c:func:`funcname()`
becomes a link to the API documentation for "funcname", and
:option:`CONFIG_NAME` becomes a link to, in our case, the documentation
for the generated Kconfig option.
This patch fixes uses of `some name` (without a role) by either adding
an explicit role, or changing to ``some name``, which indicates inline
code block formatting (most likely what was intended).
This is a precursor to changing the default behavior of interpreted
text to treat `some name` as :any:`some name` (as configured in
doc/conf.py), which would attempt to create a link to any available
definition of "some name".
We may not change this default role behavior, but it becomes an option
after the fixes in this patch. In any case, this patch fixes incorrect
uses of single-quoted text (possibly introduced because GitHub's
markdown language uses single-quoted text for inline code formatting).
Jira: ZEP-2414
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
This mbedtls configuration creates support for DTLS. The values
are not optimized for RAM usage, but can be used for various
networking sample applications.
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Version 0.2.7 of this library has been released on June 30th, and this
patch updates the library from version 0.2.6. A summary of changes
is available at the official repository at:
https://github.com/01org/tinycrypt/releases/tag/v0.2.7
There were some API changes in this version, so some tests are not
building: ccm_mode, ecc_dh, and ecc_dsa. Fixes to these tests and
subsystems affected by the changes will be provided.
Signed-off-by: Leandro Pereira <leandro.pereira@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Adds a shim layer around the mcux adc16 driver to adapt it to the Zephyr
adc interface.
Jira: ZEP-1396
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
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>
Add a STM32 LL based driver for the RNG processor. The RNG processor
is a random number generator, based on a continuous analog noise, that
provides a random 32-bit value to the host when read. The RNG passed
the FIPS PUB 140-2 (2001 October 10) tests with a success ratio of 99%.
Signed-off-by: Erwin Rol <erwin@erwinrol.com>
Add minimal interface for the KW40Z XCVR driver to match the one offered
in MCUX v2.2 by the KW41Z XCVR driver.
This is needed to reuse the KW41Z IEEE 802.15.4 driver on KW40Z.
Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
Add and update makefiles in order to build either the KW41Z or KW40Z
XCVR driver based on soc name.
Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
Update KW40Z files for building XCVR driver by adding the required
includes, removing unneeded ones and replacing OSA_EnterCritical/
OSA_ExitCritical with OSA_InterruptDisable/OSA_InterruptEnable.
Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
Import from Kinetis SDK v1.3 MKW40Z4_extension.h and fsl_bitaccess.h
which are needed to build the XCVR driver for KW40Z.
Origin: NXP Kinetis KW40Z Connectivity Software
Maintained-by: External
Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
Import the KW40Z XCVR driver from Kinetis SDK v1.3, which is needed
to setup the radio on the hexiwear_kw40z board.
Origin: NXP Kinetis KW40Z Connectivity Software
Maintained-by: External
Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
Current implementation of LL_SPI_TransmitData16 on F3/F7/L4 family
generates following warning:
"warning: dereferencing type-punned pointer will break strict-aliasing
rules [-Wstrict-aliasing]"
Besides being forbidden by rule, this cast is not needed, as register is
16 bits wide. Modification has been tested on L4 SoC.
stm32yyxx_ll_spi.h being included in soc.h file, warning is generated
at each compiled object, this commit allows a clean build.
This issue is referenced in ST and tracked under
reference 13359. Code will be updated on upcoming stm32cube updates.
Change-Id: I3ca54a81d849d4852eca86b52b6825b60e18b752
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Enabling the HAL and the LL flags duplicate definitions when
compiling in driver.
Since the i2c HAL is not needed, disable it.
This is a HAL issue that needs to be addressed (not zephyr)
Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org>
This changes increases content buffer length
MBEDTLS_SSL_MAX_CONTENT_LEN to 1500 bytes so that we can use
this config for echo-client and echo-server network sample
applications which need to send bigger data than 1024 bytes.
Removing MBEDTLS_PEM_PARSE_C as we do not have any cert in PEM
format.
Place various MBEDTLS debug options behind CONFIG_MBEDTLS_DEBUG
Kconfig option which was introduced in previous commit.
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Add Kconfig option that can be used to enable various debug
options in mbedtls config file.
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
As the mbedtls heap is global for the whole device, enable it
during device startup if configured so. The heap size can be
set in config file. There is no default value for the heap as
that depends very much on application needs.
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Align stm32f1xx series clock driver to other parts of stm32 family.
Driver support both Connectivity and Density lines of stm32f1 series,
that are based on different Reset and Clock Control architectures.
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Update Cube version for STM32L4XX family
from version: V1.6.0
to version: V1.8.0
Add support for following soc:
stm32l496xx
stm32l4a6xx
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Provide 5 micro sec delay after power change to analog comparator to
get it stable. If delay is not given, we observed some instability and
it generates random interrupt.
Jira: ZEP-1438/ZEP-1927
Signed-off-by: Youvedeep Singh <youvedeep.singh@intel.com>
Atmel Software Framework (ASF) provides a set of low-level
header files that give access to different hardware
peripherals of Atmel's ICs.
Origin: Atmel SAM4S Series Device Support (1.0.56)
URL: http://packs.download.atmel.com/Atmel.SAM4S_DFP.1.0.56.atpack
Maintained-by: External
Signed-off-by: Piotr Mienkowski <piotr.mienkowski@gmail.com>
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>
Nordic Semiconductor's Microcontroller Development Kit
provides a set of low-level header files that describe
the different hardware registers and peripherals of
Nordic ICs.
Origin: Nordic MDK 8.13.0 (nRF5x MDK for Gcc with 3-clause BSD license)
URL: http://www.nordicsemi.com/eng/Products/Bluetooth-low-energy
Maintained-by: External
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Adds a shim layer around the mcux lpsci driver to adapt it to the Zephyr
serial interface.
Change-Id: I024f1605e3194f34bb57e8a121900e05b3085a82
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
This commit enables STM32Cube LL based driver for stm32f4 series.
This generic driver provides a unified API to clock driver for all
stm32 series.
LL API allows driver to be lightweight and to keep genericity across
stm32 family to ease further devlopment and maintenance.
Change-Id: Ie31ae8f433313787f9c9eda77de41925721d54dd
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Update Cube version for STM32F1XX family
from version: V1.14.0
to version: V1.15.0
Add support for Low Level API on stm32f1 family
Change-Id: I8cb5fe2fd94be3a320e863c7b5ed59e4c2312e87
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Implement just the OSA_InterruptEnable and OSA_InterruptDisable functions
as only these two are needed to build the XCVR driver.
Jira: ZEP-2026
Change-Id: I49e0cedd3a2553a59b667a2b9945db6b8d0be0d2
Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
Import the XCVR driver from Kinetis SDK, which is needed to setup the radio
on the FRDM-KW41Z board. Also import EmbeddedTypes.h and the OSAbstraction
interface, as they are needed to build the XCVR driver.
Origin: https://www.nxp.com/webapp/sps/download/license.jsp?colCode=KW41Z-CONNECTIVITY-SOFTWARE-LIN
Maintained-by: External
Jira: ZEP-2026
Change-Id: Iee0acb2320f7bec887d8d2342772dde18b11b12f
Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
These libraries allow publishing information to enable system profiling
when using the SEGGER SystemView tool. This tool provides a way to record
and visualize events such as threads scheduling, interrupts, and can help
find unintended interactions and resource conflicts. More information can
be obtained from SEGGER website at [1], including downloads for major
platforms.
[1] https://www.segger.com/systemview.html?p=1731
Jira: ZEP-1463
Origin: https://www.segger.com/systemview.html?p=1731
Change-Id: I04f5897690089dc8a8fb4ae60726fe3a022b7a30
Signed-off-by: Leandro Pereira <leandro.pereira@intel.com>
Reuses the kw41z clock driver for kw40z via preprocessor includes.
Copies the kw41z fsl_device_registers.h to kw40z and subset devices with
minor modifications for each device.
Jira: ZEP-1388
Change-Id: Ifae16eb9b7e7d18fc13c22dc51887fc1d8a5e21d
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Imports device header files for the kw40z and its subset devices (kw30z,
kw20z) from the Kinetis SDK 1.3. The kw40z has all the same peripherals
as the kw41z but less flash and ram, therefore we can use the MCUXpresso
SDK 2.x drivers for kw41z with the KSDK device header files for the
kw40z.
Origin: https://www.nxp.com/webapp/Download?colCode=KW40Z-CONNECTIVITY-SOFTWARE&appType=license&Parent_
Maintained-by: External
Jira: ZEP-1388
Change-Id: I30b283a0c9dd4f88b8c21c03814dcdff76b684c4
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
QMSI 1.4 was finally released, and there are no changes to drivers
from RC4. This updates the README file on ext/hal/qmsi/ to point to
the correct release version.
Change-Id: I52a537058ff15cb1602d16bc7c46c49d44876e63
Signed-off-by: Jesus Sanchez-Palencia <jesus.sanchez-palencia@intel.com>
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>
Update Cube version for STM32F3XX family
from version: V1.6.0
to version: V1.7.0
Minor update
Changes from official delivery:
*dos2unix applied
*trailing white spaces removed
Change-Id: I6ff19632cab6e8350f19aa7e17063c05ec36898f
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Update Cube version for STM32F4XX family
from version: V1.14.0
to version: V1.15.0
Add support for Low Level API on stm32f4 familly
Change-Id: I459b61f011ffbc2cc265f58cd3f0be8b77155fc2
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Update Cube version for STM32F7XX family
from version: V1.4.0
to version: V1.6.0
Add support for Low Level API on stm32f7 familly
Change-Id: Iabe18f952d2cf0847bd72ce9d894d4c0cbd4c0f9
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Adds mcux 2.2 drivers and device header files for the kl25z. Updates
several drivers that were already imported for the kw41z but also apply
to kl25z.
Origin: NXP MCUXpresso SDK 2.2
URL: mcux.nxp.com
Maintained-by: External
Change-Id: Ifc9d70b79f25d8ba0c595a7ceb5881ff2fc0fbf7
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
In prep for supporting the older KL2x SoCs that use a different SPI
block, rename the current SPI driver to DSPI to match what the MCUX HAL
defines it as.
Change-Id: I9097580df5fca649ab6fd9a38212fced0b1ea6ed
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
No major fixes since RC3 were made, and mostly the security fixes
for the Quark Bootloader were the main driver behind this new QMSI
Release Candidate.
There are no changes to shim drivers at this moment.
JIRA: ZEP-1572
Change-Id: I68d2b0ee90863d3def909de556314bd86712a059
Signed-off-by: Jesus Sanchez-Palencia <jesus.sanchez-palencia@intel.com>
Provide a random driver wrapped around the MCUX TRNG driver.
Change-Id: Icbd7ab587aa18ecbd7eae52290aaa5d8ee504cf2
Origin: Original
Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
MCUX contains more than one type of random number generator,
so refrect this in config and file names.
Change-Id: Iba4482a1ae41f35d471686f8b159c113147c4df8
Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
This patch includes the new files in the build and refactors the
Kconfig and Kbuild files in ext/hal/nordic to acommodate for the presence of
the radio driver.
Change-Id: Ifeda1f6d51916c7096be3c09ef7db6ca59c87728
Signed-off-by: Wojciech Bober <wojciech.bober@nordicsemi.no>
No major fixes since RC2 were made, but some clean up was done.
There are no changes to shim drivers at this moment.
JIRA: ZEP-1572
Change-Id: I2436f91bfa3aae186c778b5ff4129bb0e6b7db1f
Signed-off-by: Jesus Sanchez-Palencia <jesus.sanchez-palencia@intel.com>
This new clock control driver aims at providing a lightweight
generic driver to the whole stm32 family.
Driver is based on LL Cube API and hence is for now available
only for STM32 supporting this API: stm32f3xx and stm32l4xx.
Other families should be supported soon.
Once globally supported, this unique driver will also help
reducing the impact of stm32 clock control heterogeneity in
other drivers.
Change-Id: Id15a8d0d44f03809b2907ef10d6877700459e674
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Update the builtin QMSI code to 1.4 (RC2).
The below shim drivers were updated for API or interface changes:
- aio
- counter
- i2c_ss
- rtc
- wdt.
Also, arch soc specific power management code were updated.
Jira: ZEP-1572
Change-Id: Ibc8fae032a39ffb2c2c997f697835bc0208fd308
Signed-off-by: Jesus Sanchez-Palencia <jesus.sanchez-palencia@intel.com>
Signed-off-by: Kuo-Lang Tseng <kuo-lang.tseng@intel.com>
This commit changes Kconfig prefix for ieee802154 drivers to
IEEE802154_*. This is done for consistency with config prefixes
used in other subsystems.
Change-Id: Ibbb4d96d2b748f4f13135bde85304ec34c5a90a6
Signed-off-by: Wojciech Bober <wojciech.bober@nordicsemi.no>
Incomplete type is not acceptable to LLVM. Let's use
pointer instead.
Jira: ZEP-1179
Change-Id: Ie6324b2e5076ae2b378fa270d0d9fdcbf29bf8ce
Signed-off-by: Baohong Liu <baohong.liu@intel.com>
Header files from Atmel ASF define several preprocesor macros
which are unused and break compilation with some toolchains.
This patch removes those macros. Currently only from same70q21.h
header file which is used by SAM E70 Xplained target board.
Jira: ZEP-976
Change-Id: I13adb92c73773815c6df221ef33b0f56795f1d8c
Signed-off-by: Piotr Mienkowski <piotr.mienkowski@gmail.com>
Atmel Software Framework (ASF) provides a set of low-level
header files that give access to different hardware
peripherals of Atmel's ICs.
Origin: Atmel SAM3X Series Device Support (1.0.50)
URL: http://packs.download.atmel.com/Atmel.SAM3X_DFP.1.0.50.atpack
License: Apache-2.0
Maintained-by: External
Jira: ZEP-976
Change-Id: Icff0e6d899ea1bd9fb12cb03ca0c3644cac687d9
Signed-off-by: Piotr Mienkowski <piotr.mienkowski@gmail.com>
Atmel Software Framework (ASF) provides a set of low-level
header files that give access to different hardware
peripherals of Atmel's ICs.
Origin: Atmel SAME70 Series Device Support (2.0.78)
URL: http://packs.download.atmel.com/Atmel.SAME70_DFP.2.0.78.atpack
License: Apache-2.0
Maintained-by: External
Jira: ZEP-976
Change-Id: I81c2cff3c4a05502c712d71c883650a16c9bb228
Signed-off-by: Piotr Mienkowski <piotr.mienkowski@gmail.com>
Atmel Software Framework (ASF) provides a set of low-level
header files that give access to different hardware
peripherals of Atmel's ICs.
This patch adds build infrastructure files like Makefile
and Kconfig to introduce ASF into Zephyr.
Jira: ZEP-976
Change-Id: I52eead376f6c1a057d6f03292ef77ff00f1b8708
Signed-off-by: Piotr Mienkowski <piotr.mienkowski@gmail.com>
Update Cube version for STM32L4XX family
from version: V1.5.2
to version: V1.6.0
Add support for following soc:
stm32l451xx
stm32l452xx
stm32l462xx
Change-Id: I116458ff8163f99aec5cf3965296d79728faf672
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Update Cube version for STM32F4XX family
from version: V1.13.0
to version: V1.14.0
Add support for following soc:
stm32f413xx
stm32f423xx
Change-Id: I050bdbe5980b2294955379a2ad917d25aa501578
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Adds a shim layer around the mcux lpuart driver to adapt it to the Zephyr
serial interface.
NXP has multiple uart hardware blocks that implement different features
and have different register maps. The k64 has a uart block called
'uart', while the kw41 has a uart block called 'lpuart' (low power
uart). The MCUXpresso SDK provides separate drivers for each type of
uart block but with similar software interfaces. As a result, there are
also separate shim drivers in Zephyr. There is a 1:1:1 relationship
between hardware block, mcux driver, and mcux shim driver.
Because we now have two mcux shim drivers for the uart interface, a new
naming convention is created:
<interface>_mcux_<hw block>
Where <interface> is the name of the Zephyr interface, in this case
'uart'. This convention is not new.
<hw block> is the name of the NXP hardware block, in this case 'lpuart'.
This is the new part, and distinguishes different hardware blocks
for the same interface.
Change-Id: I3a80b9bffa116bbb2b02ee950d4bdd79a19a4edc
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Imports the mcux device header files and peripheral drivers for the
kw41z and its subset devices (kw31z, kw21z). The subset devices are
included since they are released together with the kw41z by nxp, and to
avoid them getting out of sync in Zephyr if they were added later.
The kw41z shares several peripheral drivers with the k64f, so those
drivers are updated to the newer version released with the kw41z.
Origin: NXP Kinetis KW41Z Connectivity Software Linux(REV 1.0.2)
URL: https://www.nxp.com/webapp/Download?colCode=KW41Z-CONNECTIVITY-SOFTWARE-LIN&appType=license&Parent_nodeId=1441226359347708902175&Parent_pageType=product
Maintained-by: External
Jira: ZEP-1389
Change-Id: Id8e87f32b7afe01605e1e05b88addc547b2f5e21
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Since nothing is currently using the nordic HAL lets just stick a dummy
build line. Once something uses it, it can add what's needed and pull
in the code that is desired.
Change-Id: Id70bb6a88c6f1bbb7f33421cd0c14aafb83597b5
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Nordic Semiconductor's Software Development Kit's HAL layer
provides a set of low-level header and sourcefiles that give access
to the different hardware peripherals of Nordic ICs.
This patch includes the new files in the build and refactors the Kconfig
and Kbuild files in ext/hal/nordic to acommodate for the presence of the
new HAL layer.
Change-Id: Ie8e1a4c9fcc7e9058a9d16a2692ef1789603aa53
Signed-off-by: Wojciech Bober <wojciech.bober@nordicsemi.no>
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Nordic Semiconductor's Software Development Kit's HAL layer
provides a set of low-level header and sourcefiles that give access to
the different hardware peripherals of Nordic ICs.
Origin: Nordic SDK 12.2.0 (components/drivers_nrf/hal)
URL: http://developer.nordicsemi.com/nRF5_SDK/
License: 3-clause BSD
Maintained-by: External
Change-Id: Iafb5816af89461c8e88ba3b47e790cb6141d10fe
Signed-off-by: Wojciech Bober <wojciech.bober@nordicsemi.no>
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Add driver and configuration for the MCR20A 802.15.4
transceiver.
Jira: ZEP-1429
Change-Id: I0b17b688220a47c2f0e5cde269064bbd0dec824a
Signed-off-by: Johann Fischer <j.fischer@phytec.de>
Add overwrites header file for MCR20 Register values.
Overwrite values are non-default register values that
configure the transceiver device to a more optimally
performing posture.
(Excerpt from the documentation part of MCR20Overwrites.h)
Origin: Kinetis MKW2xD and MCR20A Connectivity Software
URL: https://www.nxp.com/
(The complete URL can be found in the ext/hal/nxp/mcux/README)
Revision: (REV 1.0.0)
Maintained-by: External
Change-Id: Id96db2ad70279c0b11d749d65e9148244d8fdc2f
Signed-off-by: Johann Fischer <j.fischer@phytec.de>
Update elm-chan FAT FS with latest sources. Updated README with changes
made to default configurations.
Change-Id: I3c868479506042d174ac7df360ce62931d8ac5af
Jira: ZEP-1338
Signed-off-by: Ramesh Thomas <ramesh.thomas@intel.com>
Adds a shim layer around the mcux dspi driver to adapt it to the Zephyr
spi interface. Unlike the existing k64 spi driver, this driver can be
used for other Kinetis SoCs that contain the dspi module.
Jira: ZEP-1374
Change-Id: I9417c1513565dfcc47ccda098492f60e840f4f84
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Adds a shim layer around the mcux uart driver to adapt it to the Zephyr
serial interface. Unlike the existing (and confusingly-named) uart_k20
driver, this driver can be used for k64 and other Kinetis SoCs.
Implements polling and interrupt-driven serial interface functions that
are logically equivalent to the uart_k20 driver. Adds an extra instance,
irq_tx_empty(), and err_check() that aren't implemented in the uart_k20
driver.
Jira: ZEP-719
Change-Id: Iab99542e7ec921ef4f361437768113fee01e5fe8
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Now that all the ksdk/mcux shim drivers use the config HAS_MCUX, we can
remove the config HAS_KSDK.
Change-Id: I94b7db41efae10c9234681aeb57f94e67a33c262
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Renames the ksdk random generator shim driver to mcux.
Change-Id: I8bc376937fed3024c809782139a0a72c7332f89a
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Renames the Kinetis SDK (ksdk) to the MCUXpresso SDK (mcux) to reflect
the recent rebranding by NXP to include support for LPC and i.MX SoCs.
Temporarily leaves the config option HAS_KSDK to allow renaming each
shim driver in a separate commit.
Change-Id: I738f3687755fcd429a105e723fa25f1da815b519
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
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>
Nordic Semiconductor's Microcontroller Development Kit
provides a set of low-level header files that describe
the different hardware registers and peripherals of
Nordic ICs.
This new version adds support for the nRF52840 IC.
Origin: Nordic MDK 8.11.1
URL: http://www.nordicsemi.com/eng/Products/Bluetooth-low-energy
Maintained-by: External
JIRA: ZEP-1418
Change-Id: I76793f8f2bb1e588ed5244bd19a020bad021839b
Signed-off-by: Vinayak Chettimada <vinayak.kariappa.chettimada@nordicsemi.no>
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
TinyCrypt 0.2.5 was released a few hours ago:
https://github.com/01org/tinycrypt/releases/tag/v0.2.5
This patch updates some TinyCrypt files, solving the following issues:
- Decryptions using ccm mode can incorrectly fail
- Minor style issues in code documentation
Change-Id: I606cde179888aad7a52fd277d73973f2347d8882
Signed-off-by: Flavio Santes <flavio.santes@intel.com>
When going into DEEP_SLEEP mode, the ARC core now saves
its context. This includes:
- All core registers
- Stack pointer
- Program counter (restored by jumping to the restore code)
The arc reset code now checks if the GPS0 bit 2 is set.
This is similar to the behavior of the x86 core done by
the QMSI bootloader which is setting GPS0 bit 1 in order
to call the restore path instead of cold boot path.
The sample has been adapted in order to support the ARC.
Jira: ZEP-1222
Change-Id: I375f03b16b8a5fd1f07ead55cf7e4947d6290c9f
Signed-off-by: Julien Delayen <julien.delayen@intel.com>
Provide PWM driver for STM32 series F1/F4/L4.
Driver is ported on STM32Cube HAL and should support other STM32
series with minor updates.
Configuration is done so that PWM sample driver could be run on
all nucleo boards supporting PWM driver.
Change-Id: I6522a565451085df932e0eefd8404268380b5bfe
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Add the initial SoC support for the STM32L4XX family. The code was
tested on STM32L476RG, but should work on any STM32L4XX currently
available.
This implementation was inspired by the stm32f1x implementation.
Change-Id: Id6670bce0c423617284e8467a9c461531f948e0f
Signed-off-by: Fabien Parent <fparent@baylibre.com>
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
This new README provides guidelines on STM32Cube introduction
into Zephyr.
Change-Id: I06b22852495dbe7e7f23e88be060fe23e8bd18b5
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
STM32Cube based implementation allows single driver file for
all stm32 based SoCs.
By maximizing code reuse, use of STM32Cube eases new SoCs
porting into Zephyr and provides better maintanability and
maturity.
Change-Id: Ief4b723add3dfc8b2a839683559c5a4c5d5eb837
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
The Real Time Terminal functionality of the Segger J-Link
debug probe and software suite allows applications to write
to a certain RAM area that is read in real-time by the
debugger. This is specially useful when a UART is not
available to provide a console.
Origin: Segger J-Link 6.10m
URL: https://www.segger.com/downloads/jlink
Maintained-by: External
Change-Id: I47f5e2d5172797004a3f34ea2f002cd781a22cc8
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
This is a sample app using ECJPAKE crypto algorithm on DTLS, using
mbedTLS, and native IP stack
Jira: ZEP-900
Jira: ZEP-943
Change-Id: Ica17b047aab11b989d3e8c8f6ac1b79e3041053a
Signed-off-by: Sergio Rodriguez <sergio.sf.rodriguez@intel.com>
This commit fixes the issue reported by Coverity: an array compared
against NULL is always false.
Coverity-CID: 143715
Coverity-CID: 143730
Change-Id: Ie3c87f892c2b2a337981125e2a92c37c579d4b38
Signed-off-by: Flavio Santes <flavio.santes@intel.com>
This commit fixes the issue reported by Coverity: an array compared
against NULL is always false.
Coverity-CID: 143687
Coverity-CID: 143737
Coverity-CID: 143740
Change-Id: Id94a144c47b3377876695e86da8c0c33a989ec99
Signed-off-by: Flavio Santes <flavio.santes@intel.com>