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:
@@ -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__ */
|
||||
|
Reference in New Issue
Block a user