Commit Graph

991 Commits

Author SHA1 Message Date
Peter Bigot
2a9b9b74bc tests: i2c_slave_api: update to current standard terminology
Zephyr does not currently allow deviation from standard terminology
for a technology even if it is non-inclusive, until the corresponding
standards body has confirmed intent to change that terminology.  The
terms used in a previous attempt to be inclusive do not match the
expected forthcoming standard terms.

Revert to standard terms until the new ones have been announced and
the switch made throughout Zephyr.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2021-02-09 13:59:17 -05:00
Erwan Gouriou
b389d1940e tests/drivers/dma: Enable tests on nucleo_f746zg and disco_l475_iot1
This will enable dma device testing on these platforms in ST CI.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2021-02-04 12:35:04 -05:00
Erwan Gouriou
d74dae2eaf tests/drivers/dma: loop_transfer: Use ztest harness
loop_transfer test was not using ztest framework as test harness.
Fix it.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2021-02-04 07:41:55 -05:00
Erwan Gouriou
a573dfc298 tests/drivers/watchdog: Review yaml file for stm32 window watchdog
Review tests applicability so that it only relies on watchdog
compatible availability. Additionally, tweak APB prescaler
in case of window watchdog test, so that timeout value can be
achieved.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2021-02-02 08:15:51 -05:00
Erwan Gouriou
114cea6598 tests/drivers/watchdog: Tune test for stm32 window watchdog
Set maximum window value as a test variable.
This allows to set a much shorter value that is compatible with
use in stm32 window watchdog.
Additionally, tweak test configuration so that it is applied on
compatible base (when available).

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2021-02-02 08:15:51 -05:00
Henrik Brix Andersen
2b8d9c584a tests: drivers: pwm: api: run PWM tests in user space
Run the PWM API tests in user space.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2021-02-02 07:18:50 -05:00
Anas Nashif
0426a5a682 drivers: edac: CONFIG_LOG_MINIMAL -> CONFIG_LOG_MODE_MINIMAL
CONFIG_LOG_MINIMAL is promptless, use CONFIG_LOG_MODE_MINIMAL.

Fixes build failure in test.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2021-01-26 09:06:55 -05:00
Erwan Gouriou
3d267eee15 tests/drivers: pwm_api: Document how to tune test for stm32 targets
The way the test is implemented requires some adaptation to
be effective on all STM32 boards.
I'm not adding per board code on purpose, as this would be a
never ending story.

Fixes #31582

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2021-01-26 14:43:28 +01:00
Peter Bigot
e0fd918bbd tests: i2c_slave_api: make dual role support optional
Not all I2C controllers that support dual roles allow a controller to
be used in both modes without reconfiguration: for some, registering a
slave device prevents use in master mode.  Refactor so that dual-role
operation is opt-in, and select it for the ST devices currently in the
allow list.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2021-01-21 09:27:35 -06:00
Peter Bigot
787a5bc90c tests: i2c_slave_api: rework diagnostic output
Reduce the verbosity of the I2C log messages; we don't need to see
every transaction by default.

In the application replace use of the log infrastructure with TCPRINT,
and remove some messages that don't seem to be necessary.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2021-01-21 09:27:35 -06:00
Rajavardhan Gundi
ff4e84ba45 tests: i2c_slave_api: Add test for mec1501modular_assy6885 board
This commit adds a DTS overlay file for mec1501modular_assy6885.

Signed-off-by: Rajavardhan Gundi <rajavardhan.gundi@intel.com>
2021-01-20 14:16:27 -05:00
JuHyun Kim
cc56fb5247 drivers: sensor: Initial driver of Invensense ICM42605
Initial driver and sample application of
TDK Invensense ICM42605 6-axis motion sensor.
This driver provide DTS for nRF52 DK board DTS setting.

Providing features are below.

Sensor data streaming - Accel, gyro
Tap, Double tap triggering.
Set/Get FSR, ODR by set attr API
Support multi instance feature.

Signed-off-by: JuHyun Kim <jkim@invensense.com>
2021-01-20 10:41:04 -06:00
Henrik Brix Andersen
3860551196 tests: drivers: pwm: loopback: add support for twr_ke18f board
Add support for testing the NXP Kinetis Pulse Width Timer (PWT) on the
NXP TWR-KE18F development board using PWM loopback.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2021-01-20 08:05:57 -06:00
Shlomi Vaknin
d69b4012b3 tests: uart_async_api: Support nucleo_l4r5zi board
This commit adds the asynchronous UART API testing support on the
nucleo_l4r5zi board.

The usart3 module is used as the secondary loop-back UART, which is
required to run this test.

Signed-off-by: Shlomi Vaknin <shlomi.39sd@gmail.com>
2021-01-18 19:07:29 +01:00
Shlomi Vaknin
13a8d1c1c2 tests: uart_async_api: flush reception in read_abort
After finish transmitting some bytes might be in the
peripheral receive register, since the transmition
is still happening after reception disabled.
This patch ensures that the peripheral has no
bytes in its internal state.

Signed-off-by: Shlomi Vaknin <shlomi.39sd@gmail.com>
2021-01-18 19:07:29 +01:00
Ying ming
602b71ca5c test: sensor: add testcase
Add module test of API sensor_sample_fetch_chan().
Add module test of unit coversion function.

Signed-off-by: Ying ming <mingx.ying@intel.com>
2021-01-18 19:05:32 +01:00
Mulin Chao
1c21ca829b drivers: wdt: add watchdog driver support for NPCX7 series.
In npcx7 series, the Timer and Watchdog module (TWD) generates the
clocks and interrupts used for timing periodic functions in the system.
It also provides watchdog reset signal generation in response to a
failure detection.

The CL also includes:
    — Add npcx watchdog device tree declarations.
    — Zephyr watchdog api implementation.
    — Add Watchdog definitions for npcx7 series in
      tests/drivers/watchdog/wdt_basic_api/src/test_wdt.c for
      supporting test suites.

Signed-off-by: Mulin Chao <MLChao@nuvoton.com>
2021-01-15 11:27:10 -05:00
Erwin Rol
f770dc7121 tests: drivers: spi: spi_loopback: Enable nucleo_g474re DMA support
Enable DMA support for the Nucleo g474re board

Signed-off-by: Erwin Rol <erwin@erwinrol.com>
2021-01-15 10:27:43 -05:00
Erwin Rol
5a8d458c8d tests: drivers: spi: spi_loopback: Enable nucleo_l4r5zi DMA support
Enable DMA support for the Nucleo l4r5zi board

Signed-off-by: Erwin Rol <erwin@erwinrol.com>
2021-01-15 10:27:43 -05:00
Hake Huang
f02454f68a tests: update edma test pattern
align test pattern with testcase.yml

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2021-01-14 16:14:51 -06:00
Peter Bigot
e017441ca0 boards: remove has-be32k from SPI NOR mtd nodes
Use of this property has no effect since it was by SFDP erase data in
Zephyr 2.4.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2021-01-13 11:58:37 -06:00
Henrik Brix Andersen
90825a8812 tests: drivers: pwm: add PWM loopback test
Add test cases for the PWM capture API using PWM signal loopback.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2021-01-12 19:43:06 +01:00
Krzysztof Chruscinski
96c027a02b tests: drivers: uart: Add gpio_loopback harness to test config
Added gpio_loopback to indicate that test requires pins to be
shorten. This allows to filter out tests on setup which does
not have pin setup.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2021-01-10 15:38:21 -05:00
Thomas Stranger
13a5d05757 boards: nucleo_g071rb: enable adc support
Enable ADC on Nucleo G071RB board(ADC1 channel 0 and 1)

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2021-01-07 15:50:22 -06:00
Jefferson Lee
35c5fbe554 boards: Add the Arduino Nano BLE 33
This commit adds the board definition files
needed to support the Arduino Nano BLE 33.
Tested: the following have been verified with
my logic analyzer.
* Serial peripherals (UART, I2C, SPI)
* USB
* RTC

Untested:
* PWM. In theory it should work but I don't
have a good enough logic analyzer to test this

* RTC's. The board doesn't have a backup battery.
The peripherals are enabled for modding another
battery in the device tree.

Signed-off-by: Jefferson Lee <jeffersonlee2000@gmail.com>
2021-01-07 09:46:22 -06:00
Christian Taedcke
c6c5a371a7 tests: adc: Add support for lpcxpresso55s28 in the ADC test
Add lpcxpresso55s28 board to the ADC test to prevent compilation issues.

Signed-off-by: Christian Taedcke <christian.taedcke@lemonbeat.com>
2021-01-05 15:38:04 -06:00
Thomas Stranger
5aefefef20 boards: nucleog071rb enable spi
Enable SPI on Nucleo G071RB and
add this board in spi_loopback test case.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2021-01-04 17:52:05 -05:00
Henrik Brix Andersen
35def71d13 test: drivers: pwm: api: allow test to run with NXP FlexTimer PWM
Allow the PWM API tests to run with the NXP MCUX FlexTimer PWM shim
driver.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2021-01-04 12:15:20 -05:00
Francois Ramu
64da50f45b tests: drivers: dma: adapt test applications on stm32l476 nucleo board
The dma test applications for MEM-to-MEM transfers are modified
to run on the stm32l476 with a DMA.
The CONFIG_DMA_LOOP_TRANSFER_DRV_NAME is either DMA_1 or DMA_2
CONFIG_DMA_LOOP_TRANSFER_CHANNEL_NR from 1 to 7 for DMA_1
CONFIG_DMA_LOOP_TRANSFER_CHANNEL_NR from 1 to 5 for DMA_2

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2020-12-27 18:16:47 +01:00
Francois Ramu
0a3437d4ca tests: drivers: dma: adapt test applications on stm32wb55 nucleo board
The dma test applications for MEM-to-MEM transfers are modified
to run on the stm32wb55 with a DMAMUX
loop_transfer on any CONFIG_DMA_LOOP_TRANSFER_CHANNEL_NR from 0 to 13
chan_blen_trasnfer on CONFIG_DMA_TRANSFER_CHANNEL_NR_0 from 0 to 13
and on CONFIG_DMA_TRANSFER_CHANNEL_NR_1 from 0 to 13

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2020-12-27 18:16:47 +01:00
Francois Ramu
445c8936e7 tests: drivers: dma adapt the dma tests applications for stm32 devices
It adds flexibility to test different dma channels
The chan_blen_transfer is modified
like the loop_transfer application to support stm32xx devices
with dma and/or dmamux.
On the stm32 devices, the first dma channel is 1.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2020-12-27 18:16:47 +01:00
Christopher Friedt
c313828eaf tests: gpio_api_1pin: support for emulated GPIO
This adds support for emulated GPIO (CONFIG_GPIO_EMUL=y) and
additionally allows BOARD=native_posix and
BOARD=native_posix_64 to run the gpio_api_1pin test suite.

Fixes #26477

Signed-off-by: Christopher Friedt <chrisfriedt@gmail.com>
2020-12-27 18:15:33 +01:00
Christopher Friedt
cc537b5a3a tests: gpio_basic_api: support for emulated GPIO
This adds support for emmulated GPIO (CONFIG_GPIO_EMUL=y) and
additionally allows BOARD=native_posix and
BOARD=native_posix_64 to run the gpio_basic_api test suite.

Fixes #26477

Signed-off-by: Christopher Friedt <chrisfriedt@gmail.com>
2020-12-27 18:15:33 +01:00
Andrzej Głąbek
f234c5f876 drivers: adc: Introduce the adc_sequence_options::user_data field
Introduce the field that can be used to associate a given sampling
sequence with any other data needed in the sampling-done callback
function.
Adjust one ADC API test case that uses a sequence callback so that
it checks if this introduced field is propagated as expected.

Also clarify in the description of the `sequence` parameter of the
callback function that this parameter is not supposed to be supplied
to the CONTAINER_OF() macro, to avoid any further confusion in that
regard.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2020-12-20 13:34:59 +01:00
Kumar Gala
1706bd2b41 tests: convert DEVICE_AND_API_INIT to DEVICE_DEFINE
Convert tests to DEVICE_{DT_}DEFINE instead of DEVICE_AND_API_INIT
so we can deprecate DEVICE_AND_API_INIT in the future.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2020-12-19 20:05:40 -05:00
Alexander Wachter
f6ef508f6f tests: drivers: can: timing
Added tests for the timing algorithm.
The tests calculate timings for some bitrates with sample-points
and verify the results.

Signed-off-by: Alexander Wachter <alexander@wachter.cloud>
2020-12-17 11:07:53 +01:00
Alexander Wachter
05275ecf6e drivers: can: rework zcan_frame and zcan_filter
Reordering of the struct elements to match the Linux format.
The __packed() is not necessary anymore.
std_id and ext_id is merged to id in the frame and filter.
Additionally, the frames are ready for CAN-FD.

Signed-off-by: Alexander Wachter <alexander@wachter.cloud>
2020-12-17 11:07:53 +01:00
Alexander Wachter
8b6c1bd4b7 drivers: can: Rework can_configure API
The previous API can't change the sampling-point and only allowed
bitrates that fit the time segments.
The new API allows for shifting the sampling-point and adjusts the
number of time quantum in a bit to all more possible bitrates.
The functions to calculate the timings are moved to the can_common file.
They can be used for all drivers.

Signed-off-by: Alexander Wachter <alexander@wachter.cloud>
2020-12-17 11:07:53 +01:00
Peter Bigot
96fa707e0c Revert "drivers: move eeprom_slave driver to tests directory"
This reverts commit cabbd916cf.

This is considered to be useful enough that it should be restored
as a stable Zephyr API.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2020-12-16 16:39:49 -05:00
Thomas Stranger
86c872dbc5 tests: i2c: i2c_slave_api add nucleo_g071
Adds necessary overlays for nucleo_g071 in i2c_slave_api test case
and enables the board.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2020-12-14 13:17:46 -05:00
Krzysztof Chruscinski
0de0233eac tests: drivers: timer: nrf_rtc_timer: Adapt test to nrf52_bsim
Adapted test to be able to run on nrf52_bsim

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2020-12-13 19:28:08 -05:00
Krzysztof Chruscinski
ff04e8061a tests: drivers: timer: nrf_rtc_timer: Add test for reseting CC
Added test for reseting CC timeout. CC is reconfigured just beofre
expiring of the first CC. It is expected that first setting will never
expire.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2020-12-13 19:28:08 -05:00
Guillaume Paquet
40f2524859 boards: arm: nordic: rakwireless Introduce rak5010_nrf52840 board
Add rak5010 board from RAKWireless based on nrf52840.
Board Documentation is completed

Signed-off-by: Guillaume Paquet <guillaume.paquet@smile.fr>
2020-12-07 14:51:28 -06:00
Mulin Chao
a279b4cfb7 drivers: adc: add adc support in npcx7 series
NPCX7 includes a 10-bit resolution Analog-to-Digital Converter (ADC). Up
to 10 voltage inputs can be measured and a internal voltage reference
(VREF), 2.816V (typical) is used for measurement. It can be triggered
automatically in Autoscan mode. Each input channel is assigned a
separate result register, which is updated at the end of the conversion.

The CL also includes:
— Add npcx adc device tree declarations.
— Zephyr adc api implementation.
— Add adc definitions of npcx7 in
  tests/drivers/adc/adc_api/src/test_adc.c for supporting test suites.

Signed-off-by: Mulin Chao <MLChao@nuvoton.com>
2020-12-07 12:11:17 -05:00
Wu Han
c8a0c370ab tests: driver: adc: Add support for stm32f103_mini board
STM32F103RC should be included in ADC test.

Signed-off-by: Wu Han <wuhanstudio@qq.com>
2020-12-03 10:54:38 -06:00
Krzysztof Chruscinski
0e9c98c4f5 tests: drivers: timer: Add test for nrf_rtc_timer
Added test suite for nrf_rtc_timer API.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2020-12-03 14:05:30 +01:00
Bilal Wasim
503a70a40a drivers: modem: Add support for quectel bg95
Adding support for Quectel BG95 Modem offloaded driver
to zephyr.

The driver currently implements only the
client side functions of the "socket_op_vtable", and
so cannot be used for cases where Zephyr acts as a
server. Moreover the driver only supports TCP for now.

Looking through the guides, the same driver should be
usable for BG96 (and other modems) except for the modem
boot-up sequence. Hence its named as "bg9x" instead of
"bg95".

Tested extensively with Zephyr acting as MQTT endpoint
and publishing / subscribing data to / from an MQTT
broker.

Signed-off-by: Bilal Wasim <bilalwasim676@gmail.com>
2020-12-01 17:43:59 -05:00
Paul M. Bendixen
e5d36db59c tests: Modified ADC test for clicker 2
Modified the drivers.adc test to include the MikroE Clicker 2 board

Signed-off-by: Paul M. Bendixen <pbe@trifork.com>
2020-11-30 15:50:59 +01:00
Gerard Marull-Paretas
eedb1125b9 tests: drivers: memc: add test for stm32 SDRAM
Add integration test to check r/w operations on STM32 external SDRAM.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2020-11-24 16:33:17 +01:00
Kalyan Sriram
763d76875e boards: arm: enable adc test for blackpill_f401ce
Adds the blackpill_f401ce board configuration to the
adc driver test.

Signed-off-by: Kalyan Sriram <coder.kalyan@gmail.com>
2020-11-20 10:57:12 +01:00
Henrik Brix Andersen
9796313e8a tests: drivers: build_all: add build test for Xilinx drivers
Add build test for Xilinx drivers for devices which are not present on
any in-tree boards.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2020-11-17 19:30:20 -05:00
Henrik Brix Andersen
4e7baecb88 tests: drivers: pwm: api: add support for Xilinx AXI Timer IP
Add support for testing the Xilinx AXI Timer IP PWM controller.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2020-11-17 19:30:20 -05:00
Henrik Brix Andersen
6ad1f411c3 tests: drivers: counter: basic_api: add support for Xilinx AXI Timer IP
Add support for testing the Xilinx AXI Timer IP.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2020-11-17 19:30:20 -05:00
Armando Visconti
c380142920 drivers/sensor: iis2iclx: add multi-instance
Make this driver multi-instance and use the new API.

Notes for sensorhub mode:
In case of multiples devices it is possible that some of them
has i2c slaves attached to it (sensorhub mode) but not the
others. Since the driver is configured in the same way for
all the instances (CONFIG_SENSORHUB=y), the routine that initialize
the sensorhub part does not fail anymore in case no slaves
are found for a particular instance. Instead, those non-sensorhub
driver instances will set the shub_inited flag to false and
will totally ignore the feature.

Notes for triggers:
In case of multiples devices the device pin the interrupt wire is
attached to can be different (INT1 or INT2 pin). So, this
information has been moved in DTS and then stored in the
specific instance config structure.
Currently the driver is able to handle a sngle interrupt line
at a time attached to either INT1 or INT2.
MOreover, the interrupt initialization for a driver instance proceed
only if the drdy has been configured in its DT, else it returns ok.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2020-11-11 13:17:18 +01:00
Kumar Gala
5e97d779bb device: convert DEVICE_INIT to DEVICE_DEFINE or SYS_DEVICE_DEFINE
Convert handful of users of DEVICE_INIT to DEVICE_DEFINE or
SYS_DEVICE_DEFINE to allow deprecation of DEVICE_INIT.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2020-11-10 08:38:09 -06:00
Martí Bolívar
fff0aee9ee tests: fix accel abstraction violation
As documented in doc/guides/dts/api-usage.rst, the generated
devicetree macros should be considered an implementation detail.

Replace direct usage of one with an equivalent that uses the API.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-10-29 14:04:26 -04:00
Peter A. Bigot
977ec16451 tests: drivers: regulator: add test for fixed regulator
Basic checks on core regulator functions.

Signed-off-by: Peter A. Bigot <pab@pabigot.com>
2020-10-28 15:22:53 +01:00
Simon Glass
f28a98be8c tests: drivers: sensor: Test both I2C and SPI accelerometer
Now that we have a BMI160 driver and emulator pair that support both
I2C and SPI, add a test that runs over both buses.

Signed-off-by: Simon Glass <sjg@chromium.org>
2020-10-27 16:41:30 +01:00
YouhuaX Zhu
70b3e55bd9 Test: Refine annotaion and test code for sensor subsys.
1. Add more detail info to make the purpose and process
of the test cases more clear which include test goal,
test step, input, judging criteria, constraints, etc.,
and these can be seen in our Zephyr documentations.
2. Add some negative test code.

Signed-off-by: YouhuaX Zhu <youhuax.zhu@intel.com>
2020-10-27 10:43:59 -04:00
Kumar Gala
dc0466f8a1 tests: drivers: build_all: Rework modem test to be more generic
Add support to build all current modem drivers (WNCM14A2A, GSM PPP, and
ublox-sara).  We need a unique config for ublox-sara to be built since
the networking params conflict with other modem drivers.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2020-10-23 08:53:38 -05:00
Crist Xu
237b34ef2d watchdog: Add watchdog driver
Add watchdog driver for the RT1050/60

Signed-off-by: Crist Xu <crist.xu@nxp.com>
2020-10-23 12:52:13 +02:00
Andrzej Głąbek
0ff24a3751 tests: uart_async_api: Catch extra RX_RDY events in test_single_read
Extend the test_single_read test case to catch RX_RDY events that are
not expected to appear.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2020-10-21 17:55:18 +02:00
Mahesh Mahadevan
573b24ef91 tests: spi: Update LPC55S69 to enable DMA
Enable DMA config for spi loopback test on LPC55S69

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2020-10-21 06:26:40 -05:00
Mahesh Mahadevan
10809b5402 drivers: spi: Update MCUX Flexcomm driver to add DMA support
Add DMA support to the MCUX Flexcomm SPI driver

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2020-10-21 06:26:40 -05:00
Gerard Marull-Paretas
b777647517 tests: drivers: adc: fix NUCLEO-H743ZI ADC channel
NUCLEO-H743ZI board uses ADC channel 15, not 0.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2020-10-16 09:59:16 +02:00
Armando Visconti
1921a2d84e drivers/sensor: add support to IIS2ICLX accelerometer
The IIS2ICLX is a high-accuracy. ultra-low noise, low-power
two-axis linear accelerometer which can be interfaced through
either I2C or SPI bus.
Its high accuracy, stability over temperature and repeatability
make IIS2ICLX particularly suitable for inclination measurement
for industrial applications (inclinometers).

https://www.st.com/resource/en/datasheet/iis2iclx.pdf

This driver is based on stmemsc i/f v1.03.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2020-10-15 09:57:47 -05:00
Ryan Erickson
669ab7bb11 tests: drivers: build_all: add HL7800 driver
Add the HL7800 modem driver to the
build_all drivers test.

Signed-off-by: Ryan Erickson <ryan.erickson@lairdconnect.com>
2020-10-15 08:46:41 -05:00
Andrei Gansari
b66db222a2 tests: gpio: gpio_port_set_masked_raw overwrite check
Code checks if gpio_port_set_masked_raw overwrites masked pins.
It should detect that the attempt to set only the input pin to zero also
affected the output pin.

Signed-off-by: Andrei Gansari <andrei.gansari@nxp.com>
2020-10-14 15:21:34 -05:00
Krzysztof Chruscinski
2d247ccf70 tests: drivers: clock_control: Change errno in the test
Aligned error code to API change.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2020-10-14 14:06:56 +02:00
Krzysztof Chruscinski
a348cec400 drivers: clock_control: Change clock_control_async_on parameters
Stable API change: modify parameters of clock_control_async_on which
previously took a structure which contains list node, callback and user
context. Removing list node and replacing structure with two parameters:
callback and user context. List node is removed because it has no use
in current API.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2020-10-14 14:06:56 +02:00
Krzysztof Chruscinski
00edf738c5 tests: drivers: uart: Add test suite for preemption resilience
Added test which is calling uart_poll_out from various contexts and
asynchronous/interrupt driven API. Test is validating that calls
can be preempted at any moment and no data is lost.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2020-10-14 14:06:25 +02:00
Peter Bigot
4a0a196f57 tests: uart_async_api: fix fault accessing cached device pointer
The cached device pointer must be placed in memory that allows user
mode invocation of the test functions to access it.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2020-10-13 20:01:08 +02:00
Toby Firth
dc37f988e0 drivers: adc: added support adc driver for lpcexpresso55s69
Added shim driver for the LPADC for lpcexpresso55s69 board.

Fixes #22703.

Signed-off-by: Toby Firth <tobyjfirth@gmail.com>
2020-10-12 14:59:40 -05:00
Andrzej Głąbek
20a21018c2 tests: adc_api: Use SHRT_MIN instead of 0 to mark empty buffer entries
Instead of 0, which can happen to be a sampling result, use for marking
empty buffer entries a value that is not supposed to be written in the
buffer by an ADC driver. This value defaults to SHRT_MIN but can be
overriden, if needed, for particular boards.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2020-10-06 17:47:16 +02:00
Simon Glass
6f0c8f0d2c tests: drivers: sensor: Add an BMI160 accelerometer test
Using the SPI emulator we can create a simple test for the BMI160
driver. Add this an enable it for native_posix.

Signed-off-by: Simon Glass <sjg@chromium.org>
2020-10-05 15:33:00 -04:00
Simon Glass
2e14082334 tests: drivers: sensor: Move current test into generic/
The existing tests is for generic sensor drivers. To make room for a
driver-specific one, move it into a subdirectory.

Signed-off-by: Simon Glass <sjg@chromium.org>
2020-10-05 15:33:00 -04:00
Kumar Gala
8ddd7f0f23 drivers: sensors: itds: Remove dts defaults
We should not be using defaults for enum properties, this should be
required: true instead.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2020-10-02 11:46:57 +02:00
Alexandre Bourdiol
25e19f89f1 test: drivers: watchdog: 64bits variables for STM32H7 and STM32F7
STM32H7 and STM32F7 guarantee last write RAM retention over reset,
only for 64bits.
See details in Application Note AN5342

Signed-off-by: Alexandre Bourdiol <alexandre.bourdiol@st.com>
2020-10-02 11:39:14 +02:00
Parthiban Nallathambi
c2ee9f5c3e drivers: eth: add driver for w5500 Ethernet Controller
Add driver for w5500 Ethernet Controller

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2020-10-02 11:34:57 +02:00
Alexandre Bourdiol
3563b50f8d boards: arm: nucleo_l4r5zi: add ADC support
Add support of ADC

Signed-off-by: Alexandre Bourdiol <alexandre.bourdiol@st.com>
2020-09-28 09:53:39 -05:00
Alexandre Bourdiol
c2a4b5ae46 boards: arm: disco_l475_iot1: add ADC support
Add support of ADC

Signed-off-by: Alexandre Bourdiol <alexandre.bourdiol@st.com>
2020-09-28 09:53:39 -05:00
Alexandre Bourdiol
99396031b8 boards: arm: nucleo_g474re add ADC support
Add support of ADC

Signed-off-by: Alexandre Bourdiol <alexandre.bourdiol@st.com>
2020-09-28 09:53:39 -05:00
Alexandre Bourdiol
d624db7c03 boards: arm: stm32f3_disco: add ADC support
Add support of ADC

Signed-off-by: Alexandre Bourdiol <alexandre.bourdiol@st.com>
2020-09-28 09:53:39 -05:00
Alexandre Bourdiol
7a3670efa3 boards: arm: nucleo_f429zi: add ADC support
Add support of ADC

Signed-off-by: Alexandre Bourdiol <alexandre.bourdiol@st.com>
2020-09-28 09:53:39 -05:00
Ryan Erickson
1faeab4d54 boards: add Pinnacle 100 DVK
Add Laird Connectivity Pinnacle 100 modem.

Signed-off-by: Ryan Erickson <ryan.erickson@lairdconnect.com>
2020-09-16 14:21:41 -05:00
Andrzej Głąbek
b197fb0bbe drivers: spi: Kconfig.nrfx: Use RAM buffers for SPIMs by default
Enable by default the use of RAM buffers in the spi_nrfx_spim.c
driver for copying TX data located in flash (as SPIM peripherals
cannot transfer directly form flash). Without this patch, users can
get confused, especially when SPI transaction is used by an upper
level driver which does not check all error codes.
For size of the buffer, use the value used so far in the reel_board
default configuration and in the SPI loopback test, i.e. 8 bytes.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2020-09-14 16:02:59 -05:00
Krzysztof Chruscinski
96b6da9bea tests: drivers: clock_control: Add LF clock start test
Added test which verifies various modes of waiting for system clock
(no wait, available, stable) for different clock configurations (xtal,
rc, synth).

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2020-09-10 21:31:01 +02:00
Peter Bigot
ab647ae74c tests: gpio_api_1pin: fix failing test on reel_board
Need to add a rise/fall delay after configuring the pin as an input,
due to a long RC time constant on LED1 circuit.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2020-09-09 15:12:11 +02:00
Henrik Brix Andersen
63f8a40781 tests: drivers: spi: loopback: run SPI loopback test in sanitycheck
Run the SPI loopback test in sanitycheck if the board supports
internal loopback mode.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2020-09-05 14:02:43 -05:00
Richard Osterloh
0a0026afe2 drivers: sensor: Add VCNL4040 driver
Add support for Vishay VCNL4040 proximity and light sensor

Signed-off-by: Richard Osterloh <richard.osterloh@gmail.com>
2020-09-04 13:03:12 -05:00
Alexander Falb
402a352279 tests/samples: add samples for Serpente board
Add the supported features section to  serpente.yaml and overlay files
to the corresponding tests and samples.

Signed-off-by: Alexander Falb <fal3xx@gmail.com>
2020-09-04 09:25:02 -05:00
Jordan Yates
c4d0c1ee90 tests: uart_async_api: build segger rtt driver
Add a build only test to validate correct compilation of the uart_rtt
driver. No harness that connects to RTT is defined, and therefore the
test can't be run by CI.

Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>
2020-09-03 21:51:28 +02:00
Erwin Rol
f3ca040e41 tests: dma: loop_transfer: add board configurations
Add configurations for Nucleo F207ZG, F767ZI, L053R8, and L496ZG.

Signed-off-by: Erwin Rol <erwin@erwinrol.com>
2020-09-03 21:50:58 +02:00
Erwin Rol
fc71836769 tests: dma: loop_transfer: allow configuration of device and channel
Add Kconfig with the following options:

- DMA_LOOP_TRANSFER_DRV_NAME to set the DMA device name, because
  some SOCs do not allow memory to memory DMA on all DMA devices
- DMA_LOOP_TRANSFER_CHANNEL_NR some SOCs start counting the DMA
  channels at 1 instead of 0.

Signed-off-by: Erwin Rol <erwin@erwinrol.com>
2020-09-03 21:50:58 +02:00
Martin Jäger
2a76f87d31 tests: drivers: dac_loopback: Fix dependencies
Use platform_allow instead of platform_exclude, as the test depends
on specific boards. A new board with DAC support should not be added
to this test automatically.

Signed-off-by: Martin Jäger <martin@libre.solar>
2020-09-03 14:46:03 -05:00
Tomasz Bursztyka
26cbd6a58c tests: uart_asyn: Simplify how the UART device is provided
Just get it once as device_get_binding() is a bit greedy.

Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2020-09-02 13:48:13 +02:00
Tomasz Bursztyka
4b9134d8d2 tests: Apply IRQ offload API change
Switching to constant parameter.

Fixes #27399

Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2020-09-02 13:48:13 +02:00
Tomasz Bursztyka
e18fcbba5a device: Const-ify all device driver instance pointers
Now that device_api attribute is unmodified at runtime, as well as all
the other attributes, it is possible to switch all device driver
instance to be constant.

A coccinelle rule is used for this:

@r_const_dev_1
  disable optional_qualifier
@
@@
-struct device *
+const struct device *

@r_const_dev_2
 disable optional_qualifier
@
@@
-struct device * const
+const struct device *

Fixes #27399

Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2020-09-02 13:48:13 +02:00
Simon Glass
b3f0c79e7f native_posix: Use the I2C emulator for the EEPROM test too
At present this test uses an EEPROM emulator. Reuse the same test to
also use the real Atmel AT2x driver and an AT24 emulator, via the I2C
emulation controller.

EEPROM reads and writes for eeprom1 go through the AT2x driver, which
converts them to I2C transactions, which are passed through to the
AT24 emulator for processing. This approach makes more use of 'real'
code, in this case the Atmel AT2x driver.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Signed-off-by: Simon Glass <sjg@chromium.org>
2020-09-01 14:30:46 -04:00
Mulin Chao
6deb68a517 driver: gpio: add gpio driver support in NPCX series
Add gpio support for Nuvoton NPCX series. This CL includes:

1. Add GPIO device tree declarations.
2. Introduce wui_maps property in yaml file to present relationship
   between Wake-Up
   Input (WUI) and 8 IOs belong to the device.
3. Zephyr GPIO api implementation.
4. GPIO callback functions implementation with MIWU api functions.
5. Overlay file for gpio basic tests

Signed-off-by: Mulin Chao <MLChao@nuvoton.com>
2020-09-01 13:35:25 +02:00