Commit graph

537 commits

Author SHA1 Message Date
Szymon Janc 18d9cd8831 ext: lib: mgmt: mcumgr: update to latest master
This patch introduce version which add two new features:
 - ability to resume partial upload
 - option to not compile taskstat and echo commands

Origin: mcumgr
License: Apache 2.0
URL: https://github.com/apache/mynewt-mcumgr
Commit: 6251689367fcfe92898b90978b877a242b6e4b24
Purpose: New features
Maintained-by: External

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2018-11-04 22:01:56 +01:00
Kumar Gala 501283e9bf ext: hal: nxp: lpc: Remove board.h include
The lpc startup HAL ext code doesn't need anything from board.h so
lets remove the include.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2018-11-01 13:15:18 +01:00
Diego Sueiro 4ce6555c1d drivers: Introduce Silabs i2c shim driver
Adds the I2C shim driver for Silabs Gecko Devices.

Signed-off-by: Diego Sueiro <diego.sueiro@gmail.com>
2018-10-31 09:00:38 -05:00
Diego Sueiro 3b0260939c drivers: Introduce Silabs leuart shim serial driver
Adds the Low Energy UART shim serial driver for Silabs Gecko Devices.

Signed-off-by: Diego Sueiro <diego.sueiro@gmail.com>
2018-10-31 09:00:38 -05:00
Pavel Kral a19726ee1e logger: console: init rtt only once
As RTT is used by more subsystem in Zephyr, initialization is moved
from RTT console and RTT logger backend to common kernel init phase.

Signed-off-by: Pavel Kral <pavel.kral@omsquare.com>
2018-10-31 12:47:53 +01:00
Pavel Kral ced1592e54 logger: fix PR codestyle issues
Fix some issues as complained by shippable.

Signed-off-by: Pavel Kral <pavel.kral@omsquare.com>
2018-10-31 12:47:53 +01:00
David Kinder fdbcb3ce38 ext: debug: segger: Fix grammar in Kconfig
Fix grammar in ext/debug/segger/Kconfig

Signed-off-by: David Kinder <david.b.kinder@intel.com>
Signed-off-by: Pavel Kral <pavel.kral@omsquare.com>
2018-10-31 12:47:53 +01:00
Pavel Kral 1a583fa8be ext: debug: segger: Add USE_SEGGER_RTT that enables RTT libraries.
This option allows to explicitly include Segger RTT libraries and
enables use of it for various subsystems. It is disabled by
default as it consumes more RAM.

Signed-off-by: Pavel Kral <pavel.kral@omsquare.com>
2018-10-31 12:47:53 +01:00
Pavel Kral 2c84fd2631 ext: debug: segger: Terminal sharing using SEGGER_RTT_LOCK/UNLOCK macros
This commit allows to share default RTT (terminal) buffer with various
Zephyr subsystems.

Signed-off-by: Pavel Kral <pavel.kral@omsquare.com>
2018-10-31 12:47:53 +01:00
Pavel Kral 89b355c916 logger: Add a Segger RTT backend
Add logger backend that uses Segger RTT for message output. Several
options are provided allowing configuration of up-buffer and logger
behaviour.

Signed-off-by: Pavel Kral <pavel.kral@omsquare.com>
2018-10-31 12:47:53 +01:00
Sigvart M. Hovland 0fe7a9864a ext: debug: segger: Add missing # for else in SEGGER config header
This commit fixes issue #10685

Signed-off-by: Sigvart M. Hovland <sigvart.hovland@nordicsemi.no>
2018-10-30 06:00:20 -05:00
Erwan Gouriou 3f71772555 ext/hal/st: stm32f7: Fix README
READM was not updated following last STM32Cube update.
Fix this.


Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-29 10:30:48 +00:00
Erwan Gouriou 60d96600b4 ext/hal/st: update stm32l4 stm32cube package from v1.12.0 to v1.13.0
Update STM32L4 series stm32cube package from V1.12.0 to V1.13.0.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-29 10:30:48 +00:00
Diego Sueiro 537798db0d soc: arm: exx32: Add Silabs EFR32MG12P soc files
The Silicon Labs EFR32MG12P Mighty Gecko MCU includes:
* Cortex-M4F core at 40MHz
* up to 1024KB of flash and 256KB of RAM
* integrated Sub-GHz and/or 2.4GHz radio
* multiple low power peripherals

Signed-off-by: Diego Sueiro <diego.sueiro@gmail.com>
Signed-off-by: Endre Karlson <endre.karslon@gmail.com>
2018-10-19 13:47:49 -05:00
Diego Sueiro 04c015b8df ext: Integrate Silabs EFR32MG12P Gecko SDK into Zephyr
This patch integrates EFR32MG12P support into the build
infrastructure of Zephyr.

Signed-off-by: Diego Sueiro <diego.sueiro@gmail.com>
2018-10-19 13:47:49 -05:00
Diego Sueiro 063dce99b1 ext: Add Silabs Gecko SDK for EFR32MG12P SoCs
Origin: Silicon Labs EFR32MG12P Mighty Gecko Series Device Support
CMSIS PACK
URL: https://www.silabs.com/documents/public/cmsis-packs/SiliconLabs.EFR32MG12P_DFP.5.5.0.pack
Version: 5.5.0 (2018-05-07)
Purpose: Add support for Silicon Labs EFR32MG12P SoCs
License: Zlib
Maintained-by: External

To update the Gecko SDK, download the current version from the given URL
rename .pack to .zip, unpack and replace the following folder:
* Device/SiliconLabs/ should replace
  ext/hal/silabs/gecko/Device/SiliconLabs

Signed-off-by: Diego Sueiro <diego.sueiro@gmail.com>
2018-10-19 13:47:49 -05:00
Diego Sueiro 1131fc07a6 ext: fix a typo in Silabs Gecko emlib
Add a missing "V" in _EMU_EM23PERNORETAINCTRL_DAC0DIS_MASK ->
_EMU_EM23PERNORETAINCTRL_VDAC0DIS_MASK in em_emu.h

Signed-off-by: Diego Sueiro <diego.sueiro@gmail.com>
2018-10-19 13:47:49 -05:00
Erwan Gouriou 5776ea8869 ext/hal: stm32cube: fix exti declaration in STM32F7
LL_EXTI_LINE_18 and LL_EXTI_LINE_20 are declared in stm32f7xx_hal_pcd.h
and in stm32f7xx_ll_exti.h which generates warnings. Set #ifndef
in stm32f7xx_ll_exti.h around declarations.
STBugtracker: 55274

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-18 18:32:06 -05:00
Erwan Gouriou 13e9f4ee94 ext/hal: stm32cube: fix exti declaration in STM32L4
LL_EXTI_LINE_18 and LL_EXTI_LINE_20 are declared in stm32l4xx_hal_pcd.h
and in stm32l4xx_ll_exti.h which generates warnings. Set #ifndef
in stm32l4xx_ll_exti.h around declarations.
STBugtracker: 55275

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-18 18:32:06 -05:00
Marti Bolivar a10f7a0653 lib: openamp: fix build info
The toolchain information is using out of date (and misspelled)
environment variables. Rather than duplicate information here which is
already present in the getting started guide, just link to it.

Clean up some other docs.

Signed-off-by: Marti Bolivar <marti@foundries.io>
2018-10-17 19:07:58 -04:00
Pawel Dunaj cb01d097af ext: hal: nordic: Enable building of NRFX QDEC
Allow project to use Nordic's NRFX QDEC driver.

This closes issue #9364

Jira:DESK-259

Signed-off-by: Pawel Dunaj <pawel.dunaj@nordicsemi.no>
2018-10-17 13:45:51 -05:00
Diego Sueiro 05c3c1ec11 ext: Silabs Gecko use a different config for uart
Use CONFIG_UART_GECKO instead of CONFIG_SERIAL_HAS_DRIVER to compile
the low level uart driver.

Signed-off-by: Diego Sueiro <diego.sueiro@gmail.com>
2018-10-16 15:59:37 -05:00
Andy Ross 317178b88f sys_clock: Fix unsafe tick count usage
The system tick count is a 64 bit quantity that gets updated from
interrupt context, meaning that it's dangerously non-atomic and has to
be locked.  The core kernel clock code did this right.

But the value was also exposed to the rest of the universe as a global
variable, and virtually nothing else was doing this correctly.  Even
in the timer ISRs themselves, the interrupts may be themselves
preempted (most of our architectures support nested interrupts) by
code that wants to set timeouts and inspect system uptime.

Define a z_tick_{get,set}() API, eliminate the old variable, and make
sure everyone uses the right mechanism.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2018-10-16 15:03:10 -04:00
Savinay Dharmappa ea07658a4f drivers: wdt: Migrate qmsi wdt driver api to new wdt api interface.
patch migrates the wdt qmsi driver to new wdt interfaces.

Signed-off-by: Savinay Dharmappa <savinay.dharmappa@intel.com>
2018-10-14 14:16:03 -04:00
Paweł Zadrożniak 0a3f6f0a58 ext: hal: nordic: Add kconfig / CMakeLists entries for nrfx_usbd
Adds entries for USBD driver (nrfx_usbd) for kconfig / CMake.
Updates nrf52840 configuration header to enable USBD.

Signed-off-by: Paweł Zadrożniak <pawel.zadrozniak@nordicsemi.no>
2018-10-12 13:14:12 +02:00
Paul Sokolovsky a0c0b2b43e ext: hal: altera: Don't depend on NEWLIB_LIBC
Contrary to what was written in its Kconfig, hal/altera depends not
on Newlib, but on a baseline POSIXish define like O_NONBLOCK. Minimal
libc now provides them, so there're no issues with building Altera
for either minimal on newlib libc.

Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
2018-10-10 13:31:00 -04:00
Marcio Montenegro f0ee23885a ext: gecko: Remove arm_math stuff from efm32hg*.h
Header include "arm_math.h" causes duplicate symbol error on build.

Signed-off-by: Marcio Montenegro <mtuxpe@gmail.com>
Signed-off-by: Christian Taedcke <hacking@taedcke.com>
2018-10-10 12:00:06 -05:00
Marcio Montenegro 6bdfc98ea9 ext: Integrate Silabs EFM32HG into Gecko SDK into Zephyr
This patch integrates EFM32HG support into the build
infrastructure of Zephyr.

Signed-off-by: Marcio Montenegro <mtuxpe@gmail.com>
Signed-off-by: Christian Taedcke <hacking@taedcke.com>
2018-10-10 12:00:06 -05:00
Marcio Montenegro 5faeb27e17 ext: gecko: Add Silabs Gecko SDK for EFM32 Happy Gecko SoCs
This includes:
* the Gecko SDK files for the EFM32HG SoCs

Origin: Silicon Labs Gecko SDK
URL: https://github.com/SiliconLabs/Gecko_SDK
Version: v5.1.2 (SHA: 938464c68e6c3b2237388a692f767bb0767ec010)
Purpose: Add support for Silicon Labs EFM32 Happy Gecko 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/

Signed-off-by: Marcio Montenegro <mtuxpe@gmail.com>
2018-10-10 12:00:06 -05:00
Erwan Gouriou b1798721cc ext/hal/st: stm32f3: Disable new API and enable Legacy
A new CAN API is now provided in stm32cube packages.
STM32 can driver is implemented on top of initial CAN API which
is now legacy API.
Disable new API and enable legacy.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-09 12:03:17 -04:00
Erwan Gouriou 5d362411c7 ext/hal/st: update stm32f7 stm32cube package from v1.11.0 to v1.12.0
Update STM32F7 series stm32cube package from V1.11.0 to V1.12.0.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-09 12:03:17 -04:00
Erwan Gouriou aa1cd0cfc2 ext/hal/st: update stm32f3 stm32cube package from v1.9.0 to v1.10.0
Update STM32F3 series stm32cube package from V1.9.0 to V1.10.0.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-09 12:03:17 -04:00
Erwan Gouriou 3a84551f5f ext/hal/st: stm32l4: dos2unix and remove trailing white spaces
Format all cube packages to the same format before update to new
versions:
-Apply dos2unix
-Remove trailing white spaces

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-09 12:03:17 -04:00
Erwan Gouriou 1661e00334 ext/hal/st: stm32l0: dos2unix and remove trailing white spaces
Format all cube packages to the same format before update to new
versions:
-Apply dos2unix
-Remove trailing white spaces

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-09 12:03:17 -04:00
Erwan Gouriou db2307fb92 ext/hal/st: stm32f4: dos2unix and remove trailing white spaces
Format all cube packages to the same format before update to new
versions:
-Apply dos2unix
-Remove trailing white spaces

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-09 12:03:17 -04:00
Erwan Gouriou a429104095 ext/hal/st: stm32f2: dos2unix and remove trailing white spaces
Format all cube packages to the same format before update to new
versions:
-Apply dos2unix
-Remove trailing white spaces

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-09 12:03:17 -04:00
Erwan Gouriou 027aac6869 ext/hal/st: stm32f0: dos2unix and remove trailing white spaces
Format all cube packages to the same format before update to new
versions:
-Apply dos2unix
-Remove trailing white spaces

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-09 12:03:17 -04:00
Andrzej Puzdrowski 182669401f ext: lib: mgmt: mcumgr: update to latest master
This patch introduce version which fixes following bug:

It was possible to erase slot 1 while it stores confirmed image
while ongoing test run - this is unwanted behavior which allow
to even brick remote device accidentally.
This patch add check for such case of test run etc.
This also aligns condition required for erase command
execution to similar as upload command requires.

Origin: mcumgr
License: Apache 2.0
URL: https://github.com/apache/mynewt-mcumgr
Commit: 91a76b95b1b81aba06e30ee168e5ee5975cdfe93
Purpose: Bug Fix
Maintained-by: External

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2018-10-04 10:34:22 +02:00
Kamil Piszczek add09c72ee ext: hal: nrfx: adding nfct driver to Kconfig
Added configuration option for NFCT driver to Kconfig.

Signed-off-by: Kamil Piszczek <Kamil.Piszczek@nordicsemi.no>
2018-10-02 14:05:27 -07:00
Kamil Piszczek 21bfea667e ext: hal: nrfx: adding timer driver to Kconfig
Added configuration option for TIMER driver to Kconfig.

Signed-off-by: Kamil Piszczek <Kamil.Piszczek@nordicsemi.no>
2018-10-02 14:05:27 -07:00
Kamil Piszczek 307a84771a ext: hal: nrfx: adding clock driver to Kconfig
Added configuration option for CLOCK driver to Kconfig.

Signed-off-by: Kamil Piszczek <Kamil.Piszczek@nordicsemi.no>
2018-10-02 14:05:27 -07:00
Andrzej Głąbek b45fcc6b9e ext: hal: nordic: Update nrfx to version 1.3.1
Updates nrfx to the recently released version that corrects a few
imperfections in NFCT and USBD drivers.

Origin: nrfx
License: BSD 3-Clause
URL: https://github.com/NordicSemiconductor/nrfx/tree/v1.3.1
commit: d4ebe15f58de1442e3eed93b40d13930e7785903
Purpose: Provide peripheral drivers for Nordic SoCs
Maintained-by: External

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2018-09-28 09:22:04 -05:00
Mark Ruvald Pedersen a82cb2442d ext: nffs: portability: Avoid void* arithmetics which is a GNU extension
Under GNU C, sizeof(void) = 1. This commit simply uses uint8_t.

Pointer arithmetics over void types is:
 * A GNU C extension
 * Not supported by Clang
 * Illegal across all ISO C standards

See also: https://gcc.gnu.org/onlinedocs/gcc/Pointer-Arith.html

Signed-off-by: Mark Ruvald Pedersen <mped@oticon.com>
2018-09-28 07:57:28 +05:30
Mark Ruvald Pedersen 6a3552433a ext: libmetal: Update import of libmetal from b4b5bea to a4f7630
Pull in a more recent version of libmetal, motivated by the void
pointer fixes in efc33fe.

libmetal's b4b5bea to a4f7630 spans:

a4f7630 linux: device: fix max chars to copy for the dev name
10a0d5b lib: system: freertos: mutex: change to use atomic_int ...
4e670c5 ci: Zephyr env var for toolchain
3bef6f0 cmake: Fix Zephyr library integration
13158c3 compiler: add IAR compiler file
0820a2e microblaze: suppress io 64-bit R/W access if 64 bit atomic ...
e2e5608 io: suppress io 64 bit R/W access if 64 bit atomic not ...
efc33fe io: fix compilation error for void pointers.
32ad1d2 cache: fix compilation issue
c1ade0d travis CI: update Zephyr SDK version to 0.9.3
c49d7cd travis CI: updated arm compiler ubuntu package
d279a6a travis ci: Update FreeRTOS download path
5c70105 irq: update sys_irq_restore_enable and sys_irq_save_disable
05f0cd4 cmake: Only look for doxygen package if docs enabled
b4b5bea zephyr: Introduce WITH_ZEPHYR_LIB option

At current time of writing, libmetal's HEAD is 5bc2106641.
However this failed to build in their Travis CI.
The latest passing commit is a4f7630.

Signed-off-by: Mark Ruvald Pedersen <mped@oticon.com>
2018-09-28 07:57:28 +05:30
Ryan QIAN a4633da9f5 ext: hal: nxp: mcux: Add device files for RT1060
Add mcux 2.4.0 drivers and device header files for mimxrt1061 and
mimxrt1060. Updates several drivers that were already imported for
other SoCs but also apply to mimxrt1061 and mimxrt1062.

Origins: NXP MCUxpresso SDK 2.4.0
URL: mcuxpresso.nxp.com
Maintained-by: External

Signed-off-by: Ryan QIAN <jianghao.qian@nxp.com>
2018-09-26 18:14:22 -05:00
Andrzej Głąbek c632d25a9f ext: hal: nrfx: Update README after upgrading to version 1.3.0
This complements the commit 836cb5b76a.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2018-09-24 06:53:26 -05:00
Bryan O'Donoghue 343c48f7d0 arch: atmel_sam0: sam21j18a: Convert _U to __U to fix compile warning
Fix compilation of sam0 serial driver on sam21dj18a by converting _U()
to __U() and _L() to __L() in sam21dj18a.h.

Signed-off-by: Bryan O'Donoghue <pure.logic@nexus-software.ie>
2018-09-21 17:52:32 -07:00
Kumar Gala 4d6b662149 ext: hal: cypress: Protect floating point code with CONFIG_FLOAT
There is a little bit of floating point code in cy_sysclk.c.  For now
add compile protection for this code using CONFIG_FLOAT.  This code
utilizes some libm functions like ceil().  So if / when the functions
Cy_SysClk_EcoConfigure & Cy_SysClk_FllConfigure are needed we'll also
new to probably pull in newlib.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2018-09-21 18:50:59 -04:00
Nazar Chornenkyy 2aa3815a09 ext: hal: cypress: Integrate Cypress PDL into Zephyr Build system
Add initial support for building Cypress PDL as part of Zephyr.

Signed-off-by: Nazar Chornenkyy <nazar.chornenkyy@cypress.com>
Signed-off-by: Oleg Kapshii <oleg.kapshii@cypress.com>
2018-09-21 18:50:59 -04:00
Nazar Chornenkyy 650852703e ext: hal: cypress: Import Cypress PDL for PSoC6 SoC Support
This includes:
* the Cypress Peripheral Driver Library (PDL) For PSoC6 SoC.

Origin: Cypress PDL for PSoC6
URL: https://github.com/cypress/pdl
Version: 3.1.0 (SHA: 2af49fe057320981c11117462a0962d956fc3056)
Purpose: Add support for Cypress PSoC SoC
License: Apache
Maintained-by: External

Signed-off-by: Oleg Kapshii <oleg.kapshii@cypress.com>
Signed-off-by: Nazar Chornenkyy <nazar.chornenkyy@cypress.com>
2018-09-21 18:50:59 -04:00
Andrzej Głąbek 11716e4664 ext: hal: nordic: Update nrfx adaptation layer
Adds new entries needed by nrfx in version 1.3.0 so that it is
properly adapted for being used in Zephyr.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2018-09-21 09:12:14 -07:00
Andrzej Głąbek 836cb5b76a ext: hal: nordic: Update nrfx to version 1.3.0
Updates nrfx to the recently released version containing new drivers
for NFCT and USBD peripherals and enhanced SAADC HAL.

Origin: nrfx
License: BSD 3-Clause
URL: https://github.com/NordicSemiconductor/nrfx/tree/v1.3.0
commit: 67710e47c7313cc56a15748e485079831ee6a3af
Purpose: Provide peripheral drivers for Nordic SoCs
Maintained-by: External

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2018-09-21 09:12:14 -07:00
Krzysztof Chruscinski 486b731b40 ext: lib: Add fnmatch library
Library will be used by new shell implementation.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
Signed-off-by: Jakub Rzeszutko <jakub.rzeszutko@nordicsemi.no>
2018-09-19 09:30:29 -04:00
Maureen Helm 45d3d8e441 spi: Introduce mcux lpspi shim driver
Introduces a new mcux lpspi shim driver to be used on the imxrt soc.
This shim driver leverages heavily from the mcux dspi shim driver
because the MCUXpresso SDK provides similar APIs for the lpspi and dspi
peripherals.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2018-09-19 09:15:29 -04:00
Andrzej Puzdrowski 48e6ec7b49 ext: nffs: bugfix of possible to corrupt filename
Origin: Apache Mynewt NFFS
URL: https://github.com/apache/mynewt-nffs/tree/master
Commit: a2f679afe6323310ab1000385f41115df7da326e
Maintained-by: External

This patch introduce version which fixes following bug:

While inode is updated it is possible that Garbage Collection
is called which caused overwrite of inode's filename as the same
buffer was used to keep the filename and copping data in GC.

This patch uses buffer on the stack for keeping filename while inode
is updated which fix the issue.

The patch cause 128 B increase of stack consumption during inode
update the file name might be corrupted

Fixes #9749

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2018-09-14 13:13:59 +02:00
Andrzej Głąbek 1a8ac641d7 ext: hal: nordic: Update nrfx to version 1.2.0
Updates nrfx to the recently released version containing needed
enhancements of GPIOTE and PPI HALs.

Origin: nrfx
License: BSD 3-Clause
URL: https://github.com/NordicSemiconductor/nrfx/tree/v1.2.0
commit: d19018ed334c26f0d9eb35cf7f5a622df8d54346
Purpose: Provide peripheral drivers for Nordic SoCs
Maintained-by: External

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2018-09-11 12:55:07 -04:00
Flavio Ceolin e05e251b81 ext: lib: crypto: Update mbedTLS to 2.12.0
Since 2.9.0 release mbedTLS has some minor functional improvements,
security fixes and bug fixed. A list with all changes can be found
in:

./ext/lib/crypto/mbedtls/ChangeLog

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
2018-09-06 21:11:31 -04:00
Andrzej Głąbek aad21ecb31 drivers: adc: Add shims for nrfx ADC and SAADC drivers
This commit adds translation layers to make nrfx drivers for the nRF
ADC (nRF51 series) and SAADC (nRF52 series) peripherals accessible via
the Zephyr's API. The SAADC peripheral is accessed using nrfx HAL only
as it turns out that usage of the nrfx driver in this case would be
inconvenient and would unnecessarily complicate the shim.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2018-08-29 13:46:57 -04:00
Diego Sueiro 636d5451a0 ext/hal/nxp/imx: Add all UARTs clock frequency information
Adds support for retrieving all possible UARTs clock.

Signed-off-by: Diego Sueiro <diego.sueiro@gmail.com>
2018-08-21 18:54:41 -05:00
Anas Nashif 483910ab4b systemview: add support natively using tracing hooks
Add needed hooks as a subsystem that can be enabled in any application.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-08-21 05:45:47 -07:00
Anas Nashif ac47070d10 tests: qmsi: remove soc watch sample
Remove this feature specific to QMSI and available through samples only
to allow for migration to tracing hooks.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-08-21 05:45:47 -07:00
Istvan Bisz 8bb0e7a504 hal: stm32f2x: usbotg_fs: fix VBUS sensing deactivation
The error is detected if USART1 TX configured to PA9 and RX to PA10.
The serial cable removal stops the USB communication.
In case of VBUS sensing deactivation, erroneously
both USB_OTG_GCCFG_VBUSBSEN and
USB_OTG_GCCFG_NOVBUSSENS are set in GCCFG.
Correct handling is:
 - VBUS sensing deactivation: set USB_OTG_GCCFG_NOVBUSSENS in GCCFG.
 - VBUS sensing activation:   set USB_OTG_GCCFG_VBUSBSEN in GCCFG.
ST Bug Tracker ID: 34714

Signed-off-by: Istvan Bisz <istvan.bisz@t-online.hu>
2018-08-15 08:22:41 -05:00
Ulf Magnusson 8cf8db3a73 Kconfig: Use a short, consistent style for prompts
Consistently use

    config FOO
            bool/int/hex/string "Prompt text"

instead of

    config FOO
            bool/int/hex/string
            prompt "Prompt text"

(...and a bunch of other variations that e.g. swapped the order of the
type and the 'prompt', or put other properties between them).

The shorthand is fully equivalent to using 'prompt'. It saves lines and
avoids tricking people into thinking there is some semantic difference.

Most of the grunt work was done by a modified version of
https://unix.stackexchange.com/questions/26284/
how-can-i-use-sed-to-replace-a-multi-line-string/26290#26290, but some
of the rarer variations had to be converted manually.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2018-08-15 04:10:10 -07:00
Erwan Gouriou ee29e60325 ext/hal: stm32cube: STM32L4: Enable legacy CAN API
A new CAN API has been delivered on recent L4 stm32cube.
This new API breaks current CAN driver. Disable the new API and
enable the legacy API.

Fixes #8931

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-08-13 18:46:20 -07:00
Erwan Gouriou 6409f9a944 ext/hal: stm32cube: STM32F7: Enable legacy CAN API
A new CAN API has been delivered on recent F7 stm32cube.
This new API breaks current CAN driver. Disable the new API and
enable the legacy API.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-08-13 18:46:20 -07:00
Erwan Gouriou 57fda14f97 ext/hal: stm32cube: STM32F4: Enable legacy CAN API
A new CAN API has been delivered on recent F4 stm32cube.
This new API breaks current CAN driver. Disable the new API and
enable the legacy API.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-08-13 18:46:20 -07:00
Ulf Magnusson ec3eff57e0 Kconfig: Use the first default with a satisfied condition
Up until now, Zephyr has patched Kconfig to use the last 'default' with
a satisfied condition, instead of the first one. I'm not sure why the
patch was added (it predates Kconfiglib), but I suspect it's related to
Kconfig.defconfig files.

There are at least three problems with the patch:

  1. It's inconsistent with how Kconfig works in other projects, which
     might confuse newcomers.

  2. Due to oversights, earlier 'range' properties are still preferred,
     as well as earlier 'default' properties on choices.

     In addition to being inconsistent, this makes it impossible to
     override 'range' properties and choice 'default' properties if the
     base definition of the symbol/choice already has 'range'/'default'
     properties.

     I've seen errors caused by the inconsistency, and I suspect there
     are more.

  3. A fork of Kconfiglib that adds the patch needs to be maintained.

Get rid of the patch and go back to standard Kconfig behavior, as
follows:

  1. Include the Kconfig.defconfig files first instead of last in
     Kconfig.zephyr.

  2. Include boards/Kconfig and arch/<arch>/Kconfig first instead of
     last in arch/Kconfig.

  3. Include arch/<arch>/soc/*/Kconfig first instead of last in
     arch/<arch>/Kconfig.

  4. Swap a few other 'source's to preserve behavior for some scattered
     symbols with multiple definitions.

     Swap 'source's in some no-op cases too, where it might match the
     intent.

  5. Reverse the defaults on symbol definitions that have more than one
     default.

     Skip defaults that are mutually exclusive, e.g. where each default
     has an 'if <some board>' condition. They are already safe.

  6. Remove the prefer-later-defaults patch from Kconfiglib.

Testing was done with a Python script that lists all Kconfig
symbols/choices with multiple defaults, along with a whitelist of fixed
symbols. The script also verifies that there are no "unreachable"
defaults hidden by defaults without conditions

As an additional test, zephyr/.config was generated before and after the
change for several samples and checked to be identical (after sorting).

This commit includes some default-related cleanups as well:

  - Simplify some symbol definitions, e.g. where a default has 'if FOO'
    when the symbol already has 'depends on FOO'.

  - Remove some redundant 'default ""' for string symbols. This is the
    implicit default.

Piggyback fixes for swapped ranges on BT_L2CAP_RX_MTU and
BT_L2CAP_TX_MTU (caused by confusing inconsistency).

Piggyback some fixes for style nits too, e.g. unindented help texts.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2018-08-10 12:38:28 -07:00
Flavio Ceolin 263282b220 ext: tinycrypt: Update revision
Update tinycrypt to latest revision, two commits after 0.2.8 release.

These commits are only bug fixes and one of them is fixing incorrect
buffer size in decryption with CBC mode.

This algorithm is being used by tinycrypt shim and is tested in
samples/drivers/crypto/.

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
2018-08-02 19:18:58 +02:00
Ulf Magnusson d1684a83a4 Kconfig: Clean up some symbol definitions
- Remove redundant 'n' defaults. 'n' is the default value for bool
  symbols.

  This makes the auto-generated documentation clearer as well: You get
  "implicitly defaults to n" instead of
  "- n if <propagated dependencies>".

- Shorten

      <type>
      prompt "foo"

  to

      <type> "foo"

  This works for all types, not just bool.

- Various formatting nits.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2018-08-01 12:47:17 -04:00
Tomasz Gorochowik ba8d83508a ext: hal: atmel: sam: Add README for Atmel SAM E70 HAL
This README is based on the commit that added the HAL:
 * b94d572a6 (Import Atmel SAM E70 header files from ASF library)

And documents all the patches that were applied so far:
 * 133306152 (Add missing header files symbols for Atmel SAM E70)
 * 9670dc582 (Remove unused and broken preprocesor macros)
 * e5e99d199 (Add missing interrupt number definitions)

Signed-off-by: Tomasz Gorochowik <tgorochowik@antmicro.com>
2018-07-27 20:29:15 +03:00
Tomasz Gorochowik 4dcfc8706d ext: Atmel ASF: Add missing interrupt number definitions
This commit adds missing interrupt definitions for SAM GMAC Priority
Queues.

Signed-off-by: Tomasz Gorochowik <tgorochowik@antmicro.com>
2018-07-27 20:29:15 +03:00
Kumar Gala 5f92b3b740 ext: hal: cmsis: Remove headers from old CMSIS import
When we imported CMSIS_5 we forgot to remove some files from the older
version.

Fixes: #9019

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2018-07-20 08:59:13 -05:00
Jukka Rissanen 5d5d02b1ec ext: hal: nxp: mcux: Update README file
Add information about patches and changes done to MCUX HAL.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2018-07-18 07:37:41 -04:00
Jukka Rissanen 8e304696e4 ext: hal: nxp: mcux: Enable enhanced buffer desc mode if needed
If the mcux driver has PTP support, then enable
ENET_ENHANCEDBUFFERDESCRIPTOR_MODE in HAL.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2018-07-18 07:37:41 -04:00
Jukka Rissanen 7715019679 ext: hal: nxp: mcux: Fix PTP event packet type check
We need to use only four low order bits from first byte of PTP message
as that contains the message type value.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2018-07-18 07:37:41 -04:00
Julien Chevrier b7a68fbbe5 ext: hal: nxp: mcux: Fix ethernet timestamping driver
Fix timestamping in MCUX external library. The nanosecond part of the
frame timestamp wasn't saved.

Signed-off-by: Julien Chevrier <julien.chevrier@intel.com>
2018-07-18 07:37:41 -04:00
Kumar Gala 57fbc66882 ext: hal: altera: Add ifdef protection for __LINUX_ERRNO_EXTENSIONS__
__LINUX_ERRNO_EXTENSIONS__ gets defined in HAL/inc/sys/alt_errno.h,
however we also need to define this if we are building with newlib.  So
add a simple ifdef guard to only define __LINUX_ERRNO_EXTENSIONS__ if
its not defined already.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2018-07-16 11:32:42 -05:00
Maureen Helm 3161617840 ext: mcux: Add a script to import new versions of mcux
NXP periodically releases new versions of the MCUXpresso SDK (mcux).
Automate the process of importing mcux into zephyr with a python script.

Example usage:

$ import_mcux_sdk.py -f SDK_2.3.0_EVK-MIMXRT1050.tar.gz

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2018-07-13 11:32:55 -05:00
Robert Lubos f1421b96df ext: lib: crypto: Make config-tls-generic.h default config
Default configuration of config-tls-generic.h mimics the current default
config file configuration - config-mini-tls1_2.h, thererfore it can be
safely used instead of it.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2018-07-13 10:56:40 +02:00
Robert Lubos a60af5c1ff ext: lib: crypto: Add generic mbedTLS config file
This commits provides a config file for mbedtls that can be modifed by
Kconfig. In result features like supported ciphersuites can be easily
adjusted from Kconfig.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2018-07-13 10:56:40 +02:00
Sean Nyekjaer cee31be6ff ext: Import Atmel SAMD20 header files from ASF library
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 SAMD20 Series Device Support (1.2.91)
License: Apache-2.0
URL: http://packs.download.atmel.com/Atmel.SAMD20_DFP.1.2.91.atpack
Purpose: Introduction of ASF for the SAM0 series.
Maintained-by: External

Signed-off-by: Sean Nyekjaer <sean@nyekjaer.dk>
2018-07-10 12:56:44 -05:00
Christian Taedcke 7689e9dc3e ext: Integrate Silabs EFR32FG1P Gecko SDK into Zephyr
This patch integrates EFR32FG1P support into the build
infrastructure of Zephyr.

Signed-off-by: Christian Taedcke <hacking@taedcke.com>
2018-07-10 12:53:50 -05:00
Christian Taedcke e634b25f20 ext: gecko: Add Silabs Gecko SDK for EFR32FG1P SoCs
This includes:
* the Gecko SDK files for the EFR32FG1P SoCs

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>
2018-07-10 12:53:50 -05:00
Diego Sueiro 8c2acab53a drivers: add i.MX I2C driver shim
Adds a shim layer around the imx i2c driver to adapt it to the Zephyr
i2c master interface.

Signed-off-by: Diego Sueiro <diego.sueiro@gmail.com>
2018-07-06 15:55:57 -05:00
Armando Visconti 9a8932024a ext: stm32cube: stm32f7xx: shift I2SR field in PLLI2SCFGR register
The I2SR field should be shifted by RCC_PLLI2SCFGR_PLLI2SR_Pos when the
PLLI2SCFGR register is read or written. Without this patch the PLLI2S
configuration is not done properly (R and M params are badly set) and
the PLLI2S generates bad clock waveform.

ST Bug tracker ID: 50108

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2018-07-06 09:44:59 -05:00
Armando Visconti 71ba2de75c ext: stm32cube: stm32f4xx: shift I2SR field in PLLI2SCFGR register
The I2SR field should be shifted by RCC_PLLI2SCFGR_PLLI2SR_Pos when the
PLLI2SCFGR register is read or written. Without this patch the PLLI2S
configuration is not done properly (R and M params are badly set) and
the PLLI2S generates bad clock waveform.

ST Bug tracker ID: 50086

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2018-07-06 09:44:59 -05:00
Piotr Zięcik 40f7a024ce ext: debug: segger: Fix CONFIG_SEGGER_RTT_MODE generation.
The value of CONFIG_SEGGER_RTT_MODE was incorrectly generated
as last default entry overwritten the previous ones. This commit
fixes this problem and ensures that correct value is selected.

Signed-off-by: Piotr Zięcik <piotr.ziecik@nordicsemi.no>
2018-07-06 10:08:07 +02:00
qianfan Zhao 396bf4770b hal: stm32f2x: Add HAL for the STM32F2x series
This adds the HAL code needed for the SoC for the stm32f2 series.

Origin: ST Microelectronics
License: BSD-3-Clause
URL: http://www.st.com/en/embedded-software/stm32cubef2.html
Commit: 1.7.0
Purpose: HAL layer for stm32f2
Maintained-by: External

Signed-off-by: qianfan Zhao <qianfanguijin@163.com>
2018-07-05 11:26:07 -05:00
Andrzej Głąbek f0abb24a51 ext: nordic: Fix PWM related nrfx_config entries for nRF52840
Change #ifndef to #ifdef in the entries that enable the PWM driver
and particular hardware instances so that the enabling is done
properly.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2018-07-05 11:58:51 +02:00
Johannes Hutter 414291cc12 ext: lib: mgmt: mcumgr: update to latest master
This update to the latest master of mcumgr fixes a memory corruption in
the image management and updates the readme.

Fixes #7924

Origin: mcumgr
License: Apache 2.0
URL: https://github.com/apache/mynewt-mcumgr
commit: a837a731b94927c6198e39744cd6d979be23942a
Purpose: Fix memory corruption
Maintained-by: External

Signed-off-by: Johannes Hutter <johannes@proglove.de>
2018-07-04 11:59:12 +02:00
Krzysztof Chruściński e892ca08f1 ext: debug: segger: Updating Segger RTT to 6.32d
Segger RTT update includes alignment of SEGGER_RTT_Conf.h to use
KConfig configuration.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2018-06-28 09:36:58 -05:00
Krzysztof Chruściński e1ff7cef12 ext: debug: segger: Move RTT configuration to KConfig
Extended KConfig to be able to control configuration present in
SEGGER_RTT_Conf.h file.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2018-06-28 09:36:58 -05:00
Erwan Gouriou b3127629c7 ext: stm32cube: update stm32l4xx cube version
Update Cube version for STM32L4XX family
from version: V1.10.0
to version: V1.12.0

This version solves patch in drivers/include/stm32l4xx_ll_spi.h

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>
2018-06-27 12:27:15 -05:00
Erwan Gouriou 875afddb28 ext: stm32cube: update stm32f7xx cube version
Update Cube version for STM32F7XX family
from version: V1.8.0
to version: V1.11.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>
2018-06-27 12:27:15 -05:00
Erwan Gouriou 176042ff34 ext: stm32cube: update stm32f4xx cube version
Update Cube version for STM32F4XX family
from version: V1.18.0
to version: V1.21.0

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-06-27 12:27:15 -05:00
Erwan Gouriou 5347dc1a07 ext: stm32cube: update stm32f3xx cube version
Update Cube version for STM32F3XX family
from version: V1.9.0
to version: V1.9.1

Fixes both patches:
 - Wrong LSI value
 - Issue in LL_SPI_TransmitData16

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-06-27 12:27:15 -05:00
Erwan Gouriou 7eb2276a49 ext: stm32cube: update stm32f1xx cube version
Update Cube version for STM32F1XX family
from version: V1.6.0
to version: V1.6.1

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>
2018-06-27 12:27:15 -05:00
Ioannis Glaropoulos 237aef1868 boards: arm: nrf: update I2C-related defines for nrf52810
The commit modifies the I2C-related defines in nrfx
configuration to comply with the updates in (57e3644).
It also modifies the i2c configuration in DTS for board
nrf52810_pca10040 to reflect the nRF52810 capabilities.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2018-06-25 19:34:33 +02:00
Carles Cufi f0df45dd5b ext: hal: nordic: nrfx: Add nRF52810 configuration
nrfx requires specific chip configuration for each IC. Those are not
upstream in the nrfx repository, but rather part of the Zephyr nrfx
port. Add a configuration for the nRF52810.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Signed-off-by: Ioannis Glaropoulos <ioannis.glaropoulos@nordicsemi.no>
2018-06-25 19:34:33 +02:00
Andrzej Głąbek 13eba3970d ext: nordic: Correct CMakeLists.txt
This corrects two things:
- moves addition of the proper "system_*.c" file to sources, so that it
  is done only when CONFIG_HAS_NRFX is active (related CONFIG_SOC_* may
  be activated also for simulated targets which do not want to compile
  code with system initialization for the real SoC)
- removes redundant check of HAS_NRFX when adding "nrfx_glue.c"

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2018-06-22 12:34:10 +02:00