The write_reg8_bus8 function uses udelay(100) twice to wait for the display controller. For delays of this duration in non-atomic context, usleep_range() is preferred as it avoids busy-waiting.
Update both instances to use usleep_range(100, 120), allowing the scheduler to utilize the CPU during these wait periods. Signed-off-by: Jose A. Perez de Azpillaga <[email protected]> --- drivers/staging/fbtft/fb_ra8875.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/staging/fbtft/fb_ra8875.c b/drivers/staging/fbtft/fb_ra8875.c index 0ab1de6647d0..6058934e2ca2 100644 --- a/drivers/staging/fbtft/fb_ra8875.c +++ b/drivers/staging/fbtft/fb_ra8875.c @@ -210,7 +210,7 @@ static void write_reg8_bus8(struct fbtft_par *par, int len, ...) } len--; - udelay(100); + usleep_range(100, 120); if (len) { buf = (u8 *)par->buf; @@ -231,7 +231,7 @@ static void write_reg8_bus8(struct fbtft_par *par, int len, ...) /* restore user spi-speed */ par->fbtftops.write = fbtft_write_spi; - udelay(100); + usleep_range(100, 120); } static int write_vmem16_bus8(struct fbtft_par *par, size_t offset, size_t len) -- 2.53.0
