]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
staging: fbtft: use alternate screen pointer
authorLars Svensson <lars1.svensson@sonymobile.com>
Wed, 7 Oct 2015 07:20:13 +0000 (09:20 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 13 Oct 2015 17:51:30 +0000 (10:51 -0700)
Member screen_base in struct fb_info is declared with __iomem
qualifier causing sparse warnings when used as a regular ponter.
To avoid the warnings, instead use alternate non-__iomem pointer,
screen_buffer, troughout the driver.

Signed-off-by: Lars Svensson <lars1.svensson@sonymobile.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/fbtft/fb_agm1264k-fl.c
drivers/staging/fbtft/fb_pcd8544.c
drivers/staging/fbtft/fb_ra8875.c
drivers/staging/fbtft/fb_ssd1306.c
drivers/staging/fbtft/fb_tls8204.c
drivers/staging/fbtft/fb_uc1611.c
drivers/staging/fbtft/fb_uc1701.c
drivers/staging/fbtft/fb_watterott.c
drivers/staging/fbtft/fbtft-bus.c
drivers/staging/fbtft/fbtft-core.c

index 88718f61eb5b3daef9bbafb1544b5cba2a957ef0..19f6136eb310c370ee034536b87fc449d3c1f6df 100644 (file)
@@ -266,7 +266,7 @@ construct_line_bitmap(struct fbtft_par *par, u8 *dest, signed short *src,
 
 static int write_vmem(struct fbtft_par *par, size_t offset, size_t len)
 {
-       u16 *vmem16 = (u16 *)par->info->screen_base;
+       u16 *vmem16 = (u16 *)par->info->screen_buffer;
        u8 *buf = par->txbuf.buf;
        int x, y;
        int ret = 0;
index 8b52523fdc9ecf3f61f71ce2a0b1f71d59d26e64..a6b43323f29ac952d98c5812fd1e7cbb9b002ce7 100644 (file)
@@ -112,7 +112,7 @@ static void set_addr_win(struct fbtft_par *par, int xs, int ys, int xe, int ye)
 
 static int write_vmem(struct fbtft_par *par, size_t offset, size_t len)
 {
-       u16 *vmem16 = (u16 *)par->info->screen_base;
+       u16 *vmem16 = (u16 *)par->info->screen_buffer;
        u8 *buf = par->txbuf.buf;
        int x, y, i;
        int ret = 0;
index 5c1d93d425d08556c221400945ce7ccee4fb9fa9..86e43e158c61d43fe3cb78774abd4efb2a1128ac 100644 (file)
@@ -269,7 +269,7 @@ static int write_vmem16_bus8(struct fbtft_par *par, size_t offset, size_t len)
                __func__, offset, len);
 
        remain = len / 2;
-       vmem16 = (u16 *)(par->info->screen_base + offset);
+       vmem16 = (u16 *)(par->info->screen_buffer + offset);
        tx_array_size = par->txbuf.len / 2;
                txbuf16 = (u16 *)(par->txbuf.buf + 1);
                tx_array_size -= 2;
index 568b4334c9d9716e35ea690204009dbc47606c8c..e0b34a42c9c635bd243737291dc8bf02ef831861 100644 (file)
@@ -160,7 +160,7 @@ static int set_gamma(struct fbtft_par *par, unsigned long *curves)
 
 static int write_vmem(struct fbtft_par *par, size_t offset, size_t len)
 {
-       u16 *vmem16 = (u16 *)par->info->screen_base;
+       u16 *vmem16 = (u16 *)par->info->screen_buffer;
        u8 *buf = par->txbuf.buf;
        int x, y, i;
        int ret = 0;
index d609f875bcb15d02f273f4cd5e0252098d063d1c..2183f98c831514c9eef828c3ef8bbceabb47fd7a 100644 (file)
@@ -94,7 +94,7 @@ static void set_addr_win(struct fbtft_par *par, int xs, int ys, int xe, int ye)
 
 static int write_vmem(struct fbtft_par *par, size_t offset, size_t len)
 {
-       u16 *vmem16 = (u16 *)par->info->screen_base;
+       u16 *vmem16 = (u16 *)par->info->screen_buffer;
        int x, y, i;
        int ret = 0;
 
index a72f920ca1d75b848330e29b118546f44b0eb5d7..4e828142058ef6c5e8ae2a714f7aad8c9f41a703 100644 (file)
@@ -221,7 +221,7 @@ static int set_var(struct fbtft_par *par)
 
 static int write_vmem(struct fbtft_par *par, size_t offset, size_t len)
 {
-       u8 *vmem8 = (u8 *)(par->info->screen_base);
+       u8 *vmem8 = (u8 *)(par->info->screen_buffer);
        u8 *buf8 = (u8 *)(par->txbuf.buf);
        u16 *buf16 = (u16 *)(par->txbuf.buf);
        int line_length = par->info->fix.line_length;
index 28aa1008b297a40f8cf207a09563018c9358d288..212908e3927727badbe5359d8996ce63dcd0f5be 100644 (file)
@@ -141,7 +141,7 @@ static void set_addr_win(struct fbtft_par *par, int xs, int ys, int xe, int ye)
 
 static int write_vmem(struct fbtft_par *par, size_t offset, size_t len)
 {
-       u16 *vmem16 = (u16 *)par->info->screen_base;
+       u16 *vmem16 = (u16 *)par->info->screen_buffer;
        u8 *buf = par->txbuf.buf;
        int x, y, i;
        int ret = 0;
index be99a9d763160618f9702837b6aab733f4e32060..f8cb610a7b6984cb3bc977cf52f63966f6748620 100644 (file)
@@ -68,7 +68,7 @@ static void write_reg8_bus8(struct fbtft_par *par, int len, ...)
 static int write_vmem(struct fbtft_par *par, size_t offset, size_t len)
 {
        unsigned start_line, end_line;
-       u16 *vmem16 = (u16 *)(par->info->screen_base + offset);
+       u16 *vmem16 = (u16 *)(par->info->screen_buffer + offset);
        u16 *pos = par->txbuf.buf + 1;
        u16 *buf16 = par->txbuf.buf + 10;
        int i, j;
@@ -105,7 +105,7 @@ static int write_vmem(struct fbtft_par *par, size_t offset, size_t len)
 static int write_vmem_8bit(struct fbtft_par *par, size_t offset, size_t len)
 {
        unsigned start_line, end_line;
-       u16 *vmem16 = (u16 *)(par->info->screen_base + offset);
+       u16 *vmem16 = (u16 *)(par->info->screen_buffer + offset);
        u16 *pos = par->txbuf.buf + 1;
        u8 *buf8 = par->txbuf.buf + 10;
        int i, j;
index 97129241cab95ccb4f2430610ff70a63dd31c65b..9a95fde194d5219c3fd0e6ce7cc9d80af62e23e8 100644 (file)
@@ -137,7 +137,7 @@ int fbtft_write_vmem16_bus8(struct fbtft_par *par, size_t offset, size_t len)
                __func__, offset, len);
 
        remain = len / 2;
-       vmem16 = (u16 *)(par->info->screen_base + offset);
+       vmem16 = (u16 *)(par->info->screen_buffer + offset);
 
        if (par->gpio.dc != -1)
                gpio_set_value(par->gpio.dc, 1);
@@ -196,7 +196,7 @@ int fbtft_write_vmem16_bus9(struct fbtft_par *par, size_t offset, size_t len)
        }
 
        remain = len;
-       vmem8 = par->info->screen_base + offset;
+       vmem8 = par->info->screen_buffer + offset;
 
        tx_array_size = par->txbuf.len / 2;
 
@@ -240,7 +240,7 @@ int fbtft_write_vmem16_bus16(struct fbtft_par *par, size_t offset, size_t len)
        fbtft_par_dbg(DEBUG_WRITE_VMEM, par, "%s(offset=%zu, len=%zu)\n",
                __func__, offset, len);
 
-       vmem16 = (u16 *)(par->info->screen_base + offset);
+       vmem16 = (u16 *)(par->info->screen_buffer + offset);
 
        if (par->gpio.dc != -1)
                gpio_set_value(par->gpio.dc, 1);
index deccb1d9925134665d6e5fdd2d84c3b7507485fa..b1e45161eefcf45cf04e65c1bdab3d2aa52dcf0c 100644 (file)
@@ -748,7 +748,7 @@ struct fb_info *fbtft_framebuffer_alloc(struct fbtft_display *display,
        if (!info)
                goto alloc_fail;
 
-       info->screen_base = (u8 __force __iomem *)vmem;
+       info->screen_buffer = vmem;
        info->fbops = fbops;
        info->fbdefio = fbdefio;
 
@@ -888,7 +888,7 @@ EXPORT_SYMBOL(fbtft_framebuffer_alloc);
 void fbtft_framebuffer_release(struct fb_info *info)
 {
        fb_deferred_io_cleanup(info);
-       vfree(info->screen_base);
+       vfree(info->screen_buffer);
        framebuffer_release(info);
 }
 EXPORT_SYMBOL(fbtft_framebuffer_release);