Re: [PATCH] drivers: Change calls to mdelay to msleep in order to stop CPU busy looping in mdfld_dsi_pkg_sender.c

From: Jani Nikula
Date: Mon Nov 17 2014 - 03:40:47 EST


On Sat, 15 Nov 2014, Nicholas Krause <xerofoify@xxxxxxxxx> 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@xxxxxxxxx>
> ---
> 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@xxxxxxxxxxxxxxxxxxxxx
> http://lists.freedesktop.org/mailman/listinfo/dri-devel

--
Jani Nikula, Intel Open Source Technology Center
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/