OLD | NEW |
1 /* i915_drv.h -- Private header for the I915 driver -*- linux-c -*- | 1 /* i915_drv.h -- Private header for the I915 driver -*- linux-c -*- |
2 */ | 2 */ |
3 /* | 3 /* |
4 * | 4 * |
5 * Copyright 2003 Tungsten Graphics, Inc., Cedar Park, Texas. | 5 * Copyright 2003 Tungsten Graphics, Inc., Cedar Park, Texas. |
6 * All Rights Reserved. | 6 * All Rights Reserved. |
7 * | 7 * |
8 * Permission is hereby granted, free of charge, to any person obtaining a | 8 * Permission is hereby granted, free of charge, to any person obtaining a |
9 * copy of this software and associated documentation files (the | 9 * copy of this software and associated documentation files (the |
10 * "Software"), to deal in the Software without restriction, including | 10 * "Software"), to deal in the Software without restriction, including |
(...skipping 16 matching lines...) Expand all Loading... |
27 * | 27 * |
28 */ | 28 */ |
29 | 29 |
30 #ifndef _I915_DRV_H_ | 30 #ifndef _I915_DRV_H_ |
31 #define _I915_DRV_H_ | 31 #define _I915_DRV_H_ |
32 | 32 |
33 #include "i915_reg.h" | 33 #include "i915_reg.h" |
34 #include "intel_bios.h" | 34 #include "intel_bios.h" |
35 #include <linux/io-mapping.h> | 35 #include <linux/io-mapping.h> |
36 | 36 |
| 37 #ifdef CONFIG_DRM_I915_DIRECT_BACKLIGHT |
| 38 #include <linux/backlight.h> |
| 39 #endif |
| 40 |
37 /* General customization: | 41 /* General customization: |
38 */ | 42 */ |
39 | 43 |
40 #define DRIVER_AUTHOR "Tungsten Graphics, Inc." | 44 #define DRIVER_AUTHOR "Tungsten Graphics, Inc." |
41 | 45 |
42 #define DRIVER_NAME "i915" | 46 #define DRIVER_NAME "i915" |
43 #define DRIVER_DESC "Intel Graphics" | 47 #define DRIVER_DESC "Intel Graphics" |
44 #define DRIVER_DATE "20080730" | 48 #define DRIVER_DATE "20080730" |
45 | 49 |
46 enum pipe { | 50 enum pipe { |
(...skipping 536 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
583 bool lvds_downclock_avail; | 587 bool lvds_downclock_avail; |
584 /* indicates the reduced downclock for LVDS*/ | 588 /* indicates the reduced downclock for LVDS*/ |
585 int lvds_downclock; | 589 int lvds_downclock; |
586 struct work_struct idle_work; | 590 struct work_struct idle_work; |
587 struct timer_list idle_timer; | 591 struct timer_list idle_timer; |
588 bool busy; | 592 bool busy; |
589 u16 orig_clock; | 593 u16 orig_clock; |
590 int child_dev_num; | 594 int child_dev_num; |
591 struct child_device_config *child_dev; | 595 struct child_device_config *child_dev; |
592 struct drm_connector *int_lvds_connector; | 596 struct drm_connector *int_lvds_connector; |
| 597 |
| 598 #ifdef CONFIG_DRM_I915_DIRECT_BACKLIGHT |
| 599 /* direct backlight interface */ |
| 600 struct backlight_device *backlight; |
| 601 #endif |
| 602 |
593 } drm_i915_private_t; | 603 } drm_i915_private_t; |
594 | 604 |
595 /** driver private structure attached to each drm_gem_object */ | 605 /** driver private structure attached to each drm_gem_object */ |
596 struct drm_i915_gem_object { | 606 struct drm_i915_gem_object { |
597 struct drm_gem_object *obj; | 607 struct drm_gem_object *obj; |
598 | 608 |
599 /** Current space allocated to this object in the GTT, if any. */ | 609 /** Current space allocated to this object in the GTT, if any. */ |
600 struct drm_mm_node *gtt_space; | 610 struct drm_mm_node *gtt_space; |
601 | 611 |
602 /** This object's place on the active/flushing/inactive lists */ | 612 /** This object's place on the active/flushing/inactive lists */ |
(...skipping 329 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
932 extern void ironlake_opregion_gse_intr(struct drm_device *dev); | 942 extern void ironlake_opregion_gse_intr(struct drm_device *dev); |
933 extern void opregion_enable_asle(struct drm_device *dev); | 943 extern void opregion_enable_asle(struct drm_device *dev); |
934 #else | 944 #else |
935 static inline int intel_opregion_init(struct drm_device *dev, int resume) { retu
rn 0; } | 945 static inline int intel_opregion_init(struct drm_device *dev, int resume) { retu
rn 0; } |
936 static inline void intel_opregion_free(struct drm_device *dev, int suspend) { re
turn; } | 946 static inline void intel_opregion_free(struct drm_device *dev, int suspend) { re
turn; } |
937 static inline void opregion_asle_intr(struct drm_device *dev) { return; } | 947 static inline void opregion_asle_intr(struct drm_device *dev) { return; } |
938 static inline void ironlake_opregion_gse_intr(struct drm_device *dev) { return;
} | 948 static inline void ironlake_opregion_gse_intr(struct drm_device *dev) { return;
} |
939 static inline void opregion_enable_asle(struct drm_device *dev) { return; } | 949 static inline void opregion_enable_asle(struct drm_device *dev) { return; } |
940 #endif | 950 #endif |
941 | 951 |
| 952 #ifdef CONFIG_DRM_I915_DIRECT_BACKLIGHT |
| 953 /* i915_backlight.c */ |
| 954 extern void i915_backlight_init(struct drm_device *dev); |
| 955 extern void i915_backlight_exit(struct drm_device *dev); |
| 956 #else |
| 957 extern inline void i915_backlight_init(struct drm_device *dev) { return; } |
| 958 extern inline void i915_backlight_exit(struct drm_device *dev) { return; } |
| 959 #endif |
| 960 |
942 /* modesetting */ | 961 /* modesetting */ |
943 extern void intel_modeset_init(struct drm_device *dev); | 962 extern void intel_modeset_init(struct drm_device *dev); |
944 extern void intel_modeset_cleanup(struct drm_device *dev); | 963 extern void intel_modeset_cleanup(struct drm_device *dev); |
945 extern int intel_modeset_vga_set_state(struct drm_device *dev, bool state); | 964 extern int intel_modeset_vga_set_state(struct drm_device *dev, bool state); |
946 extern void i8xx_disable_fbc(struct drm_device *dev); | 965 extern void i8xx_disable_fbc(struct drm_device *dev); |
947 extern void g4x_disable_fbc(struct drm_device *dev); | 966 extern void g4x_disable_fbc(struct drm_device *dev); |
948 | 967 |
949 /** | 968 /** |
950 * Lock test for when it's just for synchronization of ring access. | 969 * Lock test for when it's just for synchronization of ring access. |
951 * | 970 * |
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1063 #define DSPARB_HWCONTROL(dev) (IS_G4X(dev) || IS_IRONLAKE(dev)) | 1082 #define DSPARB_HWCONTROL(dev) (IS_G4X(dev) || IS_IRONLAKE(dev)) |
1064 | 1083 |
1065 #define HAS_FW_BLC(dev) (IS_I9XX(dev) || IS_G4X(dev) || IS_IRONLAKE(dev)) | 1084 #define HAS_FW_BLC(dev) (IS_I9XX(dev) || IS_G4X(dev) || IS_IRONLAKE(dev)) |
1066 #define HAS_PIPE_CXSR(dev) (INTEL_INFO(dev)->has_pipe_cxsr) | 1085 #define HAS_PIPE_CXSR(dev) (INTEL_INFO(dev)->has_pipe_cxsr) |
1067 #define I915_HAS_FBC(dev) (INTEL_INFO(dev)->has_fbc) | 1086 #define I915_HAS_FBC(dev) (INTEL_INFO(dev)->has_fbc) |
1068 #define I915_HAS_RC6(dev) (INTEL_INFO(dev)->has_rc6) | 1087 #define I915_HAS_RC6(dev) (INTEL_INFO(dev)->has_rc6) |
1069 | 1088 |
1070 #define PRIMARY_RINGBUFFER_SIZE (128*1024) | 1089 #define PRIMARY_RINGBUFFER_SIZE (128*1024) |
1071 | 1090 |
1072 #endif | 1091 #endif |
OLD | NEW |