Commit graph

59574 commits

Author SHA1 Message Date
HaiLong Yang
5a7aeb9439 drivers: i2c: introduce GD32 I2C driver
Add an interrupt driven i2c driver for gd32 i2c peripheral.

The transmit and reception method refer from GD32 SoCs user manual.
Particularly, reception method choose the solution B.

There have some wait for state ready logic in the driver. It cause by
i2c device internal state change slower than i2c driver.

Signed-off-by: HaiLong Yang <cameledyang@pm.me>
2022-01-14 10:42:24 -06:00
HaiLong Yang
48af32d3d8 dts: i2c: introduce gd32 i2c interface
Add gd32 i2c interface support.

Signed-off-by: HaiLong Yang <cameledyang@pm.me>
2022-01-14 10:42:24 -06:00
HaiLong Yang
76968d9786 manifest: upgrade hal_gigadevice
upgrade hal_gigadevice to get i2c clock frequency boundary definition.

Signed-off-by: HaiLong Yang <cameledyang@pm.me>
2022-01-14 10:42:24 -06:00
Francois Ramu
f6c0362664 tests: drivers: spi loopback remove conf for most of the stm32 boards
The testcase is including a generic configuration conf
for the stm32 target boards when running the SPI loopback in
interrupt and DMA mode. Thus, the board specific conf file is useless.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2022-01-14 10:09:00 -06:00
Francois Ramu
a7d2b2a9f9 tests: drivers: spi loopback testcase on spi2 for stm32 boards
Overwrites the overlay for testing the SPI2 when running on
nucleo_f302r8 and 96b_carbon targets.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2022-01-14 10:09:00 -06:00
Francois Ramu
a3680c1b00 tests: drivers: spi loopback testcase yaml for stm32 dma
This commit adds two stm32 config to execute the testcase
when the SPI is using interrupt mode for transfer.
when the SPI is using DMA for transfer (not Interrupt nor ASYNC mode).
to run the on some specific (listed) stm32 boards on SPI instance.
Note the hw fixture (physical connection on the board)

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2022-01-14 10:09:00 -06:00
Filipe Rinaldi
a35848b7d7 boards: fvp_baser_aemv8r: fix UART enablement
Fix the interrupt setting in the fvp_baser_aemv8r dts:
- The correct interrupt number is 5, not 0.
- The interrupt priority and type are swapped.

This patch also enables interrupt driven mode for this platform as this
is the ideal setting for a Fast Models based platform.

Issue-ID: SCM-4037
Signed-off-by: Filipe Rinaldi <filipe.rinaldi@arm.com>
Change-Id: Ic4815f5afe4c9df9d8fe373d47d2773d64087c96
2022-01-14 10:00:54 -06:00
TOKITA Hiroshi
c72b75fc45 boards: riscv: longan_nano: Add LED and button configuration
Add configuration to support onboard LED and button.

- LED_R: PC13 (active low/output)
- LED_G: PA1  (active low/output)
- LED_B: PA2  (active low/output)
- BOOT0: PA8  (active high/input)

And enable timer1 to control LED_G and LED_B with PWM.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2022-01-14 09:59:35 -06:00
Sebastian Bøe
0cae1d8928 drivers: flash: Refactor boundary checking
We will soon need to do more boundary checking to test whether we are
reading secure or non-secure memory.

Refactor the boundary checking in preparation for this.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2022-01-14 09:57:04 -06:00
Martin Jäger
b2ebd98d9d MAINTAINERS: add path for UART samples
Adding UART samples to "Drivers: Serial/UART" so that the maintainer
will be notified for relevant PRs in the future.

Signed-off-by: Martin Jäger <martin@libre.solar>
2022-01-14 09:55:30 -06:00
Martin Jäger
9322a238db samples: drivers: uart: move echo_bot into dedicated folder
The STM32 single_wire example was merged in parallel to this sample
and ended up as a sub-folder of this one. Separate both into their
own folders.

Signed-off-by: Martin Jäger <martin@libre.solar>
2022-01-14 09:55:30 -06:00
TOKITA Hiroshi
306128799f dts: bindings: timer: Correct compatible name of riscv,machine-timer
dts/bindings/timer/riscv,machine-timer must have compatible name
riscv,machine-timer. nuclei,machine-timer is wrong, correct it.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2022-01-14 09:49:53 -06:00
Daniel Leung
4b6eb55236 logging: output/syst: don't use raw output for hexdump
Hexdump via logging is supposed to be human-readable for
debug information. Therefore, it should actually print
in human-readable form (well... after some magical decoder
has processed the raw MIPI Sys-T output).

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2022-01-14 09:59:06 -05:00
Dominik Chat
3e6ab47455 sensors: Implement MPU9250 driver
MPU9250 driver for 9-axis
gyroscope, accelerometer, magnetometer

Signed-off-by: Dominik Chat <dominik.chat@nordicsemi.no>
2022-01-14 12:33:04 +01:00
Krzysztof Chruscinski
ee43b3a51b drivers: gpio: nrf: Free channel when pin is reconfigured
GPIOTE channel was not freed when pin was reconfigured. This lead to
channel pool draining when pin was frequently reconfigured.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2022-01-14 12:28:21 +01:00
Flavio Ceolin
449c37808a doc: security: Fix one vulnerability report
The issue was properly fixed but this document was not updated.

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
2022-01-13 18:34:15 -05:00
Casper Meijn
cd6c36d7b4 runners: pyocd: Enable semihosting in pyOCD
If ARM semihosting is selected, automatically enable the pyOCD feature.
This way the console output is directly available on the telnet port.

Signed-off-by: Casper Meijn <casper@meijn.net>
2022-01-13 13:37:58 -06:00
Andy Ross
8cb5bf1526 soc/intel_adsp: Use the sys_winstream protocol in adsplog.py
This is the matching commit to the previous one that swaps the
protocol used for window logging for sys_winstream.

The advantage is especially clear for the reader.  The old protocol
was complicated and race-prone, requiring whole-buffer reads for
reliability.  The new one is tiny and fast.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2022-01-13 14:01:23 -05:00
Andy Ross
8590f67f69 soc/intel_adsp: Replace trace_out code with a sys_winstream
The newer sys_winstream utility is considerably simpler and much
faster for the reader.  Use that instead.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2022-01-13 14:01:23 -05:00
Andy Ross
528bef2d22 lib/os: Add sys_winstream lockless shared memory byte stream IPC
It's not uncommon to have Zephyr running in environments where it
shares a memory bus with a foreign/non-Zephyr system (both the older
Intel Quark and cAVS audio DSP systems share this property).  In those
circumstances, it would be nice to have a utility that allows an
arbitrary-sized chunk of that memory to be used as a unidirectional
buffered byte stream without requiring complicated driver support.
sys_winstream is one such abstraction.

This code is lockless, it makes no synchronization demands of the OS
or hardware beyond memory ordering[1].  It implements a simple
file/socket-style read/write API.  It produces small code and is high
performance (e.g. a read or write on Xtensa is about 60 cycles plus
one per byte copied).  It's bidirectional, with no internal Zephyr
dependencies (allowing it to be easily ported to the foreign system).
And it's quite a bit simpler (especially for the reader) than the
older cAVS trace protocol it's designed to replace.

[1] Which means that right now it won't work reliably on arm64 until
we add a memory barrier framework to Zephyr!  See notes in the code;
the locations for the barriers are present, but there's no utility to
call.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2022-01-13 14:01:23 -05:00
Tom Burdick
b246de1ba2 intel_adsp: Remove unused soc_idc_init reference
Unused as it was renamed to soc_mp_init, this is a stray left over.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2022-01-13 13:57:39 -05:00
Morten Priess
c71dd80834 Bluetooth: controller: Fixed BSIM ISO compile error
Added missing #includes for access to ULL functions.

Signed-off-by: Morten Priess <mtpr@oticon.com>
2022-01-13 15:15:49 +01:00
Rubin Gerritsen
a722c014ad Bluetooth: Host: Support setting long periodic adv data
If the advertiser is not running, the host can now set
periodic advertising data in multiple operations.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2022-01-13 13:23:29 +01:00
Rubin Gerritsen
90cf4a8ba3 Bluetooth: HCI: Max periodic adv data length is 252 bytes
Use the define instead

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2022-01-13 13:23:29 +01:00
Rubin Gerritsen
727ea49029 Bluetooth: Fix default event size when periodic adv sync is enabled
Periodic Advertising reports can be up to 255.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2022-01-13 10:35:13 +01:00
Jarno Lamsa
8f4a1fd906 net: lwm2m: Instance specific callbacks
Provide possibility to have instance specific callbacks
for writing the FW image and executing the update

Signed-off-by: Jarno Lamsa <jarno.lamsa@nordicsemi.no>
2022-01-13 10:34:25 +01:00
Jarno Lamsa
eedbbdc61a net: lwm2m: Provide backwards compatibility for single object 5
Previously the object 5 was only single instance object. Provide
backwards compatibility, so it can be continued to use with single
instance.

Signed-off-by: Jarno Lamsa <jarno.lamsa@nordicsemi.no>
2022-01-13 10:34:25 +01:00
Veijo Pesonen
9782f86450 net: lwm2m: separate FW update object instances - /5/*
This is a proof-of-concept implementation.

A device might have multiple firmware images which needs to be updated
separately. For example a single device might have

	* A bootloader image
	* An application image
	* External firmware image

Instead of pushing all these updates through the object instance 0 -
/5/0 - here a split to multiple has been made possible.

Signed-off-by: Veijo Pesonen <veijo.pesonen@nordicsemi.no>
2022-01-13 10:34:25 +01:00
Wouter Cappelle
c3ca3aa27d sensors: STM32: Add support for L5 die temp sensor
This PR adds the different handling of temperature sensor for the
STM32L5 soc. In this soc, there are some calibration settings which
need to be applied for temperature conversion.

Signed-off-by: Wouter Cappelle <wouter.cappelle@crodeon.com>
2022-01-13 10:34:10 +01:00
Wouter Cappelle
ba12740049 sensors: STM32: code formatting of stm32_temp with sample
clang format on stm32_temp.c & the sample

Signed-off-by: Wouter Cappelle <wouter.cappelle@crodeon.com>
2022-01-13 10:34:10 +01:00
Wouter Cappelle
c9e7ca3cac sensors: STM32: Prepare for different handling of temp conversions
moving the conversion from adc value to the get function
which will be used for different handling of stm32 temp sensors

Signed-off-by: Wouter Cappelle <wouter.cappelle@crodeon.com>
2022-01-13 10:34:10 +01:00
Armando Visconti
474fe6b55c dts/bindings: lps22hh: Fix the odr property description
The dts binding general rules document states that the property
description should explain why the default value was selected
(e.g. "default is the value at power-on").

See comment in #41143

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2022-01-13 10:32:57 +01:00
Daniel DeGrasse
a00041851d boards: lpcxpresso_55s69: Do not relocate image unless BUILD_WITH_TFM=y
Ensure that cpu1 only has its image load offset and flash size changed
if BUILD_WITH_TFM is selected, to prevent the flash size being changed
when TFM_BL2=n because TFM dependencies are not met.

Fixes #41127

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2022-01-13 10:32:45 +01:00
Morten Priess
7c89f1fe9f Bluetooth: controller: Support for separate ISO RX data path
Provides interface, data structures and demuxing capability for ISO RX
PDU allocation and transport from LLL to HCI.
Uses the RXFIFO composite for simplicity and reduced overhead.

Signed-off-by: Morten Priess <mtpr@oticon.com>
2022-01-13 10:32:37 +01:00
Tom Burdick
0e96f59e83 dma: Add suspend resume implementation for edma
Implement the suspend and resume transfer api calls for NXP's eDMA.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2022-01-12 17:33:48 -05:00
Tom Burdick
ea3cd9f1fa dma: Add suspend and resume API
This adds the necessary API calls to support the hardware feature of
suspending and resuming active DMA channels. The hardware feature is
supported by at least Synopsys's DesignWare DMA and NXP's eDMA.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2022-01-12 17:33:48 -05:00
Enjia Mai
7aba5fa633 tests: coverage: fix the blocking on mps2_an385 coverage report
The overall code coverage report of mps2_an385 was blocked by the
tests/net/lib/coap, the error message shows "No Mem available to
continue dump". So we enlarge the gcov heap size to prevent this
situation, try to make the report can be generated at least.

Signed-off-by: Enjia Mai <enjia.mai@intel.com>
2022-01-12 16:30:39 -06:00
Daniel DeGrasse
c7da0e9113 boards: mimxrt1170_evk_cm7: Enable watchdog
Enable watchdog for RT1170 EVK. Tested using
test/drivers/watchdog/wdt_basic_api.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2022-01-12 16:29:23 -06:00
Daniel Leung
9c4fb66a8b i2s: i2s_litex: fix doc styling on two copy functions
Just minor styling changes to capitalize the first character
and removing the trailing comma on the brief doc description
on two copy functions.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2022-01-12 16:02:16 -05:00
Daniel Leung
8113b59c02 tests: mslab_api: remove double asterisk inside func comments
Doxygen treats "/**" as documentation even if the comment block
is inside the function. So remove the extra asterisk for those
"TESTPOINT" comments.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2022-01-12 16:02:16 -05:00
Daniel Leung
a4db9c2857 modem: remove @return doc for void functions
For functions returning nothing, there is no need to document
with @return, as Doxgen complains about "documented empty
return type of ...".

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2022-01-12 16:02:16 -05:00
Daniel Leung
fc573abc8a mcumgr: remove @return doc for void functions
For functions returning nothing, there is no need to document
with @return, as Doxgen complains about "documented empty
return type of ...".

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2022-01-12 16:02:16 -05:00
Daniel Leung
d8cc34de4e modbus: remove @return doc for void functions
For functions returning nothing, there is no need to document
with @return, as Doxgen complains about "documented empty
return type of ...".

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2022-01-12 16:02:16 -05:00
Daniel Leung
39d33fc352 shell: remove @return doc for void functions
For functions returning nothing, there is no need to document
with @return, as Doxgen complains about "documented empty
return type of ...".

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2022-01-12 16:02:16 -05:00
Daniel Leung
d2e28da06b audio: remove @return doc for void functions
For functions returning nothing, there is no need to document
with @return, as Doxgen complains about "documented empty
return type of ...".

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2022-01-12 16:02:16 -05:00
Daniel Leung
8f7f62869a tests: remove @return doc for void functions
For functions returning nothing, there is no need to document
with @return, as Doxgen complains about "documented empty
return type of ...".

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2022-01-12 16:02:16 -05:00
Daniel Leung
aa20e081d2 arm: remove @return doc for void functions
For functions returning nothing, there is no need to document
with @return, as Doxgen complains about "documented empty
return type of ...".

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2022-01-12 16:02:16 -05:00
Daniel Leung
de9f396854 arc: remove @return doc for void functions
For functions returning nothing, there is no need to document
with @return, as Doxgen complains about "documented empty
return type of ...".

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2022-01-12 16:02:16 -05:00
Daniel Leung
25f87aac87 x86: remove @return doc for void functions
For functions returning nothing, there is no need to document
with @return, as Doxgen complains about "documented empty
return type of ...".

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2022-01-12 16:02:16 -05:00
Daniel Leung
2e629b85f2 doc: remove @return doc for void functions in sample code
For functions returning nothing, there is no need to document
with @return, as Doxgen complains about "documented empty
return type of ...".

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2022-01-12 16:02:16 -05:00