video: Allow syncing the entire framebuffer to the copy

In some cases so much of the framebuffer is updated that it is not worth
copying the changes piece by piece to the copy framebuffer. Add a function
to copy the whole thing.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass 2021-01-13 20:29:46 -07:00 committed by Tom Rini
parent 02d7a53ce6
commit 7d70116fc7
2 changed files with 24 additions and 0 deletions

View file

@ -290,6 +290,16 @@ int video_sync_copy(struct udevice *dev, void *from, void *to)
return 0;
}
int video_sync_copy_all(struct udevice *dev)
{
struct video_priv *priv = dev_get_uclass_priv(dev);
video_sync_copy(dev, priv->fb, priv->fb + priv->fb_size);
return 0;
}
#endif
/* Set up the colour map */

View file

@ -246,11 +246,25 @@ void video_set_default_colors(struct udevice *dev, bool invert);
* frame buffer start
*/
int video_sync_copy(struct udevice *dev, void *from, void *to);
/**
* video_sync_copy_all() - Sync the entire framebuffer to the copy
*
* @dev: Vidconsole device being updated
* @return 0 (always)
*/
int video_sync_copy_all(struct udevice *dev);
#else
static inline int video_sync_copy(struct udevice *dev, void *from, void *to)
{
return 0;
}
static inline int video_sync_copy_all(struct udevice *dev)
{
return 0;
}
#endif
#ifndef CONFIG_DM_VIDEO