[PATCH] drivers: Change calls to mdelay to msleep in order to stop CPU busy looping in mdfld_dsi_pkg_sender.c
Jani Nikula
jani.nikula at linux.intel.com
Mon Nov 17 00:40:43 PST 2014
On Sat, 15 Nov 2014, Nicholas Krause <xerofoify at gmail.com> wrote:
> Changes the calls of mdelay to msleep in the driver file mdfld_dsi_pkg_sender.c
> in order to prevent CPU busy looping in order to save CPU cycles as this is
> considered bad form over sleeping the CPU for high resolution timer function
> calls as this driver needs in order to function properly.
The code paths are called with sender->lock spinlock held.
BR,
Jani.
>
> Signed-off-by: Nicholas Krause <xerofoify at gmail.com>
> ---
> drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c | 15 +++++----------
> 1 file changed, 5 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c b/drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c
> index 87885d8..77c656a 100644
> --- a/drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c
> +++ b/drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c
> @@ -335,13 +335,11 @@ static int send_pkg_prepare(struct mdfld_dsi_pkg_sender *sender, u8 data_type,
>
> /*wait for 120 milliseconds in case exit_sleep_mode just be sent*/
> if (unlikely(cmd == DCS_ENTER_SLEEP_MODE)) {
> - /*TODO: replace it with msleep later*/
> - mdelay(120);
> + msleep(120);
> }
>
> if (unlikely(cmd == DCS_EXIT_SLEEP_MODE)) {
> - /*TODO: replace it with msleep later*/
> - mdelay(120);
> + msleep(120);
> }
> return 0;
> }
> @@ -364,15 +362,12 @@ static int send_pkg_done(struct mdfld_dsi_pkg_sender *sender, u8 data_type,
> /*update panel status*/
> if (unlikely(cmd == DCS_ENTER_SLEEP_MODE)) {
> sender->panel_mode |= MDFLD_DSI_PANEL_MODE_SLEEP;
> - /*TODO: replace it with msleep later*/
> - mdelay(120);
> + msleep(120);
> } else if (unlikely(cmd == DCS_EXIT_SLEEP_MODE)) {
> sender->panel_mode &= ~MDFLD_DSI_PANEL_MODE_SLEEP;
> - /*TODO: replace it with msleep later*/
> - mdelay(120);
> + msleep(120);
> } else if (unlikely(cmd == DCS_SOFT_RESET)) {
> - /*TODO: replace it with msleep later*/
> - mdelay(5);
> + msleep(5);
> }
>
> sender->status = MDFLD_DSI_PKG_SENDER_FREE;
> --
> 1.9.1
>
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
--
Jani Nikula, Intel Open Source Technology Center
More information about the dri-devel
mailing list