diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-05-21 14:14:52 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-05-21 14:14:52 -0400 |
commit | 59534f7298c5e28aaa64e6ed550e247f64ee72ae (patch) | |
tree | b9fef7756abf897d9e1b10950cdf10bf6dfe5cb7 /include/linux | |
parent | ac3ee84c604502240122c47b52f0542ec8774f15 (diff) | |
parent | b486787ee4797d6e42a9bd3a6f079385ad0f4472 (diff) |
Merge branch 'drm-for-2.6.35' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6
* 'drm-for-2.6.35' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (207 commits)
drm/radeon/kms/pm/r600: select the mid clock mode for single head low profile
drm/radeon: fix power supply kconfig interaction.
drm/radeon/kms: record object that have been list reserved
drm/radeon: AGP memory is only I/O if the aperture can be mapped by the CPU.
drm/radeon/kms: don't default display priority to high on rs4xx
drm/edid: fix typo in 1600x1200@75 mode
drm/nouveau: fix i2c-related init table handlers
drm/nouveau: support init table i2c device identifier 0x81
drm/nouveau: ensure we've parsed i2c table entry for INIT_*I2C* handlers
drm/nouveau: display error message for any failed init table opcode
drm/nouveau: fix init table handlers to return proper error codes
drm/nv50: support fractional feedback divider on newer chips
drm/nv50: fix monitor detection on certain chipsets
drm/nv50: store full dcb i2c entry from vbios
drm/nv50: fix suspend/resume with DP outputs
drm/nv50: output calculated crtc pll when debugging on
drm/nouveau: dump pll limits entries when debugging is on
drm/nouveau: bios parser fixes for eDP boards
drm/nouveau: fix a nouveau_bo dereference after it's been destroyed
drm/nv40: remove some completed ctxprog TODOs
...
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/fb.h | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/include/linux/fb.h b/include/linux/fb.h index c10163b4c40e..1296af45169d 100644 --- a/include/linux/fb.h +++ b/include/linux/fb.h | |||
@@ -403,6 +403,7 @@ struct fb_cursor { | |||
403 | #include <linux/notifier.h> | 403 | #include <linux/notifier.h> |
404 | #include <linux/list.h> | 404 | #include <linux/list.h> |
405 | #include <linux/backlight.h> | 405 | #include <linux/backlight.h> |
406 | #include <linux/slab.h> | ||
406 | #include <asm/io.h> | 407 | #include <asm/io.h> |
407 | 408 | ||
408 | struct vm_area_struct; | 409 | struct vm_area_struct; |
@@ -862,10 +863,22 @@ struct fb_info { | |||
862 | /* we need the PCI or similiar aperture base/size not | 863 | /* we need the PCI or similiar aperture base/size not |
863 | smem_start/size as smem_start may just be an object | 864 | smem_start/size as smem_start may just be an object |
864 | allocated inside the aperture so may not actually overlap */ | 865 | allocated inside the aperture so may not actually overlap */ |
865 | resource_size_t aperture_base; | 866 | struct apertures_struct { |
866 | resource_size_t aperture_size; | 867 | unsigned int count; |
868 | struct aperture { | ||
869 | resource_size_t base; | ||
870 | resource_size_t size; | ||
871 | } ranges[0]; | ||
872 | } *apertures; | ||
867 | }; | 873 | }; |
868 | 874 | ||
875 | static inline struct apertures_struct *alloc_apertures(unsigned int max_num) { | ||
876 | struct apertures_struct *a = kzalloc(sizeof(struct apertures_struct) | ||
877 | + max_num * sizeof(struct aperture), GFP_KERNEL); | ||
878 | a->count = max_num; | ||
879 | return a; | ||
880 | } | ||
881 | |||
869 | #ifdef MODULE | 882 | #ifdef MODULE |
870 | #define FBINFO_DEFAULT FBINFO_MODULE | 883 | #define FBINFO_DEFAULT FBINFO_MODULE |
871 | #else | 884 | #else |
@@ -958,6 +971,8 @@ extern ssize_t fb_sys_write(struct fb_info *info, const char __user *buf, | |||
958 | /* drivers/video/fbmem.c */ | 971 | /* drivers/video/fbmem.c */ |
959 | extern int register_framebuffer(struct fb_info *fb_info); | 972 | extern int register_framebuffer(struct fb_info *fb_info); |
960 | extern int unregister_framebuffer(struct fb_info *fb_info); | 973 | extern int unregister_framebuffer(struct fb_info *fb_info); |
974 | extern void remove_conflicting_framebuffers(struct apertures_struct *a, | ||
975 | const char *name, bool primary); | ||
961 | extern int fb_prepare_logo(struct fb_info *fb_info, int rotate); | 976 | extern int fb_prepare_logo(struct fb_info *fb_info, int rotate); |
962 | extern int fb_show_logo(struct fb_info *fb_info, int rotate); | 977 | extern int fb_show_logo(struct fb_info *fb_info, int rotate); |
963 | extern char* fb_get_buffer_offset(struct fb_info *info, struct fb_pixmap *buf, u32 size); | 978 | extern char* fb_get_buffer_offset(struct fb_info *info, struct fb_pixmap *buf, u32 size); |