From 0e9d491f47217a2d5eaaf4b00a0637e53dc2a98d Mon Sep 17 00:00:00 2001 From: Hake Huang Date: Fri, 30 Jul 2021 21:56:26 +0800 Subject: [PATCH] driver: clock: nxp-mcux add clock support for i2s add mcux ccm clock setting for i2s Signed-off-by: Hake Huang --- drivers/clock_control/clock_control_mcux_ccm.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/drivers/clock_control/clock_control_mcux_ccm.c b/drivers/clock_control/clock_control_mcux_ccm.c index 8030dac1115..31cfe00d300 100644 --- a/drivers/clock_control/clock_control_mcux_ccm.c +++ b/drivers/clock_control/clock_control_mcux_ccm.c @@ -135,6 +135,23 @@ static int mcux_ccm_get_subsys_rate(const struct device *dev, break; #endif +#ifdef CONFIG_I2S_MCUX_SAI + case IMX_CCM_SAI1_CLK: + *rate = CLOCK_GetFreq(kCLOCK_AudioPllClk) / 8 + / (CLOCK_GetDiv(kCLOCK_Sai1PreDiv) + 1) + / (CLOCK_GetDiv(kCLOCK_Sai1Div) + 1); + break; + case IMX_CCM_SAI2_CLK: + *rate = CLOCK_GetFreq(kCLOCK_AudioPllClk) / 8 + / (CLOCK_GetDiv(kCLOCK_Sai2PreDiv) + 1) + / (CLOCK_GetDiv(kCLOCK_Sai2Div) + 1); + break; + case IMX_CCM_SAI3_CLK: + *rate = CLOCK_GetFreq(kCLOCK_AudioPllClk) / 8 + / (CLOCK_GetDiv(kCLOCK_Sai3PreDiv) + 1) + / (CLOCK_GetDiv(kCLOCK_Sai3Div) + 1); + break; +#endif } return 0;