diff options
author | Tony Lindgren <tony@atomide.com> | 2013-11-25 15:30:10 -0800 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2013-11-25 15:30:10 -0800 |
commit | f19f8d8ebc0b392c01082e0feb44ec152cc47a30 (patch) | |
tree | f45f5391e97e29d5ef0003fc90f34bf0e18ba20f /drivers/video/amba-clcd.c | |
parent | f984370913d3ba5d13806cc8ac6fc26f8ebd1694 (diff) | |
parent | 6310f3a9362e8fa2e29c8f84aa603b5f86e98442 (diff) |
Merge branch 'omap-for-v3.13/fixes-take4' into omap-for-v3.14/board-removal
Diffstat (limited to 'drivers/video/amba-clcd.c')
-rw-r--r-- | drivers/video/amba-clcd.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/video/amba-clcd.c b/drivers/video/amba-clcd.c index 0a2cce7285b..14d6b3793e0 100644 --- a/drivers/video/amba-clcd.c +++ b/drivers/video/amba-clcd.c @@ -10,6 +10,7 @@ * * ARM PrimeCell PL110 Color LCD Controller */ +#include <linux/dma-mapping.h> #include <linux/module.h> #include <linux/kernel.h> #include <linux/errno.h> @@ -544,13 +545,17 @@ static int clcdfb_register(struct clcd_fb *fb) static int clcdfb_probe(struct amba_device *dev, const struct amba_id *id) { - struct clcd_board *board = dev->dev.platform_data; + struct clcd_board *board = dev_get_platdata(&dev->dev); struct clcd_fb *fb; int ret; if (!board) return -EINVAL; + ret = dma_set_mask_and_coherent(&dev->dev, DMA_BIT_MASK(32)); + if (ret) + goto out; + ret = amba_request_regions(dev, NULL); if (ret) { printk(KERN_ERR "CLCD: unable to reserve regs region\n"); @@ -594,8 +599,6 @@ static int clcdfb_remove(struct amba_device *dev) { struct clcd_fb *fb = amba_get_drvdata(dev); - amba_set_drvdata(dev, NULL); - clcdfb_disable(fb); unregister_framebuffer(&fb->fb); if (fb->fb.cmap.len) |