diff options
| author | Marcin Slusarz <[email protected]> | 2010-05-16 17:27:03 +0200 |
|---|---|---|
| committer | Dave Airlie <[email protected]> | 2010-05-18 16:19:27 +1000 |
| commit | 1471ca9aa71cd37b6a7476bb6f06a3a8622ea1bd (patch) | |
| tree | 3bf5ef9fea79b0b92220cfcc3842db7afb5cd63d /include/linux | |
| parent | 3da1f33e79a5922c1a31077e7b33aba1cec19b94 (diff) | |
fbdev: allow passing more than one aperture for handoff
It removes a hack from nouveau code which had to detect which
region to pass to kick vesafb/efifb.
Signed-off-by: Marcin Slusarz <[email protected]>
Cc: Eric Anholt <[email protected]>
Cc: Ben Skeggs <[email protected]>
Cc: Thomas Hellstrom <[email protected]>
Cc: Dave Airlie <[email protected]>
Cc: Peter Jones <[email protected]>
Cc: Benjamin Herrenschmidt <[email protected]>
Signed-off-by: Dave Airlie <[email protected]>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/fb.h | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/include/linux/fb.h b/include/linux/fb.h index c10163b4c40e..de5ff5fa8380 100644 --- a/include/linux/fb.h +++ b/include/linux/fb.h @@ -403,6 +403,7 @@ struct fb_cursor { #include <linux/notifier.h> #include <linux/list.h> #include <linux/backlight.h> +#include <linux/slab.h> #include <asm/io.h> struct vm_area_struct; @@ -862,10 +863,22 @@ struct fb_info { /* we need the PCI or similiar aperture base/size not smem_start/size as smem_start may just be an object allocated inside the aperture so may not actually overlap */ - resource_size_t aperture_base; - resource_size_t aperture_size; + struct apertures_struct { + unsigned int count; + struct aperture { + resource_size_t base; + resource_size_t size; + } ranges[0]; + } *apertures; }; +static inline struct apertures_struct *alloc_apertures(unsigned int max_num) { + struct apertures_struct *a = kzalloc(sizeof(struct apertures_struct) + + max_num * sizeof(struct aperture), GFP_KERNEL); + a->count = max_num; + return a; +} + #ifdef MODULE #define FBINFO_DEFAULT FBINFO_MODULE #else |