qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] 1d8d4d: ati-vga: Add registers for getting ap


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] 1d8d4d: ati-vga: Add registers for getting apertures
Date: Thu, 22 Aug 2019 09:01:08 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 1d8d4d866c62a0d0b7ee9468cf6e121ad1bfb2b1
      
https://github.com/qemu/qemu/commit/1d8d4d866c62a0d0b7ee9468cf6e121ad1bfb2b1
  Author: BALATON Zoltan <address@hidden>
  Date:   2019-08-21 (Wed, 21 Aug 2019)

  Changed paths:
    M hw/display/ati.c
    M hw/display/ati_dbg.c
    M hw/display/ati_regs.h

  Log Message:
  -----------
  ati-vga: Add registers for getting apertures

Some drivers (e.g. Linux radeon drm and MacOS) access these to find
apertures to access card. Try to implement these but not sure these
are correct yet.

Signed-off-by: BALATON Zoltan <address@hidden>
Message-id: address@hidden
Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: df1e4cf4e72b7ff7ec239afedaf7880ae667e431
      
https://github.com/qemu/qemu/commit/df1e4cf4e72b7ff7ec239afedaf7880ae667e431
  Author: BALATON Zoltan <address@hidden>
  Date:   2019-08-21 (Wed, 21 Aug 2019)

  Changed paths:
    M hw/display/ati_dbg.c
    M hw/display/ati_regs.h

  Log Message:
  -----------
  ati-vga: Add some register definitions for debugging

Add names for AMCGPIO regs to make it easier to identify these in
trace output. This is where rage128p has the DDC from the DVI port
among others but because we don't implement the flat panel controller
we don't want to connect an EDID here to make sure drivers use the VGA
output instead. But since these are often probed by drivers it helps
to see what happens by logging these registers by name.

Signed-off-by: BALATON Zoltan <address@hidden>
Message-id: address@hidden
Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: 006388a8c78124eb193027366894fe4568065447
      
https://github.com/qemu/qemu/commit/006388a8c78124eb193027366894fe4568065447
  Author: BALATON Zoltan <address@hidden>
  Date:   2019-08-21 (Wed, 21 Aug 2019)

  Changed paths:
    M hw/display/ati.c

  Log Message:
  -----------
  ati-vga: Fix GPIO_MONID register write

Also update bitbang_i2c state when output bits are changed while
enable bits are set. This fixes EDID access by the ATI FCode ROM.

Signed-off-by: BALATON Zoltan <address@hidden>
Message-id: address@hidden
Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: 50bc6af55eae65768dbc8086e793688ee0bab239
      
https://github.com/qemu/qemu/commit/50bc6af55eae65768dbc8086e793688ee0bab239
  Author: BALATON Zoltan <address@hidden>
  Date:   2019-08-21 (Wed, 21 Aug 2019)

  Changed paths:
    M hw/display/ati.c

  Log Message:
  -----------
  ati-vga: Fix cursor color with guest_hwcursor=true

Fixes: a38127414bd007c5b6ae64c664d9e8839393277e
Signed-off-by: BALATON Zoltan <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Message-id: address@hidden
Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: 747d7ad231a0955991e179deb482ce94376f1e17
      
https://github.com/qemu/qemu/commit/747d7ad231a0955991e179deb482ce94376f1e17
  Author: BALATON Zoltan <address@hidden>
  Date:   2019-08-21 (Wed, 21 Aug 2019)

  Changed paths:
    M hw/display/ati.c

  Log Message:
  -----------
  ati-vga: Fix hardware cursor image offset

The crtc_offset is not needed, cur_offset is relative to the start of
vram not the start of displayed area. This fixes broken pointer image
with MacOS that uses non-0 crtc_offset.

Signed-off-by: BALATON Zoltan <address@hidden>
Message-id: address@hidden
Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: c026350a842a02c225e3ecbcda5c298e70e37a62
      
https://github.com/qemu/qemu/commit/c026350a842a02c225e3ecbcda5c298e70e37a62
  Author: BALATON Zoltan <address@hidden>
  Date:   2019-08-21 (Wed, 21 Aug 2019)

  Changed paths:
    M hw/display/ati.c

  Log Message:
  -----------
  ati-vga: Attempt to handle CRTC offset not exact multiple of stride

MacOS uses non-0 offset so it needs this and the resulting
vbe_start_addr seems correct but picture is still broken with OpenBIOS
after FCode runs but that maybe due to firmware problems now. After
boot, picture is now correct.

It also occured to me that these CRTC regs are also present in VGA so
I wonder if they should be shared in case some drivers try to poke
them via VGA regs or these are a separate set of regs for extended
mode. Added a comment noting this but drivers I've tried so far
program the card accessing ati regs so I did not attempt to change it.

Signed-off-by: BALATON Zoltan <address@hidden>
Message-id: address@hidden
Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: 8bb9a2b26d83a0989367e3688badb2914283827d
      
https://github.com/qemu/qemu/commit/8bb9a2b26d83a0989367e3688badb2914283827d
  Author: BALATON Zoltan <address@hidden>
  Date:   2019-08-21 (Wed, 21 Aug 2019)

  Changed paths:
    M hw/display/ati.c
    M hw/display/ati_int.h
    M hw/display/ati_regs.h

  Log Message:
  -----------
  ati-vga: Add limited support for big endian frame buffer aperture

Set frame buffer endianness according to requested endianness for
frame buffer apertures. We set frame buffer to big endian if any of
the two apertures are set to big endian. Using different endianness
for the two apertures is not implemented. This fixes inverted colors
with MacOS and Xorg frame buffer driver but some Linux drivers may
have endianness issues even on real hardware so this may not fix all
cases. MorphOS uses aper0 in LE, Linux uses aper0 in BE and MacOS uses
aper1 in BE but not sure about others or if MacOS also may need aper0
in which case we'll need a more complex fix but MacOS has other
problems yet so for now this might work.

Signed-off-by: BALATON Zoltan <address@hidden>
Message-id: address@hidden
Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: b7105d280cab053465de79ff1766d2f7e1ea7554
      
https://github.com/qemu/qemu/commit/b7105d280cab053465de79ff1766d2f7e1ea7554
  Author: BALATON Zoltan <address@hidden>
  Date:   2019-08-22 (Thu, 22 Aug 2019)

  Changed paths:
    M hw/display/ati.c
    M hw/display/ati_dbg.c
    M hw/display/ati_int.h
    M hw/display/ati_regs.h

  Log Message:
  -----------
  ati-vga: Implement dummy VBlank IRQ

The MacOS driver exits if the card does not have an interrupt. If we
set PCI_INTERRUPT_PIN to 1 then it enables VBlank interrupts and it
boots but the mouse pointer cannot be moved. This patch implements a
dummy VBlank interrupt triggered by a 60 Hz timer. With this the
pointer now moves but MacOS still hangs somewhere before completely
finishing boot.

Signed-off-by: BALATON Zoltan <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: e1391340c77e206644f6ecaeab5df0b7b1a1bf93
      
https://github.com/qemu/qemu/commit/e1391340c77e206644f6ecaeab5df0b7b1a1bf93
  Author: Peter Maydell <address@hidden>
  Date:   2019-08-22 (Thu, 22 Aug 2019)

  Changed paths:
    M hw/display/ati.c
    M hw/display/ati_dbg.c
    M hw/display/ati_int.h
    M hw/display/ati_regs.h

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/kraxel/tags/vga-20190822-pull-request' 
into staging

vga: a collection of ati fixes/improvements.

# gpg: Signature made Thu 22 Aug 2019 09:04:52 BST
# gpg:                using RSA key 4CB6D8EED3E87138
# gpg: Good signature from "Gerd Hoffmann (work) <address@hidden>" [full]
# gpg:                 aka "Gerd Hoffmann <address@hidden>" [full]
# gpg:                 aka "Gerd Hoffmann (private) <address@hidden>" [full]
# Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138

* remotes/kraxel/tags/vga-20190822-pull-request:
  ati-vga: Implement dummy VBlank IRQ
  ati-vga: Add limited support for big endian frame buffer aperture
  ati-vga: Attempt to handle CRTC offset not exact multiple of stride
  ati-vga: Fix hardware cursor image offset
  ati-vga: Fix cursor color with guest_hwcursor=true
  ati-vga: Fix GPIO_MONID register write
  ati-vga: Add some register definitions for debugging
  ati-vga: Add registers for getting apertures

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/4a71d0af7b9c...e1391340c77e



reply via email to

[Prev in Thread] Current Thread [Next in Thread]