Re: [U-Boot] [PATCH v5 3/8] pwm: imx: Enable PWM support on i.MX53

2017-11-09 Thread Stefano Babic
On 08/11/2017 16:35, Martyn Welch wrote:
> Add missing parts for i.MX53 PWM support
> 
> Acked-by: Nandor Han 
> Signed-off-by: Martyn Welch 
> Cc: Stefano Babic 
> ---
> Changes for v4:
>- Removed ifdef.
> 
>  arch/arm/include/asm/arch-mx5/imx-regs.h | 17 +
>  drivers/pwm/pwm-imx-util.c   |  2 ++
>  2 files changed, 19 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..2b0dc1e 100644
> --- a/arch/arm/include/asm/arch-mx5/imx-regs.h
> +++ b/arch/arm/include/asm/arch-mx5/imx-regs.h
> @@ -508,6 +508,23 @@ struct fuse_bank4_regs {
>  };
>  #endif
>  
> +#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 /* __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;
> 

Acked-by: Stefano Babic 

Best regards,
Stefano

-- 
=
DENX Software Engineering GmbH,  Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sba...@denx.de
=
___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH v5 3/8] pwm: imx: Enable PWM support on i.MX53

2017-11-08 Thread Martyn Welch
Add missing parts for i.MX53 PWM support

Acked-by: Nandor Han 
Signed-off-by: Martyn Welch 
Cc: Stefano Babic 
---
Changes for v4:
   - Removed ifdef.

 arch/arm/include/asm/arch-mx5/imx-regs.h | 17 +
 drivers/pwm/pwm-imx-util.c   |  2 ++
 2 files changed, 19 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..2b0dc1e 100644
--- a/arch/arm/include/asm/arch-mx5/imx-regs.h
+++ b/arch/arm/include/asm/arch-mx5/imx-regs.h
@@ -508,6 +508,23 @@ struct fuse_bank4_regs {
 };
 #endif
 
+#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 /* __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;
-- 
2.1.4

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH v5 3/8] pwm: imx: Enable PWM support on i.MX53

2017-11-06 Thread Martyn Welch
Add missing parts for i.MX53 PWM support

Acked-by: Nandor Han 
Signed-off-by: Martyn Welch 
Cc: Stefano Babic 
---
Changes for v4:
   - Removed ifdef.

 arch/arm/include/asm/arch-mx5/imx-regs.h | 17 +
 drivers/pwm/pwm-imx-util.c   |  2 ++
 2 files changed, 19 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..2b0dc1e 100644
--- a/arch/arm/include/asm/arch-mx5/imx-regs.h
+++ b/arch/arm/include/asm/arch-mx5/imx-regs.h
@@ -508,6 +508,23 @@ struct fuse_bank4_regs {
 };
 #endif
 
+#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 /* __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;
-- 
2.1.4

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot