disp: msm: sde: populate DRM pipeline setup during cont-splash
Declare the continuous splash pipeline setup to userspace by filling in the DRM states for all plane, crtc, encoder, and connector objects in use. This information will be treated as an 'informative' state, and will be cleared at the start of the first commit to maintain the DRM methodology of DRM clients being the only controller of the pipeline. This ensures any configuration provided by userspace is accepted and applied, even if it may already align with the setup done by continuous splash. This DRM state configuration is done via manual modification of the DRM object states. Modification via the exposed DRM UAPI functions is not possible due to no drm_atomic_state object linking the DRM pipeline objects together. Change-Id: I67650e05aafbb4e799cf60939f0595bc3786fc6e Signed-off-by: Christopher Braga <cbraga@codeaurora.org>
このコミットが含まれているのは:
@@ -431,6 +431,7 @@ enum sde_crtc_dirty_flags {
|
||||
* @cp_prop_values: array of cp property values
|
||||
* @cp_dirty_list: array tracking features that are dirty
|
||||
* @cp_range_payload: array storing state user_data passed via range props
|
||||
* @cont_splash_populated: State was populated as part of cont. splash
|
||||
*/
|
||||
struct sde_crtc_state {
|
||||
struct drm_crtc_state base;
|
||||
@@ -468,6 +469,7 @@ struct sde_crtc_state {
|
||||
uint32_t cp_dirty_list[SDE_CP_CRTC_MAX_FEATURES];
|
||||
struct sde_cp_crtc_range_prop_payload
|
||||
cp_range_payload[SDE_CP_CRTC_MAX_FEATURES];
|
||||
bool cont_splash_populated;
|
||||
};
|
||||
|
||||
enum sde_crtc_irq_state {
|
||||
|
新しいイシューから参照
ユーザーをブロックする