Hi,
I work on developing OpenChrome graphics stack for VIA Technologies Chrome
integrated graphics.
I am looking to get OpenChrome DRM pulled into the Linux kernel tree in the
near future.
This is not a pull request.
The code not quite ready for that, but I will like to start orienting my
development activities towards getting OpenChrome DRM mainlined in the next one
or two Linux kernel development cycles since OpenChrome DRM has been living
outside the mainline kernel tree for 7+ years (at least since Year 2011).
If someone reading this post is not too familiar with OpenChrome graphics
stack, I did a presentation during XDC2017 that discussed the history of
OpenChrome Project and its future plans.
https://www.x.org/wiki/Events/XDC2017/brace_openchrome.pdf
Since XDC2017, I have fixed many issues like standby resume and runtime screen
resolution change crashes, and as a result, I am pretty confident now that
OpenChrome DDX with OpenChrome DRM performing mode setting (KMS) is as reliable
as OpenChrome DDX performing mode setting (UMS).
In the past week, I officially added two external DVI transmitters to the
OpenChrome DRM (VIA Technologies VT1632(A) and Silicon Image SiI 164), and as a
result, OpenChrome DRM KMS now has virtually identical display device support
to the legacy OpenChrome DDX UMS.
This will allow a seamless transition from UMS to KMS.
However, there are some areas of concern I have with OpenChrome DRM getting
mainlined inside Linux kernel tree.
During XDC2017, I spoke with one or two developers that strongly urged me to
convert to atomic mode setting from the Year 2008 vintage "legacy" KMS.
I declined this since I just got OpenChrome DRM ported to Linux 4.13 one week
prior to XDC2017, but furthermore, I needed to stabilize the code itself since
it was still pretty buggy compared to OpenChrome DDX UMS.
The reason OpenChrome DRM still uses "legacy" KMS despite its flaws is the fact
that previous developer, James Simmons, started the development back in Year
2011 or so, and I have merely continued the development starting around Year
mid-2016.
My personal wish is to get OpenChrome DRM "grandfathered" from the strong
expectation of implementing universal plane and atomic mode setting since the
code development started well before those two got incorporated into the DRM.
I can consider converting the code to support these two features down the road,
but just for the initial mainlining, I will like to be exempted from it since
it will likely delay the mainlining by 6 months or so.
Other than the universal plane and atomic mode setting, I have several
other concerns.
1) James left some unfinished acceleration related code inside OpenChrome DRM,
but I do not plan to activate it for the initial mainlined version. Do I need
to remove the code?
2) James appears to have implemented custom Libdrm ABI / API calls. I do not
plan to activate it for the initial mainlined version. Do I need to remove the
code?
3) Almost all the functions start with "via_" instead of "openchrome_" at this
point. Do I need to convert them all to "'openchrome_'?"
4) Is the essentially deprecated VIA DRM going to be removed from the Linux
kernel tree? VIA DRM is DRI1 based, and OpenChrome DRM supersedes VIA DRM for
obvious reasons. Since OpenChrome DRM supersedes VIA DRM, I strongly support
deleting VIA DRM from the Linux kernel tree.
Since the code size is quite substantial, I hope providing the cgit location
for the code is adequate.
Here is the main code page.
https://cgit.freedesktop.org/openchrome/drm-openchrome/
At this time, the code development is being done on drm-next-4.18 branch.
https://cgit.freedesktop.org/openchrome/drm-openchrome/?h=drm-next-4.18
Here is the latest drm-next-4.18 branch OpenChrome DRM source code.
This is where the code to review is located.
https://cgit.freedesktop.org/openchrome/drm-openchrome/tree/drivers/gpu/drm/openchrome?h=drm-next-4.18
The strong desire to get OpenChrome DRM mainlined is driven by the
decisions major Linux distributions like Ubuntu and Fedora made in dropping
OpenChrome DDX from their default installed graphics device driver list some
years ago due to the lack of DRI2 and / or KMS support with OpenChrome.
This causes installation difficulties with non-technical computer users who
wish to use VIA Technologies hardware with Linux, and I will like to resolve
this situation by getting OpenChrome DRM mainlined and getting OpenChrome DDX
back on their default installation list.
Regards,
Kevin Brace
Brace Computer Laboratory blog
https://bracecomputerlab.com
_______________________________________________
dri-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/dri-devel