zephyr/drivers/clock_control
Artur Rojek 14912d241c nxp: imx: Implement iuart clock gating
Add clock control support for UART controllers found in i.MX SoC family.
This change moves clock gating out of respective `soc.c` files and into
clock controller's `clock_control_on`/`_off` methods, allowing for
dynamic clock state control, and setup via Device Tree bindings.

This is especially important on SoCs, where Zephyr is sharing the bus
with cores running other OSes, such as might be the case for i.MX 8MM.

Unfortunately, Zephyr doesn't possess an ability to represent clock
hierarchy (e.g. via DT's `assigned-clocks` property), so clock source
and frequency still need to be hardcoded in aforementioned `soc.c`
files.

Signed-off-by: Artur Rojek <artur@conclusive.pl>
2023-03-15 09:13:10 +01:00
..
beetle_clock_control.c include: add missing irq.h include 2022-10-11 18:05:17 +02:00
clock_agilex_ll.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
clock_agilex.c drivers: clock_control: Use Agile clock sub system as clock id 2022-07-05 15:38:54 +00:00
clock_control_adsp.c intel_common: clean up & rename cavs_* to adsp_* 2022-11-28 17:45:20 -05:00
clock_control_ast10x0.c include: fix the remaining legacy #include paths 2022-08-02 16:41:41 +01:00
clock_control_esp32.c clock: esp32s3: add peripheral initialization 2023-02-27 19:41:33 +01:00
clock_control_gd32.c drivers: clock: gd32: add gd32a50x support 2023-01-12 21:45:38 +01:00
clock_control_ifx_cat1.c drivers: clock_control: Add Infineon CAT1 clock control driver 2023-03-01 11:44:57 +01:00
clock_control_litex.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
clock_control_litex.h clock_control: litex: Use register names 2022-05-06 11:31:54 +02:00
clock_control_lpc11u6x.c include: add missing kernel.h include 2022-10-11 18:05:17 +02:00
clock_control_lpc11u6x.h drivers: clock_control: convert lpc11u6x syscon driver to pinctrl 2022-05-10 17:27:44 -05:00
clock_control_mchp_xec.c mec150x: clk ctrl: fix clock trim register update 2023-01-19 12:45:56 -06:00
clock_control_mcux_ccm_rev2.c drivers: sdhc: add clock init for USDHC2-block of NXP i.MX-processors 2022-08-31 13:21:17 -05:00
clock_control_mcux_ccm.c nxp: imx: Implement iuart clock gating 2023-03-15 09:13:10 +01:00
clock_control_mcux_mcg.c clock: mcux: Use FSL_FEATURE_MCG_FFCLK_DIV to conditionalize 2022-09-16 13:21:04 -05:00
clock_control_mcux_pcc.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
clock_control_mcux_scg.c drivers: s/DT_CHILD(DT_DRV_INST(n), ...)/DT_INST_CHILD(n, ...) 2022-09-06 08:45:25 -07:00
clock_control_mcux_sim.c drivers: clock_control: mcux_sim: Remove dead code 2022-06-10 09:47:21 +02:00
clock_control_mcux_syscon.c drivers: clock_control: add clock rate definitions for MIPI and LCDIF 2023-03-04 09:19:26 +01:00
clock_control_npcx.c driver: PECI: npcx: add driver support for Nuvoton npcx family 2022-07-29 14:09:17 +02:00
clock_control_nrf.c drivers: clock_control_nrf: Fix releasing/stopping of HFCLK 2022-11-25 10:45:50 +01:00
clock_control_r8a7795_cpg_mssr.c include: add missing irq.h include 2022-10-11 18:05:17 +02:00
clock_control_renesas_cpg_mssr.c include: add missing kernel.h include 2022-10-11 18:05:17 +02:00
clock_control_renesas_cpg_mssr.h drivers: pwm: add Renesas R-Car driver 2022-09-07 15:50:49 +02:00
clock_control_rv32m1_pcc.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
clock_stm32_ll_common.c drivers: clock_control: add STM32C0 support 2023-03-14 17:35:37 +00:00
clock_stm32_ll_common.h drivers: clock_control: stm32: Implement F412 PLL I2S Support 2023-03-01 08:56:05 +01:00
clock_stm32_ll_h7.c soc: arm: Add support for STM32H730xxQ 2023-03-07 15:49:47 +01:00
clock_stm32_ll_mp1.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
clock_stm32_ll_u5.c drivers: clock_control: stm32: Fix HSI48 oversights 2023-01-09 14:01:28 +00:00
clock_stm32_mux.c drivers: clock_control: stm32_mux: Fix src clock configuration 2022-11-10 09:30:09 +01:00
clock_stm32c0.c drivers: clock_control: add STM32C0 support 2023-03-14 17:35:37 +00:00
clock_stm32f0_f3.c drivers/clock_control: stm32 common allow pll also when it is not sysclk 2022-07-04 16:41:24 +02:00
clock_stm32f1.c drivers: clock_control: stm32f1: Configure USB prescaler 2022-12-22 14:43:26 +01:00
clock_stm32f2_f4_f7.c drivers: clock_control: stm32: Implement F412 PLL I2S Support 2023-03-01 08:56:05 +01:00
clock_stm32g0.c drivers/clock_control: stm32 g0, g4, l4, remove get_pllout_frequency() 2022-07-04 16:41:24 +02:00
clock_stm32g4.c include: add missing sys/time_units.h include 2022-10-11 18:05:17 +02:00
clock_stm32l0_l1.c drivers/clock_control: stm32 common fix STM32_SRC_PLLCLK calculation 2022-07-27 18:44:49 +02:00
clock_stm32l4_l5_wb_wl.c include: add missing sys/time_units.h include 2022-10-11 18:05:17 +02:00
CMakeLists.txt drivers: clock_control: add STM32C0 support 2023-03-14 17:35:37 +00:00
Kconfig drivers: clock_control: Add Infineon CAT1 clock control driver 2023-03-01 11:44:57 +01:00
Kconfig.aspeed drivers: clock_control: add Aspeed AST10x0 clock control 2022-07-28 08:30:27 +02:00
Kconfig.beetle drivers: clock_control: Update drivers to use devicetree Kconfig symbol 2022-07-27 09:47:16 +02:00
Kconfig.cavs boards, dts: fix namespace for intel adsp cavs, ace 2022-09-14 07:23:08 -04:00
Kconfig.esp32 drivers: clock_control: Update drivers to use devicetree Kconfig symbol 2022-07-27 09:47:16 +02:00
Kconfig.gd32 drivers: clock_control: gd32: initial support 2022-09-06 09:57:25 +02:00
Kconfig.ifx_cat1 drivers: clock_control: Add Infineon CAT1 clock control driver 2023-03-01 11:44:57 +01:00
Kconfig.litex drivers: clock_control: Update drivers to use devicetree Kconfig symbol 2022-07-27 09:47:16 +02:00
Kconfig.lpc11u6x drivers: clock_control: Update drivers to use devicetree Kconfig symbol 2022-07-27 09:47:16 +02:00
Kconfig.mcux_ccm drivers: clock_control: Update drivers to use devicetree Kconfig symbol 2022-07-27 09:47:16 +02:00
Kconfig.mcux_ccm_rev2 drivers: clock_control: Update drivers to use devicetree Kconfig symbol 2022-07-27 09:47:16 +02:00
Kconfig.mcux_mcg drivers: clock_control: Update drivers to use devicetree Kconfig symbol 2022-07-27 09:47:16 +02:00
Kconfig.mcux_pcc drivers: clock_control: Update drivers to use devicetree Kconfig symbol 2022-07-27 09:47:16 +02:00
Kconfig.mcux_scg drivers: clock_control: Update drivers to use devicetree Kconfig symbol 2022-07-27 09:47:16 +02:00
Kconfig.mcux_sim drivers: clock_control: Update drivers to use devicetree Kconfig symbol 2022-07-27 09:47:16 +02:00
Kconfig.mcux_syscon drivers: clock_control: Update drivers to use devicetree Kconfig symbol 2022-07-27 09:47:16 +02:00
Kconfig.npcx drivers: clock_control: Update drivers to use devicetree Kconfig symbol 2022-07-27 09:47:16 +02:00
Kconfig.nrf lib: onoff: add a config for on-off and build conditionally 2022-10-03 10:18:15 +02:00
Kconfig.rcar drivers: clock_control: Update drivers to use devicetree Kconfig symbol 2022-07-27 09:47:16 +02:00
Kconfig.rv32m1 drivers: clock_control: Update drivers to use devicetree Kconfig symbol 2022-07-27 09:47:16 +02:00
Kconfig.stm32 drivers/clock_control: stm32l4: allow enabling MCO output 2023-01-26 09:39:33 +00:00
Kconfig.xec drivers: clock_control: Update drivers to use devicetree Kconfig symbol 2022-07-27 09:47:16 +02:00
nrf_clock_calibration.c drivers: clock_control: nrf: fix unused variable warning 2022-09-01 00:47:41 +09:00
nrf_clock_calibration.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00