[PATCH] drm/bochs: fix blanking

Thomas Zimmermann tzimmermann at suse.de
Wed Sep 7 07:36:06 UTC 2022



Am 06.09.22 um 16:29 schrieb Gerd Hoffmann:
> VGA_IS1_RC is the color mode register (VGA_IS1_RM the one for monochrome
> mode, note C vs. M at the end).  So when using VGA_IS1_RC make sure the
> vga device is actually in color mode and set the corresponding bit in the
> misc register.
> 
> Reproducible when booting VMs in UEFI mode with some edk2 versions (edk2
> fix is on the way too).  Doesn't happen in BIOS mode because in that
> case the vgabios already flips the bit.
> 
> Fixes: 250e743915d4 ("drm/bochs: Add screen blanking support")
> Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>

Acked-by: Thomas Zimmermann <tzimmermann at suse.de>

> ---
>   drivers/gpu/drm/tiny/bochs.c | 2 ++
>   1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/gpu/drm/tiny/bochs.c b/drivers/gpu/drm/tiny/bochs.c
> index 08de13774862..a51262289aef 100644
> --- a/drivers/gpu/drm/tiny/bochs.c
> +++ b/drivers/gpu/drm/tiny/bochs.c
> @@ -309,6 +309,8 @@ static void bochs_hw_fini(struct drm_device *dev)
>   static void bochs_hw_blank(struct bochs_device *bochs, bool blank)
>   {
>   	DRM_DEBUG_DRIVER("hw_blank %d\n", blank);
> +	/* enable color bit (so VGA_IS1_RC access works) */
> +	bochs_vga_writeb(bochs, VGA_MIS_W, VGA_MIS_COLOR);
>   	/* discard ar_flip_flop */
>   	(void)bochs_vga_readb(bochs, VGA_IS1_RC);
>   	/* blank or unblank; we need only update index and set 0x20 */

-- 
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Ivo Totev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 840 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20220907/e53d0467/attachment.sig>


More information about the dri-devel mailing list