diff options
-rw-r--r-- | drivers/gpu/drm/vmwgfx/vmwgfx_fb.c | 22 |
1 files changed, 4 insertions, 18 deletions
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c b/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c index 181f47222580..b0866f04ec76 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c | |||
@@ -152,20 +152,12 @@ static int vmw_fb_set_par(struct fb_info *info) | |||
152 | struct vmw_fb_par *par = info->par; | 152 | struct vmw_fb_par *par = info->par; |
153 | struct vmw_private *vmw_priv = par->vmw_priv; | 153 | struct vmw_private *vmw_priv = par->vmw_priv; |
154 | 154 | ||
155 | vmw_kms_write_svga(vmw_priv, info->var.xres, info->var.yres, | ||
156 | info->fix.line_length, | ||
157 | par->bpp, par->depth); | ||
155 | if (vmw_priv->capabilities & SVGA_CAP_DISPLAY_TOPOLOGY) { | 158 | if (vmw_priv->capabilities & SVGA_CAP_DISPLAY_TOPOLOGY) { |
156 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_ID, 0); | ||
157 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_IS_PRIMARY, true); | ||
158 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_POSITION_X, 0); | ||
159 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_POSITION_Y, 0); | ||
160 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_WIDTH, 0); | ||
161 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_HEIGHT, 0); | ||
162 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_ID, SVGA_ID_INVALID); | ||
163 | |||
164 | vmw_kms_write_svga(vmw_priv, info->var.xres, info->var.yres, | ||
165 | info->fix.line_length, | ||
166 | par->bpp, par->depth); | ||
167 | |||
168 | /* TODO check if pitch and offset changes */ | 159 | /* TODO check if pitch and offset changes */ |
160 | vmw_write(vmw_priv, SVGA_REG_NUM_GUEST_DISPLAYS, 1); | ||
169 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_ID, 0); | 161 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_ID, 0); |
170 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_IS_PRIMARY, true); | 162 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_IS_PRIMARY, true); |
171 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_POSITION_X, info->var.xoffset); | 163 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_POSITION_X, info->var.xoffset); |
@@ -173,12 +165,6 @@ static int vmw_fb_set_par(struct fb_info *info) | |||
173 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_WIDTH, info->var.xres); | 165 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_WIDTH, info->var.xres); |
174 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_HEIGHT, info->var.yres); | 166 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_HEIGHT, info->var.yres); |
175 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_ID, SVGA_ID_INVALID); | 167 | vmw_write(vmw_priv, SVGA_REG_DISPLAY_ID, SVGA_ID_INVALID); |
176 | vmw_write(vmw_priv, SVGA_REG_NUM_GUEST_DISPLAYS, 1); | ||
177 | } else { | ||
178 | vmw_kms_write_svga(vmw_priv, info->var.xres, info->var.yres, | ||
179 | info->fix.line_length, | ||
180 | par->bpp, par->depth); | ||
181 | |||
182 | } | 168 | } |
183 | 169 | ||
184 | /* This is really helpful since if this fails the user | 170 | /* This is really helpful since if this fails the user |