Commit Graph

506 Commits

Author SHA1 Message Date
Pawel Dunaj e344e5752c ext: debug: segger: Fix SEGGER header inclusion
Fix issue caused by 3fc497ac9a

This change removes `rtt` and `systemview` from header includes
as these are already placed in the path.

Also `SEGGER_SYSVIEW_ConfDefaults.h` header included from
`SEGGER_SYSVIEW_Int.h` is placed higher to make sure `INLINE`
definition is properly visible.

Signed-off-by: Pawel Dunaj <pawel.dunaj@nordicsemi.no>
2018-12-05 14:35:42 +01:00
Sigvart M. Hovland 3fc497ac9a ext: debug: segger: Add missing include directories
Fix #11812 by adding include paths to the `CMakeLists.txt`

Signed-off-by: Sigvart M. Hovland <sigvart.hovland@nordicsemi.no>
2018-12-04 13:46:27 +01:00
Håkon Øye Amundsen bd2edd0eac ext: segger: Use system include directive for configuration header.
By using system include directive, we allow
the user to place external SEGGER_RTT_conf.h files to the
include path in order to override the zephyr version.

Signed-off-by: Håkon Øye Amundsen <haakon.amundsen@nordicsemi.no>
2018-12-04 13:45:49 +01:00
Andrzej Głąbek b7b6e65885 ext: hal: nordic: Update nrfx to version 1.4.0
Updates nrfx to the recently released version. See
https://github.com/NordicSemiconductor/nrfx/blob/v1.4.0/CHANGELOG.md
for a list of changes that this version introduces.

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

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2018-12-03 17:56:15 +01:00
Andrzej Głąbek dc7e8a9898 ext: hal: nrfx: Import soc/nrfx_coredep.h from nrfx 1.3.1
This is a follow-up to commit b45fcc6b9e.
The nrfx import is complemented with the file containing
a core-dependent delay function. The intention is to allow it
to be used in a custom k_busy_wait() implementation.

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-11-26 15:47:09 +01:00
Christian Taedcke 90473af3cb ext: gecko: Update Silabs Gecko HAL to v5.6.1
Origin: Silicon Labs Gecko SDK
URL: https://www.silabs.com/products/development-tools/software/simplicity-studio
Version: v5.6.1
Purpose: Add support for Silicon Labs EXX32 SoCs
License: Zlib
Maintained-by: External

Signed-off-by: Christian Taedcke <hacking@taedcke.com>
2018-11-22 07:57:19 -06:00
Christian Taedcke 4466460be4 ext: gecko: Add workaround in em_emu.h
For the EFM32PG12B, the define _EMU_EM23PERNORETAINCTRL_VDAC0DIS_MASK
is not availabe. This commit guards its usage with ifdefs.
This might be a bug in the gecko SDK or some version incompatibility
in the used files.

Signed-off-by: Christian Taedcke <hacking@taedcke.com>
2018-11-21 13:42:26 -06:00
Gil Benkö 655251ec4f ext: Integrate Silicon Labs Gecko SDK for EFM32PG12B into Zephyr
This adds the paths of the necessary parts of the SDK to the
build infrastructure files.

Signed-off-by: Gil Benkö <gil.benkoe@pm.me>
2018-11-21 13:42:26 -06:00
Gil Benkö f0c7695348 ext: gecko: Add Silabs Gecko HAL for EFM32PG12B SoCs
This includes the Gecko HAL files for the EFM32PG12B 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

Signed-off-by: Gil Benkö <gil.benkoe@pm.me>
2018-11-21 13:42:26 -06:00
Ioannis Glaropoulos 78c0d98967 ext: hal: cmsis: Update ARM CMSIS headers to version 5.4.0
Origin: ARM CMSIS v5.4.0
License: Apache-2.0
URL: https://github.com/ARM-software/CMSIS_5.git
commit: 0b521765067ac87b142cd96b5f578ffb399090cc
Purpose: CMSIS Headers update.
Maintained-by: External

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2018-11-21 12:31:56 -05:00
Andrei Gansari a5174be648 mimxrt1050_evk: enabling networking hardware
Enables Networking hardware on i.MX-RT 1050-EVKB board.
Pinout enabled board specific etherenet connection, also pin
initialization was moved later to PRE_KERNEL_2 in order to have
sysclock initialized before.

Signed-off-by: Andrei Gansari <andrei.gansari@nxp.com>
2018-11-20 09:54:25 -06:00
Stanislav Poboril ba3ed24f3d imx: Add IMX IPM driver for i.MX socs
Add driver for i.MX Messaging Unit peripheral which can be used for
i.MX6SoloX, i.MX7D and other i.MX socs.

Origin: Original

Signed-off-by: Stanislav Poboril <stanislav.poboril@nxp.com>
2018-11-19 08:38:38 -06:00
Andrzej Głąbek 20202902f2 dts_fixups: Use DT_ prefix in all defined labels not related to Kconfig
These changes were obtained by running a script  created by
Ulf Magnusson <Ulf.Magnusson@nordicsemi.no> for the following
specification:

1. Read the contents of all dts_fixup.h files in Zephyr
2. Check the left-hand side of the #define macros (i.e. the X in
   #define X Y)
3. Check if that name is also the name of a Kconfig option
   3.a If it is, then do nothing
   3.b If it is not, then replace CONFIG_ with DT_ or add DT_ if it
       has neither of these two prefixes
4. Replace the use of the changed #define in the code itself
   (.c, .h, .ld)

Additionally, some tweaks had to be added to this script to catch some
of the macros used in the code in a parameterized form, e.g.:
- CONFIG_GPIO_STM32_GPIO##__SUFFIX##_BASE_ADDRESS
- CONFIG_UART_##idx##_TX_PIN
- I2C_SBCON_##_num##_BASE_ADDR
and to prevent adding DT_ prefix to the following symbols:
- FLASH_START
- FLASH_SIZE
- SRAM_START
- SRAM_SIZE
- _ROM_ADDR
- _ROM_SIZE
- _RAM_ADDR
- _RAM_SIZE
which are surprisingly also defined in some dts_fixup.h files.

Finally, some manual corrections had to be done as well:
- name##_IRQ -> DT_##name##_IRQ in uart_stm32.c

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2018-11-13 10:44:42 -06:00
Kumar Gala a3d869c7ef ext: qmsi: Remove dead code related to undefined Kconfig symbols
CONFIG_ADC_QMSI and CONFIG_ADC_QMSI_SS aren't defined anywhere so
remove the dead CMake references to them.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2018-11-10 15:18:24 -05:00
Piotr Mienkowski d9e2171aa9 drivers: flash_gecko: Add flash driver for SiLabs Gecko SoCs
Tested with SLWSTK6061A / BRD4250B wireless starter kit.

Signed-off-by: Piotr Mienkowski <piotr.mienkowski@gmail.com>
2018-11-08 17:56:44 -05:00
Christopher Métrailler 9b39be1147 ext: hal: nordic: Add missing peripherals in Kconfig
Peripheral drivers are already available but cannot be enabled trough
Kconfig. This allow project to use nrfx drivers.

Signed-off-by: Christopher Métrailler <christopher.metrailler@nordicsemi.no>
2018-11-06 16:12:55 -05:00
Jonas Norling ac960bf91b ext: hal: nordic: Make it possible to build NRFX GPIOTE and PPI
This makes it possible for the application to enable building of the
GPIOTE and PPI subsystems in NRFX.

Signed-off-by: Jonas Norling <jonas.norling@greeneggs.se>
2018-11-06 17:18:20 +01:00
Pavel Kral 564f02ec0e drivers: rtt: fix no return statement in rtt_init
Add missing return statement to rtt_init function.

Signed-off-by: Pavel Kral <pavel.kral@omsquare.com>
2018-11-06 11:47:15 +01:00
Sebastian Bøe c4266a8cd2 cmake: Move MDK-defines from 'soc' to the MDK build script
The build script ext/hal/nordic/CMakeLists.txt manages the MDK
dependency. The MDK is not aware of Zephyr and uses it's own defines
to indicate what HW we are building for.

This commit moves these MDK-specific defines out of the 'soc' build
scripts and into the MDK build script where they belong.

This is expected to be a pure refactoring without side-effects.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2018-11-04 22:03:01 +01:00
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