From: Stefano Babic <sbabic@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] imx: Use MXC_I2C_CLK in imx i2c driver
Date: Mon, 24 Sep 2012 14:57:53 +0200 [thread overview]
Message-ID: <506058D1.9010303@denx.de> (raw)
In-Reply-To: <1348490813-21749-1-git-send-email-weisserm@arcor.de>
On 24/09/2012 14:46, Matthias Weisser wrote:
> i2c didn't work on imx25 due to missing MXC_IPG_PERCLK. Now using
> MXC_I2C_CLK on all imx systems using i2c.
>
> Signed-off-by: Matthias Weisser <weisserm@arcor.de>
> ---
> arch/arm/cpu/arm1136/mx31/generic.c | 1 +
> arch/arm/cpu/arm1136/mx35/generic.c | 1 +
> arch/arm/cpu/armv7/mx5/clock.c | 1 +
> arch/arm/cpu/armv7/mx6/clock.c | 1 +
> arch/arm/include/asm/arch-mx31/clock.h | 1 +
> arch/arm/include/asm/arch-mx35/clock.h | 1 +
> arch/arm/include/asm/arch-mx5/clock.h | 1 +
> arch/arm/include/asm/arch-mx6/clock.h | 1 +
> drivers/i2c/mxc_i2c.c | 4 ++--
> 9 files changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/cpu/arm1136/mx31/generic.c b/arch/arm/cpu/arm1136/mx31/generic.c
> index 93f429c..b9f9b43 100644
> --- a/arch/arm/cpu/arm1136/mx31/generic.c
> +++ b/arch/arm/cpu/arm1136/mx31/generic.c
> @@ -104,6 +104,7 @@ unsigned int mxc_get_clock(enum mxc_clock clk)
> case MXC_CSPI_CLK:
> case MXC_UART_CLK:
> case MXC_ESDHC_CLK:
> + case MXC_I2C_CLK:
> return mx31_get_ipg_clk();
> case MXC_IPU_CLK:
> return mx31_get_hsp_clk();
> diff --git a/arch/arm/cpu/arm1136/mx35/generic.c b/arch/arm/cpu/arm1136/mx35/generic.c
> index ef65176..7dc1a8e 100644
> --- a/arch/arm/cpu/arm1136/mx35/generic.c
> +++ b/arch/arm/cpu/arm1136/mx35/generic.c
> @@ -357,6 +357,7 @@ unsigned int mxc_get_clock(enum mxc_clock clk)
> case MXC_IPG_CLK:
> return get_ipg_clk();
> case MXC_IPG_PERCLK:
> + case MXC_I2C_CLK:
> return get_ipg_per_clk();
> case MXC_UART_CLK:
> return imx_get_uartclk();
> diff --git a/arch/arm/cpu/armv7/mx5/clock.c b/arch/arm/cpu/armv7/mx5/clock.c
> index c67c3cf..8fa737a 100644
> --- a/arch/arm/cpu/armv7/mx5/clock.c
> +++ b/arch/arm/cpu/armv7/mx5/clock.c
> @@ -482,6 +482,7 @@ unsigned int mxc_get_clock(enum mxc_clock clk)
> case MXC_IPG_CLK:
> return get_ipg_clk();
> case MXC_IPG_PERCLK:
> + case MXC_I2C_CLK:
> return get_ipg_per_clk();
> case MXC_UART_CLK:
> return get_uart_clk();
> diff --git a/arch/arm/cpu/armv7/mx6/clock.c b/arch/arm/cpu/armv7/mx6/clock.c
> index fddb373..44a81b2 100644
> --- a/arch/arm/cpu/armv7/mx6/clock.c
> +++ b/arch/arm/cpu/armv7/mx6/clock.c
> @@ -355,6 +355,7 @@ unsigned int mxc_get_clock(enum mxc_clock clk)
> case MXC_IPG_CLK:
> return get_ipg_clk();
> case MXC_IPG_PERCLK:
> + case MXC_I2C_CLK:
> return get_ipg_per_clk();
> case MXC_UART_CLK:
> return get_uart_clk();
> diff --git a/arch/arm/include/asm/arch-mx31/clock.h b/arch/arm/include/asm/arch-mx31/clock.h
> index 9468b45..1dbb8da 100644
> --- a/arch/arm/include/asm/arch-mx31/clock.h
> +++ b/arch/arm/include/asm/arch-mx31/clock.h
> @@ -46,6 +46,7 @@ enum mxc_clock {
> MXC_UART_CLK,
> MXC_IPU_CLK,
> MXC_ESDHC_CLK,
> + MXC_I2C_CLK,
> };
>
> unsigned int mxc_get_clock(enum mxc_clock clk);
> diff --git a/arch/arm/include/asm/arch-mx35/clock.h b/arch/arm/include/asm/arch-mx35/clock.h
> index eb7458a..2eff08d 100644
> --- a/arch/arm/include/asm/arch-mx35/clock.h
> +++ b/arch/arm/include/asm/arch-mx35/clock.h
> @@ -48,6 +48,7 @@ enum mxc_clock {
> MXC_USB_CLK,
> MXC_CSPI_CLK,
> MXC_FEC_CLK,
> + MXC_I2C_CLK,
> };
>
> enum mxc_main_clock {
> diff --git a/arch/arm/include/asm/arch-mx5/clock.h b/arch/arm/include/asm/arch-mx5/clock.h
> index 8d8fa18..21febd8 100644
> --- a/arch/arm/include/asm/arch-mx5/clock.h
> +++ b/arch/arm/include/asm/arch-mx5/clock.h
> @@ -36,6 +36,7 @@ enum mxc_clock {
> MXC_DDR_CLK,
> MXC_NFC_CLK,
> MXC_PERIPH_CLK,
> + MXC_I2C_CLK,
> };
>
> u32 imx_get_uartclk(void);
> diff --git a/arch/arm/include/asm/arch-mx6/clock.h b/arch/arm/include/asm/arch-mx6/clock.h
> index c55c18d..2af04f0 100644
> --- a/arch/arm/include/asm/arch-mx6/clock.h
> +++ b/arch/arm/include/asm/arch-mx6/clock.h
> @@ -41,6 +41,7 @@ enum mxc_clock {
> MXC_ESDHC4_CLK,
> MXC_SATA_CLK,
> MXC_NFC_CLK,
> + MXC_I2C_CLK,
> };
>
> u32 imx_get_uartclk(void);
> diff --git a/drivers/i2c/mxc_i2c.c b/drivers/i2c/mxc_i2c.c
> index 73d8958..18270b9 100644
> --- a/drivers/i2c/mxc_i2c.c
> +++ b/drivers/i2c/mxc_i2c.c
> @@ -98,7 +98,7 @@ static uint8_t i2c_imx_get_clk(unsigned int rate)
> #endif
>
> /* Divider value calculation */
> - i2c_clk_rate = mxc_get_clock(MXC_IPG_PERCLK);
> + i2c_clk_rate = mxc_get_clock(MXC_I2C_CLK);
> div = (i2c_clk_rate + rate - 1) / rate;
> if (div < i2c_clk_div[0][0])
> clk_div = 0;
> @@ -142,7 +142,7 @@ unsigned int bus_i2c_get_bus_speed(void *base)
> for (clk_div = 0; i2c_clk_div[clk_div][1] != clk_idx; clk_div++)
> ;
>
> - return mxc_get_clock(MXC_IPG_PERCLK) / i2c_clk_div[clk_div][0];
> + return mxc_get_clock(MXC_I2C_CLK) / i2c_clk_div[clk_div][0];
> }
>
> #define ST_BUS_IDLE (0 | (I2SR_IBB << 8))
>
This is exactly the changes I had in mind !
Acked-by: Stefano Babic <sbabic@denx.de>
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
next prev parent reply other threads:[~2012-09-24 12:57 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-24 12:46 [U-Boot] [PATCH] imx: Use MXC_I2C_CLK in imx i2c driver Matthias Weisser
2012-09-24 12:57 ` Stefano Babic [this message]
2012-09-24 13:08 ` Benoît Thébaudeau
2012-09-25 13:04 ` Stefano Babic
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=506058D1.9010303@denx.de \
--to=sbabic@denx.de \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.