| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Main DRM & eDRM driver has asynchronous probes. In order to ensure that
both the driver's probe has completed there is a wait for completion for
respective driver is executed. There is an issue where the
wait for the eDRM driver blocks the eDRM driver deferred probe call.
This change remove wait in the eDRM driver for completion of its probe
as eDRM driver is always initialized after main DRM and necessary clock
voting would also be done in main DRM.
Change-Id: I422419d381ad3d0361fb80f3b2b9d176203a9342
Signed-off-by: Rahul Sharma <rahsha@codeaurora.org>
|
| |
|
|
|
|
|
|
|
|
| |
This change is done so that in non display platform
indefinite wait is not introduced, however for platforms where
display driver is probed asynchronously we still
wait for completion.
Change-Id: I14932ee2c0e52330975529ca0be34b6e2521d05e
Signed-off-by: Rahul Sharma <rahsha@codeaurora.org>
|
| |
|
|
|
|
|
|
| |
After setting the plane to transparent, wait for a
vblank to avoid the underrun.
Change-Id: I5490c701e3ed598bfec011b8461625c48b9702e0
Signed-off-by: Rahul Sharma <rahsha@codeaurora.org>
|
| |\ |
|
| | |
| |
| |
| |
| |
| |
| |
| | |
This change is done to fix null pointer dereference
in edrm_connector_get_modes().
Change-Id: If4461f2e6dbfc107e17d987e0a92eb1924922931
Signed-off-by: Rahul Sharma <rahsha@codeaurora.org>
|
| |\ \ |
|
| | |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When eDRM commits the frame it tells LK to stop the splash
and waits for around 4 seconds to get the acknowledgment from LK.
Since LK would keep on running when RVC is also active
so eDRM on each commit will poll for 4 seconds.
In order to resolve the problem, eDRM should not tell LK to stop splash
and neither wait for the acknowledgment from LK.
Change-Id: I0bae0946445fa26898f85eaece943ff4ab93cfbd
Signed-off-by: Rahul Sharma <rahsha@codeaurora.org>
|
| |/
|
|
|
|
|
|
|
|
|
|
|
|
| |
There are issues when display driver probe() execution is scheduled
out during kernel boot because probe_type marked as
PROBE_PREFER_ASYNCHRONOUS.
Since there are few kernel modules that needs display driver to be
initialized. This change adds late_initcall() function which waits
for the completion of probes() to ensure that display is
initialized before other kernel module which can impact the system
boot behavior.
Change-Id: Idd83ac0450ed6f8e09dc98de8bbcec05942302e7
Signed-off-by: Rahul Sharma <rahsha@codeaurora.org>
|
| |
|
|
|
|
|
|
| |
Add more color format into eDRM plane. Add YUV420, NV12, YUYV,
RGB565, RGB888 color to eDRM.
Change-Id: I73aa22e811ca061ea1a59194e4f76ae9fff47f46
Signed-off-by: Camus Wong <camusw@codeaurora.org>
|
|
|
Add new DRM node to handle early display service. The early DRM
driver is to workaround Andriod display framework long boot time
problem and DRM single master limitation. The early DRM node provides
display function for early application that is outside Android
framework. The early application can use early DRM to draw early
UI and bootloader review camera menu function. Android framework will
not use early DRM node. It will continue to use the main DRM node.
Early DRM is another KMS driver that designed for bootup application.
Early DRM is not based on SDE framework and it will not initialize
display hardware. Early DRM rely on bootloader to initialize display
hardware and interfaces. For power and SMMU, early DRM relies on main
DRM to initialize them. Early DRM only provide limited display
functionality such as RGB buffer display. Early DRM only expected to
run during bootup time to work with bootloader/early RVC. When Android
UI is ready, early DRM will handoff all display resource to main DRM.
After that, no application can open early DRM node.
Early DRM is enabled in device tree. User must specify which display
to enable early DRM and which display pipes are assigned to eDRM.
Change-Id: Ic9f68726677c5db26507caec79c7da1e6d745f44
Signed-off-by: Camus Wong <camusw@codeaurora.org>
|