[PATCH v2 0/7] ati-vga: Implement HOST_DATA transfers to enable X.org text rendering

Chad Jablonski posted 7 patches 1 week, 4 days ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20251103033608.120908-1-chad@jablonski.xyz
hw/display/ati.c      |  77 ++++++++++++-
hw/display/ati_2d.c   | 257 +++++++++++++++++++++++++++++++++---------
hw/display/ati_dbg.c  |   9 ++
hw/display/ati_int.h  |   6 +
hw/display/ati_regs.h |  34 +++++-
5 files changed, 320 insertions(+), 63 deletions(-)
[PATCH v2 0/7] ati-vga: Implement HOST_DATA transfers to enable X.org text rendering
Posted by Chad Jablonski 1 week, 4 days ago
This series implements HOST_DATA as a blit source enabling text rendering in
xterm under X.org with 2D acceleration.

The series builds up functionality incrementally:

* Patches 1-2: Scissor rectangle clipping registers and implementation
* Patches 3-4: Additional register support needed for HOST_DATA
* Patches 5-7: HOST_DATA register writes, color expansion, and final blit
               implementation

Tested with xterm on X.org using the r128 driver built with
--disable-dri (MMIO mode).

Changes from v1:

- Split monolithic patch into 7 logical patches as requested
- Integrate HOST_DATA blit into existing ati_2d_blt()
- Add fallback implementation for non-pixman builds
- Remove unnecessary initialization in realize (kept in reset only)
- Fixed DP_GUI_MASTER_CNTL mask to preserve GMC_SRC_SOURCE field
- Implement scissor clipping


Chad Jablonski (7):
  ati-vga: Add scissor clipping register support
  ati-vga: Implement scissor rectangle clipping for 2D operations
  ati-vga: Implement foreground and background color register writes
  ati-vga: Fix DP_GUI_MASTER_CNTL register mask
  ati-vga: Implement HOST_DATA register writes
  ati-vga: Add expand_colors() helper for monochrome color expansion
  ati-vga: Implement HOST_DATA blit source with color expansion

 hw/display/ati.c      |  77 ++++++++++++-
 hw/display/ati_2d.c   | 257 +++++++++++++++++++++++++++++++++---------
 hw/display/ati_dbg.c  |   9 ++
 hw/display/ati_int.h  |   6 +
 hw/display/ati_regs.h |  34 +++++-
 5 files changed, 320 insertions(+), 63 deletions(-)

-- 
2.51.0