[U-Boot] [PATCH v2 8/9] OMAP3: video: add macros to set display parameters

Jeroen Hofstee dasuboot at myspectrum.nl
Wed Aug 29 00:22:12 CEST 2012


On 08/28/2012 02:21 PM, Stefano Babic wrote:
> Add a common macros to set the registers for horizontal
> and vertical timing.
>
> Signed-off-by: Stefano Babic <sbabic at denx.de>
> ---
>
>   arch/arm/include/asm/arch-omap3/dss.h |    4 ++++
>   1 file changed, 4 insertions(+)
>
> diff --git a/arch/arm/include/asm/arch-omap3/dss.h b/arch/arm/include/asm/arch-omap3/dss.h
> index 8913a71..df5b978 100644
> --- a/arch/arm/include/asm/arch-omap3/dss.h
> +++ b/arch/arm/include/asm/arch-omap3/dss.h
> @@ -181,6 +181,10 @@ struct panel_config {
>   	void *frame_buffer;
>   };
>   
> +#define PANEL_TIMING_H(bp, fp, sw) (((bp - 1) << 20) | \
> +		 ((fp - 1) << 8) | (sw - 1))
> +#define PANEL_TIMING_V(bp, fp, sw) ((bp << 20) | (fp << 8) | (sw - 1))
> +
>   /* Generic DSS Functions */
>   void omap3_dss_venc_config(const struct venc_regs *venc_cfg,
>   			u32 height, u32 width);

To make it a bit more clear what is set, perhaps we can define
the fields themselves, this would save some /* hfp */ etc.

e.g.

diff --git a/arch/arm/include/asm/arch-omap3/dss.h 
b/arch/arm/include/asm/arch-omap3/dss.h
index a830c43..b6ad72d 100644
--- a/arch/arm/include/asm/arch-omap3/dss.h
+++ b/arch/arm/include/asm/arch-omap3/dss.h
@@ -182,6 +182,13 @@ struct panel_config {
         void *frame_buffer;
  };

+#define DSS_HPB(bp)    (((bp) - 1) << 20)
+#define DSS_HFB(fp)    (((fp) - 1) << 8)
+#define DSS_HSW(sw)    ((sw) - 1)
+#define DSS_VPB(bp)    ((bp) << 20)
+#define DSS_VFB(fp)    ((fp) << 8)
+#define DSS_VSW(sw)    ((sw) - 1)
+
  /* Generic DSS Functions */
  void omap3_dss_venc_config(const struct venc_regs *venc_cfg,
                         u32 height, u32 width);



More information about the U-Boot mailing list