|
最终定位到函数位置为:
kernel/arch/arm/mach-s5p4418/prototype/module/nx_mlc.c
void nxp_soc_disp_rgb_set_address(int module, int layer,
unsigned int phyaddr, unsigned int pixelbyte, unsigned int stride,
int waitvsync)
{
DISP_MULTILY_RGB(module, prgb, layer);
DBGOUT("%s: %s, pa=0x%x, hs=%d, vs=%d, wait=%d\n",
__func__, prgb->name, phyaddr, pixelbyte, stride, waitvsync);
if (prgb->clipped) {
int xoff = prgb->left * pixelbyte;
int yoff = prgb->top * (prgb->width * prgb->pixelbyte);
phyaddr += (xoff + yoff);
stride = (prgb->width - prgb->left) * prgb->pixelbyte;
NX_MLC_SetPosition(module, layer,
prgb->pos_x, prgb->pos_x, prgb->right-1, prgb->bottom-1);
}
prgb->address = phyaddr;
prgb->pixelbyte = pixelbyte;
prgb->stride = stride;
NX_MLC_SetRGBLayerStride (module, layer, pixelbyte, stride);
//NX_MLC_SetRGBLayerAddress(module, layer, phyaddr);
NX_MLC_SetDirtyFlag(module, layer);
disp_syncgen_waitsync(module, layer, waitvsync);
}
NX_MLC_SetRGBLayerAddress 这个函数一旦执行logo就消失了。注释了后,LOGO会一直存在,但是qt就不能使用屏幕了。。。。
经过查找,这里填写的是Multi layer controler。
怀疑是否是填错了。或者有其他的层将logo层给遮挡了。
再搞吧
2016-02-23 11:49:16
2016-4-11 11:31:45
|
|