summaryrefslogtreecommitdiffstats
path: root/drivers/video/pxafb.h
diff options
context:
space:
mode:
authorVasily Khoruzhick <anarsoul@gmail.com>2011-03-11 10:20:47 +0100
committerEric Miao <eric.y.miao@gmail.com>2011-03-16 10:37:03 +0100
commit1b98d7c4491e5eaba7c403ec1bc5997e6596e569 (patch)
treecbd325caae3dd704373b6978a1e2368c7ad6e88c /drivers/video/pxafb.h
parentARM: pxa: drop gpio_vbus field from pxa2xx_udc_mach_info (diff)
downloadlinux-1b98d7c4491e5eaba7c403ec1bc5997e6596e569.tar.xz
linux-1b98d7c4491e5eaba7c403ec1bc5997e6596e569.zip
ARM: pxafb: rework pxafb overlay memory management
PXAFB overlay memory management is something messy: - it allocates memory dynamically on open/release, and it results in memory allocation failure after ~1h of uptime (system does not have 115k of physically contiguous memory) - in release callback it tries to free memory even if it was not allocated. Also driver touches FDADR1 on main plane reconfiguration, and it can cause problems if overlay1 is enabled. This patch attempts to fix those issues. Patch is based on Russell King's work. Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
Diffstat (limited to 'drivers/video/pxafb.h')
-rw-r--r--drivers/video/pxafb.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/video/pxafb.h b/drivers/video/pxafb.h
index 2353521c5c8c..26ba9fa3f737 100644
--- a/drivers/video/pxafb.h
+++ b/drivers/video/pxafb.h
@@ -92,7 +92,8 @@ struct pxafb_layer_ops {
struct pxafb_layer {
struct fb_info fb;
int id;
- atomic_t usage;
+ int registered;
+ uint32_t usage;
uint32_t control[2];
struct pxafb_layer_ops *ops;