@@ -69,12 +69,13 @@ EXPORT_SYMBOL_GPL(display_entity_set_state);
*
* Return 0 on success or a negative error code otherwise.
*/
-int display_entity_update(struct display_entity *entity)
+int display_entity_update(struct display_entity *entity,
+ const struct videomode *mode)
{
if (!entity->ops.ctrl || !entity->ops.ctrl->update)
return 0;
- return entity->ops.ctrl->update(entity);
+ return entity->ops.ctrl->update(entity, mode);
}
EXPORT_SYMBOL_GPL(display_entity_update);
@@ -77,7 +77,8 @@ struct display_entity_interface_params {
struct display_entity_control_ops {
int (*set_state)(struct display_entity *ent,
enum display_entity_state state);
- int (*update)(struct display_entity *ent);
+ int (*update)(struct display_entity *ent,
+ const struct videomode *mode);
int (*get_modes)(struct display_entity *ent,
const struct videomode **modes);
int (*get_params)(struct display_entity *ent,
@@ -111,7 +112,8 @@ struct display_entity {
int display_entity_set_state(struct display_entity *entity,
enum display_entity_state state);
-int display_entity_update(struct display_entity *entity);
+int display_entity_update(struct display_entity *entity,
+ const struct videomode *mode);
int display_entity_get_modes(struct display_entity *entity,
const struct videomode **modes);
int display_entity_get_params(struct display_entity *entity,
The display entity (sink) may need to know about the mode being changed, eg. to update timings. Alternatively there could be a separate set_mode() operation... Signed-off-by: Pawel Moll <pawel.moll@arm.com> --- drivers/video/display/display-core.c | 5 +++-- include/video/display.h | 6 ++++-- 2 files changed, 7 insertions(+), 4 deletions(-)