Commit Graph

157 Commits

Author SHA1 Message Date
Geoff Gustafson a9509a757a ext qmsi: Fix underflow in adc sample delay
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>
2017-08-07 22:26:21 -04:00
Anas Nashif 32e6b747ca build: if some hal is not in the tree, do not complain
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>
2017-08-03 11:48:55 -04:00
Maureen Helm 8ff51559da adc: Introduce new mcux adc16 driver
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>
2017-07-19 14:28:08 -05:00
Gil Pitney b70633b95f ext: simplelink: Update HAL for CC3220sf to version 1.40.00.03
The SimpleLink SDK provides a peripheral driver library and hardware
register access header files for the Texas Instruments SimpleLink
CC3220S and CC3220SF SoCs.

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

The SDK can be downloaded from:

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

Jira: ZEP-1958

Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2017-07-14 08:40:44 -05:00
Erwin Rol 6e3782480e driver: eth_stm32_hal: Initial STM32 HAL based Ethernet driver
Signed-off-by: Erwin Rol <erwin@erwinrol.com>
2017-07-12 12:53:51 +03:00
Erwin Rol 2fc9dc61d4 drivers: stm32: random: Initial STM32 random number generator driver
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>
2017-07-07 07:27:39 -05:00
Bogdan Davidoaia af98f0a806 ext: mcux: add minimal v2.2 interface for KW40Z XCVR driver
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>
2017-07-06 14:20:32 -05:00
Bogdan Davidoaia 9a0ed96ccc ext: mcux: add makefiles for building KW40Z XCVR driver
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>
2017-07-06 14:20:32 -05:00
Bogdan Davidoaia 2bb0cbab34 ext: mcux: update KW40Z files for building XCVR driver
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>
2017-07-06 14:20:32 -05:00
Bogdan Davidoaia d74ddcc41d ext: mcux: import additional KW40Z header files
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>
2017-07-06 14:20:32 -05:00
Bogdan Davidoaia 8feab141de ext: mcux: import XCVR driver for KW40Z
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>
2017-07-06 14:20:32 -05:00
Jorge Ramirez-Ortiz ae4363817b stm32cube: build stm32xxx_ll_spi if CONFIG_SPI
Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
2017-07-01 08:36:51 -04:00
Erwan Gouriou 0329450088 stm32cube: Fix warning when SPI LL API is compiled
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>
2017-07-01 08:36:51 -04:00
Yannis Damigos 220ddb9738 soc: stm32: F1/F3/F4/L4: enable I2C LL
Signed-off-by: Yannis Damigos <giannis.damigos@gmail.com>
Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org>
2017-07-01 08:36:51 -04:00
Jorge Ramirez-Ortiz 9f420955d9 ext: hal: stm32f1x and stm32f4x: disable i2c HAL
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>
2017-07-01 08:36:51 -04:00
Erwan Gouriou e1a90583d4 drivers: clock_control: provide LL based driver to stm32f1xx series
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>
2017-06-02 14:11:13 -04:00
Neil Armstrong ab1a7aff29 ext: stm32cube: update stm32l4xx cube version
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>
2017-05-19 10:06:48 -04:00
Youvedeep Singh 93720f700f aio: Add delay after power change to Analog Comparator.
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>
2017-05-18 20:26:56 -04:00
Piotr Mienkowski d30d90257c ext: Import Atmel SAM4S 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 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>
2017-05-16 08:44:17 -05:00
Gil Pitney 5e58eb54fc ext: simplelink: Restructure CC3220SDK as SimpleLink SDK
The SimpleLink SDK actually encapsulates a family of devices,
of which cc32xx is just one device.  Other devices can fit
under this SDK directory structure.

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

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

Jira: ZEP-1958

Change-Id: I16515d3e3779de0d55d3b1b8e25029609d1f66c3
Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
2017-05-08 15:03:15 -04:00
Bogdan Davidoaia 79ea8685a5 ext: mcux: update MK64F12.svd to MK64F12.xml
The MK64F12.svd file was changed to MK64F12.xml in MCUX 2.2.

Origin: NXP MCUXpresso SDK 2.2
URL: mcux.nxp.com
Maintained-by: External

Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
2017-05-06 10:35:16 -05:00
Bogdan Davidoaia 970320f4c7 ext: mcux: update to MCUX 2.2 for MKW21Z4
Updates the MCUX device header files for MKW21Z4 to MCUX 2.2.

Origin: NXP MCUXpresso SDK 2.2
URL: mcux.nxp.com
Maintained-by: External

Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
2017-05-06 10:35:16 -05:00
Bogdan Davidoaia e86ccaf5ce ext: mcux: update to MCUX 2.2 for MKW31Z4
Updates the MCUX device header files for MKW31Z4 to MCUX 2.2.

Origin: NXP MCUXpresso SDK 2.2
URL: mcux.nxp.com
Maintained-by: External

Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
2017-05-06 10:35:16 -05:00
Bogdan Davidoaia 50e5daff97 ext: mcux: update XCVR driver to MCUX 2.2
Update the XCVR driver for KW41Z to MCUX 2.2.

Origin: NXP MCUXpresso SDK 2.2
URL: mcux.nxp.com
Maintained-by: External

Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
2017-05-06 10:35:16 -05:00
Bogdan Davidoaia ab6e354843 ext: mcux: update to MCUX 2.2 for KW41Z
Updates the MCUX drivers and device header files for KW41Z to
MCUX 2.2.

Origin: NXP MCUXpresso SDK 2.2
URL: mcux.nxp.com
Maintained-by: External

Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
2017-05-06 10:35:16 -05:00
Carles Cufi 0eb7a66297 ext: Update Nordic MDK header files
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>
2017-05-02 12:02:24 -05:00
Kumar Gala ed467a695a serial: mcux: Shim driver for LPSCI UART on KL25Z
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>
2017-04-28 15:26:38 -05:00
Erwan Gouriou fda01e52c2 drivers: clock control: Provide LL based clock control for stm32f4 series
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>
2017-04-28 15:06:41 -05:00
Erwan Gouriou af6ca469e8 ext: stm32cube: update stm32f1xx cube version
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>
2017-04-28 15:06:40 -05:00
Bogdan Davidoaia 4dabe7d50e ext: mcux: add Makefiles for building the XCVR driver
Jira: ZEP-2026
Change-Id: Iec6d133309b96b89bcd066e3f9254180ad0f7fb8
Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
2017-04-28 15:01:10 +03:00
Bogdan Davidoaia 7dbfc0121d ext: mcux: add OSAbstraction layer for Zephyr
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>
2017-04-28 15:01:10 +03:00
Bogdan Davidoaia 6ff81ab857 ext: mcux: import XCVR driver for KW41Z
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>
2017-04-28 15:01:10 +03:00
Maureen Helm b9e209e4fc ext: mcux: Adapt ksdk 1.3 for kw40z to work with mcux 2.x drivers
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>
2017-04-14 05:56:53 -05:00
Maureen Helm 4c24c8343d ext: mcux: Import ksdk 1.3 device header files for kw40z
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>
2017-04-14 05:56:53 -05:00
Jesus Sanchez-Palencia a0e63c5999 ext qmsi: Update QMSI version on README
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>
2017-04-05 11:04:30 -07:00
Gil Pitney b4ec662193 ext: cc3220sdk: Import HAL for TI CC3220S SoC
The CC3220 SDK provides a peripheral driver library and hardware
register access header files for the Texas Instruments SimpleLink
CC3220S and CC3220SF SoCs.

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

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

Jira: ZEP-1958

Change-Id: Ib278a6e067a621c589d6efd17cda6f75dc2a9cdb
Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
2017-04-04 17:55:13 -05:00
Erwan Gouriou 7fb27de7cc ext: stm32cube: update stm32f3xx cube version
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>
2017-04-04 17:55:12 -05:00
Erwan Gouriou 7bcbd6133a ext: stm32cube: update stm32f4xx cube version
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>
2017-04-04 17:55:11 -05:00
Erwan Gouriou cd602d455f ext: stm32cube: update stm32f7xx cube version
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>
2017-04-04 17:55:10 -05:00
Maureen Helm 93785da544 ext: mcux: Add mcux 2.2 for kl25z
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>
2017-04-04 17:55:10 -05:00
Maureen Helm aa9c14667b ext: mcux: Update to mcux 2.2 for k64
Updates the mcux drivers and device header files for the k64 from mcux
2.1 to mcux 2.2. Updates the k6x soc init and ethernet shim driver to
reflect mcux interface changes.

Origin: NXP MCUXpresso SDK 2.2
URL: mcux.nxp.com
Maintained-by: External

Change-Id: Icb578dddbe84c190e990b756193bef621010a898
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-03-27 09:05:58 -05:00
Maureen Helm e0b56a7076 ext: mcux: Update to mcux 2.1 for k64
Updates the mcux drivers and device header files for the k64 from mcux
2.0 to mcux 2.1.

Origin: NXP MCUXpresso SDK 2.1
URL: mcux.nxp.com
Maintained-by: External

Change-Id: Ic83acfa91b575550c92ccc124d94ecd8fdac1f57
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-03-27 09:05:58 -05:00
Kumar Gala 83d8ffb2a0 spi: mcux: Rename spi driver to DSPI to match naming convention
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>
2017-03-27 09:05:57 -05:00
Wojciech Bober 162f25bc30 drivers/ieee802154: Added RAW mode support to nRF5 radio driver
Change-Id: Ib327032458d5098f0ee4f01ae719f23a856901c1
Signed-off-by: Wojciech Bober <wojciech.bober@nordicsemi.no>
2017-03-09 20:33:47 +02:00
Jesus Sanchez-Palencia 0877517ca4 ext qmsi: Update QMSI to 1.4 RC4
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>
2017-03-08 07:02:57 +00:00
Bogdan Davidoaia 5473906993 random: add MCUX TRNG driver
Provide a random driver wrapped around the MCUX TRNG driver.

Change-Id: Icbd7ab587aa18ecbd7eae52290aaa5d8ee504cf2
Origin: Original
Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
2017-03-02 14:13:27 +00:00
Bogdan Davidoaia 50cb5a6bd3 random: mcux: rename random_mcux to random_mcux_rnga
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>
2017-03-02 14:13:25 +00:00
Wojciech Bober 37b3e9f78b ext: Integrate Nordic's 802.15.4 radio driver into Zephyr
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>
2017-02-22 17:28:24 +02:00
Wojciech Bober 16a9a502a3 ext: Import Nordic 802.15.4 radio driver
Origin: OpenThread (commit 0dec46315)
URL: https://github.com/openthread/openthread
License: 3-clause BSD
Maintained-by: External

Change-Id: Ia5f26d93d7cb4584cdb3343f7a80c500c4e3ebc8
Signed-off-by: Wojciech Bober <wojciech.bober@nordicsemi.no>
2017-02-22 17:28:24 +02:00
Jesus Sanchez-Palencia e4c0a431f9 ext qmsi: Update QMSI to 1.4 RC3
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>
2017-02-22 14:18:22 +00:00