clk-imx8mm.c (bcacd6f7c94abb99300e365a6aef93212fc24f15) | clk-imx8mm.c (9c07ae6983d434841bb19bea0a75bd0fd925a75c) |
---|---|
1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Copyright 2017-2018 NXP. 4 */ 5 6#include <dt-bindings/clock/imx8mm-clock.h> 7#include <linux/clk.h> 8#include <linux/err.h> --- 271 unchanged lines hidden (view full) --- 280 281static const char *imx8mm_vpu_h1_sels[] = {"osc_24m", "vpu_pll_out", "sys_pll1_800m", "sys_pll2_1000m", 282 "audio_pll2_out", "sys_pll2_125m", "sys_pll3_out", "audio_pll1_out", }; 283 284static const char *imx8mm_dram_core_sels[] = {"dram_pll_out", "dram_alt_root", }; 285 286static const char *imx8mm_clko1_sels[] = {"osc_24m", "sys_pll1_800m", "dummy", "sys_pll1_200m", 287 "audio_pll2_out", "sys_pll2_500m", "vpu_pll", "sys_pll1_80m", }; | 1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Copyright 2017-2018 NXP. 4 */ 5 6#include <dt-bindings/clock/imx8mm-clock.h> 7#include <linux/clk.h> 8#include <linux/err.h> --- 271 unchanged lines hidden (view full) --- 280 281static const char *imx8mm_vpu_h1_sels[] = {"osc_24m", "vpu_pll_out", "sys_pll1_800m", "sys_pll2_1000m", 282 "audio_pll2_out", "sys_pll2_125m", "sys_pll3_out", "audio_pll1_out", }; 283 284static const char *imx8mm_dram_core_sels[] = {"dram_pll_out", "dram_alt_root", }; 285 286static const char *imx8mm_clko1_sels[] = {"osc_24m", "sys_pll1_800m", "dummy", "sys_pll1_200m", 287 "audio_pll2_out", "sys_pll2_500m", "vpu_pll", "sys_pll1_80m", }; |
288static const char *imx8mm_clko2_sels[] = {"osc_24m", "sys_pll2_200m", "sys_pll1_400m", "sys_pll2_166m", 289 "sys_pll3_out", "audio_pll1_out", "video_pll1_out", "osc_32k", }; |
|
288 289static struct clk_hw_onecell_data *clk_hw_data; 290static struct clk_hw **hws; 291 292static const int uart_clk_ids[] = { 293 IMX8MM_CLK_UART1_ROOT, 294 IMX8MM_CLK_UART2_ROOT, 295 IMX8MM_CLK_UART3_ROOT, --- 210 unchanged lines hidden (view full) --- 506 hws[IMX8MM_CLK_PWM1] = imx8m_clk_hw_composite("pwm1", imx8mm_pwm1_sels, base + 0xb380); 507 hws[IMX8MM_CLK_PWM2] = imx8m_clk_hw_composite("pwm2", imx8mm_pwm2_sels, base + 0xb400); 508 hws[IMX8MM_CLK_PWM3] = imx8m_clk_hw_composite("pwm3", imx8mm_pwm3_sels, base + 0xb480); 509 hws[IMX8MM_CLK_PWM4] = imx8m_clk_hw_composite("pwm4", imx8mm_pwm4_sels, base + 0xb500); 510 hws[IMX8MM_CLK_GPT1] = imx8m_clk_hw_composite("gpt1", imx8mm_gpt1_sels, base + 0xb580); 511 hws[IMX8MM_CLK_WDOG] = imx8m_clk_hw_composite("wdog", imx8mm_wdog_sels, base + 0xb900); 512 hws[IMX8MM_CLK_WRCLK] = imx8m_clk_hw_composite("wrclk", imx8mm_wrclk_sels, base + 0xb980); 513 hws[IMX8MM_CLK_CLKO1] = imx8m_clk_hw_composite("clko1", imx8mm_clko1_sels, base + 0xba00); | 290 291static struct clk_hw_onecell_data *clk_hw_data; 292static struct clk_hw **hws; 293 294static const int uart_clk_ids[] = { 295 IMX8MM_CLK_UART1_ROOT, 296 IMX8MM_CLK_UART2_ROOT, 297 IMX8MM_CLK_UART3_ROOT, --- 210 unchanged lines hidden (view full) --- 508 hws[IMX8MM_CLK_PWM1] = imx8m_clk_hw_composite("pwm1", imx8mm_pwm1_sels, base + 0xb380); 509 hws[IMX8MM_CLK_PWM2] = imx8m_clk_hw_composite("pwm2", imx8mm_pwm2_sels, base + 0xb400); 510 hws[IMX8MM_CLK_PWM3] = imx8m_clk_hw_composite("pwm3", imx8mm_pwm3_sels, base + 0xb480); 511 hws[IMX8MM_CLK_PWM4] = imx8m_clk_hw_composite("pwm4", imx8mm_pwm4_sels, base + 0xb500); 512 hws[IMX8MM_CLK_GPT1] = imx8m_clk_hw_composite("gpt1", imx8mm_gpt1_sels, base + 0xb580); 513 hws[IMX8MM_CLK_WDOG] = imx8m_clk_hw_composite("wdog", imx8mm_wdog_sels, base + 0xb900); 514 hws[IMX8MM_CLK_WRCLK] = imx8m_clk_hw_composite("wrclk", imx8mm_wrclk_sels, base + 0xb980); 515 hws[IMX8MM_CLK_CLKO1] = imx8m_clk_hw_composite("clko1", imx8mm_clko1_sels, base + 0xba00); |
516 hws[IMX8MM_CLK_CLKO2] = imx8m_clk_hw_composite("clko2", imx8mm_clko2_sels, base + 0xba80); |
|
514 hws[IMX8MM_CLK_DSI_CORE] = imx8m_clk_hw_composite("dsi_core", imx8mm_dsi_core_sels, base + 0xbb00); 515 hws[IMX8MM_CLK_DSI_PHY_REF] = imx8m_clk_hw_composite("dsi_phy_ref", imx8mm_dsi_phy_sels, base + 0xbb80); 516 hws[IMX8MM_CLK_DSI_DBI] = imx8m_clk_hw_composite("dsi_dbi", imx8mm_dsi_dbi_sels, base + 0xbc00); 517 hws[IMX8MM_CLK_USDHC3] = imx8m_clk_hw_composite("usdhc3", imx8mm_usdhc3_sels, base + 0xbc80); 518 hws[IMX8MM_CLK_CSI1_CORE] = imx8m_clk_hw_composite("csi1_core", imx8mm_csi1_core_sels, base + 0xbd00); 519 hws[IMX8MM_CLK_CSI1_PHY_REF] = imx8m_clk_hw_composite("csi1_phy_ref", imx8mm_csi1_phy_sels, base + 0xbd80); 520 hws[IMX8MM_CLK_CSI1_ESC] = imx8m_clk_hw_composite("csi1_esc", imx8mm_csi1_esc_sels, base + 0xbe00); 521 hws[IMX8MM_CLK_CSI2_CORE] = imx8m_clk_hw_composite("csi2_core", imx8mm_csi2_core_sels, base + 0xbe80); --- 131 unchanged lines hidden --- | 517 hws[IMX8MM_CLK_DSI_CORE] = imx8m_clk_hw_composite("dsi_core", imx8mm_dsi_core_sels, base + 0xbb00); 518 hws[IMX8MM_CLK_DSI_PHY_REF] = imx8m_clk_hw_composite("dsi_phy_ref", imx8mm_dsi_phy_sels, base + 0xbb80); 519 hws[IMX8MM_CLK_DSI_DBI] = imx8m_clk_hw_composite("dsi_dbi", imx8mm_dsi_dbi_sels, base + 0xbc00); 520 hws[IMX8MM_CLK_USDHC3] = imx8m_clk_hw_composite("usdhc3", imx8mm_usdhc3_sels, base + 0xbc80); 521 hws[IMX8MM_CLK_CSI1_CORE] = imx8m_clk_hw_composite("csi1_core", imx8mm_csi1_core_sels, base + 0xbd00); 522 hws[IMX8MM_CLK_CSI1_PHY_REF] = imx8m_clk_hw_composite("csi1_phy_ref", imx8mm_csi1_phy_sels, base + 0xbd80); 523 hws[IMX8MM_CLK_CSI1_ESC] = imx8m_clk_hw_composite("csi1_esc", imx8mm_csi1_esc_sels, base + 0xbe00); 524 hws[IMX8MM_CLK_CSI2_CORE] = imx8m_clk_hw_composite("csi2_core", imx8mm_csi2_core_sels, base + 0xbe80); --- 131 unchanged lines hidden --- |