aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorEugeni Dodonov <eugeni.dodonov@intel.com>2012-03-29 11:32:17 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2012-04-09 12:03:57 -0400
commit7e508a275b9425d612b845cac534e6b35a3f95e3 (patch)
tree378177ef36d3c38c15b175c5741141dedc4c1022 /drivers
parent23e3f9b37e7368ee8530ba99907508363feebc14 (diff)
drm/i915: transform HAS_PCH_SPLIT in a feature check
The macro is becoming too complex and with VLV upon us it can lead to confusion. So transforming this into a feature check instead. Signed-off-by: Eugeni Dodonov <eugeni.dodonov@intel.com> [danvet: fixed conflict with is_valleyview addition.] Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/drm/i915/i915_drv.c6
-rw-r--r--drivers/gpu/drm/i915/i915_drv.h3
2 files changed, 8 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index 0d92e5eb1295..2fd6694fa21e 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -211,6 +211,7 @@ static const struct intel_device_info intel_ironlake_d_info = {
211 .gen = 5, 211 .gen = 5,
212 .need_gfx_hws = 1, .has_hotplug = 1, 212 .need_gfx_hws = 1, .has_hotplug = 1,
213 .has_bsd_ring = 1, 213 .has_bsd_ring = 1,
214 .has_pch_split = 1,
214}; 215};
215 216
216static const struct intel_device_info intel_ironlake_m_info = { 217static const struct intel_device_info intel_ironlake_m_info = {
@@ -218,6 +219,7 @@ static const struct intel_device_info intel_ironlake_m_info = {
218 .need_gfx_hws = 1, .has_hotplug = 1, 219 .need_gfx_hws = 1, .has_hotplug = 1,
219 .has_fbc = 1, 220 .has_fbc = 1,
220 .has_bsd_ring = 1, 221 .has_bsd_ring = 1,
222 .has_pch_split = 1,
221}; 223};
222 224
223static const struct intel_device_info intel_sandybridge_d_info = { 225static const struct intel_device_info intel_sandybridge_d_info = {
@@ -226,6 +228,7 @@ static const struct intel_device_info intel_sandybridge_d_info = {
226 .has_bsd_ring = 1, 228 .has_bsd_ring = 1,
227 .has_blt_ring = 1, 229 .has_blt_ring = 1,
228 .has_llc = 1, 230 .has_llc = 1,
231 .has_pch_split = 1,
229}; 232};
230 233
231static const struct intel_device_info intel_sandybridge_m_info = { 234static const struct intel_device_info intel_sandybridge_m_info = {
@@ -235,6 +238,7 @@ static const struct intel_device_info intel_sandybridge_m_info = {
235 .has_bsd_ring = 1, 238 .has_bsd_ring = 1,
236 .has_blt_ring = 1, 239 .has_blt_ring = 1,
237 .has_llc = 1, 240 .has_llc = 1,
241 .has_pch_split = 1,
238}; 242};
239 243
240static const struct intel_device_info intel_ivybridge_d_info = { 244static const struct intel_device_info intel_ivybridge_d_info = {
@@ -243,6 +247,7 @@ static const struct intel_device_info intel_ivybridge_d_info = {
243 .has_bsd_ring = 1, 247 .has_bsd_ring = 1,
244 .has_blt_ring = 1, 248 .has_blt_ring = 1,
245 .has_llc = 1, 249 .has_llc = 1,
250 .has_pch_split = 1,
246}; 251};
247 252
248static const struct intel_device_info intel_ivybridge_m_info = { 253static const struct intel_device_info intel_ivybridge_m_info = {
@@ -252,6 +257,7 @@ static const struct intel_device_info intel_ivybridge_m_info = {
252 .has_bsd_ring = 1, 257 .has_bsd_ring = 1,
253 .has_blt_ring = 1, 258 .has_blt_ring = 1,
254 .has_llc = 1, 259 .has_llc = 1,
260 .has_pch_split = 1,
255}; 261};
256 262
257static const struct intel_device_info intel_valleyview_m_info = { 263static const struct intel_device_info intel_valleyview_m_info = {
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 48ca0d1e306c..d3a3202dd476 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -256,6 +256,7 @@ struct intel_device_info {
256 u8 is_crestline:1; 256 u8 is_crestline:1;
257 u8 is_ivybridge:1; 257 u8 is_ivybridge:1;
258 u8 is_valleyview:1; 258 u8 is_valleyview:1;
259 u8 has_pch_split:1;
259 u8 has_fbc:1; 260 u8 has_fbc:1;
260 u8 has_pipe_cxsr:1; 261 u8 has_pipe_cxsr:1;
261 u8 has_hotplug:1; 262 u8 has_hotplug:1;
@@ -1051,7 +1052,7 @@ struct drm_i915_file_private {
1051#define HAS_PIPE_CXSR(dev) (INTEL_INFO(dev)->has_pipe_cxsr) 1052#define HAS_PIPE_CXSR(dev) (INTEL_INFO(dev)->has_pipe_cxsr)
1052#define I915_HAS_FBC(dev) (INTEL_INFO(dev)->has_fbc) 1053#define I915_HAS_FBC(dev) (INTEL_INFO(dev)->has_fbc)
1053 1054
1054#define HAS_PCH_SPLIT(dev) (IS_GEN5(dev) || IS_GEN6(dev) || IS_IVYBRIDGE(dev)) 1055#define HAS_PCH_SPLIT(dev) (INTEL_INFO(dev)->has_pch_split)
1055#define HAS_PIPE_CONTROL(dev) (INTEL_INFO(dev)->gen >= 5) 1056#define HAS_PIPE_CONTROL(dev) (INTEL_INFO(dev)->gen >= 5)
1056 1057
1057#define INTEL_PCH_TYPE(dev) (((struct drm_i915_private *)(dev)->dev_private)->pch_type) 1058#define INTEL_PCH_TYPE(dev) (((struct drm_i915_private *)(dev)->dev_private)->pch_type)