Commit graph

136,983 commits

Author SHA1 Message Date
Emil Dahl Juhl
e732c973c5 dsp: utils: slim down includes
The dsp/utils.h header itself only uses dsp/types.h and doesn't need the
entire dsp/dsp.h.

This also facilitates using the dsp/utils.h in builds that don't enable a
dsp backend at all which can be convenient for sensor drivers where the
q31_t dsp type is used.

Signed-off-by: Emil Dahl Juhl <emil@s16s.ai>
2025-11-14 12:19:10 +02:00
Johan Hedberg
3ab1caa87f Bluetooth: Classic: AVRCP: Fix another Clang/LLVM build failure
subsys/bluetooth/host/classic/shell/avrcp.c:407:3: error: label followed
by a declaration is a C23 extension [-Werror,-Wc23-extensions]
  407 |                 uint64_t identifier;
      |                 ^

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-11-14 12:19:00 +02:00
Lyle Zhu
46c51cbefe Bluetooth: Classic: BIP: Ensure uncompleted request func consistent
For the uncompleted BIP request, the following BIP request function
should be same with the previous.

Keep the first request function type, and check it with the following
request function type.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
179928a147 Bluetooth: classic: BIP: Check if rsp func is consistent with req's
The response function should be consistent with the function of
request when server responses the request of client.

Check whether the BIP function in the server response function is
consistent with the client request.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
04c2b996a8 Bluetooth: shell: Support BIP SDP record register and discovery
Add command `reg` to register the BIP responder SDP record.

Add command `set_caps`, `set_features`, and `set_functions` to set the
supported capabilities, features, and functions for BIP responder.

Add command `discover` to discovery the BIP responder SDP record. And
parse the response data to get the supported features and functions.

Add command `set_feats_funcs` to set the discovered supported features
and functions.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
b8db23a892 Bluetooth: Classic: SDP: Support BIP profile
Add define `BT_SDP_SUPPORTED_CAPABILITIES` to define supported
capabilities attribute.

Add define `BT_SDP_SUPPORTED_FUNCTIONS` to define supported functions
attribute.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
631bd89dd8 Bluetooth: Classic: BIP: Check features and functions of initiator
Add function `bt_bip_set_supported_capabilities()` to set the
supported caps of responder.

Add function `bt_bip_set_supported_features()` to set the supported
features of responder.

Add function `bt_bip_set_supported_functions()` to set the supported
functions of responder.

Check the supported features of responder when sending OBEX connect
request on initiator side.

Check the supported functions of responder when sending OBEX get/put
request on initiator side.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
270a2e6584 Bluetooth: shell: Add BIP shell commands
Add commands for transport over RFCOMM, including `register-rfcomm`,
`connect-rfcomm`, and `disconnect-rfcomm`.

Add commands for transport over L2CAP, including `register-l2cap`,
`connect-l2cap`, and `disconnect-l2cap`.

Add command `alloc-buf` and `release-buf` to allocate and release TX
buffer.

Add command set `add-header` to add the OBEX headers to allocated TX
buffer.

Add command set `client` to send BIP client requests with allocated
TX buffer.

Add command set `server` to send BIP responses with allocated TX
buffer.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
89fda049bc Bluetooth: classic: Enable BIP features
Add functions to manage BIP transport connect and disconnect both for
l2cap and rfcomm.

Add functions to register and unregister primary and secondary OBEX
servers.

Add functions to send OBEX connect/disconnect request and response.

Add functions to send OBEX get/put request and response with different
type defined by BT_BIP_HDR_TYPE_*.

Add functions to send abort request and response.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
860fb0a96b Bluetooth: classic: OBEX: Fix action id type issue
The OBEX packet cannot be parsed properly if the action ID header is
included in the packet.

It is caused by the value type issue of the action ID. The action ID
type should be `uint8_t` instead of `uint32_t`.

Fix the issue by change action ID value type from `uint32_t` to
`uint8_t`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
44ef5a8857 Bluetooth: classic: OBEX: Expose function bt_obex_has_header()
The function `bt_obex_has_header()` is used to check whether the
specific header is in the buffer.

It is required by upper layer to check the header from the receiving
buffer.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
99176e86f8 Bluetooth: Classic: OBEX: Expose function bt_obex_string_is_valid()
The `bt_obex_string_is_valid()` is used to check whether the sending
or receiving UTF-16 string is valid or not.

Expose function "bt_obex_string_is_valid()" to support external
checking of UTF-16 strings.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
cf11f71848 Bluetooth: OBEX: Add function bt_obex_add_header_body_or_end_body()
A new function bt_obex_add_header_body_or_end_body() is added to help
to add the body/end body header. When the tail room of the buffer is
more than the passed body room, and the total length of buffer is not
more than the mopl if the body has been added, the header end body
will be added. Or, the header body will be added.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Parthiban Veerasooran
52b1e8704e drivers: ethernet: phy_microchip_t1s: use 'ret < 0' for error checks
Replace 'if (ret)' with 'if (ret < 0)' in the Microchip T1S PHY driver.
This change follows the legacy coding style commonly used in Zephyr
drivers, where error conditions are checked explicitly against negative
values. The affected functions do not return positive values, so this
modification does not change functionality. No functional change intended.

Signed-off-by: Parthiban Veerasooran <parthiban.veerasooran@microchip.com>
2025-11-14 10:30:53 +02:00
Parthiban Veerasooran
1843b3126d drivers: ethernet: phy: configure link status control for LAN867x Rev.D0
Configure the link status in the Link Status Control register for
LAN8670/1/2 Rev.D0 PHYs, depending on whether PLCA or CSMA/CD mode
is enabled. When PLCA is enabled, the link status reflects the PLCA
status. When PLCA is disabled (CSMA/CD mode), the PHY does not support
autonegotiation, so the link status is forced active by setting
the LINK_STATUS_SEMAPHORE bit.

The link status control is configured:
- During PHY initialization, for default CSMA/CD mode.
- Whenever PLCA configuration is updated.

This ensures correct link reporting and consistent behavior for
LAN867x Rev.D0 devices.

Signed-off-by: Parthiban Veerasooran <parthiban.veerasooran@microchip.com>
2025-11-14 10:30:53 +02:00
Parthiban Veerasooran
76034d043b drivers: ethernet: phy: add support for Microchip LAN867X Rev.D0 PHY
Add support for the LAN8670/1/2 Rev.D0 10BASE-T1S PHYs from Microchip.
The new Rev.D0 silicon requires a specific set of initialization
settings to be configured for optimal performance and compliance with
OPEN Alliance specifications, as described in Microchip Application Note
AN1699 (Revision G, DS60001699G – October 2025).
https://www.microchip.com/en-us/application-notes/an1699

Signed-off-by: Parthiban Veerasooran <parthiban.veerasooran@microchip.com>
2025-11-14 10:30:53 +02:00
Ayush Singh
fcc2932390 boards: beagle: pocketbeagle_2: a53: Enable SPI0 and SPI2
- SPI0 and SPI1 are the default states of these header pins, so enable
  them.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-11-14 10:30:44 +02:00
Ayush Singh
2a4d964600 dts: vendor: ti: k3-am62-main: Add spi
- Add SPI peripherals of main domain.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-11-14 10:30:44 +02:00
Jani Hirsimäki
9800ff5c47 net: possibility to set custom link layer address length
This commit adds a new Kconfig option NET_LINK_ADDR_CUSTOM_LENGTH
that allows to set custom link layer address length if your link layer
technology is not supported directly. If this option is set to a value
greater than 0, that value is used as link layer address length.

Signed-off-by: Jani Hirsimäki <jani.hirsimaki@nordicsemi.no>
2025-11-14 10:30:35 +02:00
Jani Hirsimäki
f55dacf849 net: ip: new Kconfig NET_MGMT_EVENT_INFO_DEFAULT_DATA_SIZE
The NET_MGMT_EVENT_INFO_DEFAULT_DATA_SIZE is used to set the default
size of the data field in the net_mgmt_event_info structure. This
change allows the user to configure the size of the data field
according to their needs.

Signed-off-by: Jani Hirsimäki <jani.hirsimaki@nordicsemi.no>
2025-11-14 10:30:35 +02:00
Andrew Featherstone
380226b4a9 api: codec: Add support for custom channel identifiers
Follow the convention used elsewhere, e.g. in the sensor API, to allow
users to define their own channel identifiers. This is useful when a
driver's channels don't fit into the predefined set.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-11-14 10:30:19 +02:00
Zafer SEN
6fa982854f samples: modem: Add modem at client sample
This PR adds a new sample application demonstrating bidirectional UART
communication between console and cellular modem using the Zephyr modem
subsystem.

 Purpose
- Interactive AT command interface for modem testing
- Transparent bridge for firmware updates via XMODEM
- Reference implementation of uart_pipe + modem_pipe integration

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2025-11-14 10:30:00 +02:00
Muhammed Asif
fa31cffa0d boards: microchip: pic32cx_sg61_cult: Added clock configurations
Upgrades clock from 48MHz to 120MHz
Configure CPU clock using FDPLL, sourced from XOSC to achieve 120Mhz.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-11-14 10:29:52 +02:00
Muhammed Asif
d838034efd soc: microchip: pic32cx_sg: Add clockcontrol in soc kconfig
Selects the clock control from soc Kconfig file.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-11-14 10:29:52 +02:00
Muhammed Asif
a9878cbf53 dts: arm: microchip: Enhances the clock control capabilities
Add bindings for dfll, fdpll, gclk generator, mclk cpu, osc32k, rtc clock
and xosc for the pic32cx_sg series.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-11-14 10:29:52 +02:00
Muhammed Asif
73cc60a265 dts: arm: microchip: Basic support for clock for pic32cx_sg series
Adds the clock dts nodes and minimal set of binding parameters for using
clock_control driver. It is compatible with same5xd5x series clock.
Hence using the same driver.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-11-14 10:29:52 +02:00
Jeppe Odgaard
46adf3b1bb drivers: sensor: tach_gpio: fix rpm debug logging
`data->rpm` is a signed value and should be logged as one.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-11-14 10:29:43 +02:00
Jeppe Odgaard
97781f8b9d drivers: sensor: tach_gpio: add pulses per round
Add pulses-per-round property.

The driver only measures one pulse and uses pulses-per-round in RPM
calculation.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-11-14 10:29:43 +02:00
Lyle Zhu
d14bfb702b Bluetooth: Classic: HFP: Terminate outgoing call without alerting
If the outgoing call is not alerted, support the case to terminate the
call when receiving the AT command `AT+CHUP`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:29:26 +02:00
Lyle Zhu
e61daa9b9b Bluetooth: Classic: HFP_AG: Support Codec mSBC and LC3_SWB
Add kConfig `BT_HFP_AG_CODEC_MSBC` and `BT_HFP_AG_CODEC_LC3_SWB` for
AG to configure the optional Codec IDs.

If the kConfig `BT_HFP_AG_CODEC_MSBC` is enabled, set the feature
`WBS` bit in SDP record.

If the kConfig `BT_HFP_AG_CODEC_LC3_SWB` is enabled, set the feature
`Super WBS` bit in SDP record.

And check the selected Codec ID if it is supported when creating the
SCO connection.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:29:15 +02:00
Lyle Zhu
ebfbe2b754 Bluetooth: Classic: HFP_HF: Set SDP feature bits WBS and Super WBS
According to the HFP V1.9, the SDP feature bit `WBS` should be set if
the mBSC Codec is supported. And the SDP feature bit `Super WBS`
should be set if the LC3-SWB Codec is supported.

Set SDP feature bit `WBS` if the kConfig `BT_HFP_HF_CODEC_MSBC` is
enabled.

Set SDP feature bit `Super WBS` if the kConfig
`BT_HFP_AG_CODEC_LC3_SWB` is enabled.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:29:04 +02:00
Lyle Zhu
dacc2e0051 Bluetooth: Classic: SCO: Fix byte order issue
Change the byte order from CPU to LE16/LE32 for `accept SCO` and
`setup SCO` HCI commands.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:28:43 +02:00
Lyle Zhu
3a2ee4a0e9 Bluetooth: Classic: SCO: Set connect param with default value
In current implementation, the values are fixed for the field
`Max_Latency` and `Retransmission_Effort` of HCI command
`HCI_Setup_Synchronous_Connection` and
`HCI_Accept_Synchronous_Connection_Request`

It cannot work properly with these fixed value. It is better to
set it with default value. And it is determined by the controller.

Set the field `Max_Latency` and `Retransmission_Effort` of HCI
command `HCI_Setup_Synchronous_Connection` and
`HCI_Accept_Synchronous_Connection_Request` with default value.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:28:43 +02:00
Lyle Zhu
6c83e1a240 Bluetooth: Classic: HFP_AG: Configure voice setting
Set the voice setting according to the selected codec ID.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:28:43 +02:00
Lyle Zhu
a42128bf9b Bluetooth: Classic: HFP_HF: Configure voice setting
Add a filed `active_codec_id` to `struct bt_hfp_hf` to keep the
current codec ID. The default value is `BT_HFP_HF_CODEC_CVSD` when
creating the SLC.

Add a filed `neg_codec_id` to `struct bt_hfp_hf` to flag the
negotiated codec ID. When the AT+BCS command is executed without
error, update the `active_codec_id` with `neg_codec_id`.

Pass the properly voice setting with the `active_codec_id` in
function `bt_hfp_hf_sco_accept()`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:28:43 +02:00
Lyle Zhu
68b1e45cc5 Bluetooth: Classic: SCO: Set voice setting by upper layer
In current implementation, the voice setting of SCO is fixed value
`BT_VOICE_CVSD_16BIT`. It is not aligned with the negotiated codec
id of the HFP.

Add a filed `voice_setting` to `struct bt_sco_chan` that the voice
setting can be configured by upper layer when providing the sco
channel `struct bt_sco_chan`.

Use the `voice_setting` to setup SCO or accept SCO.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:28:43 +02:00
Lyle Zhu
1be50fa46f Include: Bluetooth: Add HCI voice_setting definitions
Add macro `BT_HCI_VOICE_SETTINGS` to assemble the voice_setting

Add macro `BT_HCI_VOICE_SETTING_*_PREP` to set the fields for
voice_setting.

Add macro `BT_HCI_VOICE_SETTING_*_GET` to get the value of the
field from the voice_setting.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:28:43 +02:00
Lyle Zhu
1edaea146e Bluetooth: Classic: HFP_AG: Update ongoing calls early post SLC setup
There is a corner case that the AT command `AT+BTRH?` is received
before processing the ongoing calls after the SLC established. In
this case the invalid response and hold status will be notified,
because the ongoing calls are not processed.

The ongoing calls should be processed as early as possible after the
SLC established.

Support the case by processing the ongoing calls in the context of
SLC established callback.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:28:32 +02:00
Arunprasath P
012d2800d5 tests: comparator: micorchip: Add board overlay file
Add board overlay file for sam_e54_xpro to enable comparator
test cases to run on this board.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-11-14 10:28:22 +02:00
Arunprasath P
055c20e676 boards: microchip: sam_e54_xpro: add Comparator to supported list
Update sam_e54_xpro.yml to include Comparator in the supported
features list.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-11-14 10:28:22 +02:00
Arunprasath P
8b53661096 drivers: comparator: microchip: Add G1 Comparator Driver
Add G1 Comparator driver for Microchip Analog Comparator Peripherals.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-11-14 10:28:22 +02:00
Arunprasath P
5ffed238ea dts: arm: microchip: add dts node and binding file for comparator g1
Add the device tree node and the binding file for
microchip comparator G1 Peripheral.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-11-14 10:28:22 +02:00
Piotr Krzyzanowski
e21ff79f64 tests: drivers: i2c: i2c_nrfx_twim: add nrf54lm20a
Add support for nrf54lm20a board in i2c_nrfx_twim tests

Signed-off-by: Piotr Krzyzanowski <piotr.krzyzanowski@nordicsemi.no>
2025-11-14 10:28:13 +02:00
Chen Xingyu
dff584177b tests: drivers: display: display_check: Add overlay for M5Stack CoreS3-SE
Add a device tree overlay to enable the MIPI-DBI bus on the M5Stack
CoreS3-SE.

The overlay removes SPIM2_MISO_GPIO35 from the pinctrl so that the MISO pin
can be used as the LCD_DC signal.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-11-14 10:27:55 +02:00
Chen Xingyu
e0e3612c36 samples: modules: lvgl: screen_transp: Add overlay for M5Stack CoreS3-SE
Add a device tree overlay to enable the MIPI-DBI bus on the M5Stack
CoreS3-SE.

The overlay removes SPIM2_MISO_GPIO35 from the pinctrl so that the MISO pin
can be used as the LCD_DC signal.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-11-14 10:27:55 +02:00
Chen Xingyu
51a53b0329 samples: modules: lvgl: demos: Add overlay for M5Stack CoreS3-SE
Add a device tree overlay to enable the MIPI-DBI bus on the M5Stack
CoreS3-SE.

The overlay removes SPIM2_MISO_GPIO35 from the pinctrl so that the MISO pin
can be used as the LCD_DC signal.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-11-14 10:27:55 +02:00
Chen Xingyu
479a675d1e samples: subsys: smf: smf_calculator: Add overlay for M5Stack CoreS3-SE
Add a device tree overlay to enable the MIPI-DBI bus on the M5Stack
CoreS3-SE.

The overlay removes SPIM2_MISO_GPIO35 from the pinctrl so that the MISO pin
can be used as the LCD_DC signal.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-11-14 10:27:55 +02:00
Chen Xingyu
1f94025f8d samples: subsys: display: lvgl: Add overlay for M5Stack CoreS3-SE
Add a device tree overlay to enable the MIPI-DBI bus on the M5Stack
CoreS3-SE.

The overlay removes SPIM2_MISO_GPIO35 from the pinctrl so that the MISO pin
can be used as the LCD_DC signal.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-11-14 10:27:55 +02:00
Chen Xingyu
6994e6efda samples: drivers: display: Add overlay for M5Stack CoreS3-SE
Add a device tree overlay to enable the MIPI-DBI bus on the M5Stack
CoreS3-SE.

The overlay removes SPIM2_MISO_GPIO35 from the pinctrl so that the MISO pin
can be used as the LCD_DC signal.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-11-14 10:27:55 +02:00
Chen Xingyu
6b0feda4f4 boards: m5stack: cores3: Add display configuration
The M5Stack CoreS3 and CoreS3-SE are equipped with an ILI9342C SPI LCD
controller. This commit adds the corresponding DTS nodes for it.

Since the display backlight is powered by the AXP2101 regulator, the
regulator driver is enabled by default, and the initialization priorities
of the mipi_dbi and display drivers have been adjusted accordingly.

Note: On the CoreS3-SE, the TF card slot and the ILI9342C display share the
same SPI bus, and the display repurposes the MISO pin as the LCD_DC signal.
In this case, the `mipi_dbi` DTS node is disabled by default. To enable it,
overlay the configuration to remove `SPIM2_MISO_GPIO35` from the pinctrl.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-11-14 10:27:55 +02:00