[U-Boot] [PATCH v3 3/7] pwm: imx: Enable PWM support on i.MX53
Martyn Welch
martyn.welch at collabora.co.uk
Wed Nov 1 15:42:35 UTC 2017
On Wed, 2017-11-01 at 16:31 +0100, Stefano Babic wrote:
> On 01/11/2017 15:23, Martyn Welch wrote:
> > Add missing parts for i.MX53 PWM support
> >
> > Acked-by: Nandor Han <nandor.han at ge.com>
> > Signed-off-by: Martyn Welch <martyn.welch at collabora.co.uk>
> > Cc: Stefano Babic <sbabic at denx.de>
> > ---
> > arch/arm/include/asm/arch-mx5/imx-regs.h | 19 +++++++++++++++++++
> > drivers/pwm/pwm-imx-util.c | 2 ++
> > 2 files changed, 21 insertions(+)
> >
> > diff --git a/arch/arm/include/asm/arch-mx5/imx-regs.h b/arch/arm/include/asm/arch-mx5/imx-regs.h
> > index 3e79fa3..c2ff798 100644
> > --- a/arch/arm/include/asm/arch-mx5/imx-regs.h
> > +++ b/arch/arm/include/asm/arch-mx5/imx-regs.h
> > @@ -508,6 +508,25 @@ struct fuse_bank4_regs {
> > };
> > #endif
> >
> > +#if defined(CONFIG_MX53)
>
> It looks to me this is not MX53 specific. You are already changing a MX5
> file. As far as I see, this is valid at least for MX51. Do we need the
> #ifdef ?
>
I only have access to an MX53, I'm not familiar with the rest of the MX5
family and was thus playing it safe.
> > +#define PWMCR_PRESCALER(x) (((x - 1) & 0xFFF) << 4)
> > +#define PWMCR_DOZEEN (1 << 24)
> > +#define PWMCR_WAITEN (1 << 23)
> > +#define PWMCR_DBGEN (1 << 22)
> > +#define PWMCR_CLKSRC_IPG_HIGH (2 << 16)
> > +#define PWMCR_CLKSRC_IPG (1 << 16)
> > +#define PWMCR_EN (1 << 0)
> > +
> > +struct pwm_regs {
> > + u32 cr;
> > + u32 sr;
> > + u32 ir;
> > + u32 sar;
> > + u32 pr;
> > + u32 cnr;
> > +};
> > +#endif
> > +
> > #endif /* __ASSEMBLER__*/
> >
> > #endif /* __ASM_ARCH_MX5_IMX_REGS_H__ */
> > diff --git a/drivers/pwm/pwm-imx-util.c b/drivers/pwm/pwm-imx-util.c
> > index 534dd8e..97ac0c8 100644
> > --- a/drivers/pwm/pwm-imx-util.c
> > +++ b/drivers/pwm/pwm-imx-util.c
> > @@ -23,10 +23,12 @@ struct pwm_regs *pwm_id_to_reg(int pwm_id)
> > return (struct pwm_regs *)PWM1_BASE_ADDR;
> > case 1:
> > return (struct pwm_regs *)PWM2_BASE_ADDR;
> > +#ifdef CONFIG_MX6
> > case 2:
> > return (struct pwm_regs *)PWM3_BASE_ADDR;
> > case 3:
> > return (struct pwm_regs *)PWM4_BASE_ADDR;
> > +#endif
> > #ifdef CONFIG_MX6SX
> > case 4:
> > return (struct pwm_regs *)PWM5_BASE_ADDR;
> >
>
>
> Best regards,
> Stefano Babic
>
More information about the U-Boot
mailing list