Message ID | 20210909125917.6653-1-heiko.thiery@gmail.com |
---|---|
State | Accepted |
Commit | 6ff55bcd07aa911d7e2ba514fe9b92c969805763 |
Delegated to: | Stefano Babic |
Headers | show |
Series | arm: imx: imx8mq: add support to get values for more clocks | expand |
On 2021/9/9 20:59, Heiko Thiery wrote: > Return the root clock values for MXC_CSPI_CLK, MXC_I2C_CLK, > MXC_UART_CLK and MXC_QSPI_CLK. > > At least for the I2C clock the missing support leads to a wrong > configured I2C frequency. The expected value is 100kHz but the resulting > value is about 1MHz. > > Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com> > --- > > More information and measurements about the wrong configure I2C > frequency can be found here: > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.denx.de%2Fpipermail%2Fu-boot%2F2021-September%2F460176.html&data=04%7C01%7Cpeng.fan%40nxp.com%7C3fd04432d40141466d4208d97391b927%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C637667891977601595%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=%2BYXFWRvw3LG%2FhqKU0uxxrvCXiqfKD3qL80DISvG6PQA%3D&reserved=0 > > > arch/arm/mach-imx/imx8m/clock_imx8mq.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/arch/arm/mach-imx/imx8m/clock_imx8mq.c b/arch/arm/mach-imx/imx8m/clock_imx8mq.c > index 60e2218a3c..9db62b944e 100644 > --- a/arch/arm/mach-imx/imx8m/clock_imx8mq.c > +++ b/arch/arm/mach-imx/imx8m/clock_imx8mq.c > @@ -359,10 +359,18 @@ unsigned int mxc_get_clock(enum mxc_clock clk) > clock_get_target_val(IPG_CLK_ROOT, &val); > val = val & 0x3; > return get_root_clk(AHB_CLK_ROOT) / (val + 1); > + case MXC_CSPI_CLK: > + return get_root_clk(ECSPI1_CLK_ROOT); > case MXC_ESDHC_CLK: > return get_root_clk(USDHC1_CLK_ROOT); > case MXC_ESDHC2_CLK: > return get_root_clk(USDHC2_CLK_ROOT); > + case MXC_I2C_CLK: > + return get_root_clk(I2C1_CLK_ROOT); > + case MXC_UART_CLK: > + return get_root_clk(UART1_CLK_ROOT); > + case MXC_QSPI_CLK: > + return get_root_clk(QSPI_CLK_ROOT); > default: > return get_root_clk(clk); > } > Reviewed-by: Peng Fan <peng.fan@nxp.com>
Hi, Am Mi., 15. Sept. 2021 um 04:54 Uhr schrieb Peng Fan (OSS) <peng.fan@oss.nxp.com>: > > > > On 2021/9/9 20:59, Heiko Thiery wrote: > > Return the root clock values for MXC_CSPI_CLK, MXC_I2C_CLK, > > MXC_UART_CLK and MXC_QSPI_CLK. > > > > At least for the I2C clock the missing support leads to a wrong > > configured I2C frequency. The expected value is 100kHz but the resulting > > value is about 1MHz. > > > > Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com> > > --- > > > > More information and measurements about the wrong configure I2C > > frequency can be found here: > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.denx.de%2Fpipermail%2Fu-boot%2F2021-September%2F460176.html&data=04%7C01%7Cpeng.fan%40nxp.com%7C3fd04432d40141466d4208d97391b927%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C637667891977601595%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=%2BYXFWRvw3LG%2FhqKU0uxxrvCXiqfKD3qL80DISvG6PQA%3D&reserved=0 > > > > > > arch/arm/mach-imx/imx8m/clock_imx8mq.c | 8 ++++++++ > > 1 file changed, 8 insertions(+) > > > > diff --git a/arch/arm/mach-imx/imx8m/clock_imx8mq.c b/arch/arm/mach-imx/imx8m/clock_imx8mq.c > > index 60e2218a3c..9db62b944e 100644 > > --- a/arch/arm/mach-imx/imx8m/clock_imx8mq.c > > +++ b/arch/arm/mach-imx/imx8m/clock_imx8mq.c > > @@ -359,10 +359,18 @@ unsigned int mxc_get_clock(enum mxc_clock clk) > > clock_get_target_val(IPG_CLK_ROOT, &val); > > val = val & 0x3; > > return get_root_clk(AHB_CLK_ROOT) / (val + 1); > > + case MXC_CSPI_CLK: > > + return get_root_clk(ECSPI1_CLK_ROOT); > > case MXC_ESDHC_CLK: > > return get_root_clk(USDHC1_CLK_ROOT); > > case MXC_ESDHC2_CLK: > > return get_root_clk(USDHC2_CLK_ROOT); > > + case MXC_I2C_CLK: > > + return get_root_clk(I2C1_CLK_ROOT); > > + case MXC_UART_CLK: > > + return get_root_clk(UART1_CLK_ROOT); > > + case MXC_QSPI_CLK: > > + return get_root_clk(QSPI_CLK_ROOT); > > default: > > return get_root_clk(clk); > > } > > > > Reviewed-by: Peng Fan <peng.fan@nxp.com> Any news on that?
Hi Heiko, On Thu, Sep 9, 2021 at 9:59 AM Heiko Thiery <heiko.thiery@gmail.com> wrote: > > Return the root clock values for MXC_CSPI_CLK, MXC_I2C_CLK, > MXC_UART_CLK and MXC_QSPI_CLK. > > At least for the I2C clock the missing support leads to a wrong > configured I2C frequency. The expected value is 100kHz but the resulting > value is about 1MHz. > > Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
> Return the root clock values for MXC_CSPI_CLK, MXC_I2C_CLK, > MXC_UART_CLK and MXC_QSPI_CLK. > At least for the I2C clock the missing support leads to a wrong > configured I2C frequency. The expected value is 100kHz but the resulting > value is about 1MHz. > Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com> > Reviewed-by: Peng Fan <peng.fan@nxp.com> > Reviewed-by: Fabio Estevam <festevam@gmail.com> Applied to u-boot-imx, master, thanks ! Best regards, Stefano Babic
diff --git a/arch/arm/mach-imx/imx8m/clock_imx8mq.c b/arch/arm/mach-imx/imx8m/clock_imx8mq.c index 60e2218a3c..9db62b944e 100644 --- a/arch/arm/mach-imx/imx8m/clock_imx8mq.c +++ b/arch/arm/mach-imx/imx8m/clock_imx8mq.c @@ -359,10 +359,18 @@ unsigned int mxc_get_clock(enum mxc_clock clk) clock_get_target_val(IPG_CLK_ROOT, &val); val = val & 0x3; return get_root_clk(AHB_CLK_ROOT) / (val + 1); + case MXC_CSPI_CLK: + return get_root_clk(ECSPI1_CLK_ROOT); case MXC_ESDHC_CLK: return get_root_clk(USDHC1_CLK_ROOT); case MXC_ESDHC2_CLK: return get_root_clk(USDHC2_CLK_ROOT); + case MXC_I2C_CLK: + return get_root_clk(I2C1_CLK_ROOT); + case MXC_UART_CLK: + return get_root_clk(UART1_CLK_ROOT); + case MXC_QSPI_CLK: + return get_root_clk(QSPI_CLK_ROOT); default: return get_root_clk(clk); }
Return the root clock values for MXC_CSPI_CLK, MXC_I2C_CLK, MXC_UART_CLK and MXC_QSPI_CLK. At least for the I2C clock the missing support leads to a wrong configured I2C frequency. The expected value is 100kHz but the resulting value is about 1MHz. Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com> --- More information and measurements about the wrong configure I2C frequency can be found here: https://lists.denx.de/pipermail/u-boot/2021-September/460176.html arch/arm/mach-imx/imx8m/clock_imx8mq.c | 8 ++++++++ 1 file changed, 8 insertions(+)