Well, the problem with upgrading DRM: I bet it has to do with moving
some functionality  into (Linux- and BSD-) kernel on 2007-07-21
01:16:42 (GMT) , which is not yet in the Solaris kernel. More
precisely with this global patch (affecting all vendors, not only ati)
:

"""Replace DRM_IOCTL_ARGS with (dev, data, file_priv) and remove DRM_DEVICE.
The data is now in kernel space, copied in/out as appropriate
according to the This results in DRM_COPY_{TO,FROM}_USER going away,
and error paths to deal with those failures. This also means that
XFree86 4.2.0 support for i810 DRM is lost. """

http://cgit.freedesktop.org/mesa/drm/commit/?id=5b38e134163cc375e91424c4688cc9328c6e9082
.

This prevents the entire DRM-Upgrade porting approach from being a
dumb merge of Sun's existing port into the current git.
Also: Isolating the actually important changes has not been fun, as
80% of the changes were bloating like sometimes changing // comments
into /* ... */ ones, and other times the other way around (makes
sense!!). Also things like eliminating tabs in header file #define
chains, while systematically putting new \t ' s into other places of
the code.
I had to go through thousands and thousands of lines of the diffs to
delete all the cosmetic stuff, allowing me to see what's really
required to make things work for the DDI/DKI interface. My goal is,
that the code can go upstream into
http://cgit.freedesktop.org/mesa/drm .

And it is halfway trivial to achieve this. Only an abundance of work
is required. That's my current project.
Then it will be easier and cheaper (!) for Sun to keep the DRM code in
sync with developments.


p.s.  My personal approach was it, to leave the kernel as it is for
now. I isolated Sun's diffs against vanilla DRM (and removed 80++% -
all the things like reformatting comments and such). Then I merged
those diffs by hand into the DRM git from one day before 20070721.
This currently doesn't compile, but only a few fixes should be
missing.
This updates the Solaris radeon DRM support at least from radeon
module version 1.25 to 1.28 (almost a year).
NEXT: I want to add all the device specific additions (related to
extending the range of supported hw) into this
DRM-git20070720__+__Sun_DDI-port merge, and effectively will this
provide us with something that supports all the new ati radeon chips.

Of course it might also be an option to look at kernel.org how the
Linux kernel has changed to make something like

http://cgit.freedesktop.org/mesa/drm/commit/?id=5b38e134163cc375e91424c4688cc9328c6e9082

"""Replace DRM_IOCTL_ARGS with (dev, data, file_priv) and remove DRM_DEVICE.
The data is now in kernel space, copied in/out as appropriate
according to the This results in DRM_COPY_{TO,FROM}_USER going away,
and error paths to deal with those failures. This also means that
XFree86 4.2.0 support for i810 DRM is lost."""


possible  ....  and consequently to add the same functionality into
the Nevada kernel.
First I wanted to try the first idea, secondly the second. It all takes time.

Thoughts?

%martin
_______________________________________________
driver-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/driver-discuss

Reply via email to