Message ID | 503D4494.6090107@myspectrum.nl |
---|---|
State | Changes Requested |
Delegated to: | Tom Rini |
Headers | show |
On 08/28/2012 03:22 PM, Jeroen Hofstee wrote: > 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@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); > Looks helpful to me, please make it so, thanks!
On 29/08/2012 00:29, Tom Rini wrote: > On 08/28/2012 03:22 PM, Jeroen Hofstee wrote: >> 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@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); >> > > Looks helpful to me, please make it so, thanks! > Done in V3 ! Stefano
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);