[U-Boot] [PATCH] imx-common: consider mux_ctrl_ofs when setting mux_mode

Benoît Thébaudeau benoit.thebaudeau.dev at gmail.com
Tue Sep 22 21:06:06 CEST 2015


Hi Peng,

On Mon, Sep 21, 2015 at 11:08 AM, Peng Fan <Peng.Fan at freescale.com> wrote:
> Some i.MXes use __NA_ or 0 to avoid setting mux_mode, but the following patch
> only take i.MX6/7 into consideration.
>
> "c3c8a5748897b24f18618047804317167a531dd3 imx-common: fix iomux settings"
>
> Use is_soc_type(MXC_CPU_MX7) to avoid breaking other i.MXes when
> setting mux_mode.
>
> In this patch, switch to use "asm/imx-common/sys_proto.h" to avoid
> build break for "is_soc_type" for vf610.

And probably for i.MX25 too.

> Signed-off-by: Peng Fan <Peng.Fan at freescale.com>
> Cc: Bhuvanchandra DV <bhuvanchandra.dv at toradex.com>
> Cc: Stefano Babic <sbabic at denx.de>
> Cc: Fabio Estevam <fabio.estevam at freescale.com>
> ---
>  arch/arm/imx-common/iomux-v3.c | 10 ++++++----
>  1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm/imx-common/iomux-v3.c b/arch/arm/imx-common/iomux-v3.c
> index 9b9cf58..81ec1d3 100644
> --- a/arch/arm/imx-common/iomux-v3.c
> +++ b/arch/arm/imx-common/iomux-v3.c
> @@ -11,10 +11,8 @@
>  #include <common.h>
>  #include <asm/io.h>
>  #include <asm/arch/imx-regs.h>
> -#if !defined(CONFIG_MX25) && !defined(CONFIG_VF610)
> -#include <asm/arch/sys_proto.h>
> -#endif
>  #include <asm/imx-common/iomux-v3.h>
> +#include <asm/imx-common/sys_proto.h>
>
>  static void *base = (void *)IOMUXC_BASE_ADDR;
>
> @@ -53,7 +51,11 @@ void imx_iomux_v3_setup_pad(iomux_v3_cfg_t pad)
>         }
>  #endif
>
> -       __raw_writel(mux_mode, base + mux_ctrl_ofs);
> +       if (is_soc_type(MXC_SOC_MX7))
> +               __raw_writel(mux_mode, base + mux_ctrl_ofs);
> +       else
> +               if (mux_ctrl_ofs)
> +                       __raw_writel(mux_mode, base + mux_ctrl_ofs);

Or, in order to avoid duplicating the line:
+       if (is_soc_type(MXC_SOC_MX7) || mux_ctrl_ofs)
+               __raw_writel(mux_mode, base + mux_ctrl_ofs);

>
>         if (sel_input_ofs)
>                 __raw_writel(sel_input, base + sel_input_ofs);
> --
> 1.8.4

Best regards,
Benoît


More information about the U-Boot mailing list