Commit graph

126,787 commits

Author SHA1 Message Date
Emil Gydesen
b67d291207 Bluetooth: Host: Add type check for bt_conn API
Added a new function, bt_conn_is_type, that returns whether
the provided conn object is of the provided type.

This check is then used to ensure that the conn objects
supplied to other bt_conn function are of the right type.
The right type has also been documented for these functions.

This is an initial commit for a larger change in the BT Host,
as similar checks should be added to the L2CAP, GATT, ISO,
Audio and possibly Mesh APIs.

The type check could have been implemented by using the
bt_conn_get_info function, but that requires additional
function calls as well as memory allocation and copy.
Since bt_conn_is_type is designed to be widely used, it
was suited for its own function.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-02-11 22:04:51 +01:00
Yangbo Lu
7a22dc9bec samples: net: dsa: add mimxrt1180_evk board support
Added mimxrt1180_evk board support.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
bffe46d5b1 samples: net: dsa: move platform specific options to board
Moved platform specific options to board.
Also changed IP/Gateway to align documentation.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
5dfe0710fd samples: net: dsa: rework for flexibility and extensibility
Current DSA sample is initially for ip_k66f board with a switch PHY,
while it is expected as a common DSA sample for all DSA devices.

This patch does not change any function. It only reworks the sample
with new added CONFIG_NET_SAMPLE_DSA_LLDP for ip_k66f with 3 LAN
ports.
Ideally this should be common for all DSA devices, but for now, ip_k66f
is the only platform supporting it.
As there will be more DSA functions supported, better to allow each
function enablement via option to suit hardware or device driver support
status.

Also improved dsa_ll_addr_switch_cb return value with enum value instead
of plain value.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
3cc12b5db7 samples: net: dsa: clang-format dsa_lldp.c
Fixed style problem for dsa_lldp.c with clang-format.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
3f6413d87d samples: net: dsa: handle disabled slave ports
The multiple ports DSA device may have some ports disabled in
dts. This should be handled in the sample.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
03c0d03419 boards: nxp: mimxrt1180_evk: doc the NETC DSA support
Documented the NETC DSA support.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
6e2dcce412 boards: nxp: mimxrt1180_evk: board init for switch ports
Added board init for switch ports.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
2c28562974 boards: nxp: mimxrt1180_evk: enable switch ports
Enabled switch ports in dts.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
e53ff8b64e boards: nxp: mimxrt1180_evk: move netc node to common dtsi
Moved netc node from m33 dts to common dtsi. ENETC PSI0 kept
disabled for M7 for now.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
282fb014b0 boards: nxp: mimxrt1180_evk: add pinctrl for NETC switch ports
Added pinctrl for NETC switch ports.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
f55331ef3b dts: arm: nxp: rt118x: add NETC switch node
Added NETC switch node.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
26a59796ed soc: nxp: imxrt118x: add M7 MPU configuration
Added M7 MPU configuration.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
3aafce99b3 drivers: ethernet: eth_nxp_imx_netc: support handling pseudo MAC
This is to support handling pseudo MAC during initialization, but not
to support DSA master port. Current driver supports DSA with limitation
that only switch function is available without management via DSA master
port. DSA master port support is TODO work.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
9a7982f801 drivers: ethernet: eth_nxp_imx_netc: support getting phy mode from dts
Added support for getting phy mode from dts.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
7e7eb8cf32 drivers: ethernet: add DSA driver for NXP i.MX NETC
NXP i.MX NETC is a TSN capable Ethernet IP. It may support
ENETC MACs, or/and multiple ports switch.

The ENETC MAC was handled by eth_nxp_imx_netc driver.
This DSA driver is to support NETC switch device.
Current driver supports DSA with limitation that only switch
function is available without management via DSA master port.
DSA master port support is TODO work.

Take i.MX RT1180 NETC hardware as an example.

                +--------+                  +--------+
                | ENETC1 |                  | ENETC0 |
                |        |                  |        |
                | Pseudo |                  |  1G    |
                |  MAC   |                  |  MAC   |
                +--------+                  +--------+
                    | zero copy interface       |
+-------------- +--------+----------------+     |
|               | Pseudo |                |     |
|               |  MAC   |                |     |
|               |        |                |     |
|               | Port 4 |                |     |
|               +--------+                |     |
|           SWITCH       CORE             |     |
+--------+ +--------+ +--------+ +--------+     |
| Port 0 | | Port 1 | | Port 2 | | Port 3 |     |
|        | |        | |        | |        |     |
|  1G    | |  1G    | |  1G    | |  1G    |     |
|  MAC   | |  MAC   | |  MAC   | |  MAC   |     |
+--------+-+--------+-+--------+-+--------+     |
    |          |          |          |          |
NETC External Interfaces (4 switch ports, 1 end-point port)

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
12c2a9b357 drivers: ethernet: eth_nxp_imx_netc_psi: improve log info
Improved log info for MAC initialization and link event.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
83f835a31f drivers: ethernet: move i.MX NETC ethernet driver to subdirectory
Moved i.MX NETC ethernet driver to subdirectory. And DSA driver will be
added.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
6738a57010 dts: bindings: ethernet: nxp,imx-netc-psi: not require phy-handle
No longer require phy-handle as it may be pseudo MAC.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Yangbo Lu
1ca7683841 dts: bindings: ethernet-controller: add internal connection
Added internal connection for the connection inside SoC.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-02-11 22:03:48 +01:00
Ryan McClelland
653589c558 drivers: i3c: add controller handoff support
Add controller handoff

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-02-11 22:03:32 +01:00
Ryan McClelland
e5ac786ba8 drivers: i3c: shell: record crcaps and crhdly1 in to desc from shell
Record the crcaps and crhdly1 in to the i3c descriptor when calling from
the shell.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-02-11 22:03:32 +01:00
Ryan McClelland
3805ac189a drivers: i3c: shell: add crhdly1 and crcaps to info
Add crhdly1 and crcaps to the info shell command.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-02-11 22:03:32 +01:00
Ryan McClelland
88f5e16edc drivers: i3c: add controller handoff helper
This adds controller handoff according to section 5.1.7.1 of the
I3C specification.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-02-11 22:03:32 +01:00
Ryan McClelland
5f8c302306 drivers: i3c: add controller handoff parameters in to i3c desc
Add the parameters crcaps and crhdly1 in to the i3c device descriptor.
Also, retrieve the values if they are available.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-02-11 22:03:32 +01:00
Ryan McClelland
ad7b4422bc drivers: i3c: shell: add ccc getacccr command
Add the CCC GETACCCR command to the i3c shell.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-02-11 22:03:32 +01:00
Ryan McClelland
982c02d910 drivers: i3c: add ccc getacccr
Add a ccc helper for getacccr

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-02-11 22:03:32 +01:00
Aleksandr Khromykh
4bb595718d Bluetooth: Mesh: remove double cdb node storing
Commit removes the double cdb node entry storing
into the settings if device was reprovisioned over
nppi interface.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-02-11 18:56:37 +01:00
Emil Gydesen
e0017b9097 doc: Bluetooth: Audio: Update Discord channel name
The Discord channel name for LE Audio has been renamed to bt-audio
The Discord channel name for bluetooth-sig has been renamed to bt-sig

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-02-11 18:56:12 +01:00
Lucien Zhao
b6e52c339a boards: nxp: mimxrt700_evk: add ctimer support
enable ctimer clock in board.c
set ctimer0 as ok for cm33_cpu0
set ctimer5 as ok for cm33_cpu1
test counter_basic_api case passed on cm33_cpu0/1

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-02-11 18:55:53 +01:00
Lucien Zhao
f37205ca94 dts: arm: nxp: add ctimer instances support for rt700
add ctimer0-4 for cm33_cpu0
add ctimer5-7 for cm33_cpu1

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-02-11 18:55:53 +01:00
Lucien Zhao
0f29766b08 drivers: clock: mcux_lpc_syscon_clock.c: add ctimer5/6/7 support
add ctimer5/6/7 clock get support

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-02-11 18:55:53 +01:00
Gerard Marull-Paretas
e9eee4eb23 drivers: can: nrf: disable pin retention if GPD is enabled
When GPD is enabled, the pinctrl driver enables pin retention if the
peripheral is in the FAST_ACTIVE1 domain. This seems to break CAN, so
make sure retention is not active.

Investigations on why this is needed are ongoing, however, this makes
CAN functional again with some minor changes.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-02-11 15:58:10 +01:00
Esteban Aguililla Klein
afca69d162 boards: khadas: adding support for the edge2
added the khadas edge2 board and its soc rk3588s

Signed-off-by: Esteban Aguililla Klein <esteban.aguililla.klein.pro@outlook.com>
2025-02-11 15:53:17 +01:00
Esteban Aguililla Klein
3fe4e53c10 soc: rockchip: added the rk35 series and moved relevant soc
added the rk35 series and moved the rk3568 under it

Signed-off-by: Esteban Aguililla Klein <esteban.aguililla.klein.pro@outlook.com>
2025-02-11 15:53:17 +01:00
TOKITA Hiroshi
4cb8761b22 modules: hal_rpi_pico: Introducing -std=gnu11 option
The original Pico-SDK is compiled with `-std=gnu11` option.
Aligning with it.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-02-11 14:52:31 +00:00
Lucien Zhao
19f56facd4 tests: drivers: pwm: add mimxrt700_evk cm33 cpu0 support
add overlay file to record the flexio configuration

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-02-11 15:42:48 +01:00
Lucien Zhao
230d4b7fe9 boards: nxp: mimxrt700_evk: add flexio pwm configuration
config flexio clock if flexio enabled
add flexio_io7 pin configuration

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-02-11 15:42:48 +01:00
Lucien Zhao
9e9336d95f dts: arm: nxp: add flexio instance for RT700
add one flexio instance

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-02-11 15:42:48 +01:00
Xudong Zheng
a6a47d36af drivers: serial: add placeholder file for new device stack USB CDC ACM
This is necessary to suppress CMake build warning due to no source file
defined for drivers__serial.

Signed-off-by: Xudong Zheng <7pkvm5aw@slicealias.com>
2025-02-11 15:42:30 +01:00
Emil Gydesen
788486b972 Bluetooth: ISO: Add range to BT_ISO_MAX_BIG
If BT_ISO_BROADCAST is enabled, then we shall support
at least 1 BIG and at most BT_EXT_ADV_MAX_ADV_SET since
each BIG requires its own advertising set.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-02-11 15:42:03 +01:00
Robert Lubos
d6792494b7 net: coap_client: Fix build with cpp projects
The coap_client.h header won't build if included from c++ file:

error: expected primary-expression before ‘.’ token
  .value[0] = coap_bytes_to_block_size(CONFIG_COAP_CLIENT_BLOCK_SIZE),

Therefore move the actual function implementation to the library C file
to prevent this.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-02-11 15:41:37 +01:00
Robert Lubos
4600a7f397 net: coap_client: Add missing cpp guard in the header
The coap_client.h header was missing c++ guard, fix this.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-02-11 15:41:37 +01:00
Sebastian Głąb
5eff0c1cd7 tests: subsys: logging: Test with CONFIG_LOG disabled
Developer reports build error when he uses LOG_RAW in his code
and disables logging in prj.conf using CONFIG_LOG=n.

Add test case for above described scenario.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-02-11 15:41:21 +01:00
Leifu Zhao
a3619ee963 drivers: serial: sedi: enable runtime pm support
Enable runtime pm support for sedi uart driver.

Signed-off-by: Leifu Zhao <leifu.zhao@intel.com>
2025-02-11 15:41:03 +01:00
Luca Burelli
802156c0cb logging: improve log_flush() robustness
The 'log_flush()' function is used to wait for all pending log messages
to be processed by the background thread. This is performed by polling
the 'log_data_pending()' function, which scans all available buffers.

The log core already provides a 'buffered_cnt' variable that keeps track
of the number of pending messages. This variable is updated atomically
and could be a more efficient implementation for that check.

This commit moves the 'buffered_cnt' decrement _after_ the message
processing and buffer release, to ensure that the variable reflects
the number of pending messages at any moment in time.

The 'log_data_pending()' function is then replaced with a direct check
of the 'buffered_cnt' variable.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-02-11 15:39:29 +01:00
Binh Nguyen
dba0947c8a MAINTAINERS: Update collaborator and files for RZ Platform
Add @binhnguyen2434, @nhutnguyenkc as collaborator and update files
of Renesas RZ platform.

Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-02-11 15:39:10 +01:00
Qingling Wu
159332d591 net: wifi: hostap: add CA certificate used or skipped support
Added new parameter "A" in wifi connect command to support
CA certificate used or CA certificate skipped for
EAP-TTLS-MSCHAPV2 and EAP-PEAP-MSCHAPV2.

Signed-off-by: Qingling Wu <qingling.wu@nxp.com>
2025-02-11 15:38:58 +01:00
Kate Wang
19f1e0fb9b drivers: mipi_dsi: dsi_mcux_2l: Update driver to support ULPS
Add new item ulps_control in binding. If the MIPI DSI on the SoC support
ULPS, and user set the bus to enter ULPS after transfer in mipi_dsi_msg,
driver will set the bus to enter ULPS.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-02-11 15:38:47 +01:00
Lingao Meng
f5bd2170d1 tests: bsim: Add testcase for bluetooth mesh extended advertiser
Add some configuration for test adv_ext.c

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
2025-02-11 15:38:35 +01:00