disp: msm: move from drm_mode to msm_mode

Move away from the private and private_flags fields from drm_mode,
as it is being deprecated in latest kernel version. Instead, Add
msm_display_mode as a wrapper to be used in downstream to store these
parameters. Also, store msm_mode in connector_state to be accessed
in commit path.

Change-Id: Ia5bdebe75f00aa15fb7db4dc3a0d50c30894a95c
Signed-off-by: Orion Brody <obrody@codeaurora.org>
This commit is contained in:
orion brody
2020-11-24 14:19:42 -08:00
parent 262099e94a
commit d00d481360
12 changed files with 396 additions and 169 deletions

View File

@@ -1,6 +1,6 @@
/* SPDX-License-Identifier: GPL-2.0-only */
/*
* Copyright (c) 2016-2020, The Linux Foundation. All rights reserved.
* Copyright (c) 2016-2021, The Linux Foundation. All rights reserved.
*/
#ifndef _SDE_CONNECTOR_H_
@@ -612,6 +612,7 @@ struct sde_connector {
* @mode_info: local copy of msm_mode_info struct
* @hdr_meta: HDR metadata info passed from userspace
* @dyn_hdr_meta: Dynamic HDR metadata payload and state tracking
* @msm_mode: struct containing drm_mode and downstream private variables
* @old_topology_name: topology of previous atomic state. remove this in later
* kernel versions which provide drm_atomic_state old_state pointers
*/
@@ -626,6 +627,7 @@ struct sde_connector_state {
struct msm_mode_info mode_info;
struct drm_msm_ext_hdr_metadata hdr_meta;
struct sde_connector_dyn_hdr_metadata dyn_hdr_meta;
struct msm_display_mode msm_mode;
enum sde_rm_topology_name old_topology_name;
};
@@ -1026,6 +1028,15 @@ static inline int sde_connector_state_get_compression_info(
return 0;
}
/**
* sde_connector_set_msm_mode - set msm_mode for connector state
* @conn_state: Pointer to drm connector state structure
* @adj_mode: Pointer to adjusted display mode for display
* Returns: Zero on success
*/
int sde_connector_set_msm_mode(struct drm_connector_state *conn_state,
struct drm_display_mode *adj_mode);
/**
* sde_connector_get_mode_info - retrieve mode info for given mode
* @connector: Pointer to drm connector structure