Take advantage of the atomic API and provide a way to configure the hardware using the atomic API rather than the legacy API.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b887ad9e5507cac27b5127fc2c4639f37e29a060 commit b887ad9e5507cac27b5127fc2c4639f37e29a060 Author: Daniel Nicoara <dnicoara@chromium.org> Date: Thu May 10 14:35:27 2018 [Ozone-DRM] Read CTM and GAMMA properties on initialize Have DrmDevice read the properties and cache them during initialization. Update SetColorCorrection() to use the cached properties rather than query them every time the properties are set. BUG=839487 TEST=Ran on eve and verified the CTM is set correctly. Change-Id: I5efd4f4d83d0458a29dc1e7b588f708e0b04912a Reviewed-on: https://chromium-review.googlesource.com/1042277 Commit-Queue: Daniel Nicoara <dnicoara@chromium.org> Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Cr-Commit-Position: refs/heads/master@{#557511} [modify] https://crrev.com/b887ad9e5507cac27b5127fc2c4639f37e29a060/ui/ozone/platform/drm/gpu/drm_device.cc [modify] https://crrev.com/b887ad9e5507cac27b5127fc2c4639f37e29a060/ui/ozone/platform/drm/gpu/drm_device.h [modify] https://crrev.com/b887ad9e5507cac27b5127fc2c4639f37e29a060/ui/ozone/platform/drm/gpu/hardware_display_plane_atomic.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c0e1f80c652760dc3f0dd4948370921944085a23 commit c0e1f80c652760dc3f0dd4948370921944085a23 Author: Daniel Nicoara <dnicoara@chromium.org> Date: Wed May 23 17:52:39 2018 [Ozone-DRM] Move color correction and CRTC state out of DrmDevice In order to simplify DrmDevice, move the CRTC state and the color correction logic to HardwareDisplayPlaneManager. As a first step this just moves the code out (no functional changes). Next step is to split it into legacy and atomic implementations, wrap DRM API calls in DrmDevice and add more tests. Other changes include adding wrapping some of the DRM calls in DrmDevice to allow us to unittest HardwareDisplayPlaneManager better. BUG=839487 TEST=Ran unittests Change-Id: Ia1675d90d9591c9c87ed402ed9b1c9b76c16bdc5 Reviewed-on: https://chromium-review.googlesource.com/1062496 Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Commit-Queue: Daniel Nicoara <dnicoara@chromium.org> Cr-Commit-Position: refs/heads/master@{#561150} [modify] https://crrev.com/c0e1f80c652760dc3f0dd4948370921944085a23/ui/ozone/platform/drm/BUILD.gn [modify] https://crrev.com/c0e1f80c652760dc3f0dd4948370921944085a23/ui/ozone/platform/drm/gpu/drm_device.cc [modify] https://crrev.com/c0e1f80c652760dc3f0dd4948370921944085a23/ui/ozone/platform/drm/gpu/drm_device.h [modify] https://crrev.com/c0e1f80c652760dc3f0dd4948370921944085a23/ui/ozone/platform/drm/gpu/drm_display.cc [add] https://crrev.com/c0e1f80c652760dc3f0dd4948370921944085a23/ui/ozone/platform/drm/gpu/drm_gpu_util.cc [add] https://crrev.com/c0e1f80c652760dc3f0dd4948370921944085a23/ui/ozone/platform/drm/gpu/drm_gpu_util.h [modify] https://crrev.com/c0e1f80c652760dc3f0dd4948370921944085a23/ui/ozone/platform/drm/gpu/hardware_display_plane_manager.cc [modify] https://crrev.com/c0e1f80c652760dc3f0dd4948370921944085a23/ui/ozone/platform/drm/gpu/hardware_display_plane_manager.h [modify] https://crrev.com/c0e1f80c652760dc3f0dd4948370921944085a23/ui/ozone/platform/drm/gpu/mock_drm_device.cc [modify] https://crrev.com/c0e1f80c652760dc3f0dd4948370921944085a23/ui/ozone/platform/drm/gpu/mock_drm_device.h [modify] https://crrev.com/c0e1f80c652760dc3f0dd4948370921944085a23/ui/ozone/platform/drm/gpu/mock_hardware_display_plane_manager.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ce7674644d13e37b274716876a3867e1b1dd8b8d commit ce7674644d13e37b274716876a3867e1b1dd8b8d Author: Daniel Nicoara <dnicoara@chromium.org> Date: Thu May 24 20:43:43 2018 [Ozone-DRM] Refactor plane management and add tests * We use plane properties on legacy DRM to get some details (plane type, in_formats). Read the properties in HardwareDisplayPlane and check that the required properties are available in DRM atomic. * Split dummy plane into its own class to clean up code. * Remove test plane since we can now create the real objects via injected state in DrmDevice. * Cleanup plane initialization. * Remove MockHardwareDisplayPlaneManager and rely on MockDrmDevice to inject the necessary state. BUG=839487 TEST=Ran unittests Change-Id: I03c91620557dcf7426629cf97bb989d8d7e83c68 Reviewed-on: https://chromium-review.googlesource.com/1048585 Commit-Queue: Daniel Nicoara <dnicoara@chromium.org> Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Cr-Commit-Position: refs/heads/master@{#561616} [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/BUILD.gn [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/crtc_controller.cc [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/drm_device.cc [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/drm_device.h [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/drm_overlay_validator_unittest.cc [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/drm_window_unittest.cc [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/hardware_display_controller.cc [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/hardware_display_controller_unittest.cc [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/hardware_display_plane.cc [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/hardware_display_plane.h [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/hardware_display_plane_atomic.cc [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/hardware_display_plane_atomic.h [add] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/hardware_display_plane_dummy.cc [add] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/hardware_display_plane_dummy.h [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/hardware_display_plane_manager.cc [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/hardware_display_plane_manager.h [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_atomic.cc [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_atomic.h [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_legacy.cc [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_unittest.cc [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/mock_drm_device.cc [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/mock_drm_device.h [delete] https://crrev.com/4255c18dd8d9b3411e6cdbaa92782c4cf2a97581/ui/ozone/platform/drm/gpu/mock_hardware_display_plane_manager.cc [delete] https://crrev.com/4255c18dd8d9b3411e6cdbaa92782c4cf2a97581/ui/ozone/platform/drm/gpu/mock_hardware_display_plane_manager.h [modify] https://crrev.com/ce7674644d13e37b274716876a3867e1b1dd8b8d/ui/ozone/platform/drm/gpu/screen_manager_unittest.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c34f28867fdb945b1c12de5f57edf5c0ec836a47 commit c34f28867fdb945b1c12de5f57edf5c0ec836a47 Author: Findit <findit-for-me@appspot.gserviceaccount.com> Date: Thu May 24 21:42:26 2018 Revert "[Ozone-DRM] Refactor plane management and add tests" This reverts commit ce7674644d13e37b274716876a3867e1b1dd8b8d. Reason for revert: Findit (https://goo.gl/kROfz5) identified CL at revision 561616 as the culprit for failures in the build cycles as shown on: https://findit-for-me.appspot.com/waterfall/culprit?key=ag9zfmZpbmRpdC1mb3ItbWVyRAsSDVdmU3VzcGVjdGVkQ0wiMWNocm9taXVtL2NlNzY3NDY0NGQxM2UzN2IyNzQ3MTY4NzZhMzg2N2UxYjFkZDhiOGQM Sample Failed Build: https://ci.chromium.org/buildbot/chromium.chromiumos/linux-chromeos-rel/8468 Sample Failed Step: ozone_unittests Original change's description: > [Ozone-DRM] Refactor plane management and add tests > > * We use plane properties on legacy DRM to get some details (plane > type, in_formats). Read the properties in HardwareDisplayPlane and > check that the required properties are available in DRM atomic. > * Split dummy plane into its own class to clean up code. > * Remove test plane since we can now create the real objects via > injected state in DrmDevice. > * Cleanup plane initialization. > * Remove MockHardwareDisplayPlaneManager and rely on MockDrmDevice to > inject the necessary state. > > BUG=839487 > TEST=Ran unittests > > Change-Id: I03c91620557dcf7426629cf97bb989d8d7e83c68 > Reviewed-on: https://chromium-review.googlesource.com/1048585 > Commit-Queue: Daniel Nicoara <dnicoara@chromium.org> > Reviewed-by: Daniele Castagna <dcastagna@chromium.org> > Cr-Commit-Position: refs/heads/master@{#561616} No-Presubmit: true No-Tree-Checks: true No-Try: true BUG=839487 Change-Id: Ie87a4ecea2b6c31aa25acd3633cda1b7547b0151 Reviewed-on: https://chromium-review.googlesource.com/1072667 Cr-Commit-Position: refs/heads/master@{#561644} [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/BUILD.gn [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/crtc_controller.cc [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/drm_device.cc [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/drm_device.h [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/drm_overlay_validator_unittest.cc [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/drm_window_unittest.cc [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/hardware_display_controller.cc [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/hardware_display_controller_unittest.cc [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/hardware_display_plane.cc [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/hardware_display_plane.h [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/hardware_display_plane_atomic.cc [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/hardware_display_plane_atomic.h [delete] https://crrev.com/46b2ae1a3b4e66a9e2a960baf9e05893fb4c5f9c/ui/ozone/platform/drm/gpu/hardware_display_plane_dummy.cc [delete] https://crrev.com/46b2ae1a3b4e66a9e2a960baf9e05893fb4c5f9c/ui/ozone/platform/drm/gpu/hardware_display_plane_dummy.h [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/hardware_display_plane_manager.cc [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/hardware_display_plane_manager.h [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_atomic.cc [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_atomic.h [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_legacy.cc [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_unittest.cc [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/mock_drm_device.cc [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/mock_drm_device.h [add] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/mock_hardware_display_plane_manager.cc [add] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/mock_hardware_display_plane_manager.h [modify] https://crrev.com/c34f28867fdb945b1c12de5f57edf5c0ec836a47/ui/ozone/platform/drm/gpu/screen_manager_unittest.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/12dc8ef2f020c2f406d50a4b24b8f75a404975a8 commit 12dc8ef2f020c2f406d50a4b24b8f75a404975a8 Author: Daniel Nicoara <dnicoara@chromium.org> Date: Fri May 25 18:16:13 2018 Reland "[Ozone-DRM] Refactor plane management and add tests" This is a reland of ce7674644d13e37b274716876a3867e1b1dd8b8d Original change's description: > [Ozone-DRM] Refactor plane management and add tests > > * We use plane properties on legacy DRM to get some details (plane > type, in_formats). Read the properties in HardwareDisplayPlane and > check that the required properties are available in DRM atomic. > * Split dummy plane into its own class to clean up code. > * Remove test plane since we can now create the real objects via > injected state in DrmDevice. > * Cleanup plane initialization. > * Remove MockHardwareDisplayPlaneManager and rely on MockDrmDevice to > inject the necessary state. > > BUG=839487 > TEST=Ran unittests > > Change-Id: I03c91620557dcf7426629cf97bb989d8d7e83c68 > Reviewed-on: https://chromium-review.googlesource.com/1048585 > Commit-Queue: Daniel Nicoara <dnicoara@chromium.org> > Reviewed-by: Daniele Castagna <dcastagna@chromium.org> > Cr-Commit-Position: refs/heads/master@{#561616} Bug: 839487 Change-Id: Ifb74647dfe1f05ef3339261dd1f7c51c0c371622 Reviewed-on: https://chromium-review.googlesource.com/1073487 Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Commit-Queue: Daniel Nicoara <dnicoara@chromium.org> Cr-Commit-Position: refs/heads/master@{#561949} [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/BUILD.gn [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/crtc_controller.cc [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/drm_device.cc [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/drm_device.h [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/drm_overlay_validator_unittest.cc [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/drm_window_unittest.cc [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/hardware_display_controller.cc [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/hardware_display_controller_unittest.cc [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/hardware_display_plane.cc [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/hardware_display_plane.h [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/hardware_display_plane_atomic.cc [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/hardware_display_plane_atomic.h [add] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/hardware_display_plane_dummy.cc [add] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/hardware_display_plane_dummy.h [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/hardware_display_plane_manager.cc [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/hardware_display_plane_manager.h [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_atomic.cc [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_atomic.h [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_legacy.cc [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_unittest.cc [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/mock_drm_device.cc [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/mock_drm_device.h [delete] https://crrev.com/6a25833cb93164fb378d8087f9dae5fc28fc9b1e/ui/ozone/platform/drm/gpu/mock_hardware_display_plane_manager.cc [delete] https://crrev.com/6a25833cb93164fb378d8087f9dae5fc28fc9b1e/ui/ozone/platform/drm/gpu/mock_hardware_display_plane_manager.h [modify] https://crrev.com/12dc8ef2f020c2f406d50a4b24b8f75a404975a8/ui/ozone/platform/drm/gpu/screen_manager_unittest.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/16b70ecdba1de845e4486852e4112f54e3a77cb8 commit 16b70ecdba1de845e4486852e4112f54e3a77cb8 Author: Daniel Nicoara <dnicoara@chromium.org> Date: Tue May 29 21:58:52 2018 [Ozone-DRM] Set PLANE_CTM property through HardwareDisplayPlane Refactor HardwareDisplayPlaneManagerAtomic to rely on the cached plane properties. Changes: * Read PLANE_CTM property on HardwareDisplayPlane::Initialize, * Allocate/deallocate new property blobs via DrmDevice to allow us to mock these function calls in unit tests. * Move ScopedDrmPropertyBlob in DrmDevice and have it depend on DrmDevice to free the ID. This allows us to mock the calls rather than call into the kernel to allocate/free. * Updated HardwareDisplayPlaneManagerAtomic to use the HardwareDisplayPlane when setting the plane CTM. * Changed SetColorCorrectionOnAllCrtcPlanes() to commit only if all the CRTC planes support the PLANE_CTM property. * Added unit tests for SetColorCorrectionOnAllCrtcPlanes(). BUG=839487 TEST=Ran unittests Change-Id: Ic535f3d3c266c58172fb1384afaf20194f6e5e95 Reviewed-on: https://chromium-review.googlesource.com/1056165 Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Reviewed-by: Kristian H. Kristensen <hoegsberg@chromium.org> Commit-Queue: Daniel Nicoara <dnicoara@chromium.org> Cr-Commit-Position: refs/heads/master@{#562614} [modify] https://crrev.com/16b70ecdba1de845e4486852e4112f54e3a77cb8/ui/ozone/platform/drm/common/scoped_drm_types.cc [modify] https://crrev.com/16b70ecdba1de845e4486852e4112f54e3a77cb8/ui/ozone/platform/drm/common/scoped_drm_types.h [modify] https://crrev.com/16b70ecdba1de845e4486852e4112f54e3a77cb8/ui/ozone/platform/drm/gpu/drm_device.cc [modify] https://crrev.com/16b70ecdba1de845e4486852e4112f54e3a77cb8/ui/ozone/platform/drm/gpu/drm_device.h [modify] https://crrev.com/16b70ecdba1de845e4486852e4112f54e3a77cb8/ui/ozone/platform/drm/gpu/hardware_display_plane.cc [modify] https://crrev.com/16b70ecdba1de845e4486852e4112f54e3a77cb8/ui/ozone/platform/drm/gpu/hardware_display_plane.h [modify] https://crrev.com/16b70ecdba1de845e4486852e4112f54e3a77cb8/ui/ozone/platform/drm/gpu/hardware_display_plane_atomic.cc [modify] https://crrev.com/16b70ecdba1de845e4486852e4112f54e3a77cb8/ui/ozone/platform/drm/gpu/hardware_display_plane_atomic.h [modify] https://crrev.com/16b70ecdba1de845e4486852e4112f54e3a77cb8/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_atomic.cc [modify] https://crrev.com/16b70ecdba1de845e4486852e4112f54e3a77cb8/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_unittest.cc [modify] https://crrev.com/16b70ecdba1de845e4486852e4112f54e3a77cb8/ui/ozone/platform/drm/gpu/mock_drm_device.cc [modify] https://crrev.com/16b70ecdba1de845e4486852e4112f54e3a77cb8/ui/ozone/platform/drm/gpu/mock_drm_device.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/1115c2f79ff3276c15b667403aa56369923a7500 commit 1115c2f79ff3276c15b667403aa56369923a7500 Author: Daniele Castagna <dcastagna@chromium.org> Date: Wed May 30 14:52:41 2018 ozone/drm: Add cursor to list of planes crrev.com/c/1056165 moved setting |PLANE_CTM| properties trough HardwareDisplayPlane. Since we used to skip adding the cursor to HardwareDisplayPlaneManager::planes_, after that CL we stopped applying color correction to the cursor. This CL makes sure we always add the cursor to the list of planes, so that color correction will be applied correctly to the cursor. It also makes sure we don't assign the cursor to an HW overlay. Bug: 839487 Test: Ran unitests Change-Id: If8a29e3517d5ead7b8a5edadf6446f910c26176f Reviewed-on: https://chromium-review.googlesource.com/1077827 Reviewed-by: Daniel Nicoara <dnicoara@chromium.org> Commit-Queue: Daniele Castagna <dcastagna@chromium.org> Cr-Commit-Position: refs/heads/master@{#562818} [modify] https://crrev.com/1115c2f79ff3276c15b667403aa56369923a7500/ui/ozone/platform/drm/gpu/hardware_display_plane_manager.cc [modify] https://crrev.com/1115c2f79ff3276c15b667403aa56369923a7500/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_legacy.cc [modify] https://crrev.com/1115c2f79ff3276c15b667403aa56369923a7500/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_unittest.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4b3b96e10e4173d6b179eeecc09d296ccda7f266 commit 4b3b96e10e4173d6b179eeecc09d296ccda7f266 Author: Daniel Nicoara <dnicoara@chromium.org> Date: Mon Jun 04 17:45:25 2018 [Ozone-DRM] Split SetColorCorrection() to into legacy and atomic Split the color correction setter in 2 implementations: DRM legacy and atomic. This way the atomic implementation can use the atomic API to call into the kernel. Also, updated SetGammaCorrection() to handle empty LUTs since. As a next step, the commit state can be cached locally and aggregated with the page flip request. BUG=839487 TEST=Ran unittests Change-Id: Id228263b5472afcaa4ed568ba3450e8788712d44 Reviewed-on: https://chromium-review.googlesource.com/1058150 Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Commit-Queue: Daniel Nicoara <dnicoara@chromium.org> Cr-Commit-Position: refs/heads/master@{#564144} [modify] https://crrev.com/4b3b96e10e4173d6b179eeecc09d296ccda7f266/ui/ozone/platform/drm/gpu/drm_device.cc [modify] https://crrev.com/4b3b96e10e4173d6b179eeecc09d296ccda7f266/ui/ozone/platform/drm/gpu/drm_device.h [modify] https://crrev.com/4b3b96e10e4173d6b179eeecc09d296ccda7f266/ui/ozone/platform/drm/gpu/drm_gpu_util.cc [modify] https://crrev.com/4b3b96e10e4173d6b179eeecc09d296ccda7f266/ui/ozone/platform/drm/gpu/drm_gpu_util.h [modify] https://crrev.com/4b3b96e10e4173d6b179eeecc09d296ccda7f266/ui/ozone/platform/drm/gpu/hardware_display_plane_manager.cc [modify] https://crrev.com/4b3b96e10e4173d6b179eeecc09d296ccda7f266/ui/ozone/platform/drm/gpu/hardware_display_plane_manager.h [modify] https://crrev.com/4b3b96e10e4173d6b179eeecc09d296ccda7f266/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_atomic.cc [modify] https://crrev.com/4b3b96e10e4173d6b179eeecc09d296ccda7f266/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_atomic.h [modify] https://crrev.com/4b3b96e10e4173d6b179eeecc09d296ccda7f266/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_legacy.cc [modify] https://crrev.com/4b3b96e10e4173d6b179eeecc09d296ccda7f266/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_legacy.h [modify] https://crrev.com/4b3b96e10e4173d6b179eeecc09d296ccda7f266/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_unittest.cc [modify] https://crrev.com/4b3b96e10e4173d6b179eeecc09d296ccda7f266/ui/ozone/platform/drm/gpu/mock_drm_device.cc [modify] https://crrev.com/4b3b96e10e4173d6b179eeecc09d296ccda7f266/ui/ozone/platform/drm/gpu/mock_drm_device.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ddc8881c1cb34e5afa0817182cc7ad1c8bb2e72c commit ddc8881c1cb34e5afa0817182cc7ad1c8bb2e72c Author: Daniel Nicoara <dnicoara@chromium.org> Date: Mon Jul 16 20:51:34 2018 [Ozone-DRM] Add more validation to DRM atomic commit Committing properties now updates the property values such that tests can query for the values and validate state. BUG=839487 TEST=Ran unittests Change-Id: I71fd77937d09fdcf36d4ccd10345c5997c6022e4 Reviewed-on: https://chromium-review.googlesource.com/1120691 Commit-Queue: Daniel Nicoara <dnicoara@chromium.org> Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Cr-Commit-Position: refs/heads/master@{#575415} [modify] https://crrev.com/ddc8881c1cb34e5afa0817182cc7ad1c8bb2e72c/ui/ozone/platform/drm/gpu/mock_drm_device.cc [modify] https://crrev.com/ddc8881c1cb34e5afa0817182cc7ad1c8bb2e72c/ui/ozone/platform/drm/gpu/mock_drm_device.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/99aa3844de68a22421a216feb46d61a4931800c3 commit 99aa3844de68a22421a216feb46d61a4931800c3 Author: Daniel Nicoara <dnicoara@chromium.org> Date: Thu Jul 26 17:37:24 2018 [Ozone-DRM] Cache CTM, DEGAMMA and GAMMA and apply them on commit Cache the properties and apply them on commit on DRM Atomic. This works around the need to waste a vsync interval to applying the atomic properties. BUG=839487 TEST=Ran unittests Change-Id: I23a300d98648c5f7dff86019c8f8b9cb11129fb8 Reviewed-on: https://chromium-review.googlesource.com/1108561 Commit-Queue: Daniel Nicoara <dnicoara@chromium.org> Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Cr-Commit-Position: refs/heads/master@{#578356} [modify] https://crrev.com/99aa3844de68a22421a216feb46d61a4931800c3/ui/ozone/platform/drm/BUILD.gn [modify] https://crrev.com/99aa3844de68a22421a216feb46d61a4931800c3/ui/ozone/platform/drm/gpu/drm_gpu_util.cc [modify] https://crrev.com/99aa3844de68a22421a216feb46d61a4931800c3/ui/ozone/platform/drm/gpu/drm_gpu_util.h [modify] https://crrev.com/99aa3844de68a22421a216feb46d61a4931800c3/ui/ozone/platform/drm/gpu/hardware_display_plane_atomic.cc [modify] https://crrev.com/99aa3844de68a22421a216feb46d61a4931800c3/ui/ozone/platform/drm/gpu/hardware_display_plane_manager.cc [modify] https://crrev.com/99aa3844de68a22421a216feb46d61a4931800c3/ui/ozone/platform/drm/gpu/hardware_display_plane_manager.h [modify] https://crrev.com/99aa3844de68a22421a216feb46d61a4931800c3/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_atomic.cc [modify] https://crrev.com/99aa3844de68a22421a216feb46d61a4931800c3/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_legacy.cc [modify] https://crrev.com/99aa3844de68a22421a216feb46d61a4931800c3/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_unittest.cc [modify] https://crrev.com/99aa3844de68a22421a216feb46d61a4931800c3/ui/ozone/platform/drm/gpu/mock_drm_device.cc
Comment 1 by bugdroid1@chromium.org
, May 10 2018