msm: mdss: Move splash thread functionality

framebuffer and overlay drivers are tightly coupled with
splash thread functionality. This adds lots of code
related to continuous splash screen handling in
both drivers. Moving them to separate file cleans up
both drivers and allows to handle continuous splash screen
cases efficiently.

CRs-fixed: 605934
Change-Id: Id89bb281dbbf22e726cf5fd97e93f891e5c73f60
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
msm: mdss: add error check for iommu attach API

Iommu device attach api returns error code if it fails.
MDP driver will check this error code and fall back to
recovery path if device attach fails.

Change-Id: I4bc911a2341ef1a9773a6bd3e8aca35224885575
Signed-off-by: Anusha Koduru <kanusha@codeaurora.org>
Signed-off-by: Xiaoming Zhou <zhoux@codeaurora.org>
msm: mdss: IOMMU ref count implementation

Currently MDP is attaching/detaching iommu based on
bus bandwidth requests. This can lead to performance
issues, so implement ref count on iommu such that
iommu is attached where needed.

Change-Id: Ic4d35e2dc7f83291d1ab93d3e0109a2d69c98844
Signed-off-by: Jayant Shekhar <jshekhar@codeaurora.org>
Signed-off-by: Vineet Bajaj <vbajaj@codeaurora.org>
Signed-off-by: Xiaoming Zhou <zhoux@codeaurora.org>
msm: mdss: Cleanup iommu ref count implementation

With current iommu ref count implementation, iommu is
attached at points when only needed and detached once
finished. Iommu reference count in overlay pan display
path is currently missing hence add it. Also remove
code repetitions and unnecessary error checks while
decreasing iommu ref counts in overlay and writeback
path.

Change-Id: If1aed768e5d704dd6c9d4bfd17c1ec368c8d8711
Signed-off-by: Jayant Shekhar <jshekhar@codeaurora.org>
Signed-off-by: Vineet Bajaj <vbajaj@codeaurora.org>
Signed-off-by: Xiaoming Zhou <zhoux@codeaurora.org>
Merge "msm: mdss: Move splash thread functionality"
Merge "msm: mdss: add error check for iommu attach API"
Merge "msm: mdss: IOMMU ref count implementation"
Merge "msm: mdss: Cleanup iommu ref count implementation"
Merge a548355d043aefa99703e7c9e2141911d9e82a27 on remote branch

Change-Id: I9ef8825fb17c4678d342222a3eabb46deed15e90
Merge "Merge a548355d043aefa99703e7c9e2141911d9e82a27 on remote branch"