Commit Graph

93447 Commits

Author SHA1 Message Date
Pieter De Gendt c093ff4260 tests: drivers: spi: spi_loopback: Add mimx8mp_evk board
Add a config and overlay for NXP mimx8mp_evk board.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2024-04-02 21:03:47 -04:00
Pieter De Gendt 5944fb38bf dts: arm: nxp: nxp_imx8ml_m7: Add ECSPI instances
Add device tree instances for ECSPI peripherals and update SoC code to
enable clocks.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2024-04-02 21:03:47 -04:00
Pieter De Gendt fcc729f240 drivers: spi: Support NXP i.MX ECSPI
Add a driver implementation for NXP's Enhanced Configurable SPI.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2024-04-02 21:03:47 -04:00
Erik Andersson 7d9fa5fab2 doc: boards: update stm32h747i_disco documentation
Explain the different versions of the MB1166 shield and
remove note about that version A09 is not supported

Signed-off-by: Erik Andersson <erian747@gmail.com>
2024-04-02 21:03:10 -04:00
Erik Andersson 7282508f65 samples: ci: add st_b_lcd40_dsi1_mb1166_a09 shield
Add tests for shield st_b_lcd40_dsi1_mb1166_a09 in:
samples/drivers/display
samples/modules/lvgl/demos
samples/subsys/display/lvgl

Signed-off-by: Erik Andersson <erian747@gmail.com>
2024-04-02 21:03:10 -04:00
Erik Andersson 8dd3aff158 board: shield: st_b_lcd40_dsi1_mb1166 A09 support
Add support for the A09 version of MB1166 which
have a NT35510 panel controller instead of an
OTM8009a as in prior versions

Fixes #60888

Signed-off-by: Erik Andersson <erian747@gmail.com>
2024-04-02 21:03:10 -04:00
Erik Andersson 72503ab386 drivers: display: add driver for frida,nt35510
For now DSI settings are hard-coded for the specific
LCD module used on the STM32H747I Discovery board

Signed-off-by: Erik Andersson <erian747@gmail.com>
2024-04-02 21:03:10 -04:00
Erik Andersson 36e2b40e38 drivers: dsi: stm32: add additional dt options
To support the NT35510 display, some additional
options needs to be configurable in the STM32
DSI peripheral

Signed-off-by: Erik Andersson <erian747@gmail.com>
2024-04-02 21:03:10 -04:00
Declan Snyder 293cf9150c boards: frdm_mcxn947: Enable ENET QOS
Enable ENET QOS on FRDM MCXN947 board

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-04-02 21:02:25 -04:00
Declan Snyder 7079ea506a dts: nxp_mcxn94x: Add ENET QOS
Add ENET QOS nodes to MCX DTS

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-04-02 21:02:25 -04:00
Declan Snyder 62b56bb313 drivers: ethernet: Add NXP ENET QOS Driver
Add driver for NXP ENET QOS Ethernet

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-04-02 21:02:25 -04:00
Declan Snyder e90fa0399b drivers: mdio: Add NXP ENET QOS MDIO Driver
Add driver for NXP ENET QOS MDIO

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-04-02 21:02:25 -04:00
Declan Snyder ecfc38ff6f include: Add NXP ENET QOS header
Add header for NXP ENET QOS drivers

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-04-02 21:02:25 -04:00
Declan Snyder 8fdacb5e45 drivers: clock_control_mcux_syscon: Add ENET QOS
Add code for ENET QOS clocking in clock control driver

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-04-02 21:02:25 -04:00
Declan Snyder a7c39a2cc2 dts: bindings: Add NXP ENET QOS Bindings
Add compatibles for NXP ENET QOS drivers

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-04-02 21:02:25 -04:00
Declan Snyder db8a0b4b0c net: ethernet: Include ethernet API in eth_stats.h
eth_stats.h is using ethernet api but not including the header,
it must be working by luck in files that include it after
something else that includes ethernet.h, fix by just including it.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-04-02 21:02:25 -04:00
Daniel DeGrasse 1254092831 scripts: west_commands: linkserver: fix probe serial number support
With commit f419ea7990 (runner: linkerserver : remove the probe ID
hardcode), support was added to use serial numbers with the linkserver
--probe argument. However, one invocation of the argument was missed,
and still used the "probe index" syntax. Resolve this issue.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-04-02 21:01:58 -04:00
Chris Friedt 5ab984a834 posix: convert static inline functions to library functions
With CONFIG_NET_POSIX_NAMES being deprecated, convert static
inlines in headers to prototypes, and move implementations
to lib/posix/options/net.c .

Since select and poll should technically also operate on
non-socket file descriptors, these may be relocated in the
future.

Below are some reasons for this change.
1. So posix calls are regular symbols and not directly inlined
   as syscalls. This is also the most portable linkage type.
2. Many posix calls are cancellation points and additional
   checks are necessary within the implementation.
3. The more we add to an inline call, the less sense it makes
   for that call to be inline.
4. When the implementation of a posix function changes, the
   interface for it should still remain consistent.

Note: the same principles have been applied in Zephyr's
posix implementation already, e.g. clock_gettime(), so this
is nothing new.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2024-04-02 21:01:33 -04:00
Chris Friedt f010f40c8c posix: sys: socket: move defines outside of extern C
preprocessor symbols do not need to be externed.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2024-04-02 21:01:33 -04:00
Fabio Baltieri 5591d2305e Bluetooth: host: tweak up the bluetooth thread names
Change the receive workque name to "BT RX WQ" to distinguish it from the
receive thread, and the long workque one to "BT LW WQ" to make the
format consistent with the other Bluetooth threads.

On an nRF52 now "kernel stacks" looks like:

0x200016c8 BT RX                    (real size  448):   unused  280    )
0x20001780 BT RX pri                (real size  448):   unused  224    )
0x200012c0 BT RX WQ                 (real size 2240):   unused 1360    )
0x20001208 BT TX                    (real size  768):   unused  408    )
0x20001130 BT LW WQ                 (real size 1344):   unused  408    )

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-04-02 21:01:00 -04:00
Mahesh Mahadevan 8ea68cc0b4 tests: i2c: Add support for NXP MCXN947
Add support for NXP MCXN947

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2024-04-02 21:00:24 -04:00
Mahesh Mahadevan 0a0b902b71 boards: frdm_mcxn947: Add support for I2C
Add support for I2C

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2024-04-02 21:00:24 -04:00
Mahesh Mahadevan cbbe33996e drivers: i2c: Use the NXP Flexcomm driver for interrupt handling
The Low Power Flexcomm driver manages the interrupt handling
and provides an API to register interrupt callbacks.
Register the NXP LPI2C interrupt handler.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2024-04-02 21:00:24 -04:00
Mahesh Mahadevan 678e65093b dts: nxp_lpi2c: Interrupts is no longer a required property
Some NXP SoC's have a FlexComm interface that manages the
interrupts.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2024-04-02 21:00:24 -04:00
Mahesh Mahadevan 6199bd9c61 drivers: i2c: MCUX SDK LPI2C driver sometimes uses instance number
Update the driver to account for variations in the SDK driver
when it uses the instance number instead of the base address.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2024-04-02 21:00:24 -04:00
Mahesh Mahadevan 930ea28798 gwest.yml: Get the NXP SDK I2C support on MCX947
Get the NXP SDK driver for I2C support on MCXN947

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2024-04-02 21:00:24 -04:00
Mahesh Mahadevan a9fea59281 soc: nxp: Select the MFD Kconfig when LPFlexcomm is enabled
LPFlexcomm is a MFD device hence select this Kconfig whenever
it is enabled.
Remove the selection from the individual driver Kconfig files.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2024-04-02 21:00:24 -04:00
Marcin Niestroj 8f9c28282b twister: pytest: escape expected command regex
When sending commands containing something like "AT+CFUN" the expected
regex was not escaped and as a result such regex never matched what has
been echoed over serial.

Escape all commands with re.escape() so that echoed shell commands are
always matched, even when they contain special characters (like '+' in the
example above).

Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2024-04-02 13:28:05 -04:00
Jason Yu d5b1a7d929 driver: input: gt911: Support case that no dedicated reset pin
On some boards, there is not dedicated reset pin for GT911, it might
be the same pin with display IC, or might be tighted to a high level
voltage.
This patch makes the rst_gpio can be empty.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2024-04-02 15:35:50 +01:00
Filip Kokosinski 643c033a7f boards/sifive/hifive1: enable PMP on the default revision
This commit enables PMP on the default revision of the SiFive HiFive1
board. PMP was already enabled on the Rev B of this board.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-04-02 14:31:39 +01:00
Filip Kokosinski 11a30924d2 tests/posix/getopt: add hifive1.conf
This commit sets `CONFIG_NEWLIB_LIBC_MIN_REQUIRED_HEAP_SIZE=2048` for the
SiFive HiFive1 board. Otherwise, the test fails on the following assert
from Newlib:

memory space available for newlib heap is less than the minimum required
size specified by CONFIG_NEWLIB_LIBC_MIN_REQUIRED_HEAP_SIZE

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-04-02 14:31:39 +01:00
Filip Kokosinski 1903756888 tests/lib/cbprintf_fp: add hifive1.conf
This commit sets `CONFIG_NEWLIB_LIBC_MIN_REQUIRED_HEAP_SIZE=2048` for the
SiFive HiFive1 board. Otherwise, the test fails on the following assert
from Newlib:

memory space available for newlib heap is less than the minimum required
size specified by CONFIG_NEWLIB_LIBC_MIN_REQUIRED_HEAP_SIZE

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-04-02 14:31:39 +01:00
Piotr Narajowski 1029800a64 bluetooth: tester: add missing config
Set CONFIG_BT_MAX_PAIRED with same value as in host.
This is needed for CSIP tests with three lower testers:
CSIP/CL/SP/BV-07-C, CSIP/CL/SP/BV-03-C, CSIP/CL/SP/BV-04-C,
CSIP/CL/SPE/BI-01-C

Signed-off-by: Piotr Narajowski <piotr.narajowski@codecoup.pl>
2024-04-02 14:31:30 +01:00
Pieter De Gendt a221b44d9c samples: subsys: mgmt: mcumgr: smp_svr: Remove POSIX_API config
The POSIX_API config should not be required to build the UDP mcumgr
transport.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2024-04-02 14:31:23 +01:00
Pieter De Gendt f65715cb63 mgmt: mcumgr: Remove POSIX_API dependency for UDP transport
Zephyr subsystems should use non-posix socket API.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2024-04-02 14:31:23 +01:00
Laurentiu Mihalcea 01a6fd5f4a boards: nxp: imx8qm_mek: add pinctrl for SAI1 node
Add pinctrl for SAI1 node. This means:
	1) Adding definitions for the pads used by SAI1.
	2) Creating a pin group and referencing it in
	the SAI1 node via the `pinctrl-0` property.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2024-04-02 14:31:15 +01:00
Laurentiu Mihalcea 34410d5366 boards: nxp: imx8qxp_mek: add pinctrl for SAI1 node
Add pinctrl for SAI1 node. This means:
	1) Adding definitions for the pads used by SAI1.
	2) Creating a pin group and referencing it in the
	SAI1 node via the `pinctrl-0` property.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2024-04-02 14:31:15 +01:00
Laurentiu Mihalcea f4c73105e5 drivers: dai: sai: add pinctrl support
Add support for performing pinctrl operations. For now,
the only supported operation is applying the pinctrl default
state. Pinctrl is left optional to allow for scenarios in which
this is not required (e.g: AMP system in which another
OS configures the pinctrl).

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2024-04-02 14:31:15 +01:00
cyliang tw fc69f25202 tests: drivers: spi: spi_loopback: support numaker_m2l31ki
Add support for Nuvoton numaker board numaker_m2l31ki.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2024-04-02 14:30:57 +01:00
cyliang tw 820a70242f drivers: spi: support for Nuvoton numaker m2l31x
Update m2l31x.dtsi for spi support and update spi_numaker.c
for dummy TX data.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2024-04-02 14:30:57 +01:00
Tim Lin 0967f13c3f ITE: drivers/i2c: Add a property selecting to drive I2C recovery mode
Add a property to select the push-pull GPIO output type to drive the
I2C recovery. The default is open-drain.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2024-04-02 14:30:48 +01:00
Trung Hieu Le 9a133aedcc boards: shields: rk055hdmipi4m: fix pixelclk-active issue
On the RT1170-EVKB, the framebuffer displays incorrectly
(shifted by about 1/4 of the screen width). This is because
pixelclk-active was set to 1 (which corresponds to
kELCDIF_DriveDataOnRisingClkEdge).

According to the RM68200 datasheet, the DSI transfert begins at
the uprising pixel clock and stop at the falling pixel clock. So,
pixelclk-active needs to be set to 0 (which corresponds to
kELCDIF_DriveDataOnFallingClkEdge).

Signed-off-by: Trung Hieu Le <trunghieu.le@nxp.com>
2024-04-02 14:30:39 +01:00
Trung Hieu Le f4f3ab7df2 boards: shields: rk055hdmipi4ma0: fix pixelclk-active issue
On the RT1170-EVKB, the framebuffer displays incorrectly
(shifted by about 1/4 of the screen width). This is because
pixelclk-active was set to 1 (which corresponds to
kELCDIF_DriveDataOnRisingClkEdge).

According to the HX8394 datasheet, the DSI transfert begins at
the uprising pixel clock and stop at the falling pixel clock. So,
pixelclk-active needs to be set to 0 (which corresponds to
kELCDIF_DriveDataOnFallingClkEdge).

Signed-off-by: Trung Hieu Le <trunghieu.le@nxp.com>
2024-04-02 14:30:39 +01:00
Laurentiu Mihalcea 02f18bc5f5 nxp: imx8ulp: enable clock control
Enable clock control for i.MX8ULP. This consists of:
	1) Adding a PCC node in the DTS
	2) Adding a header file containing the definitions
	of the clocks used by the peripherals to be enabled.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2024-04-02 14:30:27 +01:00
Laurentiu Mihalcea 139fcfa5f7 drivers: clock: clock_control_mcux_pcc: add support for 8ULP
This patch add supports for performing clock-related operations
on i.MX8ULP. This consists of:
	1) Adding a LUT.
	2) Adding an initialization function meant to tell the
	HAL which rate the XTALs on the boards (EVK and EVK9)
	run at. This is used by the functions that compute the
	rate of an IP clock.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2024-04-02 14:30:27 +01:00
Laurentiu Mihalcea 9afd8c9054 drivers: clock: clock_control_mcux_pcc: rework clock ID computation
In the case of some SOCs simply using the PCC base and clock
offset to build the clock ID passed to the HAL is not sufficient
since the clock ID may also contain some flags (e.g: see the case of
i.MX8ULP). For such SOCs, we change the semantic of the value passed
from the DTS (which is simply called "name", thus allowing us to
interpret it differently from SOC to SOC) to an index in a LUT
used to fetch the clock ID that can be safely passed to the HAL.

For compatibility reasons, we also keep the old way and use it
for SOCs which don't define such a LUT. The driver will decide
which method to use based on the LUT size (i.e: if 0, use the
old way, if != 0 use the new way).

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2024-04-02 14:30:27 +01:00
Charles Dias 14015db4ab boards: arm: Add support for WeAct Studio MiniSTM32H743 Core board
Adds the device trees, Kconfig, and documentation files.

The following features have been confirmed working on hardware:
* LED
* Button
* ST7735 TFT-LCD
* External QuadSPI NOR Flash memory
* External SPI NOR Flash memory
* USB CDC ACM
* microSD card

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2024-04-02 14:30:04 +01:00
Renato Soma 50fb272f94 tests: drivers: add LM35 to build_all
Add LM35 driver to build_all test

Signed-off-by: Renato Soma <renatoys08@gmail.com>
2024-04-02 14:29:42 +01:00
Renato Soma da7b65735e drivers: sensors: Add driver for LM35
Add a driver implementation for the LM35 ADC temperature sensor

Signed-off-by: Renato Soma <renatoys08@gmail.com>
2024-04-02 14:29:42 +01:00
Théo Battrel f3c93e0302 Documentation: Update shell completion doc
- Remove OS specific instructions, instructions depend on the shell and
are the same across OS;
- Add fish shell to the documentation.

Signed-off-by: Théo Battrel <theo.util@protonmail.ch>
2024-04-02 15:07:19 +02:00