[PATCH 3/7] Add i.MX5 framebuffer driver
Jason Chen
weitway at gmail.com
Fri Feb 18 21:22:08 EST 2011
hi, Sascha,
2011/2/18 Sascha Hauer <s.hauer at pengutronix.de>:
> Hi Jason,
>
> On Fri, Feb 18, 2011 at 05:22:09PM +0800, Jason Chen wrote:
>> hi, Sasha,
>>
>> > + if (var->vmode & FB_VMODE_ODD_FLD_FIRST) /* PAL */
>> > + sig_cfg.odd_field_first = 1;
>> > + if (var->sync & FB_SYNC_EXT)
>> > + sig_cfg.ext_clk = 1;
>> > + if (var->sync & FB_SYNC_HOR_HIGH_ACT)
>> > + sig_cfg.Hsync_pol = 1;
>> Please remove FB_SYNC_EXT support.
>
> No problem, can do. But why? Is it nonfunctional in the hardware
> or is it that the current code just misses more pieces to support
> this?
>
This flag represents external sync, some application will not check
this flag when they reset fb var, for example, X server fb driver will
ignore it, if so, the ipu external clock can not be set correctly.
I think ipu should decide external clock usage by other method. The
latest method in freesacle mainline is decide it automatically -- if
internal clock can not fit target clock rate well, switch it to
external.
>>
>> +static void imx_ipu_fb_disable_overlay(struct fb_info *ovl)
>> +{
>> + struct imx_ipu_fb_info *mxc_ovl = ovl->par;
>> +
>> + if (!mxc_ovl->enabled)
>> + return;
>> +
>> + ipu_dp_disable_fg(mxc_ovl->dp);
>> + ipu_wait_for_interrupt(451, 100);
>> + ipu_idmac_disable_channel(mxc_ovl->ipu_ch);
>> + ipu_dmfc_disable_channel(mxc_ovl->dmfc);
>> + mxc_ovl->enabled = 0;
>> +}
>> Had better has a definition of ipu irq 451.
>
> Ok.
>
> Sascha
>
> --
> Pengutronix e.K. | |
> Industrial Linux Solutions | http://www.pengutronix.de/ |
> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
> Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
>
More information about the linux-arm-kernel
mailing list