disp: msm: sde: track available hw resources

Track available hw resources using a common data structure in
the sde_rm object and pass available hw resource info to
interface drivers to make informed decisions in preparing
or filtering display modes.

Change-Id: I05649623233b0f531582e8c90d1ef92c7fceded4
Signed-off-by: Nilaan Gunabalachandran <ngunabal@codeaurora.org>
This commit is contained in:
Nilaan Gunabalachandran
2019-05-23 11:20:39 -04:00
szülő d92000cdd4
commit c7bf5c0293
3 fájl változott, egészen pontosan 121 új sor hozzáadva és 0 régi sor törölve

Fájl megtekintése

@@ -101,6 +101,7 @@ struct sde_rm_topology_def {
* @lm_max_width: cached layer mixer maximum width
* @rsvp_next_seq: sequence number for next reservation for debugging purposes
* @rm_lock: resource manager mutex
* @avail_res: Pointer with curr available resources
*/
struct sde_rm {
struct drm_device *dev;
@@ -111,6 +112,7 @@ struct sde_rm {
uint32_t rsvp_next_seq;
struct mutex rm_lock;
const struct sde_rm_topology_def *topology_tbl;
struct msm_resource_caps_info avail_res;
};
/**
@@ -312,4 +314,14 @@ int sde_rm_ext_blk_create_reserve(struct sde_rm *rm,
*/
int sde_rm_ext_blk_destroy(struct sde_rm *rm,
struct drm_encoder *enc);
/**
* sde_rm_get_resource_info - returns avail hw resource info
* @mr: sde rm object
* @drm_enc: drm encoder object
* @avail_res: out parameter, available resource object
*/
void sde_rm_get_resource_info(struct sde_rm *rm,
struct drm_encoder *drm_enc,
struct msm_resource_caps_info *avail_res);
#endif /* __SDE_RM_H__ */