From 38fc4d45fae58d81786acfe81a13ec0c93b01c98 Mon Sep 17 00:00:00 2001 From: Ondrej Zary Date: Thu, 1 Oct 2015 23:22:54 +0200 Subject: [PATCH] gxt4500: Use arch_phys_wc_* for framebuffer Add arch_phys_wc_* calls to allow write-combining using MTRR. Signed-off-by: Ondrej Zary Signed-off-by: Tomi Valkeinen --- drivers/video/fbdev/gxt4500.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/video/fbdev/gxt4500.c b/drivers/video/fbdev/gxt4500.c index 3ceddb837085..31de6500efd0 100644 --- a/drivers/video/fbdev/gxt4500.c +++ b/drivers/video/fbdev/gxt4500.c @@ -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); -- 2.39.5