@@ -9056,7 +9056,7 @@ void intel_modeset_init(struct drm_device *dev)
for (i = 0; i < INTEL_INFO(dev)->num_pipes; i++) {
intel_crtc_init(dev, i);
- if (INTEL_INFO(dev)->gen <= 4)
+ if (INTEL_INFO(dev)->gen <= 4 && !IS_G4X(dev))
continue;
for (j = 0; j < dev_priv->num_plane; j++) {
@@ -9087,7 +9087,7 @@ void intel_modeset_init(struct drm_device *dev)
}
/* two pipes and planes A+B+C */
- if (INTEL_INFO(dev)->gen <= 4 &&
+ if (INTEL_INFO(dev)->gen <= 4 && !IS_G4X(dev) &&
INTEL_INFO(dev)->num_pipes == 2) {
ret = intel_plane_init(dev, 0, PLANE_C);
if (ret)
@@ -862,7 +862,7 @@ intel_update_plane(struct drm_plane *plane, struct drm_crtc *crtc,
return -EINVAL;
/* Don't modify another pipe's plane */
- if (INTEL_INFO(dev)->gen <= 4) {
+ if (INTEL_INFO(dev)->gen <= 4 && !IS_G4X(dev)) {
if (!gen2_check_pipe_sel(plane, pipe))
return -EINVAL;
} else {
@@ -1178,7 +1178,7 @@ intel_plane_init(struct drm_device *dev, enum pipe pipe, int plane)
case 4:
case 5:
case 6:
- if (INTEL_INFO(dev)->gen <= 4) {
+ if (INTEL_INFO(dev)->gen <= 4 && !IS_G4X(dev)) {
intel_plane->can_scale = false;
intel_plane->max_downscale = 1;
@@ -1249,7 +1249,7 @@ intel_plane_init(struct drm_device *dev, enum pipe pipe, int plane)
intel_plane->pipe = pipe;
intel_plane->plane = plane;
- if (INTEL_INFO(dev)->gen >= 5)
+ if (INTEL_INFO(dev)->gen >= 5 || IS_G4X(dev))
possible_crtcs = 1 << pipe;
else
possible_crtcs = (1 << INTEL_INFO(dev)->num_pipes) - 1;