Commit graph

24538 commits

Author SHA1 Message Date
Sergio R. Caprile
360522a403 drivers: eth: fix stm32_hal PHY address resolution
Fixes: #77705

Fix wrong macro.
Tested with all the boards mentioned in that issue, build now works.

Signed-off-by: Sergio R. Caprile <scaprile@gmail.com>
2024-09-03 10:42:07 +02:00
Jordan Yates
ae046fe5ea adc: adc_nrfx_saadc: support ADC_ACQ_TIME_MAX
Support the `ADC_ACQ_TIME_MAX` define in addition to
`ADC_ACQ_TIME_DEFAULT`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2024-09-02 12:31:17 -04:00
Chaitanya Tata
803f59f3e1 drivers: wifi: nrf: Add support for twister CI build
Add a mode to build the driver without FW blobs, this is mainly for
twister to run and catch any build issues without depending on any FW
blobs.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2024-09-02 12:31:06 -04:00
Nazar Palamar
eb406f80bc driver/bluetooth / cyw208xx: enable CYW20829_BT_FW_TX10DBM_POWER
Enable CYW20829_BT_FW_TX10DBM_POWER by default to get
best user experience experience out of the box.

Signed-off-by: Nazar Palamar <nazar.palamar@infineon.com>
2024-09-02 11:58:18 +02:00
Nazar Palamar
9a112dc474 driver/bluetooth: Add setup of PUBLIC ADDR
Added setup of PUBLIC ADDR

NOTE: By default, the CYW208xx controller sets some
hard-coded static address.

To avoid address duplication, let's always override
the default address by using the HCI command
BT_HCI_VND_OP_SET_LOCAL_DEV_ADDR. So

1. when cyw208xx_setup gets BT_ADDR_ANY from the host,
   it will overwrite the default address, and the host
   will switch to using a random address (set in the hci_init
   function).

2. If user set the static address (by using bt_id_create)
   before bt_enable, cyw208xx_setup will set user defined
   static address.

Signed-off-by: Nazar Palamar <nazar.palamar@infineon.com>
2024-09-02 11:58:18 +02:00
Nazar Palamar
5a113ca271 driver/bluetooth / cyw208xx: update condition for select PAwR FW
Select PAwR if enabled following features:
- BT_PER_ADV_RSP
- BT_PER_ADV_SYNC_RSP

Remove dependency BT_AIROC_CUSTOM for AIROC_CUSTOM_FIRMWARE_HCD_BLOB

Signed-off-by: Nazar Palamar <nazar.palamar@infineon.com>
2024-09-02 11:58:18 +02:00
Tim Lin
32a19ea28c drivers/espi: it8xxx2: Fix mask when SRAM size not the power of 2
When using the it8xxx2bx chip, because the SRAM size is 60k and
not a power of 2, using (CONFIG_SRAM_SIZE - 1) results in an
incorrect value for the h2ram base address mask.
Therefore, the mask is declared as GEMASK(19, 0) here.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2024-09-02 11:49:52 +02:00
Adrian Bonislawski
b9a4900c30 drivers: dma: intel_adsp_hda: change L1 exit defaults
DMA_INTEL_ADSP_HDA_TIMING_L1_EXIT should be set by default
for all  Intel ACE platforms

Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
2024-09-02 09:09:07 +02:00
Krystof Sadlik
16cdd5b852 Drivers: Counter: Added flag for counting up
Tmr and dtmr drivers were missing a flag which tells the
counter_is_conting_up function that the counter is counting up. So I've
added the flag

Signed-off-by: Krystof Sadlik <krystof.sadlik@nxp.com>
2024-09-02 09:07:57 +02:00
Lyle Zhu
5eda8e7136 Driver: hci_nxp_setup: Change log message to LOG_DBG
Due to it is a normal firmware downloading sequence,
it should be a debug log instead of error log.

Change LOG_ERR to LOG_DBG for this case.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2024-09-02 09:05:34 +02:00
Marcin Wierzbicki
970638371c drivers: adc: adc_mcux_adc12: add API internal reference
Extend the adc_mcux_adc12 adc api to set the ref_internal to
a value of vref-mv property.

Signed-off-by: Marcin Wierzbicki <marcin.wierzbicki@accenture.com>
2024-08-30 11:47:07 -04:00
Marcin Wierzbicki
53e7a9dd86 drivers: adc: adc_mcux_adc12: enable support for channel>=16 on S32K14X
Enable support for channels >= 16 on devices S32K146 and S32K148.
Channels >= 16 are encoded as 100000b..101111b in SC1[ADCH] field.

Signed-off-by: Marcin Wierzbicki <marcin.wierzbicki@accenture.com>
2024-08-30 11:47:07 -04:00
Richard Wheatley
cb20e865d6 drivers: adc: format ambiq adc driver
run clang-format on ambiq adc driver

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2024-08-30 11:46:56 -04:00
Richard Wheatley
8561d0285d drivers: adc: update ambiq adc driver
Update Ambiq adc driver to add apollo4
fixed typ of BUMBER to NUMBER
Move buffer size prio to configuring slots
and enabling the ADC
removed #if defined(CONFIG_PM_DEVICE_RUNTIME)

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2024-08-30 11:46:56 -04:00
Chris Ruehl
db5091c9f4 Drivers: Add support for Bosch bmp180 sensor
Add driver support for Bosch bmp180 pressure sensor running on i2c bus.
It pushes the driver files to the bmp180 directory under
drivers/sensor/bosch. The driver implement the Sensor API
and support channel DIE_TEMP and PRESSURE.
Driver had been tested with the NRF5340DK.

V2 fixup
---------
Drivers: Bosch bmp180 fixups for PR v2
fix BMP180 in CMakeLists.txt
rename regControl to ctrlreg
simplify the logic in set_attribute
use BMP180_GET_CMD_TEMP_DELAY

Drivers: Bosch bmp180 use system byteorder macros
To aware of ENDIANESS use the macros from byteorders.h

Drivers: Bosch bmp180 comments added to #endif
Add a comment to the #endif /* CONFIG_FOO */

Drivers: Bosch bmp180 , fix twister run error
twister report an error related to using floor() with a float
fix this using floorf() function.

Drivers: Bosch bmp180, rework review v2
fix code style issues
simplify the structure for bus and i2c.
prepare to remove the empty bmp180_i2c.c

Drivers: Bosch bmp180, remove bmp180_i2c.c
bmp180: update CMakeList.txt remove bmp180_i2c.c
bmp180: remove unused variable

fixups for complient checks

replace homebrew bitshift with byteorder.h macro
sys_get_be16 and sys_get_be24
cleanup remove unused spi.h
change struct reg16/24 to uint8_t[]
remove channel AMBIENT_TEMP
bmp180/Kconfig add missing help text
fix indent issue in bmp180_pm_action
merge BMP180_CONFIG_I2C into BMP180_INST
Move DT_DRV_COMPAT out of the header file
drop LOG_DBG() from read calibration data
remove bus_io implementation and header cleanup
move headers and structs out from bmp180.h
fix typo in comment
apply clang format changes, only if not line lenght violation
fix indent code error after joined lines
conversion from Pa to kPh was wrong, fixed it
Remove default=n from Kconfig, it is the default.
Move the conversion ready test into a function (duplicate code)
and apply retry policy
parameter naming with indicate the usage
change BMP180_INST(inst) to clang format
fix int32_t overflow in convension formular
fix wrong devider in convension formula
move BSWAP_s16 BSWAP_u16 from .h to .c

Signed-off-by: Chris Ruehl <chris@gtsys.com.hk>
2024-08-30 11:46:25 -04:00
Johan Hedberg
c15957e753 Bluetooth: drivers: Add module blobs dependencies to Kconfig
Now that there is an actual Kconfig symbol generated for blobs presence,
take advantage of that and declare appropriate dependencies to it. Also add
helpful CMake output if the blobs are missing by taking advantage of the
zephyr_blobs_verify() CMake function.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2024-08-30 11:45:56 -04:00
Jordan Yates
39a582a9ec fuel_gauge: composite analog fuel gauge
Construct a device that implements the fuel-gauge API from a collection
of analog sensing inputs.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2024-08-29 16:12:36 -04:00
Marcio Ribeiro
0705aaeb81 drivers: dac: esp32: clock initialization fix
Fixed ESP32 DAC clock initialization

Fixes: #70295

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2024-08-29 16:11:57 -04:00
IBEN EL HADJ MESSAOUD Marwa
2353b9391b drivers: i2s: i2s_ll_stm32: Handle single clock source
Modify the function "i2s_stm32_set_clock" to handle the case where pclk_len
it is not greater then 1 and to ensure that the freq_in
variable is correctly set in both cases.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2024-08-29 16:11:30 -04:00
Fin Maaß
235033f4b7 drivers: hwinfo: litex: depend on devicetree
make litex hwinfo dependent of enabled state of device.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-08-29 16:10:57 -04:00
Marcio Ribeiro
902104d795 drivers: i2s: esp32s3/esp32c3
i2s support added for esp32s3 and esp32c3

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2024-08-29 18:06:23 +02:00
Hao Luo
b532a3ea7f boards: ambiq: apollo3: add connector dtsi for apollo3 boards
Added connector dtsi files for apollo3_evb and apollo3p_evb,
and ran gpio_basic_api to test, all cases pass

Signed-off-by: Hao Luo <hluo@ambiq.com>
2024-08-29 18:06:07 +02:00
Peter van der Perk
44f7928ecf clock: mcux_ccm: add flexio clock
Adds flexio1 and flexio2 clock definitions to get the clock rate

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2024-08-29 18:04:56 +02:00
Ha Duong Quang
77968d4dd8 boards: s32z2xxdc2: add support for adc
Add devicetree of adc instances for s32z270.

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2024-08-29 18:04:36 +02:00
Gang Li
e1d20235d3 drivers: wifi: nxp: change the dormant state
1) After the wifi driver successfully connects to the AP,
the dormant state should be set to OFF.
Once a deauth/disassoc frame is received or link lost occurs,
the dormant state should be set to ON.
2) Enable CONFIG_NET_TC_SKIP_FOR_HIGH_PRIO and CONFIG_NET_CONTEXT_PRIORITY
to push high priority packets directly to network driver.

Signed-off-by: Gang Li <gang.li_1@nxp.com>
2024-08-29 18:03:48 +02:00
Lars Jeppesen
8c3790d9b7 drivers: adc: stm32h5x: Set option register for adc1/channel 0
The STM32H5x adc has a special option register that
needs to be set when using channel 0 on adc1.

fixes: #77618

Signed-off-by: Lars Jeppesen <lje@foss.dk>
2024-08-29 18:03:33 +02:00
Fabian Blatz
6ae753f5bd drivers: stepper: Fix missing _driver_api suffix
The gen_kobject_list.py script expects the __subystem declaration to end
with _driver_api. Adjust the stepper api and existing driver implementation
accordingly.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2024-08-29 18:03:01 +02:00
Efrain Calderon
40414f72e9 drivers: adc: ads1x1x: add support for RDY pin
Some hardware configuration require rely on the ALERT/RDY
pin to know when and ADC conversion is completed.

The polling thread is left as fallback, when the pin
is not defined.

Signed-off-by: Efrain Calderon <efrain.calderon.estrada@gmail.com>
2024-08-29 15:55:14 +02:00
Vit Stanicek
db1cb43a9d drivers: audio: Add the wm8904 driver
Add driver for the Wolfson WM8904 audio codec.

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
Signed-off-by: Yves Vandervennet <yves.vandervennet@nxp.com>
Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2024-08-29 15:53:26 +02:00
Vit Stanicek
673b3db80a drivers: clock_control_mcux_syscon: Add I2S MCLK
Add support for the I2S MCLK signal (provided by CLOCK_GetMclkClkFreq).

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2024-08-29 15:53:26 +02:00
Fin Maaß
4a6dacf01b drivers: adc: tla2021: seperate thread, only when needed
only use the separate thread, when
CONFIG_ADC_ASYNC is enabled.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-08-29 15:52:46 +02:00
Karol Lasończyk
99d8549a5c drivers: misc: Add support for nRF54L15 SoC
Expand vpr_launcher to support production version of the SoC.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
2024-08-29 12:02:35 +02:00
Raffael Rostagno
b4148f17b7 drivers: entropy: esp32c6: Add support
Add support of entropy (TRNG) driver for ESP32C6

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2024-08-29 11:38:36 +02:00
Daniel Leung
4cf95b1800 mm: common: reset mappings during simple mapping failures
For mapping operations in sys_mm_drv_simple_map_region() and
sys_mm_drv_simple_map_array(), when there was an error with
mapping any pages, it would simple return an error, leaving
already mapped pages still mapped. This modifies the behavior
where any failure during the whole mapping operation will
unmap the already mapped pages.

This also modifies the remapping and moving functions to
reset mappings when error is encountered.

Fixes #73121

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2024-08-28 16:35:43 -04:00
Dominik Lau
4ca2400af6 drivers: input: use generic touch report in stmpe811
Adds the use of generic touch reporting method for stmpe811 driver.

Signed-off-by: Dominik Lau <dlau@internships.antmicro.com>
Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-08-28 14:02:43 -04:00
Dominik Lau
40e64f1564 drivers: input: use generic touch report in ft5336
Adds the use of generic touch reporting method for ft5336 driver.

Signed-off-by: Dominik Lau <dlau@internships.antmicro.com>
Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-08-28 14:02:43 -04:00
Dominik Lau
74e84a9dfd drivers: input: common properties parsing for touchscreen drivers
Adds a way of reporting touchscreen events
taking common properties into account.

Signed-off-by: Dominik Lau <dlau@internships.antmicro.com>
Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-08-28 14:02:43 -04:00
Fin Maaß
2293e6668a drivers: sensors: add jedec jc 42.4 compliant temperature sensor
This transforms the existing driver for the Microchip MCP9808
to be used as a generic driver to be used with  all
JEDEC JC 42.4 compliant temperature sensor chips.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-08-28 14:02:16 -04:00
Andrey VOLKOV
665da7354b drivers: adc: ra: rename "channels-num" to the more common "channel-count"
The "channels-num" should not be used here, other system's parts are using
"channel-count" instead for the same purpose.

Also property's description has been сorrected.

Signed-off-by: Andrey VOLKOV <andrey.volkov@munic.io>
2024-08-28 14:01:46 -04:00
Kapil Bhatt
6aea527c65 drivers: wifi: Add overrun count in statistics
Add overrun count in statistics. It will represent
the number of packets dropped either at received and
sent due to lack of buffer memory.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2024-08-28 13:59:59 -04:00
Lucas Tamborrino
ff36d10333 drivers: dma: esp32: Handle Rx water mark interrupt
Remove water mark configuration and handle its interrupt
instead, since it is only present in ESP32S3.

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2024-08-28 13:59:42 -04:00
TOKITA Hiroshi
981fb7b900 driver: clock_control: renesas_ra: Use pclkblock's clock src defaultly
When omitting the clk_src definition in a child node of a pclkblock,
it uses the source of the parent node.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2024-08-28 06:51:25 -04:00
TOKITA Hiroshi
37b24ab8b9 driver: clock_control: renesas_ra: Defining MSTP regs in devicetree
Allows MSTP register addresses to be changed in the device tree
to support different configuration SoCs.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2024-08-28 06:51:25 -04:00
Jeppe Odgaard
6446ce8982 drivers: rtc: rtc_ll_stm32: add hse clock support
Add support for HSE as the RTC clock source.

The initial implementation has the following limitations:
 - Only whole MHz HSE frequency is supported, e.g. 24.5 MHz will generate a
 compile error.
 - Frequencies equal or above 64 MHz are not supported and will generate a
   compile error.

The implementation has been tested on nucleo_h563zi with:
 - 8 MHz (via hse-bypass)
 - 25 MHz (via external crystal)

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2024-08-28 06:51:00 -04:00
Anke Xiao
04ae22eb22 drivers: spi: update spi_mcux_flexio.c
After testing the flexio spi_loopback on the ke1xz platform,
it is found that the master transfer and receive are not
synchronized. So add loop code to wait for the master transfer
to complete for frdm_ke17z and frdm_ke17z512 platforms.

Signed-off-by: Anke Xiao <anke.xiao@nxp.com>
2024-08-28 06:50:50 -04:00
Tim Lin
2cce7ff4a8 Revert "drivers/interrupt: it8xxx2: Register interrupt number 0 to handle"
This reverts commit 93f2b08b460a47e17ac756b61576a05cff88d650.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2024-08-28 06:49:36 -04:00
Ian Morris
a329a0c09f drivers: sensor: tmp116: Add ability to set operating mode of TMP116/7
Adds support for setting the operating mode of the TMP116/7 sensor to
either shutdown, continuous conversion or one-shot mode.

Signed-off-by: Ian Morris <ian.d.morris@outlook.com>
2024-08-27 15:14:59 -04:00
Ayush Singh
348388b678 drivers: cc13xx_cc26xx: pwm: Add polarity flag support
- Allow setting polarity from DT.
- At least on bcf, going from 0 to 255 causes brightness to decrease
  (although 0 is still off and 255 is still on).
- Seems to work as expcted by using TnPWML register.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2024-08-27 10:51:04 -04:00
Laurentiu Mihalcea
e224a41ec8 drivers: dai: sai: don't crash on underrun/overrun
TX/RX FIFO underrun shouldn't crash the RTOS when it occurs.
Also, since this can also happen under "normal" conditions
(i.e: DMA doesn't copy data fast enough from/to SAI's FIFOs)
the software should be able to recover from it.

As such:
	1) Remove `z_irq_spurious()` call.
	2) Clear error flag
	3) De-escalate error message to warning message

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2024-08-27 10:50:53 -04:00
Mathieu Choplain
e4a7c0f9ce drivers: intc: stm32: rebrand EXTI API to be hardware-agnostic
This commit rebrands the STM32 EXTI API to a more hardware-agnostic
"GPIO interrupt controller" API, in anticipation of the introduction of
new series lacking the EXTI peripheral. The GPIO and EXTI drivers are
updated to match the rebranded API.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2024-08-27 10:50:39 -04:00