Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(38)

Side by Side Diff: ui/ozone/platform/drm/gpu/hardware_display_controller.h

Issue 1041823002: [Ozone-Drm] Pick pending buffer over current buffer when modesetting (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: . Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | ui/ozone/platform/drm/gpu/hardware_display_controller.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef UI_OZONE_PLATFORM_DRM_GPU_HARDWARE_DISPLAY_CONTROLLER_H_ 5 #ifndef UI_OZONE_PLATFORM_DRM_GPU_HARDWARE_DISPLAY_CONTROLLER_H_
6 #define UI_OZONE_PLATFORM_DRM_GPU_HARDWARE_DISPLAY_CONTROLLER_H_ 6 #define UI_OZONE_PLATFORM_DRM_GPU_HARDWARE_DISPLAY_CONTROLLER_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 #include <xf86drmMode.h> 10 #include <xf86drmMode.h>
(...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after
173 ~PageFlipRequest(); 173 ~PageFlipRequest();
174 174
175 OverlayPlaneList planes; 175 OverlayPlaneList planes;
176 bool is_sync; 176 bool is_sync;
177 base::Closure callback; 177 base::Closure callback;
178 }; 178 };
179 179
180 // Buffers need to be declared first so that they are destroyed last. Needed 180 // Buffers need to be declared first so that they are destroyed last. Needed
181 // since the controllers may reference the buffers. 181 // since the controllers may reference the buffers.
182 OverlayPlaneList current_planes_; 182 OverlayPlaneList current_planes_;
183 // Planes currently being queued without having SchedulePageFlip() called.
183 OverlayPlaneList pending_planes_; 184 OverlayPlaneList pending_planes_;
185 // Plane lists for which SchedulePageFlip() was called. They are waiting for
186 // previous page flip events to be completed before they can be serviced.
184 std::deque<PageFlipRequest> requests_; 187 std::deque<PageFlipRequest> requests_;
185 scoped_refptr<ScanoutBuffer> cursor_buffer_; 188 scoped_refptr<ScanoutBuffer> cursor_buffer_;
186 189
187 base::ScopedPtrHashMap<DrmDevice*, HardwareDisplayPlaneList> 190 base::ScopedPtrHashMap<DrmDevice*, HardwareDisplayPlaneList>
188 owned_hardware_planes_; 191 owned_hardware_planes_;
189 192
190 // Stores the CRTC configuration. This is used to identify monitors and 193 // Stores the CRTC configuration. This is used to identify monitors and
191 // configure them. 194 // configure them.
192 ScopedVector<CrtcController> crtc_controllers_; 195 ScopedVector<CrtcController> crtc_controllers_;
193 196
194 // Location of the controller on the screen. 197 // Location of the controller on the screen.
195 gfx::Point origin_; 198 gfx::Point origin_;
196 199
197 // The mode used by the last modesetting operation. 200 // The mode used by the last modesetting operation.
198 drmModeModeInfo mode_; 201 drmModeModeInfo mode_;
199 202
200 bool is_disabled_; 203 bool is_disabled_;
201 204
202 DISALLOW_COPY_AND_ASSIGN(HardwareDisplayController); 205 DISALLOW_COPY_AND_ASSIGN(HardwareDisplayController);
203 }; 206 };
204 207
205 } // namespace ui 208 } // namespace ui
206 209
207 #endif // UI_OZONE_PLATFORM_DRM_GPU_HARDWARE_DISPLAY_CONTROLLER_H_ 210 #endif // UI_OZONE_PLATFORM_DRM_GPU_HARDWARE_DISPLAY_CONTROLLER_H_
OLDNEW
« no previous file with comments | « no previous file | ui/ozone/platform/drm/gpu/hardware_display_controller.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698