aboutsummaryrefslogtreecommitdiffstats
path: root/include/drm
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2013-05-21 03:52:16 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2013-05-21 03:52:16 -0400
commite1b73cba13a0cc68dd4f746eced15bd6bb24cda4 (patch)
treeb1c9e10730724024a700031ad56c20419dabb500 /include/drm
parent98304ad186296dc1e655399e28d5973c21db6a73 (diff)
parentc7788792a5e7b0d5d7f96d0766b4cb6112d47d75 (diff)
Merge tag 'v3.10-rc2' into drm-intel-next-queued
Backmerge Linux 3.10-rc2 since the various (rather trivial) conflicts grew a bit out of hand. intel_dp.c has the only real functional conflict since the logic changed while dev_priv->edp.bpp was moved around. Also squash in a whitespace fixup from Ben Widawsky for i915_gem_gtt.c, git seems to do something pretty strange in there (which I don't fully understand tbh). Conflicts: drivers/gpu/drm/i915/i915_reg.h drivers/gpu/drm/i915/intel_dp.c Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'include/drm')
-rw-r--r--include/drm/drmP.h13
-rw-r--r--include/drm/drm_crtc.h23
-rw-r--r--include/drm/drm_edid.h9
-rw-r--r--include/drm/drm_fb_helper.h21
-rw-r--r--include/drm/drm_os_linux.h9
-rw-r--r--include/drm/drm_pciids.h5
-rw-r--r--include/drm/ttm/ttm_bo_driver.h4
7 files changed, 38 insertions, 46 deletions
diff --git a/include/drm/drmP.h b/include/drm/drmP.h
index 2d94d7413d71..63d17ee9eb48 100644
--- a/include/drm/drmP.h
+++ b/include/drm/drmP.h
@@ -316,6 +316,7 @@ struct drm_ioctl_desc {
316 int flags; 316 int flags;
317 drm_ioctl_t *func; 317 drm_ioctl_t *func;
318 unsigned int cmd_drv; 318 unsigned int cmd_drv;
319 const char *name;
319}; 320};
320 321
321/** 322/**
@@ -324,7 +325,7 @@ struct drm_ioctl_desc {
324 */ 325 */
325 326
326#define DRM_IOCTL_DEF_DRV(ioctl, _func, _flags) \ 327#define DRM_IOCTL_DEF_DRV(ioctl, _func, _flags) \
327 [DRM_IOCTL_NR(DRM_##ioctl)] = {.cmd = DRM_##ioctl, .func = _func, .flags = _flags, .cmd_drv = DRM_IOCTL_##ioctl} 328 [DRM_IOCTL_NR(DRM_##ioctl)] = {.cmd = DRM_##ioctl, .func = _func, .flags = _flags, .cmd_drv = DRM_IOCTL_##ioctl, .name = #ioctl}
328 329
329struct drm_magic_entry { 330struct drm_magic_entry {
330 struct list_head head; 331 struct list_head head;
@@ -1022,7 +1023,7 @@ struct drm_info_list {
1022struct drm_info_node { 1023struct drm_info_node {
1023 struct list_head list; 1024 struct list_head list;
1024 struct drm_minor *minor; 1025 struct drm_minor *minor;
1025 struct drm_info_list *info_ent; 1026 const struct drm_info_list *info_ent;
1026 struct dentry *dent; 1027 struct dentry *dent;
1027}; 1028};
1028 1029
@@ -1546,8 +1547,7 @@ extern struct idr drm_minors_idr;
1546extern struct drm_local_map *drm_getsarea(struct drm_device *dev); 1547extern struct drm_local_map *drm_getsarea(struct drm_device *dev);
1547 1548
1548 /* Proc support (drm_proc.h) */ 1549 /* Proc support (drm_proc.h) */
1549extern int drm_proc_init(struct drm_minor *minor, int minor_id, 1550extern int drm_proc_init(struct drm_minor *minor, struct proc_dir_entry *root);
1550 struct proc_dir_entry *root);
1551extern int drm_proc_cleanup(struct drm_minor *minor, struct proc_dir_entry *root); 1551extern int drm_proc_cleanup(struct drm_minor *minor, struct proc_dir_entry *root);
1552 1552
1553 /* Debugfs support */ 1553 /* Debugfs support */
@@ -1593,9 +1593,8 @@ extern void drm_prime_gem_destroy(struct drm_gem_object *obj, struct sg_table *s
1593 1593
1594void drm_prime_init_file_private(struct drm_prime_file_private *prime_fpriv); 1594void drm_prime_init_file_private(struct drm_prime_file_private *prime_fpriv);
1595void drm_prime_destroy_file_private(struct drm_prime_file_private *prime_fpriv); 1595void drm_prime_destroy_file_private(struct drm_prime_file_private *prime_fpriv);
1596int drm_prime_add_imported_buf_handle(struct drm_prime_file_private *prime_fpriv, struct dma_buf *dma_buf, uint32_t handle); 1596int drm_prime_lookup_buf_handle(struct drm_prime_file_private *prime_fpriv, struct dma_buf *dma_buf, uint32_t *handle);
1597int drm_prime_lookup_imported_buf_handle(struct drm_prime_file_private *prime_fpriv, struct dma_buf *dma_buf, uint32_t *handle); 1597void drm_prime_remove_buf_handle(struct drm_prime_file_private *prime_fpriv, struct dma_buf *dma_buf);
1598void drm_prime_remove_imported_buf_handle(struct drm_prime_file_private *prime_fpriv, struct dma_buf *dma_buf);
1599 1598
1600int drm_prime_add_dma_buf(struct drm_device *dev, struct drm_gem_object *obj); 1599int drm_prime_add_dma_buf(struct drm_device *dev, struct drm_gem_object *obj);
1601int drm_prime_lookup_obj(struct drm_device *dev, struct dma_buf *buf, 1600int drm_prime_lookup_obj(struct drm_device *dev, struct dma_buf *buf,
diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h
index e3e0d651c6ca..adb3f9b625f6 100644
--- a/include/drm/drm_crtc.h
+++ b/include/drm/drm_crtc.h
@@ -120,7 +120,7 @@ enum drm_mode_status {
120 .hdisplay = (hd), .hsync_start = (hss), .hsync_end = (hse), \ 120 .hdisplay = (hd), .hsync_start = (hss), .hsync_end = (hse), \
121 .htotal = (ht), .hskew = (hsk), .vdisplay = (vd), \ 121 .htotal = (ht), .hskew = (hsk), .vdisplay = (vd), \
122 .vsync_start = (vss), .vsync_end = (vse), .vtotal = (vt), \ 122 .vsync_start = (vss), .vsync_end = (vse), .vtotal = (vt), \
123 .vscan = (vs), .flags = (f), .vrefresh = 0, \ 123 .vscan = (vs), .flags = (f), \
124 .base.type = DRM_MODE_OBJECT_MODE 124 .base.type = DRM_MODE_OBJECT_MODE
125 125
126#define CRTC_INTERLACE_HALVE_V 0x1 /* halve V values for interlacing */ 126#define CRTC_INTERLACE_HALVE_V 0x1 /* halve V values for interlacing */
@@ -310,7 +310,7 @@ struct drm_plane;
310 * drm_crtc_funcs - control CRTCs for a given device 310 * drm_crtc_funcs - control CRTCs for a given device
311 * @save: save CRTC state 311 * @save: save CRTC state
312 * @restore: restore CRTC state 312 * @restore: restore CRTC state
313 * @reset: reset CRTC after state has been invalidate (e.g. resume) 313 * @reset: reset CRTC after state has been invalidated (e.g. resume)
314 * @cursor_set: setup the cursor 314 * @cursor_set: setup the cursor
315 * @cursor_move: move the cursor 315 * @cursor_move: move the cursor
316 * @gamma_set: specify color ramp for CRTC 316 * @gamma_set: specify color ramp for CRTC
@@ -554,7 +554,6 @@ enum drm_connector_force {
554 * @probed_modes: list of modes derived directly from the display 554 * @probed_modes: list of modes derived directly from the display
555 * @display_info: information about attached display (e.g. from EDID) 555 * @display_info: information about attached display (e.g. from EDID)
556 * @funcs: connector control functions 556 * @funcs: connector control functions
557 * @user_modes: user added mode list
558 * @edid_blob_ptr: DRM property containing EDID if present 557 * @edid_blob_ptr: DRM property containing EDID if present
559 * @properties: property tracking for this connector 558 * @properties: property tracking for this connector
560 * @polled: a %DRM_CONNECTOR_POLL_<foo> value for core driven polling 559 * @polled: a %DRM_CONNECTOR_POLL_<foo> value for core driven polling
@@ -598,7 +597,6 @@ struct drm_connector {
598 struct drm_display_info display_info; 597 struct drm_display_info display_info;
599 const struct drm_connector_funcs *funcs; 598 const struct drm_connector_funcs *funcs;
600 599
601 struct list_head user_modes;
602 struct drm_property_blob *edid_blob_ptr; 600 struct drm_property_blob *edid_blob_ptr;
603 struct drm_object_properties properties; 601 struct drm_object_properties properties;
604 602
@@ -922,15 +920,11 @@ extern void drm_mode_config_reset(struct drm_device *dev);
922extern void drm_mode_config_cleanup(struct drm_device *dev); 920extern void drm_mode_config_cleanup(struct drm_device *dev);
923extern void drm_mode_set_name(struct drm_display_mode *mode); 921extern void drm_mode_set_name(struct drm_display_mode *mode);
924extern bool drm_mode_equal(const struct drm_display_mode *mode1, const struct drm_display_mode *mode2); 922extern bool drm_mode_equal(const struct drm_display_mode *mode1, const struct drm_display_mode *mode2);
923extern bool drm_mode_equal_no_clocks(const struct drm_display_mode *mode1, const struct drm_display_mode *mode2);
925extern int drm_mode_width(const struct drm_display_mode *mode); 924extern int drm_mode_width(const struct drm_display_mode *mode);
926extern int drm_mode_height(const struct drm_display_mode *mode); 925extern int drm_mode_height(const struct drm_display_mode *mode);
927 926
928/* for us by fb module */ 927/* for us by fb module */
929extern int drm_mode_attachmode_crtc(struct drm_device *dev,
930 struct drm_crtc *crtc,
931 const struct drm_display_mode *mode);
932extern int drm_mode_detachmode_crtc(struct drm_device *dev, struct drm_display_mode *mode);
933
934extern struct drm_display_mode *drm_mode_create(struct drm_device *dev); 928extern struct drm_display_mode *drm_mode_create(struct drm_device *dev);
935extern void drm_mode_destroy(struct drm_device *dev, struct drm_display_mode *mode); 929extern void drm_mode_destroy(struct drm_device *dev, struct drm_display_mode *mode);
936extern void drm_mode_list_concat(struct list_head *head, 930extern void drm_mode_list_concat(struct list_head *head,
@@ -938,6 +932,9 @@ extern void drm_mode_list_concat(struct list_head *head,
938extern void drm_mode_validate_size(struct drm_device *dev, 932extern void drm_mode_validate_size(struct drm_device *dev,
939 struct list_head *mode_list, 933 struct list_head *mode_list,
940 int maxX, int maxY, int maxPitch); 934 int maxX, int maxY, int maxPitch);
935extern void drm_mode_validate_clocks(struct drm_device *dev,
936 struct list_head *mode_list,
937 int *min, int *max, int n_ranges);
941extern void drm_mode_prune_invalid(struct drm_device *dev, 938extern void drm_mode_prune_invalid(struct drm_device *dev,
942 struct list_head *mode_list, bool verbose); 939 struct list_head *mode_list, bool verbose);
943extern void drm_mode_sort(struct list_head *mode_list); 940extern void drm_mode_sort(struct list_head *mode_list);
@@ -1036,14 +1033,6 @@ extern int drm_mode_getfb(struct drm_device *dev,
1036 void *data, struct drm_file *file_priv); 1033 void *data, struct drm_file *file_priv);
1037extern int drm_mode_dirtyfb_ioctl(struct drm_device *dev, 1034extern int drm_mode_dirtyfb_ioctl(struct drm_device *dev,
1038 void *data, struct drm_file *file_priv); 1035 void *data, struct drm_file *file_priv);
1039extern int drm_mode_addmode_ioctl(struct drm_device *dev,
1040 void *data, struct drm_file *file_priv);
1041extern int drm_mode_rmmode_ioctl(struct drm_device *dev,
1042 void *data, struct drm_file *file_priv);
1043extern int drm_mode_attachmode_ioctl(struct drm_device *dev,
1044 void *data, struct drm_file *file_priv);
1045extern int drm_mode_detachmode_ioctl(struct drm_device *dev,
1046 void *data, struct drm_file *file_priv);
1047 1036
1048extern int drm_mode_getproperty_ioctl(struct drm_device *dev, 1037extern int drm_mode_getproperty_ioctl(struct drm_device *dev,
1049 void *data, struct drm_file *file_priv); 1038 void *data, struct drm_file *file_priv);
diff --git a/include/drm/drm_edid.h b/include/drm/drm_edid.h
index 5da1b4ae7d84..fc481fc17085 100644
--- a/include/drm/drm_edid.h
+++ b/include/drm/drm_edid.h
@@ -244,12 +244,21 @@ struct edid {
244 244
245#define EDID_PRODUCT_ID(e) ((e)->prod_code[0] | ((e)->prod_code[1] << 8)) 245#define EDID_PRODUCT_ID(e) ((e)->prod_code[0] | ((e)->prod_code[1] << 8))
246 246
247/* Short Audio Descriptor */
248struct cea_sad {
249 u8 format;
250 u8 channels; /* max number of channels - 1 */
251 u8 freq;
252 u8 byte2; /* meaning depends on format */
253};
254
247struct drm_encoder; 255struct drm_encoder;
248struct drm_connector; 256struct drm_connector;
249struct drm_display_mode; 257struct drm_display_mode;
250struct hdmi_avi_infoframe; 258struct hdmi_avi_infoframe;
251 259
252void drm_edid_to_eld(struct drm_connector *connector, struct edid *edid); 260void drm_edid_to_eld(struct drm_connector *connector, struct edid *edid);
261int drm_edid_to_sad(struct edid *edid, struct cea_sad **sads);
253int drm_av_sync_delay(struct drm_connector *connector, 262int drm_av_sync_delay(struct drm_connector *connector,
254 struct drm_display_mode *mode); 263 struct drm_display_mode *mode);
255struct drm_connector *drm_select_eld(struct drm_encoder *encoder, 264struct drm_connector *drm_select_eld(struct drm_encoder *encoder,
diff --git a/include/drm/drm_fb_helper.h b/include/drm/drm_fb_helper.h
index f97a8ef1d728..471f276ce8f7 100644
--- a/include/drm/drm_fb_helper.h
+++ b/include/drm/drm_fb_helper.h
@@ -50,13 +50,14 @@ struct drm_fb_helper_surface_size {
50 50
51/** 51/**
52 * struct drm_fb_helper_funcs - driver callbacks for the fbdev emulation library 52 * struct drm_fb_helper_funcs - driver callbacks for the fbdev emulation library
53 * @gamma_set: - Set the given gamma lut register on the given crtc. 53 * @gamma_set: Set the given gamma lut register on the given crtc.
54 * @gamma_get: - Read the given gamma lut register on the given crtc, used to 54 * @gamma_get: Read the given gamma lut register on the given crtc, used to
55 * save the current lut when force-restoring the fbdev for e.g. 55 * save the current lut when force-restoring the fbdev for e.g.
56 * kdbg. 56 * kdbg.
57 * @fb_probe: - Driver callback to allocate and initialize the fbdev info 57 * @fb_probe: Driver callback to allocate and initialize the fbdev info
58 * structure. Futhermore it also needs to allocate the drm 58 * structure. Futhermore it also needs to allocate the drm
59 * framebuffer used to back the fbdev. 59 * framebuffer used to back the fbdev.
60 * @initial_config: Setup an initial fbdev display configuration
60 * 61 *
61 * Driver callbacks used by the fbdev emulation helper library. 62 * Driver callbacks used by the fbdev emulation helper library.
62 */ 63 */
@@ -106,12 +107,6 @@ int drm_fb_helper_pan_display(struct fb_var_screeninfo *var,
106int drm_fb_helper_set_par(struct fb_info *info); 107int drm_fb_helper_set_par(struct fb_info *info);
107int drm_fb_helper_check_var(struct fb_var_screeninfo *var, 108int drm_fb_helper_check_var(struct fb_var_screeninfo *var,
108 struct fb_info *info); 109 struct fb_info *info);
109int drm_fb_helper_setcolreg(unsigned regno,
110 unsigned red,
111 unsigned green,
112 unsigned blue,
113 unsigned transp,
114 struct fb_info *info);
115 110
116bool drm_fb_helper_restore_fbdev_mode(struct drm_fb_helper *fb_helper); 111bool drm_fb_helper_restore_fbdev_mode(struct drm_fb_helper *fb_helper);
117void drm_fb_helper_fill_var(struct fb_info *info, struct drm_fb_helper *fb_helper, 112void drm_fb_helper_fill_var(struct fb_info *info, struct drm_fb_helper *fb_helper,
diff --git a/include/drm/drm_os_linux.h b/include/drm/drm_os_linux.h
index 393369147a2d..675ddf4b441f 100644
--- a/include/drm/drm_os_linux.h
+++ b/include/drm/drm_os_linux.h
@@ -87,15 +87,6 @@ static __inline__ int mtrr_del(int reg, unsigned long base, unsigned long size)
87/** Other copying of data from kernel space */ 87/** Other copying of data from kernel space */
88#define DRM_COPY_TO_USER(arg1, arg2, arg3) \ 88#define DRM_COPY_TO_USER(arg1, arg2, arg3) \
89 copy_to_user(arg1, arg2, arg3) 89 copy_to_user(arg1, arg2, arg3)
90/* Macros for copyfrom user, but checking readability only once */
91#define DRM_VERIFYAREA_READ( uaddr, size ) \
92 (access_ok( VERIFY_READ, uaddr, size ) ? 0 : -EFAULT)
93#define DRM_COPY_FROM_USER_UNCHECKED(arg1, arg2, arg3) \
94 __copy_from_user(arg1, arg2, arg3)
95#define DRM_COPY_TO_USER_UNCHECKED(arg1, arg2, arg3) \
96 __copy_to_user(arg1, arg2, arg3)
97#define DRM_GET_USER_UNCHECKED(val, uaddr) \
98 __get_user(val, uaddr)
99 90
100#define DRM_HZ HZ 91#define DRM_HZ HZ
101 92
diff --git a/include/drm/drm_pciids.h b/include/drm/drm_pciids.h
index 918e8fe2f5e9..c2af598f701d 100644
--- a/include/drm/drm_pciids.h
+++ b/include/drm/drm_pciids.h
@@ -240,6 +240,7 @@
240 {0x1002, 0x6819, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PITCAIRN|RADEON_NEW_MEMMAP}, \ 240 {0x1002, 0x6819, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PITCAIRN|RADEON_NEW_MEMMAP}, \
241 {0x1002, 0x6820, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 241 {0x1002, 0x6820, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
242 {0x1002, 0x6821, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 242 {0x1002, 0x6821, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
243 {0x1002, 0x6822, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
243 {0x1002, 0x6823, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 244 {0x1002, 0x6823, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
244 {0x1002, 0x6824, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 245 {0x1002, 0x6824, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
245 {0x1002, 0x6825, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 246 {0x1002, 0x6825, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
@@ -247,11 +248,13 @@
247 {0x1002, 0x6827, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 248 {0x1002, 0x6827, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
248 {0x1002, 0x6828, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_NEW_MEMMAP}, \ 249 {0x1002, 0x6828, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_NEW_MEMMAP}, \
249 {0x1002, 0x6829, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_NEW_MEMMAP}, \ 250 {0x1002, 0x6829, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_NEW_MEMMAP}, \
251 {0x1002, 0x682A, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
250 {0x1002, 0x682B, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 252 {0x1002, 0x682B, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
251 {0x1002, 0x682D, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 253 {0x1002, 0x682D, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
252 {0x1002, 0x682F, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 254 {0x1002, 0x682F, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
253 {0x1002, 0x6830, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 255 {0x1002, 0x6830, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
254 {0x1002, 0x6831, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 256 {0x1002, 0x6831, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
257 {0x1002, 0x6835, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_NEW_MEMMAP}, \
255 {0x1002, 0x6837, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_NEW_MEMMAP}, \ 258 {0x1002, 0x6837, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_NEW_MEMMAP}, \
256 {0x1002, 0x6838, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_NEW_MEMMAP}, \ 259 {0x1002, 0x6838, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_NEW_MEMMAP}, \
257 {0x1002, 0x6839, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_NEW_MEMMAP}, \ 260 {0x1002, 0x6839, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_NEW_MEMMAP}, \
@@ -603,6 +606,8 @@
603 {0x1002, 0x9999, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ 606 {0x1002, 0x9999, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \
604 {0x1002, 0x999A, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ 607 {0x1002, 0x999A, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \
605 {0x1002, 0x999B, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ 608 {0x1002, 0x999B, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \
609 {0x1002, 0x999C, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \
610 {0x1002, 0x999D, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \
606 {0x1002, 0x99A0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ 611 {0x1002, 0x99A0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \
607 {0x1002, 0x99A2, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ 612 {0x1002, 0x99A2, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \
608 {0x1002, 0x99A4, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ 613 {0x1002, 0x99A4, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \
diff --git a/include/drm/ttm/ttm_bo_driver.h b/include/drm/ttm/ttm_bo_driver.h
index 0fbd046e7c93..9c8dca79808e 100644
--- a/include/drm/ttm/ttm_bo_driver.h
+++ b/include/drm/ttm/ttm_bo_driver.h
@@ -902,6 +902,10 @@ extern void ttm_bo_unreserve_locked(struct ttm_buffer_object *bo);
902 * ttm_bo_util.c 902 * ttm_bo_util.c
903 */ 903 */
904 904
905int ttm_mem_io_reserve(struct ttm_bo_device *bdev,
906 struct ttm_mem_reg *mem);
907void ttm_mem_io_free(struct ttm_bo_device *bdev,
908 struct ttm_mem_reg *mem);
905/** 909/**
906 * ttm_bo_move_ttm 910 * ttm_bo_move_ttm
907 * 911 *