From: Thomas Zimmermann <tzimmermann@suse.de>
To: daniel@ffwll.ch, airlied@redhat.com, lyude@redhat.com,
sam@ravnborg.org, emil.velikov@collabora.com, krzk@kernel.org,
john.p.donnelly@Oracle.com, rong.a.chen@intel.com,
kraxel@redhat.com, eich@suse.com, tiwai@suse.de
Cc: Thomas Zimmermann <tzimmermann@suse.de>, dri-devel@lists.freedesktop.org
Subject: [PATCH v2 0/8] drm/mgag200: Support desktop chips
Date: Thu, 30 Jul 2020 12:28:36 +0200 [thread overview]
Message-ID: <20200730102844.10995-1-tzimmermann@suse.de> (raw)
This patchset puts device initialization in the correct order and
adds support for G200 Desktop chips (PCI ids 0x520 and 0x521).
The patchset has already been reviewed. In v2 I changed the patch 8
to copy the BIOS ROM to system memory, which simplifies parsing.
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 no corrupt display output is to be expected.
Patches 2 to 6 fix the initialization of device registers. Several
fundamental registers were only set late during device initialization.
This was probably not a problem in practice, as the VGA BIOS does the
setup during POST anyway. These patches move the code to the beginning
of the device initialization. If we ever have to POST an MGA device from
the driver, the correct order of operations will matter.
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 registers 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.
v2:
* copy BIOS ROM to system memory; access with load/store
* fix typos
[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 | 225 +++++++++++++++++++++++--
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, 340 insertions(+), 83 deletions(-)
--
2.27.0
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
next reply other threads:[~2020-07-30 10:28 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-30 10:28 Thomas Zimmermann [this message]
2020-07-30 10:28 ` [PATCH v2 1/8] drm/mgag200: Enable caching for SHMEM pages Thomas Zimmermann
2020-07-30 10:28 ` [PATCH v2 2/8] drm/mgag200: Move register initialization into helper function Thomas Zimmermann
2020-07-30 10:28 ` [PATCH v2 3/8] drm/mgag200: Initialize PCI registers early during device setup Thomas Zimmermann
2020-07-30 10:28 ` [PATCH v2 4/8] drm/mgag200: Enable MGA mode during device register initialization Thomas Zimmermann
2020-07-30 10:28 ` [PATCH v2 5/8] drm/mgag200: Set MISC memory flags in mm init code Thomas Zimmermann
2020-07-30 10:28 ` [PATCH v2 6/8] drm/mgag200: Clear <page> field during MM init Thomas Zimmermann
2020-07-30 10:28 ` [PATCH v2 7/8] drm/mgag200: Move G200SE's unique id into model-specific data Thomas Zimmermann
2020-07-30 10:28 ` [PATCH v2 8/8] drm/mgag200: Add support for G200 desktop cards Thomas Zimmermann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200730102844.10995-1-tzimmermann@suse.de \
--to=tzimmermann@suse.de \
--cc=airlied@redhat.com \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=eich@suse.com \
--cc=emil.velikov@collabora.com \
--cc=john.p.donnelly@Oracle.com \
--cc=kraxel@redhat.com \
--cc=krzk@kernel.org \
--cc=lyude@redhat.com \
--cc=rong.a.chen@intel.com \
--cc=sam@ravnborg.org \
--cc=tiwai@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox