The usage of CHECKIF has been replaced with a regular
if. The reason for this is that higher layer may depend
on some of the checks defined by the API, and the higher
layers cannot do that properly if the checks can be
removed via a Kconfig option.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
According to the DT spec the 'phy-handle' phandle prop
is required, when a phy is used. As this phy could be
a child, we have to filter it out to not get a cycle in the graph.
This allows the phy to be a child of the eternet controller,
when using the 'phy-handle' dt prop.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
bt_uuid_from_str() uses hex2bin() from lib/utils/hex.c and
uuid_from_string() from lib/uuid/uuid.c. Add both dependencies
to each test CMakeLists.txt that compiles
subsys/bluetooth/host/uuid.c, fixing link failures on the
unit_testing platform.
Signed-off-by: Kai Cheng <chengkai@xiaomi.com>
Add comprehensive unit tests for bt_uuid_from_str and bt_uuid_compress
functions to ensure proper conversion of string representations to
Bluetooth UUID structures. Tests cover:
- 16-bit UUID string conversion (e.g., "180d")
- 32-bit UUID string conversion (e.g., "abcdef12")
- 128-bit UUID string conversion with standard format
- Invalid input cases (malformed strings, empty strings, wrong lengths)
- bt_uuid_compress: 128-bit base UUID to 16-bit and 32-bit
- bt_uuid_compress: non-base 128-bit UUID returns -ENOTSUP
- bt_uuid_compress: 16-bit passthrough
Includes proper validation of converted UUID values against
expected results using bt_uuid_cmp().
Signed-off-by: Kai Cheng <chengkai@xiaomi.com>
Add bt_uuid_compress() to compact a 128-bit Bluetooth UUID into its
16-bit or 32-bit short form when it matches the Bluetooth Base UUID.
If the UUID does not match the Base UUID pattern the 128-bit value is
copied unchanged and -ENOTSUP is returned, allowing callers to
distinguish compressible from non-compressible UUIDs.
16-bit and 32-bit source UUIDs are copied as-is.
Signed-off-by: Kai Cheng <chengkai@xiaomi.com>
Implement bt_uuid_from_str() function to convert string representations
to Bluetooth UUID structures. This provides bidirectional conversion
between UUID structures and their string representations, complementing
the existing bt_uuid_to_str() function.
Features:
- Supports 16-bit UUID format (4 hex characters, e.g., "180d")
- Supports 32-bit UUID format (8 hex characters, e.g., "abcdef12")
- Supports 128-bit UUID standard format (with hyphens)
- Comprehensive input validation and error handling
- Automatic UUID type detection based on string length
Signed-off-by: Kai Cheng <chengkai@xiaomi.com>
Refactor the Bluetooth UUID module to use the generic UUID library
(lib/uuid) instead of hand-rolled byte manipulation.
Changes:
- Replace bt_uuid_128-based base UUID with struct uuid (RFC 9562 order)
- Replace uuid_to_uuid128() with bt_uuid_to_uuid() for BT-to-generic
UUID conversion using proper big-endian / byte-swap operations
- Simplify bt_uuid_to_str() 128-bit case via uuid_to_string()
- Add Kconfig 'select UUID' dependency for BT_HCI_HOST
Signed-off-by: Kai Cheng <chengkai@xiaomi.com>
Add zephyr,openthread-counter to select counter device
used by OpenThread platform for alarm
Signed-off-by: sree sreerajatha <sree.sreerajatha@silabs.com>
Add counter driver based alarm_micro.c implementation to get better
micro-second accuracy for the APIs.
Signed-off-by: sree sreerajatha <sree.sreerajatha@silabs.com>
Split the milli/micro second APIs in OpenThread alarm implementation
so that it is easier to have multiple driver implementations
for them.
Signed-off-by: sree sreerajatha <sree.sreerajatha@silabs.com>
Add counter driver test so that it can build with BUILD_ONLY_NO_BLOBS
and successfully use RAIL stubs defined in blob_stub.c
Signed-off-by: sree sreerajatha <sree.sreerajatha@silabs.com>
Added Silabs Kconfig support for counter driver and implemented the
counter APIs using protimer underneath.
Signed-off-by: sree sreerajatha <sree.sreerajatha@silabs.com>
Add dts/bindings/*/microchip,dmec* pattern to cover DMEC bindings.
Note: microchip,mec5* is already covered by microchip,mec* pattern.
Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
Add drivers/sensor/microchip/mchp_tach_xec/ to the MEC Platforms
section as it is a MEC-specific tachometer sensor driver.
Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
Add drivers/*/*mchp*mss* pattern to cover Mi-V/MPFS specific
drivers (GPIO, I2C, SPI, Reset) and their Kconfig files.
Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
Change drivers/*/*sam*.c to drivers/*/*sam* to cover Kconfig
files and headers in addition to source files.
Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
Remove drivers/*/*mchp*.c from MEC Platforms (XEC pattern is
sufficient) and add drivers/*/mchp* to PIC32 Platforms to cover
Kconfig.mchp files and generation 1 drivers.
Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
Add boards/shields/atmel_rf2xx/ and drivers/ieee802154/*rf2xx*
to Peregrine Platforms section to cover the Atmel RF2xx shield
and its associated IEEE 802.15.4 driver files.
Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
This is useful if the application may wish to reject an address.
This works well alongside the address_provider callback, this way
you can enforce static leases based on the client id (MAC address).
Signed-off-by: Andreas Ålgård <aal@ixys.no>
Fix a typo in `pinctrl_configure_pins` where the variable `pin_cgf`
was used instead of `pin_cfg`. Update all references accordingly.
Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
ISR bits are set on input level or edge changes, regardless of whether an
interrupt is actually enabled on that line. Therefore, we check whether an
interrupt is actually enabled by masking with IMR. If we didn't do this,
some other enabled interrupt firing could also result in a callback for a
disabled interrupt.
Signed-off-by: Bert Abrath <bert.abrath@basalte.be>
Remove ranges property in partition node for rtl8752h, otherwise
the CONFIG_FLASH_LOAD_OFFSET would be wrong.
Signed-off-by: Zhiyuan Tang <zhiyuan_tang@realsil.com.cn>
- add watchdog to board's .yaml supported section for m33 and m55
- add enablement of &watchdog0 node in board's common .dtsi
- m33/m55: tests/.../wdt_basic_api
Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
- add watchdog to board's .yaml supported section for m33 and m55
- add enablement of &watchdog0 node in board's common .dtsi
- m33/m55: tests/.../wdt_basic_api
Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
- Move determination of test's NOINIT section to a new Kconfig file
- Transfer #if logic into Kconfig implementation
Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
Add a migration note for the keyboard matrix devicetree bindings to
reflect the rename of polling interval properties:
- poll-period-ms -> poll-period-us
- stable-poll-period-ms -> stable-poll-period-us
Applications must update property names and convert values from
milliseconds to microseconds.
Signed-off-by: Yuzhuo Liu <yuzhuo_liu@realsil.com.cn>
Switch the common keyboard matrix binding to use microseconds for its
polling interval properties.
Rename the properties and change their units:
- poll-period-ms -> poll-period-us
- stable-poll-period-ms -> stable-poll-period-us
Devicetrees must update the property names and convert
values from milliseconds to microseconds.
Signed-off-by: Yuzhuo Liu <yuzhuo_liu@realsil.com.cn>
The RX GPIO was originally develop for RX130 MCU which only have port
0 to 5 and A to J, this commit add missing port initialize for other RX
MCU family
Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
ZephyrSDK v1.0.0 is updated to support RXv2 and RXv3 instruction
this update the gcc cmake configuration for RX build on Zephyr SDK
for RXv2 and RXv3 MCU
Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>