Commit graph

8801 commits

Author SHA1 Message Date
Manuel Arguelles
8d2778f326 drivers: ethernet: add support for NXP S32 NETC
Introduce Ethernet low-level driver for NXP S32 Network Controller
(NETC). Current driver allows to manage from Zephyr a Physical Station
Interface (SI) and/or a Virtual SI. The NETC has an integrated Ethernet
Switch. Currently the Switch is initialized from this driver with a
default configuration, and all ports are enabled and transparent for
the user. A separate Switch driver should be addressed in future patches.

Signed-off-by: Manuel Arguelles <manuel.arguelles@nxp.com>
2023-01-24 14:37:20 +01:00
Manuel Arguelles
1d6452c57b drivers: mdio: add support for NXP S32 NETC EMDIO
Introduce NXP S32 NETC External MDIO controller driver. Driver supports
a single instance, as current support is based on NXP S32Z/E SoCs.

Signed-off-by: Manuel Arguelles <manuel.arguelles@nxp.com>
2023-01-24 14:37:20 +01:00
Manuel Arguelles
ff800147f9 dts: arm: nxp_s32z27x_r52: add MRU instances
Add MRU instances to be used with NXP S32 MRU Mbox based driver.

Signed-off-by: Manuel Arguelles <manuel.arguelles@nxp.com>
2023-01-24 14:37:20 +01:00
Manuel Arguelles
60608b7a31 drivers: mbox: add support for NXP S32 MRU
Introduce NXP S32 Message Receive Unit (MRU) driver based
of Mbox API. The MRU couples with a processor and allows to
receive messages from senders, which are other modules or
processors.

Signed-off-by: Manuel Arguelles <manuel.arguelles@nxp.com>
2023-01-24 14:37:20 +01:00
Erwan Gouriou
3b97a481c4 dts: stm32l4: Use HSI48 as 48MHz clck source when available
On STM32L4 that probvide HSI48 clock, use it as 48MHz domain clock.
This impacts following devices:
-SDMMC
-RNG
-USB
Otherwise, when HSI48 is not available MSI is used.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2023-01-24 09:42:51 +01:00
Francois Ramu
0470396e0c dts: arm: stm32 devices include the dma definitions for driver
Include the bindings macro to help configuring the dma channels
of a stm32 peripheral

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2023-01-23 09:15:21 -06:00
Wojciech Slenska
37f15d2b96 dts: arm: stm32u5: Add aes node
Add hw crypto support in stm32u5 dtsi.

Signed-off-by: Wojciech Slenska <wsl@trackunit.com>
2023-01-23 12:04:00 +00:00
Tom Stirnkorb
0a2ebe74c8 dts: can: add can support for stm32f412 and stm32f413
STMF412 and STM32F413 did not support CAN bus in Zephyr yet.
This adds the device tree entries to be able to use all 2, resp.
3 CAN controllers.

Signed-off-by: Tom Stirnkorb <tom@stirnkorb.me>
2023-01-20 14:35:28 +01:00
Francois Ramu
2b7dc694e5 dts: arm: stm32 devices with adc node have vref-mv default value
Remove the vref-mv = <3300>; property for all the ADC node of
the stm32 devices as it is set by default to 3300mV by the
dts/adc/st,stm32-adc.yaml
(Except for the stm32f303 vref is 3000mV)

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2023-01-20 14:35:17 +01:00
Mateusz Sierszulski
5744709c9c drivers: watchdog: Enable Gecko wdt driver efr32bg_sltb010a
This commit enables the Gecko Watchdog Timer driver on the
efr32bg_sltb010 board.

Signed-off-by: Mateusz Sierszulski <msierszulski@antmicro.com>
2023-01-20 12:22:56 +01:00
Cristiana Preda
4b9015d774 dts: bindings: pwm: imx: change PWM flag cell
Modifying .yaml file to permit polarity options for mimxrt10xx boards.

Signed-off-by: Cristiana Preda <predacristianamaria@gmail.com>
2023-01-20 09:02:02 +01:00
Erwan Gouriou
0b004c0418 dts: stm32f7: Configure rng domain clock
Configure RNG domain clock and align it on USB (as this is the same clk).
This is not stricly required, as this configuration matches default
reset but its more consistent this way.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2023-01-19 20:58:15 -08:00
Erwan Gouriou
a8c0545843 dts: stm32f410: No SDMMC available
Remove SDMMC from f410 soc variant since it's not actually available.
Do this in package variant as F410 is included by f412 who has a SDMMC.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2023-01-19 20:58:15 -08:00
Erwan Gouriou
681cf6d715 dts: stm32: Configure SDMMC 48MHz domain clock
Provide SDMMC domain clock, when required (because it is common)use
the same as the one selected by USB and RNG.
Otherwise, when available use HSI48, otherwise use the most handy (MSI,
sysclk ...).
PLLSAI is not used as not implemented for now.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2023-01-19 20:58:15 -08:00
TOKITA Hiroshi
10ef1a7cba drivers: sensors: Add support for RaspberryPi Pico CPU temperature
Support for the measuring the CPU die temperature
for the RaspberryPi Pico.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
2023-01-19 15:32:41 -06:00
Felipe Neves
cd04926d6b sensors: as5600: added as5600
magnetic angle sensor driver.

Signed-off-by: Felipe Neves <felipe.neves@linaro.org>
2023-01-19 15:18:24 -06:00
Erwan Gouriou
ff231fa20a dts: stm32: Populate new properties for exti nodes
Populate new properties required for exti binding.
This only adds gpio related bits for now.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2023-01-19 17:20:48 +00:00
Erwan Gouriou
2d51400775 dts/bindings: interrupt-controller: stm32: Add line properties
Add 2 properties in STM32 external interrupt controller:
- num-lines
- line-ranges

Additionally, make interrupt-names a required property.

The properties will help to simplify exti init code in building the
exti_irq_table and simplify the isr related bits.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2023-01-19 17:20:48 +00:00
Adrian Warecki
8794de2934 intel_adsp: soc: ace: Add communication widget driver
Intel DSP Communication Widget is a device for generic sideband
message transmit/receive between IPs in a SOC.

Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
2023-01-18 10:47:21 +01:00
Erwan Gouriou
c5692ed273 dts: stm32l4: Configure RNG domain clocks
Align RNG domain clock confguration on USB clock configuration.
For now we're not able to fully use CLK48 as a mux clock, so
this has to be done on both nodes rather than on a centralized
fashion.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2023-01-18 09:56:03 +01:00
Dino Li
a41a4e5e24 espi: it8xxx2: enable espi transaction interrupt
The interrupt is used to wake up EC from low power mode.
So EC does not defer eSPI bus while transaction is accepted.
Fixes EC host commands slow issue.

Signed-off-by: Dino Li <Dino.Li@ite.com.tw>
2023-01-18 09:55:44 +01:00
Pawel Czarnecki
04ec6d72e7 dts: spi: silabs: make peripheral-id property optional
This commit makes the peripheral-id property optional and removes it's
usage from the Gecko SPI driver.

Signed-off-by: Pawel Czarnecki <pczarnecki@antmicro.com>
2023-01-17 15:37:27 -06:00
Pawel Czarnecki
a9948528b5 dts/boards: efr32bg_sltb010a: add spi-through-usart nodes
This commit configures USART0 to act as SPI.

Signed-off-by: Pawel Czarnecki <pczarnecki@antmicro.com>
2023-01-17 15:37:27 -06:00
Pawel Czarnecki
eb4a0ae225 drivers: pinctrl: silabs: add spi handling
This commit adds pinctrl configuration for SPI on USART.

Signed-off-by: Pawel Czarnecki <pczarnecki@antmicro.com>
2023-01-17 15:37:27 -06:00
Jaska Uimonen
a9b3d93550 intel_adsp: dai: Add support for ALH up to 16 nodes
ALH dts definitions need to have 16 nodes, thus add them to supported
platforms (cavs25 and ace15).

Signed-off-by: Jaska Uimonen <jaska.uimonen@linux.intel.com>
2023-01-17 13:06:39 -05:00
Georgios Vasilakis
9951971aee dts: arm: nordic: Set RNG node for Nordic devices
This sets the RNG node that will be used by the Nordic
devices which support TF-M (nRF5340/nRF9160) to use the
defined scheme with psa_generate_random.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2023-01-17 11:36:49 +01:00
Armin Brauns
149ab4f956 dts: arm: st: add reset properties to sdmmc nodes
This allows the sdmmc driver to reset the peripheral during initialisation.

Signed-off-by: Armin Brauns <armin.brauns@embedded-solutions.at>
2023-01-17 11:27:16 +01:00
Marti Bolivar
ef203fd8ae dts: bindings: fix missing information in fixed-partitions
The documentation for the fixed-partitions binding is missing critical
information and is vague in other important respects. This is an
important binding that deserves to be crystal clear. Fix it.

Signed-off-by: Marti Bolivar <marti.bolivar@nordicsemi.no>
2023-01-17 09:21:56 +01:00
Erwan Gouriou
ed28c26b8a dts: stm32: Describe default domain clock configuration for usb devices
Describe USB default domain clock on all USB devices.
When available select HSI48.
On some series, a default clock my be set by default at start up.
On those series, in order to be able to compute USB clock at runtime,
clock_control driver needs to be aware of configuration and then this
default config has to be described explicitly too.

Default clocks are not enabled though. It is up to board configuration
to provide correct clock configuration (and we should not enabled by
default clocks that would not be required by board configuration).

Note: This change doesn't consider STM32F1/F3 devices, which
have a specific USB clock configuration.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2023-01-16 11:23:55 +00:00
Grixa Yrev
15a83fe0a0 drivers: pwm: pwm_mcux: Reload mode option
DTS property "nxp,reload" selects how to load the buffered-registers
with new values.

Signed-off-by: Grixa Yrev <grixayrev@yandex.ru>
2023-01-16 09:26:23 +01:00
Ruibin Chang
344c9c67f9 ITE drivers/pinctrl/it8xxx2: extend pinctrl driver for kscan pins
Extend pinctrl driver for kscan pins.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2023-01-14 09:22:39 +01:00
Ruibin Chang
d7f482a022 ITE driver/gpio/it8xxx2: add kscan pins gpio driver
Add kscan pins gpio driver for KSI[7:0], KSO[15:0] pins that
they can be configured to gpio mode. These pins registers address,
bit fields and function are different from GPIO group, so I create
a new compatible driver for these pins.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2023-01-14 09:22:39 +01:00
Declan Snyder
3bc095a810 sd: MMC API, and MMC Spec
- Adds the declaration of the MMC API
- Adds MMC spec related declarations
- Adds some properties to sdhc dts binding for mmc

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2023-01-14 09:22:22 +01:00
Declan Snyder
19bd9a3618 boards: arm: Renamed NXP usdhc in imxrt5xx
The names of these peripherals in the device tree
did not match the Reference Manual for the RT500.

Also fixed a typo in a comment referring to USDHC which should have been
about USB.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2023-01-14 09:22:22 +01:00
Declan Snyder
36b6dec832 boards: arm: mimxrt595_evk: Plumbs RT595 USDHC
- Adds the pin controls and ushdc settings in device tree
- Attaches clock to USDHC in soc.c
- Adds binding for mmc

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2023-01-14 09:22:22 +01:00
Mateusz Sierszulski
d58189f214 drivers: i2c: Enable Gecko i2c driver for efr32bg_sltb010a
This commit enables the Gecko i2c driver on the efr32bg_sltb010a board.

Signed-off-by: Mateusz Sierszulski <msierszulski@antmicro.com>
2023-01-13 10:23:55 -06:00
YuLong Yao
a258a59c6f dts: gd32a50x: introduce gd32a50x series
introduce gd32a50x series

Signed-off-by: YuLong Yao <feilongphone@gmail.com>
2023-01-12 21:45:38 +01:00
Lucas Tamborrino
9421785fd0 dts: esp32c3: add bindings to GDMA
Add GDMA node to esp32c3.

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2023-01-12 19:09:01 +01:00
Gerard Marull-Paretas
8c73db666c drivers: regulator: npm1100: add initial support
While nPM1100 is to be operated in fixed configuration for some
applications, it has some degree of configuration via GPIOs. For
example, mode (auto/PWM) can be configured via MODE pin. VBUS current
can also be adjusted using ISET pin, even though there is no API yet to
limit the PMIC input current.

This patch adds a new regulator class driver for nPM1100 PMIC, so that
it can be used with the standard regulator API when needed.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2023-01-12 19:07:05 +01:00
Mateusz Sierszulski
b36a31fd7a drivers: entropy: Add Gecko trng driver for EFR32BG22
This commit enables entropy driver on EFR32BG22 SoC.

Signed-off-by: Mateusz Sierszulski <msierszulski@antmicro.com>
2023-01-12 15:22:11 +00:00
Mirko Bottarelli
5f9eb210f7 boards: stm32l412: fifo compatibility to spi2
In file stm32l412.dtsi, spi2 was missing fifo compatibility,
this way failing to initialise fifo threshold correctly
when spi data width is configured.

Signed-off-by: Mirko Bottarelli <mirko.bottarelli@gmail.com>
2023-01-12 14:58:57 +01:00
Marco Peter
077273add7 dts: arm: st: Fix type in clock assignment of timer15
STM32Gxxx controllers only have a single APB bus.

Signed-off-by: Marco Peter <marco.peter@joylab.ch>
2023-01-12 13:45:54 +01:00
Erwan Gouriou
c4b53d5daa dts: stm32f4: stm32f437 is a variant of stm32f427
stm32f427 + crypto = stm32f437

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2023-01-12 12:46:53 +01:00
Erwan Gouriou
7c147ef552 include: dt-bindings: stm32f4_clock.h: Add DCKCFGR registers
Add f4 binding files to provide DCKCFGR registers description
to enable clock selection for F410/F427/F446 variant lines

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2023-01-12 12:46:53 +01:00
Erwan Gouriou
92b8fb4db2 dts: stm32f4: rng is available on stm32f410
Add rng definition to f410.
Though, don't inherit directly in f412 as it's integrated
in a different way.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2023-01-12 12:46:53 +01:00
Erwan Gouriou
0050ad80a9 dts: stm32f4: stm32f412 is a variant of stm32f410
In order to ease description of DCKCFG regsiters,
make f412 a variant of f410 as it supposed to be.

Only exception is missing DAC1.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2023-01-12 12:46:53 +01:00
Ruibin Chang
50274718e2 ITE dts/riscv/ite: separate dtsi node to it81xx2 from it8xxx2
The interrupt and watchdog registers of the it82xx2 will be
remapped, so these device nodes should be separated to
it81xx2 from it8xxx2. it8xxx2 dtsi are common settings
for it81xx2 and it82xx2.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2023-01-11 09:42:11 +01:00
Michał Barnaś
0918442ba6 ec_host_cmd: add ITE SHI peripheral for the host commands
This commit adds the support for host commands being transported
by the Serial Host Interface on the IT8xxx2 SoC.

Signed-off-by: Michał Barnaś <mb@semihalf.com>
2023-01-11 09:38:45 +01:00
Michał Barnaś
3ae105e76b ec_host_cmd: add NPCX SHI peripheral for the host commands
This commit adds the support for host commands being transported
by the Serial Host Interface on the NPCX SoC.

Signed-off-by: Michał Barnaś <mb@semihalf.com>
2023-01-11 09:38:45 +01:00
Nick Ward
658b618289 drivers: pwm: add NXP PCA9685 controller
Adds PCA9685 16-channel, 12-bit PWM Fm+ I2C-bus LED controller

Signed-off-by: Nick Ward <nix.ward@gmail.com>
2023-01-11 09:38:18 +01:00