From: Lars Svensson Date: Wed, 7 Oct 2015 07:20:14 +0000 (+0200) Subject: staging: fbtft: access screen buffer directly X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=6b626c77be5ecf34534a45bb2012f6ed0565a0a7;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git staging: fbtft: access screen buffer directly In fbtft-bus.c:fbtft_write_vmem16_bus9(), ioread8() is used for accessing the provided screen array. Since screen_buffer actually points to an ordinary buffer, instead access it directly. Signed-off-by: Lars Svensson Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/fbtft/fbtft-bus.c b/drivers/staging/fbtft/fbtft-bus.c index 9a95fde194d5..58449ad84f46 100644 --- a/drivers/staging/fbtft/fbtft-bus.c +++ b/drivers/staging/fbtft/fbtft-bus.c @@ -179,7 +179,7 @@ EXPORT_SYMBOL(fbtft_write_vmem16_bus8); /* 16 bit pixel over 9-bit SPI bus: dc + high byte, dc + low byte */ int fbtft_write_vmem16_bus9(struct fbtft_par *par, size_t offset, size_t len) { - u8 __iomem *vmem8; + u8 *vmem8; u16 *txbuf16 = par->txbuf.buf; size_t remain; size_t to_copy; @@ -207,12 +207,12 @@ int fbtft_write_vmem16_bus9(struct fbtft_par *par, size_t offset, size_t len) #ifdef __LITTLE_ENDIAN for (i = 0; i < to_copy; i += 2) { - txbuf16[i] = 0x0100 | ioread8(vmem8 + i + 1); - txbuf16[i + 1] = 0x0100 | ioread8(vmem8 + i); + txbuf16[i] = 0x0100 | vmem8[i + 1]; + txbuf16[i + 1] = 0x0100 | vmem8[i]; } #else for (i = 0; i < to_copy; i++) - txbuf16[i] = 0x0100 | ioread8(vmem8 + i); + txbuf16[i] = 0x0100 | vmem8[i]; #endif vmem8 = vmem8 + to_copy; ret = par->fbtftops.write(par, par->txbuf.buf, to_copy * 2);