]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
gxt4500: Use arch_phys_wc_* for framebuffer
authorOndrej Zary <linux@rainbow-software.org>
Thu, 1 Oct 2015 21:22:54 +0000 (23:22 +0200)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Thu, 8 Oct 2015 09:19:39 +0000 (12:19 +0300)
Add arch_phys_wc_* calls to allow write-combining using MTRR.

Signed-off-by: Ondrej Zary <linux@rainbow-software.org>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/video/fbdev/gxt4500.c

index 3ceddb837085bcd966dd71454f5de9bd5eaf6b3d..31de6500efd0c4b20ab99c025cf95411a74e0ad2 100644 (file)
@@ -142,7 +142,7 @@ static const unsigned char watfmt[] = {
 
 struct gxt4500_par {
        void __iomem *regs;
-
+       int wc_cookie;
        int pixfmt;             /* pixel format, see DFA_PIX_* values */
 
        /* PLL parameters */
@@ -671,6 +671,9 @@ static int gxt4500_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
 
        pci_set_drvdata(pdev, info);
 
+       par->wc_cookie = arch_phys_wc_add(info->fix.smem_start,
+                                         info->fix.smem_len);
+
 #ifdef __BIG_ENDIAN
        /* Set byte-swapping for DFA aperture for all pixel sizes */
        pci_write_config_dword(pdev, CFG_ENDIAN0, 0x333300);
@@ -735,6 +738,7 @@ static void gxt4500_remove(struct pci_dev *pdev)
                return;
        par = info->par;
        unregister_framebuffer(info);
+       arch_phys_wc_del(par->wc_cookie);
        fb_dealloc_cmap(&info->cmap);
        iounmap(par->regs);
        iounmap(info->screen_base);