Increase test coverage for Raspberry Pi's RP2040. Use the `socs` folder
rather than `boards` to enable these tests to run on any boards with the
same SoCs.
Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
From the API documentation, `dma_api_chan_filter`` can be given a value
of NULL for `filter_param`. Match the behaviour of most implementations,
and return true. This removes misleading error messages logged during
tests (e.g. `test_tst_dma0_m2m_loop`).
Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
Change whitespace to match the coding style for CMake files for all
rp2040-based boards.
This is foundation work ahead of adding support for boards based on the
RP235XX SoCs.
Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
No in-tree board uses this driver's pinctrl functionality, and every
RP2040-based board was configuring this to be an empty node in the
device tree, so remove them.
Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
The Pico SDK defines a default value for its XOSC multiplier. Reflect
this in the device tree binding so that it doesn't need to be repeated.
Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
RESETS_RESET_PLL_USB_BITS was logically or'd twice and 'unreset'ting
PWM doesn't seem to be required, based on the contents of the SDK.
Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
Rename rpi_pico_common.dtsi to rp2040_reset.h . This is more consistent
with the wider Zephyr source tree, and is foundation work ahead of
introducing the RP2350 SoC.
Add missing include guard. This shouldn't be required, but it is
consistent with other header files in the same directory.
Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
Follow the wider directory convention of dts/<arch>/<vendor>/<family>.
This is foundation work ahead of introducing support for the RP2350.
Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
Commit e63c6cd534 introduced device API
macros to be used by driver implementations. The DEVICE_API macro
ensures the passed API instance is placed in the corresponding iterable
section to allow for runtime checks.
Add wrapper DEVICE_API macro to all its_driver_api instances.
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
ARC architecture has some additional .arcextmap debug sections used by
debuggers to understand extension-specific instructions. These sections
could safely be ignored, but doing this causes warnings at least with
ARC MWDT toolchain.
Signed-off-by: Ilya Tagunov <Ilya.Tagunov@synopsys.com>
Some linkers (e.g. the ARC MWDT one) don't recognize wildcards in file
names if they are not enclosed in quotes. Looks like the quotes have
no negative effect on the GNU ld linker, so just do it unconditionally.
Signed-off-by: Ilya Tagunov <Ilya.Tagunov@synopsys.com>
When publish message, the dup_flag is not intialize
causing it to have random value and making the AWS MQTT
broker to reject the message
Add initialize dup_flag as 0
Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
Enable Ethernet controller node and mdio node for RA boards.
Add pinctl for mdio and Ethernet usage
Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
This commit is to enable Ethernet drivers support on Renesas RA
MCU, first target support is the Renesas RA8 series
Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
The ICS1894 phy AN_COMPLETE bit is latched high, this make the
BMSR first read return incorrect status of the AN state, update
one more BMSR read to ensure all latched bit is clear and BMSR
return actual status of the phy chip
Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
Add support for mdio driver for Renesas RA MCU series
This support utilize the r_ether_phy driver in hal renesas
to support mdio write and read function
Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
Update hal_renesas new commit ID, in this version there are
support for Ethernet and Ethernet phy in hal layer
Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
Add test configuration for Awinic AW9523B.
This device is a GPIO Expander, and no boards currently implement it.
Define the connection that connects it via the Arduino header and
define a fixture to enable it.
This has been confirmed with nucleo_h503rb.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
Add test configuration for Awinic AW9523B.
This device is a GPIO Expander, and no boards currently implement it.
Define the connection that connects it via the Arduino header and
define a fixture to enable it.
This has been confirmed with nucleo_h503rb.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
Add support for GPIO controller feature of AW9523B.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
Co-authored-by: Benjamin Cabé <kartben@gmail.com>
Add a definition of a STEMMA QT connector to which I2C
devices can be connected.
Since STEMMA-QT does not specify uses other than I2C,
this is just a formal definition.
(It may be helpful when using this connector as a GPIO,
which is not defined in STEMMA-QT)
Maybe in usual need to define i2c alias such like as,
```
stemma_qt_i2c: &i2c0 { }
```
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
Co-authored-by: Benjamin Cabé <kartben@gmail.com>
mcxc444 also has pit and rtc counters, add the counters to
board documentation, and enable it explicitly in board dts.
Set rtc clock to 32 kHz oscillator.
Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
When the PRESTART thread state was removed, this changed the semantics
of k_thread_start() when thread was created with a K_FOREVER timeout,
suspended and then started with k_thread_start().
This sequence is used in p4wq to implement K_P4WQ_DELAYED_START
(which again is needed by K_P4WQ_USER_CPU_MASK).
With PRESTART removed, the following sequence:
z_mark_thread_as_not_suspended(thread);
k_thread_start(thread);
.. no longer starts the thread. As a result, p4wq users like SOF
multicore configurations, hit errors as p4wq threads never start.
Fix the implementation by removing the calls to change thread
suspended state explicitly, but rather rely on the new
k_thread_create() and k_thread_start() semantics.
Fixes: 7cdf40541b ("kernel/sched: Eliminate PRESTART thread state")
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Signal-to-noise ratio is a unitless quantity, so its unit is dB, not
dBm (dBm is the power relative to 1 milliwatt). At the same time output
the received payload using `LOG_HEXDUMP_INF`, instead of limiting the
sample solely to string payloads.
Fixes#82414
Signed-off-by: Jordan Yates <jordan@embeint.com>
There is an incorrect logic that causes twister with
--device-testing to skip all tests on Windows. Correct
the logical condition.
Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
bsim requires a special setup for it to be usuable and run by twister.
If this environment is not available, we should not error when the
platform is an integration platform.
Most developers and users of twister will not have the babblesim setup
and reporting errors is misleading and confusing. So if such env. is not
available, just filter as usual and do not error.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Add watchdog driver for npm2100 pmic.
This pmic has one timer that can be used for multiple functions,
including a watchdog that can reset or power-cycle connected devices.
Signed-off-by: Audun Korneliussen <audun.korneliussen@nordicsemi.no>
Add sensor driver for npm2100 pmic.
This pmic performs measurements of battery voltage, regulator voltage
and die temperature.
Configurable pmic attributes are also organized under this driver.
Signed-off-by: Audun Korneliussen <audun.korneliussen@nordicsemi.no>
Add regulator driver for npm2100 pmic.
This pmic has one boost and one ldo regulator.
Signed-off-by: Audun Korneliussen <audun.korneliussen@nordicsemi.no>
Add mfd driver for the npm2100 pmic device.
The driver contains basic initialization routines,
and functionality not covered by other device driver APIs.
Signed-off-by: Audun Korneliussen <audun.korneliussen@nordicsemi.no>
This pulls in:
- d291bdcc mcux: hal_nxp: Include PDM MICFIL driver..
- 164268e5 mcux: hal_nxp: Include SDMA HAL driver..
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
The original idea of the syscall helpers is to workaround
an issue where the compiler could not correctly model register
usage with inline functions. It was supposed to be only used
when there are more then 3 arguments to syscalls. However,
during the original MMU code development, the helper got
expanded to cover "less then 2 arguments syscalls" as a way
for debugging syscall handling code and was never removed.
So fix that now by limiting the helper for syscalls with
more than 3 arguments.
Moreover, instead of using one helper with 6 arguments, now
we have separate implementations for both 4 and 5 arguments
syscall helpers. Now the compiler does not have to generate
code to always handle 6 arguments which saves a few code bytes
as there is no need to pass extra zeroes as arguments.
This has been verified to work with xt-clang RI-2022.10.
Signed-off-by: Daniel Leung <daniel.leung@intel.com>