aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2010-05-21 14:14:52 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2010-05-21 14:14:52 -0400
commit59534f7298c5e28aaa64e6ed550e247f64ee72ae (patch)
treeb9fef7756abf897d9e1b10950cdf10bf6dfe5cb7 /include/linux
parentac3ee84c604502240122c47b52f0542ec8774f15 (diff)
parentb486787ee4797d6e42a9bd3a6f079385ad0f4472 (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.h19
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
408struct vm_area_struct; 409struct 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
875static 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 */
959extern int register_framebuffer(struct fb_info *fb_info); 972extern int register_framebuffer(struct fb_info *fb_info);
960extern int unregister_framebuffer(struct fb_info *fb_info); 973extern int unregister_framebuffer(struct fb_info *fb_info);
974extern void remove_conflicting_framebuffers(struct apertures_struct *a,
975 const char *name, bool primary);
961extern int fb_prepare_logo(struct fb_info *fb_info, int rotate); 976extern int fb_prepare_logo(struct fb_info *fb_info, int rotate);
962extern int fb_show_logo(struct fb_info *fb_info, int rotate); 977extern int fb_show_logo(struct fb_info *fb_info, int rotate);
963extern char* fb_get_buffer_offset(struct fb_info *info, struct fb_pixmap *buf, u32 size); 978extern char* fb_get_buffer_offset(struct fb_info *info, struct fb_pixmap *buf, u32 size);