[PATCH 0/8] drm/mgag200: Support desktop chips
Lyude Paul
lyude at redhat.com
Wed Jul 15 22:32:34 UTC 2020
Will try to look over this tomorrow, jfyi
On Wed, 2020-07-15 at 16:58 +0200, Thomas Zimmermann wrote:
> This patchset puts device initialization in the correct order and
> adds support for G200 Desktop chips (PCI ids 0x520 and 0x521).
>
> The first 7 patches prepare the driver. Desktop chips would probably
> work without them, but since we're at it we can also do it right.
>
> Patch 1 enables cached page mappings GEM buffers. SHMEM supports
> this well now and the MGA device does not access the buffer memory
> directly. So now corrupt display output is to be expected.
>
> Patches 2 to 6 fix the initialization of device registers. Several
> fundamental registers were only done late during device initialization.
> This was probably not a problem in practice, as the VGA BIOS does the
> setup iduring POST anyway. These patches move the code to the beginning
> of the device initialization. If we ever have to POST a MGA device from
> the driver, the corect order of operations counts.
>
> G200SEs store a unique id in the device structure. Patch 7 moves the
> value to model-specific data area. This will be helpful for patch 8.
>
> Patch 8 adds support for desktop chips' PCI ids. all the memory and
> modesetting code continues to work as before. The PLL setup code gets
> an additional helper for the new HW. PCI and DAC regsiters get a few
> new default values. Most significantly, the driver parses the VGA BIOS
> for clock settings. It's all separate from the server code, so no
> regressions are to be expected.
>
> The new HW support is based on an earlier patch the was posted in July
> 2017. [1]
>
> Tested on G200EW and G200 AGP hardware by running the fbdev console,
> Weston and Gnome on Xorg.
>
> [1] https://lists.freedesktop.org/archives/dri-devel/2017-July/147647.html
>
> Thomas Zimmermann (8):
> drm/mgag200: Enable caching for SHMEM pages
> drm/mgag200: Move register initialization into helper function
> drm/mgag200: Initialize PCI registers early during device setup
> drm/mgag200: Enable MGA mode during device register initialization
> drm/mgag200: Set MISC memory flags in mm init code
> drm/mgag200: Clear <page> field during MM init
> drm/mgag200: Move G200SE's unique id into model-specific data
> drm/mgag200: Add support for G200 desktop cards
>
> MAINTAINERS | 2 +-
> drivers/gpu/drm/mgag200/Kconfig | 12 +-
> drivers/gpu/drm/mgag200/mgag200_drv.c | 213 +++++++++++++++++++++++--
> drivers/gpu/drm/mgag200/mgag200_drv.h | 19 ++-
> drivers/gpu/drm/mgag200/mgag200_mm.c | 8 +
> drivers/gpu/drm/mgag200/mgag200_mode.c | 153 +++++++++++-------
> drivers/gpu/drm/mgag200/mgag200_reg.h | 4 +
> 7 files changed, 328 insertions(+), 83 deletions(-)
>
> --
> 2.27.0
>
More information about the dri-devel
mailing list