We have implemented a mature scheme and soon will come into mass product. If you have any interesting, email me: robinyeung@163.com
And the frame rate is 30.
- application resolution set
xxx/common/rootdir/etc/init.qcom.early_boot.sh: set density of lcd - disable HWC
In SurfaceFlinger.cpp
frameworks/native/services/surfaceflinger/SurfaceFlinger.cpp
In system.prop
qcom/msm8953_64/system.prop
persist.hwc.mdpcomp.enable=true
persist.hwc.enable_vds=1
- allocate framebuffer
static int mdss_fb_alloc_fbmem(struct msm_fb_data_type *mfd)
{
if (mfd->mdp.fb_mem_alloc_fnc) {
return mfd->mdp.fb_mem_alloc_fnc(mfd);
} else if (mfd->mdp.fb_mem_get_iommu_domain) {
int dom = mfd->mdp.fb_mem_get_iommu_domain();
if (dom >= 0)
return mdss_fb_alloc_fbmem_iommu(mfd, dom);
else
return -ENOMEM;
} else {
pr_err("no fb memory allocator function defined\n");
return -ENOMEM;
}
}