Commit Graph

230 Commits

Author SHA1 Message Date
Benjamin Cabé
b3def01353 dts: bindings: ensure bindings have .yaml extension (not .yml)
Strictly speaking not a problem for in-tree tooling, but better to
have all binding files follow the same naming convention.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-26 11:03:36 -05:00
David Jewsbury
8b5ff6ab36 dts: bindings: clock: add nordic,nrf-auxpll
Introduce Nordic NRF AUXPLL binding include.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-06-26 14:13:54 +02:00
Lucien Zhao
fc293803f3 dts: arm: nxp: support sai instances on rt700 cm33 cpu0
add 3 sai instances on cm33 cpu0
add pinmux-cells in lpc-syscon.yaml

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-06-24 15:35:07 -05:00
Camille BAUD
46b5d05ae1 drivers: clock_control: Introduce bl60x clock driver
This introduces a clock_control driver for bl60x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-06-21 10:40:20 +02:00
Youssef Zini
7f23ce2967 dts: clock_control: add mp2 rcc binding
Introduce DeviceTree binding for the STM32MP2 RCC clock controller,
enabling support for STM32MP2-specific clock configuration in Zephyr.
Update Kconfig.stm32 to add a dependency on STM32MP2 configuration,
allowing the use of STM32 LL RCC features when targeting STM32MP2
devices.
Add header for STM32MP2 per peripheral clock definitions.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Khaoula Bidani
9b23a73184 dts: bindings: clock: add STM32U3 MSI
Add the Device Tree bindings for the
MSI clock of STM32U3 series.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-16 13:59:38 -04:00
Bjarki Arge Andreasen
9983222cd7 drivers: clock_control: nrf2_fll16m: impl resolve and startup_time
Implement nrf_clock_control_resolve() and
nrf_clock_control_get_startup_time_us() APIs.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-04 17:00:40 +02:00
Bjarki Arge Andreasen
b20a233b05 drivers: clock_control: nrf2_lfclk: impl resolve and startup_time
Implement nrf_clock_control_resolve() and
nrf_clock_control_get_startup_time_us() APIs.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-04 17:00:40 +02:00
Sylvio Alves
e0a915a178 soc: espressif: convert rtc peripheral to clock subsystem
Current ESP32 clock system is mixed with RTC labeling/registers,
but it doesn't implement a real-time clock (RTC) driver.

To avoid confusion and allow adding a proper RTC driver later,
this commit renames the existing RTC interface to CLOCK and make
it as a subsystem without any peripheral attached to it.

This better reflects its actual purpose as a general clock controller.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-02 17:38:08 +02:00
Bjarki Arge Andreasen
bb8ef777fb dts: bindings: clock: nrf54l-hfxo: add startup-time-us prop
Add the clock startup time property to the nrf54l series HFXO binding.

Note that the values added to the soc .dtsi files are worst case
defaults, which will be replaced with optimal values at board level
in the future, as they depend on the specific crystal in use.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-28 17:49:41 +02:00
Bjarki Arge Andreasen
393a9e50b5 dts: bindings: clock: rename nordic,nrf-lfxo -> nordic,nrf54l-lfxo
Each nrf series has its own variant of the lfxo clock, specified
by the binding which includes the series in the name. The nrf54L
series is no different, hence the binding should be clearly
specified by having the series name within it.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-28 17:49:41 +02:00
Bjarki Arge Andreasen
e3c70ee8a6 dts: bindings: clock: rename nordic,nrf-hfxo -> nordic,nrf54l-hfxo
Each nrf series has its own variant of the hfxo clock, specified
by the binding which includes the series in the name. The nrf54L
series is no different, hence the binding should be clearly
specified by having the series name within it.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-28 17:49:41 +02:00
Bjarki Arge Andreasen
b9fdef65ca dts: bindings: clock: nrf53-hfxo: add startup-time-us prop
Add the clock startup time property to the nrf53 series HFXO binding.

Note that the values added to the soc .dtsi files are worst case
defaults, which will be replaced with optimal values at board level
in the future, as they depend on the specific crystal in use.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-28 17:49:41 +02:00
Bjarki Arge Andreasen
a81dad9c5b dts: arm: nrf52: add hfxo binding and nodes
Add nrf52 series hfxo binding and nodes to socs.

Note that the values added to the soc .dtsi files are worst case
defaults, which will be replaced with optimal values at board level
in the future, as they depend on the specific crystal in use.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-28 17:49:41 +02:00
Bjarki Arge Andreasen
9ba72a5079 dts: arm: nrf51: add hfxo binding and nodes
Add nrf51 series hfxo binding and nodes to socs.

Note that the values added to the soc .dtsi files are worst case
defaults, which will be replaced with optimal values at board level
in the future, as they depend on the specific crystal in use.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-28 17:49:41 +02:00
Tony Han
3e20172ccc drivers: clock_control: microchip: add support for sama7g5 SCKC
Add driver for sama7g5 Slow Clock Controller (SCKC).

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-05-28 08:14:08 +02:00
Tony Han
8f5a0559c6 drivers: clock_control: microchip: add drivers for sama7g5 PMC
Initialize the configurations for PMC driver.
Add implement of the API for PMC clocks.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-05-28 08:14:08 +02:00
Saravanan Sekar
51bb5ddde4 drivers: clock: ti: Add initial support TI MSPM0 clock module
Add initial support TI MSPM0 clock module

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
Signed-off-by: Jackson Farley <j-farley@ti.com>
2025-05-21 08:04:32 +02:00
Bjarki Arge Andreasen
f94c6f20ff drivers: clock_control: nrf fll16 remove closed loop impl
Remove the closed loop mode implementation for the fll16m clock.
Closed loop causes a hardware bug resulting in increased current
consumption if SoC experiences high, but within spec, temperatures.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-20 16:08:31 +01:00
Benjamin Cabé
a58e65908c dts: bindings: add title property
This adds a proper, concise, title property to a bunch of bindings for
which the first sentence of their description (which used to be a
makeshift title) was really long

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-17 14:11:35 +02:00
Alain Volmat
983d891829 drivers: clock: stm32mp13: rename frac-v binding into fracn
Rename the frac-v PLL binding into fracn in order to make it
consistent with other STM32 PLL bindings.
This commit also correct the range which should be 0 - 8191.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-14 11:03:41 +01:00
Alain Volmat
d95b7c4e64 dts: bindings: stm32: add div-q and div-r on stm32mp13 plls
Depending on the PLL, all DIV-P / DIV-Q and DIV-R are available
on STM32MP13 PLLs.
Adjust valid range in order to be able to set for all 4 PLLs.
Clarify DT properties description.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-14 11:03:41 +01:00
Jeppe Odgaard
6b98f2e99f dts: bindings: clock: stm32-msi: fix whitespace
Change "1M Hz" to "1 MHz".

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-05-03 17:47:58 +02:00
Duy Nguyen
2f0715262d drivers: clock: Support clock control driver RX MCU
Initial support of clock control driver for RX MCU

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
Signed-off-by: Tran Van Quy <quy.tran.pz@renesas.com>
2025-05-02 09:18:16 +02:00
Aksel Skauge Mellbye
4b4d40017a dts: bindings: silabs: Clean up descriptions, add titles
Clean up dt binding descriptions and introduce titles where
needed to make board documentation pages look nice. The supported
hardware table on board documentation pages sources its data
from dt bindings, and needs succinct titles.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-02 09:15:50 +02:00
Hoang Nguyen
1b8c77e4de drivers: clock control: Initial support for RZ/A2M
Add clock control support for RZ/A2M

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-04-25 14:05:01 +02:00
Guillaume Gautier
744d6e8290 dts: bindings: clock: stm32n6: fix apb prescalers as constants
Errata sheet ES0620 indicates that STM32N6 APB prescalers cannot be
modified.
Fixes the value of all APB prescalers to 1 (default value).

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-04-22 14:03:22 +02:00
Tim Lin
df56c85e94 drivers/clock: Add clock drivers of it51xxx
Add clock drivers for ITE it51xxx series.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-08 10:48:26 +02:00
Julien Racki
d508ec42e2 dts: bindings: clock: Add stm32mp13 rcc clocks
Add STM32MP13 RCC clock bindings

Signed-off-by: Julien Racki <julien.racki@st.com>
2025-04-04 09:35:03 +02:00
Bjarki Arge Andreasen
791db47d51 dts: bindings: clock: add nordic,nrfs-audiopll
Introduce Nordic NRFS AudioPLL bindings.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-04-03 00:03:14 +02:00
Etienne Carriere
056d8ea25f dts: bindings: clock: stm32n6 TIMG prescaler
Add DT bindings for configuration of STM32N6 SoCs TIMG clock domain
prescaler.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-26 16:19:09 +01:00
Camille BAUD
a2a89f1fb9 drivers: clock_control: Introduce CH32V20x/30x clock control
This introduces support for CH32V20x/30x Clock schemes and
improves WCH Clock control driver

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-14 14:39:30 +01:00
Benjamin Cabé
2c1538d57e dts: stm32: Streamline Devicetree binding descriptions
Ensure consistent (and concise) short descriptions of all the st,*.yaml
bindings

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-04 21:55:54 +01:00
Khaoula Bidani
1c6915b9b1 dts: bindings: clock: make clocks property required
Modify properties clocks as required in stm32-clock-mux.yaml.


Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-02-14 10:42:42 +01:00
Tien Nguyen
b9a4e30d3b drivers: clock control: Initial support for RZ/G3S
Add Clock Control driver support for Renesas RZ/G3S

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-02-13 09:11:19 +01:00
James Roy
36f6cafdb0 dts: bindings: clock: Change the property names in the DTS
Rename the following properties in bindings and DTS:
-- freqs_mhz => freqs-mhz
-- cg_reg => cg-reg
-- pll_ctrl_reg => pll-ctrl-reg

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-02-12 02:22:51 +01:00
Jérôme Pouiller
ffb1c0de61 drivers: clock: Add dumb clock driver for SiWx91x
This driver is mostly the initial seed for further implementation of a
real clock driver.

It doesn't allow the user to choose the clock source for the various
peripherals. The driver hardcodes some sane values.

Note that for now, the driver snps,designware-i2c does not support
"clocks" attribute. So this patch hardcode the clock configuration in
the init of the clock driver.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-02-11 22:07:11 +01:00
Guillaume Gautier
bcad9cb891 dts: bindings: clock: add stm32n6 rcc clocks
Add STM32N6 RCC clock bindings

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-01-28 18:14:45 +01:00
Khoa Nguyen
305ae84457 dts: arm: renesas: ra: Add support for Renesas RA4E1 soc
Add support for r7fa4e10d2cfm, r7fa4e10d2cne soc

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-01-28 07:57:03 +01:00
Gerson Fernando Budke
ea7922195b clocks: atmel: sam0: Fix gclk and mclk clock bindings
The Atmel SAM0 SoC enable peripherals clocks in distinct places: PM and
MCLK. The old devices had defined the peripheral clock enable bit at PM.
On the newer devices this was extracted on a dedicated memory section
called Master Clock (MCLK). This change excludes the dedicated bindings
in favor of a generic approach that cover all cases.

Now the clocks properties is complemented by the atmel,assigned-clocks
property. It gives the liberty to user to customize the clock source
from a generic clock or configure the direct connections.

All peripherals drivers were reworked with the newer solution.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-01-14 20:49:03 +01:00
Gerson Fernando Budke
ecd0267508 dts: clock: Add atmel,assigned-clock property
Some platforms require special clock selection options. This could be
made using the already defined assigned-clocks from Linux clocks.

  See 93ee800895/dtschema/schemas/clock/clock.yaml (L24)

This introduces the vendor atmel,assigned-clocks and
atmel,assigned-clock-names properties to generalize those conditions
in Zephyr for Atmel sam0 SoC series.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-01-14 20:49:03 +01:00
Lin Yu-Cheng
6ea7560ce2 driver: clock_control: Add clock controller initial version of RTS5912.
Add clock controller driver for Realtek RTS5912.

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-01-10 11:58:02 +01:00
Arif Balik
6c06d2d33e dts: bindings: fix typo
Just copied and pasted the example and got an error because of the typo

Signed-off-by: Arif Balik <arifbalik@outlook.com>
2024-12-26 03:34:44 +01:00
Gerard Marull-Paretas
f267c339f7 drivers: clock_control: nrf54h-lfclk: use values from BICR
The real, applicable and trusted values are the ones flashed into BICR.
So, drop DT properties that replicate BICR and use runtime reads to BICR
instead.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-12-18 12:46:20 +01:00
Gerard Marull-Paretas
5415c42dd4 drivers: clock_control: nrf54h-hfxo: use values from BICR
The real, applicable and trusted values are the ones flashed into BICR.
So, drop DT properties that replicate BICR and use runtime reads to BICR
instead.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-12-18 12:46:20 +01:00
Bjarki Arge Andreasen
777adf4231 dts: bindings: update nrf-hsfll to nrf-hsfll-local
The nrf-hsfll was previously the only supported HSFLL clock, hence it
was not namespaced fully. Since we added nrf-hsfll-global, we should
add the namespace to nrf-hsfll as well.

Updates drivers and devicetree uses of HSFLL as well.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2024-12-17 15:22:37 +01:00
Bjarki Arge Andreasen
82bb6fc121 dts: nordic: specify device model of global hsfll clock
Add specific device model for global hsfll clock and update dts tree
to use specific model. The clock is not fixed, and configurable at
runtime to predefined frequencies specified by the platform.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2024-12-17 15:22:37 +01:00
Francois Ramu
fcc5f9dac1 dts: bindings: pll i2s for the stm32f412 has a Q divider
There is a Q-divider factor [2..15] for the stm32f412 serie
which supplies the 48MHz clock.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2024-12-13 20:05:11 +01:00
Marcin Niestroj
fafaa58240 drivers: clock: stm32: support STM32_CLOCK_DIV()
Support specifying divided clock buses by introduction of
STM32_CLOCK_DIV(div) macro. This macro can be used in devicetree to define
clock source of peripherals.

HSE is selected in devicetree using:

   <&rcc STM32_SRC_HSE ...>;

HSE/2 can now be selected with:

   <&rcc (STM32_SRC_HSE | STM32_CLOCK_DIV(2)) ...>;

This allows to use clock_control_get_rate() API in peripherals in order to
get desired clock rate.

Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2024-12-11 08:00:03 +01:00
Francois Ramu
a103d63b8f include: binding defines division factor for stm32 MCO prescaler
Depending on the stm32 serie the MCO1/2 prescaler is a value
set in the CFGR register to divide the MCO output clock.
Use the same model based on the RefMan for other stm32 series
than stm32C0/F4/F7/H5/H7, once the MCO is in the DTS.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2024-12-05 19:59:47 -05:00