| .. | .. |
|---|
| 1 | +/* SPDX-License-Identifier: GPL-2.0-or-later */ |
|---|
| 1 | 2 | /* |
|---|
| 2 | 3 | * Copyright (C) 2016 Noralf Trønnes |
|---|
| 3 | | - * |
|---|
| 4 | | - * This program is free software; you can redistribute it and/or modify |
|---|
| 5 | | - * it under the terms of the GNU General Public License as published by |
|---|
| 6 | | - * the Free Software Foundation; either version 2 of the License, or |
|---|
| 7 | | - * (at your option) any later version. |
|---|
| 8 | 4 | */ |
|---|
| 9 | 5 | |
|---|
| 10 | 6 | #ifndef __LINUX_DRM_SIMPLE_KMS_HELPER_H |
|---|
| .. | .. |
|---|
| 53 | 49 | * |
|---|
| 54 | 50 | * drm_mode_status Enum |
|---|
| 55 | 51 | */ |
|---|
| 56 | | - enum drm_mode_status (*mode_valid)(struct drm_crtc *crtc, |
|---|
| 52 | + enum drm_mode_status (*mode_valid)(struct drm_simple_display_pipe *pipe, |
|---|
| 57 | 53 | const struct drm_display_mode *mode); |
|---|
| 58 | 54 | |
|---|
| 59 | 55 | /** |
|---|
| .. | .. |
|---|
| 104 | 100 | * This is the function drivers should submit the |
|---|
| 105 | 101 | * &drm_pending_vblank_event from. Using either |
|---|
| 106 | 102 | * drm_crtc_arm_vblank_event(), when the driver supports vblank |
|---|
| 107 | | - * interrupt handling, or drm_crtc_send_vblank_event() directly in case |
|---|
| 108 | | - * the hardware lacks vblank support entirely. |
|---|
| 103 | + * interrupt handling, or drm_crtc_send_vblank_event() for more |
|---|
| 104 | + * complex case. In case the hardware lacks vblank support entirely, |
|---|
| 105 | + * drivers can set &struct drm_crtc_state.no_vblank in |
|---|
| 106 | + * &struct drm_simple_display_pipe_funcs.check and let DRM's |
|---|
| 107 | + * atomic helper fake a vblank event. |
|---|
| 109 | 108 | */ |
|---|
| 110 | 109 | void (*update)(struct drm_simple_display_pipe *pipe, |
|---|
| 111 | 110 | struct drm_plane_state *old_plane_state); |
|---|
| .. | .. |
|---|
| 182 | 181 | const uint64_t *format_modifiers, |
|---|
| 183 | 182 | struct drm_connector *connector); |
|---|
| 184 | 183 | |
|---|
| 184 | +int drm_simple_encoder_init(struct drm_device *dev, |
|---|
| 185 | + struct drm_encoder *encoder, |
|---|
| 186 | + int encoder_type); |
|---|
| 187 | + |
|---|
| 185 | 188 | #endif /* __LINUX_DRM_SIMPLE_KMS_HELPER_H */ |
|---|